Techniques for data processing on FPGA devices
Field Programmable Gate Arrays (FPGA) are user programmable devices composed out of vast arrays of logic blocks. Complex logic functions, defined by the developer can be programmed into these blocks and process input data streams. Such devices are used since many years in very specific applications, where there is a need to adapt to a custom data interface and real time regime is crucial. Fast preprocessing of digitized data from a detector and transmission to a high-level processing device (e.g. CPU) is a typical use case.
Hardware costs, small amount of resources, development complexity and requirement of high expertise level was a limiting factor in popularization of this technology. Nowadays most of these points is not valid anymore. Since last 10 years, the amount of resources has grown over 30 times, what is not comparable to the CPU development pace. Novel development methodologies allow to design complex systems using C++, what opens FPGAs to a wide range of users.
In this talk, technology basics will be presented and followed by 3 examples of projects which showcase how the FPGA technology evolved over last years.
- Login to post comments