FPGA’s are better

FPGAs are better

Field programmable gate arrays (FPGA) are better for interfacing than computers. The reason is that a FPGA can do many things at the same time. Where a computer does one thing at a time really fast and switches between many tasks. This gives the appearance that many things are done at the same time. The do it yourself community is using embedded micro controllers, which do not run very fast and can mostly do only one thing at a time. So if you send it pixel data for a string, I would expect it to wait until all of the data is received, and then output the data to the pixel string, again one task at a time.

The top line in the picture is the Ethernet data valid line for the 32 universes of pixel data, 9 channels each universe. The lines D0 to D11 are the clock outputs for universes 1 through 12, and D12 to D15 is the clock outputs for universes 29 to 32. As you can see the FPGA can receive the data, and output it on all 32 universes at the same time. There is one controller to receive the data and 32 output controllers to the actual pixels, all of the controllers are always active. In addition, you can see that once the first byte of data is received the output state machine starts sending the data to your pixel string.

This delay from the sending of data till the data actually gets to the pixel string is called latency. FPGA’s provide the minimum possible latency, which allow faster updates and the lights change closer to all at the same time.

%d bloggers like this: