Design at the logic level for board-level products is rare. If it can’t be done with a microcontroller or two, then what’s a designer to do? FPGAs have been the answer for years, but FPGA tools required a steep learning curve. Likewise, FPGAs had a price premium and high power requirements, and external support requirements often proved challenging.
All of that has changed, though. Inexpensive FPGAs are now the norm. High-performance products remain pricey, but the bang for the buck is even higher. Low power has been the mantra for micros, and the same is true for FPGAs. Moreover, supporting an FPGA these days is a relatively simple design exercise.
That leaves the learning curve, where major improvements in FPGA development tools have made a significant difference. FPGA tool designers have been pressed to provide FPGA experts with the required functionality while delivering an interface that won’t send novices screaming for the exits.
So, the next challenge involves connecting the tools to the hardware, which can be met by combining the tools with a development board in a kit. These kits have been around since FPGAs first arrived, but the latest crop no longer leaves designers hanging with just development tools and a bare FPGA with a few LEDs and switches for peripherals.
Targeted kits now come with peripherals, such as digital cameras, and firmware and software to match. Some target soft-core solutions (see “FPGAs Pushing MCUs As The Platform Of Choice” at www.electronicdesign.com, ED Online 19149), where software developers can join the fray with FPGAs already programmed with soft or hard cores plus the accompanying peripherals and even operating systems. ARM’s own Cortex-M1 Development Kit targets Altera’s Cyclone III FPGA. The Cortex-M1 soft core is license-fee free on Altera’s line of products.
Still, designers need to consider their requirements and options. FPGA kits under $50 open FPGA development to virtually any designer, but beware the fine print, especially when it comes to software. The 30-day cutoff for some tools isn’t nearly enough time to even move up the learning curve, let alone design a new product.
Similarly, free tools often lack the more advanced features of their premium-priced cousins. Software modules, middleware, and other intellectual property (IP) may also have hidden costs when it comes to actual deployment.
FPGAs FROM THE SOURCE
Development kits are tools to get companies to buy more FPGAs. As a result, it’s no surprise that major FPGA vendors such as Actel, Altera, Lattice Semiconductor, and Xilinx all provide a range of kits that highlight their various offerings. A host of third parties provides kits as well. For extensive hands-on reviews of these kits, see Lab Bench Online at www.electronicdesign.com.
The Spartan-3A DSP Edition of the Xilinx XtremeDSP video starter kit is a good example of a targeted kit (Fig. 1). The Micron VGA CMOS video camera with tripod has an RJ-45 connector for video signals, while another RJ-45 connector on the Spartan-3A DSP 3400A board provides Ethernet access.
The board is representative of higher-end solutions with expansion capabilities. In this case, there are two FPGA mezzanine card (FMC) slots. One is populated with Xilinx’s Xtreme DSP FMC card with a pair of camera RJ-45 connectors in addition to video output connectors, including S-video, composite video, and digital video interface (DVI).
As with most FPGA development kits, the XtremeDSP kit includes quite a bit of software, including Xilinx’s Integrated Synthesis Environment (ISE), Embedded Development Kit (EDK), and System Generator for DSP. The full-blown ISE is good for only 60 days, but the slightly less functional WebPack version doesn’t expire.
The 128-Mbyte compact-flash memory card comes programmed with the System ACE boot image, so it’s ready to run out of the box. System ACE, which addresses system- level configuration, can handle multiple configurations. It also supports software storage encryption.
Continue on Page 2
The more interesting parts can be found in the Video Starter Kit documentation and reference design CD. It offers details on the base design built around the 32-bit MicroBlaze soft core as well as the sample reference designs. Components such as frame buffer controllers and similar support required for camera input and video output round out the IP offering.
Standalone designs like those targeted by the Xilinx kit are quite common. In other instances, the FPGA is part of a modular system linked together with high-speed serial interfaces. Such is the case with Lattice Semiconductor’s PCI Express Development Kit (Fig. 2).
In general, the FPGA can support high-speed serial interfaces (PCI Express, Serial RapidIO, and InfiniBand) with plenty of headroom for application firmware. In fact, FPGAs are often found on boards like the VPX (VITA 46) form factor used in military and aerospace applications (see “All A-Board,” ED Online 19158). This allows a single board to be programmed to support different protocols using high-speed serializers/deserializers (SERDES) built into the FPGA.
Lattice’s 4x PCI Express board can plug into a standard PC. The FPGA is a LatticeECP2M. Four sets of SERDES are dedicated to the PCI Express interface, while others are tied to 10 surface-mount-assembly (SMA) connectors. The four binary network connectors (BNCs) that are on the edge of the card provide the FPGA with a Society for Motion Picture and Television Engineers (SMPTE) video interface. Additionally, the card has a small array of switches and status LEDs that can be manipulated by the FPGA.
This kit is designed for testing PCI Express support versus developing an FPGA interface application, unless it can be supported by the board’s other connections. The software that comes with the kit includes Lattice Semiconductor’s ispLever. However, the free ispLever Starter version doesn’t support the LatticeECP2M found on the board. Therefore, most developers will likely buy a full license and probably switch to another platform, depending upon their design requirements. The kit also includes demo and PCI Express configuration software.
Another “starting point” kit is Altera’s $449 NIOS II Embedded Evaluation Kit, Cyclone III Edition (Fig. 3). This system highlights the 32-bit NIOS II soft-core processor and the Cyclone III EP2C25F324 FPGA. It comprises two boards: One houses the FPGA and some peripherals, and the other has the 800-by-480 LCD and additional connections including Ethernet.
The LCD touchscreen provides one user interface with a complementary set of buttons on the back of the unit. The system can run off of batteries, though a battery pack isn’t supplied. The size is a bit large for handheld devices, but it’s sufficient as a prototype and demonstration tool.
The system incorporates 16 Mbytes of flash and 32 Mbytes of double-data-rate (DDR) SDRAM, as well as 1 Mbyte of SRAM. Its storage-device (SD) card slot can hold NIOS II applications. The default application loaded into the FPGA provides an interface to SD-based applications.
The system comes with the free Web Editions of Quartus II and the ModelSim simulator, which don’t time out. Developers typically move to the full version when development turns serious, though. The package also includes InterNiche’s IPv4 Niche- Stack TCP/IP Network Stack. IPv6 and additional services are available from InterNiche.
Furthermore, the system comes out of the box ready for NIOS II software applications, though the platform is equally capable of handling FPGA design. This is a significant advantage for FPGA novices who want to concentrate on software design, but also need the flexibility and power of an FPGA. Additional IP may simply be an extra peripheral in the NIOS II collection of devices, or it may be a more ambitious design in which the processor tends to act as a control device rather than be the center of attention.
The kit offers a range of tutorials, including software-oriented examples that work with the Eclipse-based NIOS II integrated development environment (IDE). It also provides “FPGA design in one hour” that gets your feet wet with hardware IP.
Actel’s $99 Icicle is an even more compact design (Fig. 4). The hardware consists of two boards—a FlashPro 3 programmer/ debugger and the FPGA board. The design is compact enough for creating portable applications. In fact, the FPGA board can run off its own rechargeable lithium-ion battery. The system is designed to measure dynamic, static, and Flash*Freeze power requirements.
Continue on Page 3
Power Driven Layout (PDL) support within the Libero IDE tool suite helps reduce power consumption by up to 30%. The FPGA board holds a 125-kgate, 8- by 8-mm AGL125 Igloo FPGA. The chip consumes as little as 5 µW. There’s a blue or green 96- by 16-pixel organic LED (OLED) display. Also included is a USB-based serial interface.
A 40-pin edge connector delivers a sizable chunk of interface pins from the FPGA. This makes the platform very interesting from a prototype standpoint, because additional peripherals can be easily connected to the system. An optional daughtercard controls brushless dc and stepper motors.
Actel’s Libero IDE Gold edition comes with the hardware. Linux and Windows versions also are available. Designers who are looking to build in a modular fashion can try the free Core- Console IP Development Platform (IDP). With CoreConsole, blocks of IP can be stitched together using a graphical user interface (GUI) that’s integrated with Libero. SoftConsole provides access to ARM Cortex-M1, CoreMP7, and Core8051 soft cores. It is an Eclipse-based IDE for software development targeting the soft cores.
The Icicle’s FPGA is a bit small for most of the soft cores, and it lacks the on-chip or off-chip memory to do much in this arena. Still, smaller cores like Actel’s CoreABC controller will fit nicely. It’s also ideal for controller applications.
WIDE-RANGING FPGA SUPPORT
FPGA vendors obviously have their own chips in mind when they deliver development kits. In fact, these companies often have a number of kits for a particular chip family to address different application areas.
For example, the Xilinx Virtex-5 comes in a range of combinations. Its high end supports high-speed SERDES for PCI Express applications like Lattice Semiconductor’s board, while other versions with hard-core PowerPC processors can handle numbercrunching chores. A single kit or chip can’t fit all of these needs, so the vendor must provide a plethora of options.
Designers looking for alternative tools can turn to companies like Altium. The Altium Designer FPGA development tool supports a range of parts from Altera, Lattice Semiconductor, and Xilinx. Altium’s Desktop NanoBoard-NB1, which targets professional designers, is an excellent though expensive learning tool. The NB1 accepts modules with an FPGA, allowing designers to switch between vendors and chips.
Altium Designer reflects this flexibility, hiding the actual chip at a lower level. The high-level application design is portable between chips, leading to some interesting development scenarios because of particular FPGA characteristics. For example, some chips can be programmed faster than others. This permits development work on the fast programming platform and final testing and deployment on another chip, assuming that the application doesn’t employ special interfaces or target-chip characteristics.
Altium’s Innovation Station uses the same modules and development tools as the NB1 (Fig. 5). The primary difference is that the Innovation Stations are closer to end products than the open NB1. In fact, some companies have deployed products that use Innovation Stations. Granted, they aren’t as economical in large quantities compared to a custom design. But for small quantities and prototypes, it’s hard to beat.
Unfortunately, Altium is in the software business. Its products can be evaluated, but free versions comparable to those provided by FPGA vendors are unlikely. In fact, Altium takes advantage of the FPGA vendor tools by building its front end on top of these systems. From a developer’s perspective, the results are worth the cost. But for novices, it is a pricey option.
Avnet doesn’t make software or hardware, but it’s definitely in the business, providing a range of services in addition to distributing hardware such as FPGAs. The company also created its own line of evaluation and development kits for a number of vendors, including those in the FPGA space.
In addition, Avnet links some of its boards and kits to training sessions. Not too long ago, I attended a session on high-speed serial applications that address design and debugging tools plus SERDES configuration for Xilinx’s high-end parts (see “Get Up To Speed On Xilinx FPGAs,” ED Online 16378).
The $39 Xilinx Spartan-3A kit is one of the least expensive kits available from Avnet (Fig. 6). It contains a Xilinx XC3S400A Spartan-3A FPGA capable of supporting soft cores. The board has 128 Mbytes of serial flash and 32 Mbytes of NOR flash. A Cypress Semiconductor programmable systemon- a-chip (PSoC) sits between a number of interfaces and the FPGA, including a USB serial port and four CapSense capacitive switches. There’s also an I2C port and temperature sensor.
Continue on Page 4
A PSoC programmer is included, too, making this a PSoC development platform as well as a Xilinx FPGA development platform. Free development software from Cypress Semiconductor and the Xilinx ISE WebPack come with the package. Overall, the kit provides the basics. Sample applications are limited, but what do you expect for $39? Overall, it’s an inexpensive platform for prototyping.
DLP Design’s $189 DLP-FPGA fits in the low-cost development group (Fig. 7). When I tested this module, I was impressed by its functionality (see “Ready To Rock FPGA Development,” ED Online 18270). It’s based on the Xilinx Spartan 3E and includes Xilinx’s free tool chain. The module alone costs about $110.
The DLP-FPGA comes with its own manual that covers the hardware. There’s also an introduction to ISE WebPack. As a result, developers can get started quickly—but, like the Avnet kit, it doesn’t offer detailed tutorials or training materials. Novice FPGA developers will need to expend some effort in getting up to speed. On the other hand, more seasoned FPGA developers will find the platform well-suited for experimenting as well as deployment, albeit in small quantities.
ENHANCING THE MODEL
Most free tools in these kits, which nonetheless are robust, divide into two categories. The first is FPGA layout and design. The second, where appropriate, comprises software development tools for soft-core processors. You’ll also find a limited number of tutorials designed to provide a feel for the hardware and FPGA capabilities.
Developers looking for more advanced tools may turn to products like National Instruments’ LabVIEW and the Math- Works’ Matlab and Simulink. These choices provide high-level, model-based design interfaces that target software and FPGAs. LabVIEW and Simulink also are graphically oriented. Matlab is more of a textbased programming environment, though its output is often graphical. Translation of these designs into FPGA IP is automatic.
The hard part is getting it into the FPGA. In general, these tools have been set up to work with a limited number of evaluation or demo boards. It’s possible to link them to almost any platform, including products being developed, but this often requires another level of sophistication. This work is usually completed already for the software in the kits.
Yet this is the same kind of effort that will be required to move from this development environment to a target board that’s part of a product. So, it’s often useful to do this exercise on a kit with known characteristics before hitting the target.
Kits promise a faster start to projects and a solid prototyping platform. Some offer deployment capabilities. Choosing the right one can save time and money.
Need More Information?
Actel • www.actel.com
Altera • www.altera.com
Altium • www.altium.com
ARM • www.arm.com
Avnet • www.avnet.com
DLP Design • www.dlpdesign.com
Lattice Semiconductor • www.latticesemi.com
The MathWorks • www.mathworks.com
National Instruments • www.ni.com
Xilinx • www.xilinx.com