This example program demonstrates how pipelining process using feedback nodes at well as a form of four wire handshaking to validate the data throughput.
Passes a simple I16 data value through 4 different processes (A,B,C and D) along with an accompanying boolean value used to validate the data input. This demonstrates a simple 4 wire handshake similar to that used in the high-throughput FPGA API.
LabVIEW
1. Download and Open the VI
2. Enter Number of Elements in FIFO value
3. Run the application
4. Observe how the boolean values are concurrent with the elements being passed down the pipeline
NOTE: This program was written for demonstration purposes on a Host only. However, alterations can be made to implement this into an FPGA project hencing utilizing the recommended use case of pipelining.
Example code from the Example Code Exchange in the NI Community is licensed with the MIT license.
Hi JKinch,
I think your example is a great representation of data moving through the pipeline. I am just a little unclear on how you have implemented the 4-wire handshake. For a 4-wire handshake, you also need ready for input and ready for output lines. It should be similar to this example:
http://zone.ni.com/reference/en-XX/help/371599F-01/lvfpgaconcepts/fpga_handshaking/
Since your example does a really good job visually displaying pipelining, would you be willing to remove the part about 4-wire handshaking and just show pipelining? I was thinking that the Output Valid LEDs could light up when each process is processing a FIFO element instead of indicating output ready. If you need to include the handshaking as well, make sure that your handshaking matches our recommended protocol.
Also, please take a look at our style guidelines:
http://forums.ni.com/t5/Using-the-NI-Community/Example-Programs-Style-Guidelines/td-p/3368050
You just need some small changes, but I noticed that you are missing the front panel label and have some spelling errors.
Once you make these changes, just edit this submission and I will review it again.
Regards,
Ryan