PXI

cancel
Showing results for 
Search instead for 
Did you mean: 

Proper way to read out an ADC by FPGA and PC

Dear community,

I am new to FPGAs and have some basic questions concerning the programming of my PXI system.

What I have:

 

- NI-5922 ADC

- NI-7966 FPGA

- no real time controller, but a PC with an PXI interface card.

 

I am wondering what the best way is in order to read out the ADC by the FPGA, doing some processing on it (FPGA) and share the raw data with the connected PC for saving.

Since the FPGA has no analog IN/OUTs, it must somehow access the ADC. What is the preferred way to do that?

 

Moreover, the ADC has to be initialized and so on. From my point of view, this should be done by the PC to save FPGA hardware resources.

Since this is my first FPGA-project, it would be very helpful to have some initial hints or code snippets on how to start.

 

Thanks!

Stephan

0 Kudos
Message 1 of 9
(5,722 Views)

Hi,

 

I think you need Programmable FPGA Digitizers to access the analog-to-digital converter and implement signal processing algorithms in the FPGA.

National Instruments programmable FPGA digitizers feature a variety of analog-to-digital converters (ADCs) with varying sample rates, resolutions, and channel counts. The modules, which include high-performance Xilinx field-programmable gate arrays (FPGAs), are the only digitizers on the market that you can program using either the NI LabVIEW FPGA Module or traditional HDL languages.

 

For more information : Programmable FPGA Digitizers

 

0 Kudos
Message 2 of 9
(5,684 Views)

Hi

 

The following figure shows peer-to-peer pipelining topology using multiple peer-to-peer streams with an NI digitizer, an FPGA device (such as an NI FlexRIO device), and a signal generator. The digitizer contains a writer to a stream, the FPGA device contains a reader for the digitizer stream and a writer to the signal generator stream, and the a signal generator contains a reader for the FPGA device stream. The writer and reader on the FPGA device use two different device resources on the FPGA device.

You can use this type of topology in instrument control applications.

 

Peer-to-Peer Data Streaming - Digitizer to FPGA Device to Signal Generator Topology.png

 

0 Kudos
Message 3 of 9
(5,683 Views)

Hi,

 

in the meanwhile I also found this kind of architecture. However, I don't know if my Digitizer is able to do P2P writing.

Whenever I try to activate P2P streaming, I get an error message:

 

Error -1074135028 occurred at Property Node (arg 1) in Untitled 2
 
Possible reason(s):
Attribute ID not recognized.
Status Code: -1074135028
 
Or is there any other way to do this. I would appreciate any example vi.
 
Thanks,
Stephan
0 Kudos
Message 4 of 9
(5,676 Views)

Hi,

 

Not all hardware supports peer-to-peer data streaming. Refer to the hardware documentation to determine if the hardware is capable of peer-to-peer streaming.

 

                                                                           P2P.png

0 Kudos
Message 5 of 9
(5,672 Views)

Hi.

 

Thanks for your reply. The system was actually planned after consultation with NI. It was a little bit surprising, the parts won't work the desired way...

 

Anyways, what do you suggest to go for?

 

From my point of view, an additional real-time controller or a different digitizer will make it. Both is very cost intensive.

 

0 Kudos
Message 6 of 9
(5,664 Views)

Hi Stephan,

 

here you finde an example

Working with Interleaved Data using NI-Scope, NI-P2P, and NI FlexRIO™

 

I hope this will help

0 Kudos
Message 7 of 9
(5,661 Views)

Hi,

if you are usin one of the supported  romote controllers, you need only a P2P supportes Degitizer.

The best way is to contact NI

 

0 Kudos
Message 8 of 9
(5,655 Views)

Hi,

 

I found this before and tried it. Then I got the error mentioned above. (No valid attribute). So I have the wrong digitizer.

Any other digitzer I found is more noisy than the one I have. I don't need high sampling rates (<= 2MS) but rather noise reduced electronics.

The FPGA will then be used for digital filtering on many channels with very long filters.

 

The FPGA-Digitzers are very fast, more noisy and cost intensive. It is not what i am looking for.
For this reason I came up with the real-time controller which might be cheaper.
However then there is no more need for P2P streaming.

0 Kudos
Message 9 of 9
(5,654 Views)