This application is designed to show how several high data rate applications can be handled using VHDL on FPGAs (Field Programmable Gate Arrays). The system consists of a high speed camera, processor core, disk drive interface, Random Access Memory (RAM) interface and serial link to an external Program Counter (PC). The overall system has been chosen to illustrate how to move large amounts of data around quickly and efficiently. The outline of such a test application is shown in the figure below. As can be seen, there are several key aspects involved, but mainly it is about moving large amounts of data around a system quickly, efficiently and reliably.
The basic system is shown in outline form in Figure below.
The key performance aspect of this system is in the three interfaces:
- Camera ⇔FPGA
- FPGA ⇔ PC/Hard disk drive (HDD)
- FPGA ⇔ RAM
If we consider the basic camera performance criteria, we have four issues to consider:
- Resolution
- Frame rate
- Color specification
- Clip size
In this example, the resolution is defined as being 640×480 pixels, the color mode is 24-bit color (3×8 bit planes), the maximum frame rate is 100 s and finally the basic clip size is anything up to 10 s.
What is not shown in the overview figure above is the requirement for some basic control options (such as ‘play’, ‘record’, ‘store’) to allow the stored clips to be replayed using a standard Video Graphics Array (VGA) output (available on most FPGA development kits) or stored for long-term storage on an HDD (or similar high-capacity storage device). This could be handled separately using a PC interface, but that detail is beyond the scope of this basic system description.
[For more information download this article from this site]