Real-Time Measurement and Control

cancel
Showing results for 
Search instead for 
Did you mean: 

What is the use of FPGA and how it differs from I/O Modules

Solved!
Go to solution

Hi all,

 

May be this is silly question for most of you.  But I have very less knowledge about the basic electronic concepts(FPGA, Real Time) in cRIOs. I know that FPGA

can be used for generating circuits within the chip which helps in doing some logical functions.

 

I just started working in the cRIO.  My question is that we have I/O Modules which does all input outputs for the application.  Then what is the purpose of I/O in FPGA.  

 

       Lets consider that we are inputting RTD for an application.  In that case the module NI 9217 itself outputs 24 bit data of the RTD measurement which can be process by the LabVIEW VI.  What will this FPGA in between the I/O Modules and Processor will help in?  Also that I wanna know what kind of communication is used to send data between modules, FPGA and host.

 

Thanks in advance

 

 

 

--
Ajay MV


0 Kudos
Message 1 of 5
(5,024 Views)

It seems no one out there to replySmiley Sad.  Here,  http://zone.ni.com/devzone/cda/pub/p/id/1467 , is what I learnt about advantages of FPGA in measurement.  FPGA drastically reducess our post processing time and data-handle.  When we build the FPGA for post process in cRIO, it does all processing works in cRIO and sends us the final result what we need to display to the user.  Thus, the transfer of measured data to PC is eradicated and the post process is done as fast as measurement is done.

 

I will find out answers for other questions and update it here.

 

--Ajay

--
Ajay MV


0 Kudos
Message 2 of 5
(4,880 Views)
Solution
Accepted by Ajay_MV

Hi Ajay:

 

Sorry you didn't get an answer to your original question. You are correct about the advantages of the FPGA though. Like you said, if you build pre-processing into the FPGA, you can offload a lot of potentially CPU-intensive calculations off of the host processor. In addition, the program running on the FPGA is highly deterministic and can execute code very quickly. So if you're building some kind of watchdog or time-critical portion of your application, the FPGA is a good place to put it.

 

To answer your other questions, the communication between the modules and FPGA is generally done over SPI and data can be transferred between the FPGA and host through DMA FIFOs which operate over the PCI bus, or single-point register access using Read/Write controls in the FPGA Host Interface. You can also use interrupts to signal actions between the FPGA and host.

 

Hopefully this helps but let us know if you have any other questions.

Alex Person
NI-RIO Product Support Engineer
National Instruments
Message 3 of 5
(4,868 Views)

sir can u please explain us about fifo..

0 Kudos
Message 4 of 5
(4,303 Views)

FIFO is a circular buffer available in FPGA to transfer data between FPGA and your PC.  Usually this buffer would be in low count and we should optimistically utilize in any FPGA application.

 

Thanks,

Ajay

--
Ajay MV


0 Kudos
Message 5 of 5
(4,299 Views)