Board reprograms its FPGA using USB -

Board reprograms its FPGA using USB


Want to learn about field programmable logic arrays (FPGAs)? Need a small, ready-to-go embeddable product that can change the contents of its on-board Altera FPGA on-the-fly? Then check out this low-cost product from instrumentation house Saelig Co. (Pittsford, New York).

At the heart of Saelig's interesting board-level system is an existing Multi Protocol Synchronous Serial Engine (MPSSE) chip from Future Technology Devices International (Glasgow, Scotland).

FTDI's FT2232C silicon is the third generation of a USB UART/FIFO device with the entire USB protocol handled on-chip; no USB-specific firmware programming is required.

The surface-mountable FT2232C touts two multi-purpose UART/FIFO controllers that can be configured individually in several modes. As well as UART and FIFO interfaces, and a bit-banging I/O mode, the FT2232C includes the MPSSE interface designed specifically for synchronous serial protocols used in JTAG and for the SPI bus.

In the Saelig application, the FTDI FT2232C device programs and reprograms the board's Altera ACEX 1K Series FPGA (a Type EP1K10TC100-3FPGA is housed) across a Universal Serial Bus (USB) connection. The technique permits reprogramming the 10,000-gate FPGA in a fraction of a second.

Dubbed the MORPH-IC , the re-programmable board can be used in applications such as instrumentation or communications subsystems where flexibility and in-circuit hardware upgradability features are needed. It can be either jumper-selectable as self-powered from the USB, or powered by an external source.

Since the product also comes with FPGA development software and example code, it can also be used as a classroom training tool.

Less-Than 200-ms Programming Time

Not only can the contents of the FPGA be defined over USB on initialization by loading from an Altera format configuration file, but the contents of the FPGA can also be re-loaded and/or re-defined—almost in realtime (under 200-ms). This speed permits a single product to morph between different hardware configurations under software control from an application.

Click for larger block diagram

A second channel of the FT2232C chip is also hardwired to the I/O pins of the FPGA. These can be used by the FPGA to communicate with the application software over USB at transfer rates of up to 1-Mbyte/s.

The compact MORPH-IC module's power and I/O pins are also brought out to two 20-pin 100-mil-pitch headers on the underside. The module can also be plugged into a circuit board using readily available mating connectors (two are included).

Also on the module are 3.3-V and 2.5-V voltage regulators required by the FPGA. The 2.5-V regulator provides the power to the FPGA core logic. The 3.3-V regulator provides power to the FPGA IO cells.

The output of the 3.3-V source is also available through pins on the board's connectors, and can supply up to 250-mA to external logic. The 3.3-V supply is switched off during USB suspend/sleep , where current drops to less than 0.5-mA.

There's also a 50-MHz CMOS oscillator that's hardwired to one of two clock pins. Power control to meet USB's suspend current requirements is provided by the FT2232C working in conjunction with an on-board MOSFET power switch. The hardware also includes LEDs to indicate USB driver enumeration and successful FPGA device programming. A 93C56 configuration EEPROM rounds out the hardware.

Software Support

Saelig supplies its MORPH-IC board with USB drivers for Windows 98, Windows ME, Windows 2000 , and Windows XP . The company also ships the product with VHDL code examples, an FPGA loader program (including Delphi source code), and a Windows DLL interface. The latter can be used to interface to most common Windows programming languages.

Examples of DLL interfacing in Visual C++, VisualBASIC , and Borland Delphi are provided. Linux drivers and a Linux version of the FPGA loader written in Kylix are also provided. An example project demonstrating I/O over USB is included with VHDL and Delphi source code.

A CD-ROM disk containing Quartus II Software Starter Suite is also included. This disk contains free Altera Quartus II Web Edition software. It provides an environment for programmable logic device (PLD) design.

The PLD Package

The PLD package includes schematic- and text-based design entry, HDL synthesis, place-and-route, verification, and simulation. This package also runs under Windows NT, Windows 2000, and Windows XP, and can be used to develop code for the on-board FPGA. However, registration with Altera is required in order to run this package.

The MORPH-IC board is available now for $125 a pop, but a quantity discount structure is also available for those using the device in low- medium-volume designs.

For more details, contact Alan Lowne at Saelig Co. Inc., 1160-D2 Pittsford-Victor Rd., Pittsford, New York 14534. Phone: 585-385-1750. Fax: 585-385-1768. E-mail:

Or, visit Saelig's Web site.

Contact Future Technology Devices International Ltd., 373 Scotland St., Glasgow G5 8QB Scotland. Phone: +44 141 429 2777. Fax : +44 141 429 2758. E-mail:

Click here to go to Future's Web site.

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.