Upload
alex-zhang
View
136
Download
0
Embed Size (px)
Citation preview
Application Note WWW.VISIONCTRL.COM
WWW.VISIONCTRL.COM
GFDMA Application on Intelligent Video Analysis and Video Processing
GFDMA is the key to high performance hardware platform. It binds GPU ,FPGA and CPU together
via PCIE GEN. 2.0 bus. It consists of a hardware module implemented at XILINX FPGA , and a
driver for LINUX OS. It supports bi-directions data transfers between FPGA and CPU
simultaneously, bi-directions data transfers between FPGA and NVIDIA TESLA computation card
simultaneously, single-direction data transfer between FPGA and GeForce graphic card at one
time. The link partner at the other side can be one of CPU, TESLA and GeForce. The switching
between different link partners is seamless, no penalty or overhead.
PCIE CPU
FPGA
GPU
PCIEPC
IE
GFDMA
The three components have their unique advantages and disadvantages . CPU is a powerful and
highly programmable device and current OS enables it to put everything under its control easily.
But it is second to GPU when it is exposed to complicated computation tasks. Also it need a open
and versatile interface to communicate with the outside world at high speed. GPU has the
highest transistor intensity in the world and it is born for parallel computation. Moreover, it is
high cost-effective and most people can afford it. Of course, GPU should not be alone to fulfill a
mission linked to an outside world. FPGA with PCIE interface is an ideal candidate to cover the
rest tasks : glue logic and high speed I/O.
When these elements are bound together with GFDMA module, the platform become a powerful
and versatile hardware system with the following merits:
1. highly programmable : all of the elements address this feature in their own ways.
2. easy to upgrade independently to meet requirements with different complexity. Any hardware
migration has little impact on software and the rest system. Both GPU and CPU can be updated at
instant, while FPGA can be replaced with each other as long as they are pin-compatible.
3. short development cycle. Most of the hardware systems for tasks of large scale computation,
communication with mass data and real time control are customized. Putting all
hardware-related customized design at FPGA sub-system can shorten the development period
and speed up hardware and software co-design. Moreover , this versatile platform can be applied
Application Note WWW.VISIONCTRL.COM
WWW.VISIONCTRL.COM
to different projects with the least modifications and ensure reusable designs to the most
extent.
4. Parallelism and real time oriented. Both GPU and FPGA have the feature of parallelism. Their
distinctive architectures and development tools enable them to divide and conquer any parallel
tasks easily without any special skills. Parallelism is the common gene of these devices and it is so
deeply represented at their methodologies that it become transparent to developers. Besides ,
both FPGA and CPU system have real-time capability, which is very important to interact with
the outside world.
With GPU acceleration introduced in OpenCV, GFC platform is first applied to real-time video
analysis and high performance data processing. The following example shows a GFC platform for
real time video processing:
The platform receives video signals from DVI interface and IP camera . The FPGA board extract
the raw video data and H.264 ES stream and send them to GPU system. Taking care of H.264
Decode , scaler , curve calibration and image fusion , GPU shows the video on an arc screen via 2
projectors at 60FPS. The example can be further applied to a first-person light gun shooter game,
where FPGA system takes charge of laser beam location, target-hit judgment and communication
with the BLE device, too.
More and more algorithm of intelligent video analysis benefit from data-parallel processing and
with these remarkable progress, it is playing an important role in traffic control and public
security. The following example provides a novel solution to car speed detection at GFC platform.
Application Note WWW.VISIONCTRL.COM
WWW.VISIONCTRL.COM
In this example , two day-night high speed cameras are deployed at the sides of the road . Their
raw image data is transferred to FPGA board via two Gigabit Ethernet interface. Kernel program
running at GPU can detect car speeds for two lanes simultaneously. Once it finds out speeding
cars, the snapshot will be sent to CPU for car plate recognition. The reason for a FPGA board
instead of a PC with 2 Ethernet ports is that CPU can not catch up with the image data at 120FPS.
This system has the advantage of easy deployment, less maintenance and easy integration into
customer’s database.
In conclusion, GFC platform is ideal solutions to missions with computation, high speed
communication and real-time control. However, it is very challenging to any companies since it
involves several irrelevant technologies and experience. VisionCtrl is pleased to share her rich
knowledge with customers via IP licensing and systems design service. For details , please visit :
www.visionctrl.com/Service.html