Showing results for 
Search instead for 
Did you mean: 

PXIe-5170r & FPGA & acquire data flow

Go to solution

Hi, I’m a beginner in LabVIEW FPGA.
I have PXIe-5170r. I use the template of a project to acquire data.

In host program :
I acquire 10k points which are plotting – channels 0 to 7 (fetch single record + Format Waveform Graph) – it works

In FPGA program :
a) I take data from Channel 0 : Table size 2 <+-18,1>
Question 1 : I have two values, why ?
No decimation. Sample 250Mhz and FPGA work at 125Mhz ?

b) I add Delay to channel 0
Delays 0 to 511
Question 2 : How doing a second plot in host program.
In the host, I can read channel_0_delay but size 2 like input.

c) in fact, I want to acquire data (10k points) and use this data to do a process in FPGA and seeing the output (10k points) on host

Can you help me ?


0 Kudos
Message 1 of 2
Accepted by topic author Minikisscool

The PXIe 5170R acquires at a sample rate of 250 MS/s but the LabVIEW FPGA loop cannot run that fast.

The loop is therefore running at half speed (125 MHz) and for each iteration you get two samples from your acquisition.

This is why each channel returns an array of two elements. [sample N, sample N+1]


Doing processing of the data is therefore a little tricky because you have to process two consecutive samples at a time.

For example if you want to take the average value of two consecutive samples you'll have to return two values. If your input consists of

[v0, v1], [v2, v3], [v4, v5] ... your output should be

[(0+v0)/2, (v0+v1)/2]. [(v1+v2)/2, (v2+v3)/2],...

so you need to use a shift register to retrieve the second element of your previous iteration. Conceptually it looks like this

5170R Running Avg.jpg


I don't understand question 2. Do you want to see both the original data from channel 0 and a delayed version of channel 0 on your host display?



0 Kudos
Message 2 of 2