Anzeige
Anzeige

FPGA development platform
for computer vision

Build custom FPGA-accelerated
10GigE Vision Frame Grabbers

Version 2.0 of the GigE Vision standard enables video transport over 10GigE. As 10GigE Vision cameras become available, they are bundled with off-the-shelf 10G Network Interface Cards (NIC) serving as their frame grabber. This has the benefit of not requiring specialized frame-grabbing hardware but creates an I/O bottleneck between the NIC and the host CPU as NICs are unable to compress or pre-process the video stream in hardware. It gets worse when multiple 10G video channels are required.

Figure 1: A 10GigE Vision intelligent frame grabber is created by using the Software-defined FPGA development environment Quickplay. (Bild: PLDA Group)

Figure 1: A 10GigE Vision intelligent frame grabber is created by using the Software-defined FPGA development environment Quickplay. (Bild: PLDA Group)

The benefit of FPGA for handling Gigabytes of I/O throughput while increasing system performance and reducing system latency with on-the-fly processing is undeniable, but designing FPGAs traditionally requires specialized hardware skills and long design cycles. Quickplay is a software-defined development environment which enables developers with no FPGA skills to build FPGA-accelerated systems, including intelligent vision systems. To complement this development platform, QuickStore is an online marketplace where developers shop for IP that they can use seamlessly in QuickPlay to build their FPGA-accelerated applications. Assembling a 10GigE Vision frame grabber with embedded pre-processing is a straightforward process in the Quickplay IDE. As illustrated in Figure 1, the user drag &drops required processing blocks (IP) from the built-in library, from the catalog of QuickStore IP, or inserts his own processing kernels in C or Verilog/VHDL, and creates a dataflow representation of the FPGA design. This is accomplished graphically or in C++, as preferred. The dataflow modeling is based on a streaming architecture, perfect for real-time video processing. This specification of the hardware design is done at the highest level of abstraction, without reference to any hardware element such as clocks, resets, busses and wires, FIFOs and DMA engines, etc. In figure 1 example, a 10GigE Vision intelligent frame grabber is created by inferring one GigE Vision 2.0 controller IP and associated ports for data and control (including GVSP and GVCP), a 2:1 packet splitter, a JPEG 2000 compression IP and its memory buffer, and a Sobel edge detection filter kernel developed in C. Both the compressed video and Sobel-processed video are pushed out using two separate output ports. This is just one example of an intelligent frame grabber that performs in parallel on the 10G video stream JPEG 2000 compression as well as contour detection, however the ability to insert custom processing kernels in C or in Verilog/VHDL and IP from Quickstore provide endless possibilities. The second step in the development process is the validation of the dataflow model created in Quickplay, using Linux native gcc compiler and gdb debugger. Validation requires linking the design model to either a unitary test application or to the final application (i.e. the frame grabber application software), using the QuickPlay API. Figure 2 presents a subset of the API and illustrates the communication between software application and FPGA design. The third step is the Build stage where the software model of the frame grabber is compiled into a hardware (i.e. HDL) representation. This step requires the user to specify:

  • • The target hardware platform for the design. Quickplay is a platform-aware environment that shields users from the complexity of hardware implementation by offering pre-integrated and pre-validated boards and platforms to choose from. It supports a variety of FPGA boards from 3rd-party vendors, some of which are suitable for computer vision acceleration. The example described requires a board with at least one 10Gb Ethernet (SFP+) connector for 10GigE video acquisition, one PCI Express connector for host interfacing, and one bank of onboard memory required by the JPEG 2000 compression IP.
  • • The mapping and configuration of the design’s input port, output port, and memory buffer to the board’s physical interfaces and physical memory, as listed above; 10 Gigabit UDP/IP for the input port, PCI Express Gen3 for both output ports, and 4GB DDR3 SDRAM memory for the memory bank. The mapping is accomplished in a few clicks. Note that input and output ports could be mapped to any supported physical interface (e.g. Ethernet, SDI, USB, etc.), with no change to the application software, due to the agnostic nature of the communication API.

The Implement stage is the fourth and final step. Quickplay invokes the FPGA vendor’s tool suite completely in the background, until the generation of the FPGA bitstream which can be loaded onto the target board. Executing once again the software application used in step two now communicates with the FPGA hardware and produce the same output, albeit at a much faster pace. The user may at any time customize or completely re-architect the design, by replacing, modifying or adding processing elements, changing the physical I/O interfaces, and even selecting a different FPGA platform.

Conclusion

The ability to seamlessly integrate and interconnect IP from QuickStore, IP designed in-house whether in Verilog/VHDL or in C, and built-in elements from the Quickplay library, provides computer vision professionals an easy and unique way to build FPGA-augmented applications, be it intelligent frame grabbers or other smart video and image processing adapters, all without hardware or FPGA expertise.

Figure 2: Subset of the QuickPlay API. It illustrates the communication between software application and FPGA design. (Bild: PLDA Group)

Figure 2: Subset of the QuickPlay API. It illustrates the communication between software application and FPGA design. (Bild: PLDA Group)

Anzeige
FPGA development platform for computer vision
Figure 1: A 10GigE Vision intelligent frame grabber is created by using the Software-defined FPGA development environment Quickplay. (Bild: PLDA Group)


Empfehlungen der Redaktion

Das könnte Sie auch interessieren

Der jährliche Fokusfinderpreis, verliehen vom Verein Initiative Bildverarbeitung e.V., ehrt herausragende Leistungen von Absolventen der Hochschulen Schleswig-Holsteins und Hamburgs.

www.baslerweb.com

Anzeige

Das Start-up-Unternehmen Pick-It aus Leuven, Belgien, hat insgesamt 2,5Mio.€ Wachstumskapital von Urbain Vandeurzen und PMV erhalten.

www.pickit3d.com

Anzeige

Der Messtechnikhersteller Mahr bietet in eigenen DAkkS-akkreditierten Laboren Dienste für Kalibrierungen von Handmessgeräten, Endmaßen und Normalen an. Nun sind mehrere neue Akkreditierungen durch die Deutsche Akkreditierungsstelle DAkkS für Längenmessgeräte zum Angebot hinzugekommen.

www.mahr.com

Anzeige

Der robotergeführte Prüfkopf des Robiscan-Systems vermisst an sämtlichen Karosserieteilen dreidimensional kleinste Fehler bei sichtbaren Schweißnähten. Es können sowohl die Festigkeit der Naht, als auch deren Aussehen geprüft werden.

www.automationwr.de

Anzeige

Die 3D-Messmaschine Cube-R beinhaltet den Scanner MetraScan 3D-R und kombiniert die Effizienz und Zuverlässigkeit der Robotisierung in einer automatisierten industriellen Messzelle. Damit ist die Dimensionsmessung von Teilen im Bereich von 1 bis 3m mit einer volumetrischen Genauigkeit unter realen Betriebsbedingungen möglich. Die schlüsselfertige Lösung hat eine Größe von 4,1×4,1×3,1m. Sie führt Prüfungen von mehreren hundert Teilen/Tag durch, auch an dunklen oder reflektierenden Teilen mit komplexer Geometrie und ist somit eine Alternative zu KMMs für Blech-, Guss- und Verbundwerkstoffe.

www.creaform3d.com

Die Xi-Serie ist eine Fusion aus Pyrometer und IR-Kamera. Durch die integrierte Spotfinder-Funktion wird die Temperatur sich bewegender Objekte gemessen, ohne dass der Sensor neu justiert werden muss.

www.optris.de

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige