< >
  • 1GSps dual-channel high-speed data acquisition card

1GSps dual-channel high-speed data acquisition card


1GSps high speed data acquisition card for applications such as fiber optic sensing systems or LIDAR systems.

Model:YB-DAS-1000-DAQ
Tags: 1GSps DAQ DAS DAQ DAS
Contact:face Huang Email: Hqy@ybphotonics.com
WhatsApp: +8613427781756 Web | App
Get a Quote

Product Info


Introduction

The DAQ board, which can be set up to 1G sample rate and has built-in trigger output and input interfaces, can be used for applications such as DAS distributed acoustic sensing system with 200M AOM acquisition or LIDAR.

This is a PCIe x8 Lane, dual channel, 16bits respectively rate high speed data acquisition card with 1GSps sampling rate. high performance FPGA chip on board with rich multiplier and RAM resources. The driver has good compatibility and supports multiple versions of WIN7, WIN8, WIN10 in 32/64bits.


Description of built-in algorithms

YB-DAS-1000-DAQ has a built-in IQ demodulation function for balanced detector DAS systems, supporting both single-channel and dual-channel IQ demodulation. The simultaneous upload rate can be configured as 1G, 500M, 250M, 125M, 83.33M, 62.5M, 50M and so on.  

It supports three data upload modes: single-channel, dual-channel and four-channel.  When using single-channel mode, the number of points per frame (the number of points collected by a single trigger pulse) can support a maximum of 262144 points, i.e., a single optical fiber length in 1G (0.1m spatial resolution) upload rate, a maximum of 262144 * 0.1m = 26.2144 kilometers; if the upload rate is reduced, a longer length of fiber can be supported. longer fiber lengths can be supported;


Features

  • 16bits dual-channel simultaneous real-time sampling
  • 1GSps sampling rate
  • DC coupling, 50Ω input impedance
  • 1.9Vpp input voltage range, 0-250MHz analog bandwidth
  • Up to 89dBc SFDR
  • Trigger output pulse, 16-channel digital IO
  • Support for triggered outputs and inputs
  • PCI Express x8 Lane high-speed transfer interface
  • 2GB DDR3 cache


Specifications

Input Channel       


Number of input channels
2

Input Impedance
50±1%
Ω
Input Signal Range
1.9Vp-p

Input coupling method
DC(Customizable AC coupling)

Resolution
16
bits
Bandwidth(-3dB)
0-250 (other bandwidths can be customized)
MHz
Spurious-free dynamic range(SFDR)
-1dBFS Input/1GSps

     fIN=100MHz     
86
dBc
     fIN=170MHz
88
dBc
Signal-to-noise ratio(SNR)
-1dBFS Input/1GSps

     fIN=100MHz     
70.6
dBFS
     fIN=170MHz
71.5
dBFS
Average noise density
-142
dBm/Hz
Internal reference clock


Frequency
10
MHz
Stability
±0.5(-20-60℃)
ppm
Trigger output


High level minimum voltage
3 (50Ω load)
V
Pulse width resolution
4
nS
Minimum pulse width
4
nS
Digital input/output


Number of channels
16

Leveling standards
3.3V LVTTL

Output drive capability
8(MAX)
mA
Signal Rate
50(MAX)
Mbps
On-Board Cache
2
GB(DDR3L)

Power supply and consumption
  • Power supply voltage: 12V (gold finger power supply)
  • Power consumption: 20W (Max)

Temperature range

  • Working temperature-20~60℃
  • Storage temperature:-40~85℃

Mechanical dimensions

  • 181mm(L) x 111mm(W)x20mm(D)


API Description

The DAQ board provides an API in the form of a dynamic link library (.dll file), which can be called in your favorite programming language (Python, C++, C#, Java or Libview, etc.).

 int pcie7820_set_upload_data_param(unsigned int upload_ch_num,unsigned int upload_data_src,unsigned int upload_data_rate)

function description

Set up the board upload data parameters. Digital downconversion has been done on the board to perform digital I/Q demodulation of the collected data. The upload_ch_num parameter and upload_data_src are used together to select where in the demodulation algorithm to read the data.

function parameter

upload_ch_num Set the number of channels to upload;

1 - upload one channel of data; 2 - upload two channels of data; 4 - upload four channels of data;

upload_data_srcUpload data source selection

0 - upload raw acquisition data; 2 - upload IQ data; 3 - upload phase and magnitude data;

upload_data_rateSets the upload data rate;

1---1GSps2---500MSps4---250MSps8---125MSps12---83.333MSps16---62.5MSps20---50MSps24---41.66MSps28---35.714MSps32---31.25MSps

The data read by the pcie7820_read_data function should be parsed according to the following table

编号upload_ch_numupload_data_srcUploaded dataUpload data parsing rules
110Raw data captured on channel 0ch0_raw_data--- ch0_raw_data --- ch0_raw_data --- ch0_raw_data---
212I data for channel 0 after low-pass filteringI0---I0----I0---I0……
313Channel 0 demodulated phase dataarctan(Q0/I0)--- arctan(Q0/I0)--- arctan(Q0/I0)--- arctan(Q0/I0)---
420Raw data captured on channels 0 and 1ch0_raw_data--- ch1_raw_data --- ch0_raw_data --- ch1_raw_data……
522I and Q data of channel 0 after low-pass filteringI0---Q0---I0----Q0……
623Channel 0 demodulated phase and amplitude dataarctan(Q0/I0)---(I02+Q02)--- arctan(Q0/I0)---(I02+Q02)…
740unsupportedunsupported
842I and Q data of channels 0 and 1 after low-pass filteringI0---Q0---I1----Q1---I0---Q0---I1----Q1……
943Phase and amplitude data after demodulation of channels 0 and 1arctan(Q0/I0)---(I02+Q02)--- arctan(Q1/I1)---(I12+Q12)--- arctan(Q0/I0)---(I02+Q02)--- arctan(Q1/I1)---(I12+Q12)…

ch0_raw_data---ch1_raw_data---I0---Q0---I1----Q1--- arctan(Q0/I0)--- arctan(Q1/I1)These 8 types of data need to be parsed as 16-bit signed data (short).;√(I02+Q02)---(I12+Q12)These two types of data need to be parsed as 16-bit unsigned short numbers.

The arctan phase value read up is a fixed point number, and its correspondence with π is: 25735 - positive π, -25735 - negative π.

If you need more detailed interface documentation, please inquire.

DAQ Programming Examples

# -*- coding: utf-8 -*-

from ctypes import *
import numpy as np
from time import sleep
import datetime

dll = cdll.LoadLibrary("./pcie7820_64bits_api.dll")
samples = 1024 #采样点数
flag = True

def open_card():
    print('Open...')
    dll.pcie7820_open()   #open

def init_daq_card():
    print('Configure card...')
    dll.pcie7820_set_trig_dir(c_uint(1)) #Setting the trigger pulse input/output direction
    dll.pcie7820_set_scan_rate(c_double(1000)) #Setting the trigger pulse output frequency 1kHz
    dll.pcie7820_set_pusle_width(c_uint(100)) #Setting the high level width of the trigger pulse, 100ns
    dll.pcie7820_set_upload_data_param(c_uint(1), c_uint(0), c_uint(1)) #Set number of channels to 1, raw data, 1GSps;
    dll.pcie7820_set_points_num_per_scan(c_uint(samples)) #Setting the number of sampling points
    dll.pcie7820_set_center_freq(c_uint(200000000)) #Setting the AOM
    print("Config end")


def start():
    flag = True
    print('Start...')
    dll.pcie7820_start()

def stop():
    flag = True
    print('Stop...')
    dll.pcie7820_stop()

def close():
    print('Close...')
    dll.pcie7820_close()  #先stop 再close

def read_data():
    n_frames = 200
    size = c_uint(0)
    buf = (c_int16*samples*n_frames)()
    flag = True
    i=0
    start_time = datetime.datetime.now()
    while flag:
        status_query = dll.pcie7820_point_num_per_ch_in_buf_query(byref(size))
        print(f"query.. {size.value}, {status_query=}")
        #print(size)

        if size.value >=samples*n_frames:
            print('Read data...')
            status_read = dll.pcie7820_read_data(c_uint(samples*n_frames), buf, byref(size))
            """ if size.value!=samples*100:
                continue """
            ndata = np.frombuffer(buf, dtype=np.int16)
            # print(f"Data size: {np.size(ndata)}")
            print(f"Start Time: {start_time}, Current Time: {datetime.datetime.now()} - Acquisition number {i}, {status_read=}")
            #unwrap code ....
            #flag = False
            i = i + 1
            if i >= 1000000:
                flag = False
            if status_read == -1:
                break
        else:
            sleep(0.1) #wait...


def run():
    open_card()
    init_daq_card()
    start()
    read_data()
    stop()
    close()


if __name__ == '__main__':
	run()

Product Inquiry

Leading manufacturer of photodetector modules and fiber optic sensing system modules