What is it called the threads on the FPGA (Xilinx Virtex 5/7), and how many number of its can be?

StackOverflow https://stackoverflow.com/questions/19195817

Question

What is it called the thread of execution on the FPGA (Xilinx Virtex 5/7), and how many number of its can be theoretically (minimum and maximum)?

Était-ce utile?

La solution

FPGAs are reprogrammable circuits, and the components of those circuits are always running in parallel. The concept of threads from software development and multi-threaded processors do not apply to hardware design on an FPGA.

If you define a "thread" as a unit of computation that can operate in parallel from other units, you could say an FPGA has thousands or millions of threads depending on the amount of logic gates and flip-flops it can support.

If you define a thread as a software thread, it really depends what you are putting on the FPGA. You could program the FPGA to contain a single processor; without an operating system or other low-level embedded setup this would only support a single thread. If you run an OS on top of it, you'll get as many software threads as the OS and your threading library can support.

Of course with an FPGA you can also put more than one processor on it, then you can have software threads actually running in parallel on the hardware, similar to a multicore processor. The number of processors you could put on a specific FPGA is limited by the processor size, the available logic gates and memory on the FPGA, and the ability to connect it all together and meet timing. You could put dozens of small 8-bit processors onto a Virtex class FPGA, where each could be running independent software.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top