FPGA Video And All That Jazz

July 8, 2009
Technology editor Bill Wong takes a look at FPGA kits starting with the Spartan-3A DSP Video Kit from Xilinx.

In Bob Fosse’s All That Jazz, Roy Scheider plays Joe Gideon, who is a chain-smoking, workaholic choreographer and movie producer. In the movie Gideon juggles a Broadway production and edits a movie about a comedian played by Cliff Gorman. One of the minor running gags through main film is that Gideon keeps editing his movie making it better each time.

This reminded me of what I have been doing with Xilinx’s Spartan-3A DSP Video Kit from Xilinx for so long. Xilinx keeps making it better and better. The $1,595 kit comes with a Spartan-3A DSP FPGA board (Fig. 1) that has a pair of FMC sockets. One is populated by a video daughter card that can handle a pair of inputs including a small camera (Fig. 2) that is included with the kit. The kit also includes an assortment of cables but the more interesting stuff is on the DVDs.

The entire collection of Xilinx tools is included although most time out after a period. This does give you time to check them out along with The Mathworks’ Matlab and Simulink. They are all tied together with tutorials and integration that makes creating your own video work via FPGA significantly easier.

In the past, developers have used Matlab to create filters and other mathematical creations to be implemented in FPGAs so they can take advantage of the inherent parallism of an FPGA platform. Unfortunately, this was a daunting task that often required groups of people to get all the expertise and quite a bit of time to get everything to work. With this kit, you can be up and running with all the tools in a couple days.

The time it takes to get through the tutorials is actually less time than it takes to install all the software from scratch. Just of give you an idea, there is Xilinx’s ISE Foundation and ISE Simulator, System Generator Suite for DSP, Chipscope Pro and the Chipscope Pro Serail I/O Toolkit. Add in soft processor core support for a Xilinx MicroBlaze and you need to load in the Embedded Development Kit (EDK) and the Software Development Kit (SDK). Finally mix in a free download for an eval version of Mathlab and you can fill up a hard disk rather quickly. It took a couple days just to get everything installed.

The tutorials are key to the success of the package. There is possible to start from scratch with a C/C++ programming background if you are going to take advantage of a MicroBlaze, a little experience with Matlab and a general understanding of FPGAs. Don’t start with less. Luckily I have used all of these so diving into the tutorials was easy. The reason for this level of complexity is that video processing often requires all these pieces. The MicroBlaze may be used simply for interfacing to the outside world while the rest of the FPGA handles video input. Add in filtering, codecs and image recognition and you can see why things get complex fast since these services may be done in software or in FPGA hardware or a combination of both.

The tutorials start out with the basics although there are separate tutorials to get you familiar with things like ISE. The tutorials for the kit assume some basic background although not much.

Some of the basic tutorials like the DVI pass-through takes an input from the DVI port, runs it through the FPGA and sends the output to an attached display. The MicroBlaze can be used to can coefficients for the filters that can be placed in the pass-through. The Camera Frame Buffer project uses the supplied digital camera.

Things get more interesting in later labs. This is where the project definition starts out in Mathworks tools. For example, Lab 2 implements an edge detector. The Mathworks tools can be used to simulate the entire system and also be used to test the system.

Getting through the projects is relatively straight forward but straying from base may lead to unfamiliar territory unless you are already versed in the particular tools. In fact, the tutorials are most valuable when there is at least a medium level of expertise with the toolsets.

The latest crop of tutorials and labs have the advantage of highlighting the creation process and relationship between the various tools. They also provide enough of a framework to take any of the examples and extend them.

This kit and tutorial takes a bit more time to go through than the typical microcontroller kit will but it is significantly more ambitious in its intent. On the plus side, it does this very well and I am very impressed with its scope. I would allocate at least a couple weeks to get through the labs to gain a good understanding of both the hardware and the software integration. It is possible to be up and working through the tutorials in a day but that is a bit ambitious.

I actually went through three iterations of the software and tutorials. They keep getting better each time. At this point I can say that it is the fastest way to get started handling video using an FPGA with a custom design.

As Joe Gideon says, “It’s show time!”

RELATED LINKS

Mathworks
www.mathworks.com

Xilinx
www.xilinx.com

Sponsored Recommendations

Board-Mount DC/DC Converters in Medical Applications

March 27, 2024
AC/DC or board-mount DC/DC converters provide power for medical devices. This article explains why isolation might be needed and which safety standards apply.

Use Rugged Multiband Antennas to Solve the Mobile Connectivity Challenge

March 27, 2024
Selecting and using antennas for mobile applications requires attention to electrical, mechanical, and environmental characteristics: TE modules can help.

Out-of-the-box Cellular and Wi-Fi connectivity with AWS IoT ExpressLink

March 27, 2024
This demo shows how to enroll LTE-M and Wi-Fi evaluation boards with AWS IoT Core, set up a Connected Health Solution as well as AWS AT commands and AWS IoT ExpressLink security...

How to Quickly Leverage Bluetooth AoA and AoD for Indoor Logistics Tracking

March 27, 2024
Real-time asset tracking is an important aspect of Industry 4.0. Various technologies are available for deploying Real-Time Location.

Comments

To join the conversation, and become an exclusive member of Electronic Design, create an account today!