[Ideas For Design]
For Checking Software Without Hardware, FPGAs Are The Answer
Today's FPGAs have the muscle to take on your ASIC/SoC prototyping chores.
David Maliniak
ED Online ID #19766
October 2, 2008
Copyright © 2006 Penton Media, Inc., All rights reserved. Printing of this document is for personal use only.
Reprints
An age-old truism in the
system design realm is
that the software is always
ready to be checked out
before first ASIC silicon
is in hand. This leaves the
members of the design
team with an equally ageold
conundrum: How are they to verify their first
crack at an application stack and associated drivers
without hardware to run them on? Waiting until that
first silicon comes from the fab is an uncomfortable
and often untenable option.
The answer, of course, is prototyping with FPGAs,
and it has been for some time. Fabricated as they are
on advanced silicon processes, today’s FPGAs have
more than enough performance to handle running the
signal-processing algorithms, the drivers, the operating
system (OS), and even applications on top of the
OS. There are other ways of approaching this process
with more traditional verification methodologies
such as simulation and emulation, but they can be too
slow for most teams.
Given the capabilities of today’s FPGAs (Altera’s
Stratix IV family offers up to 680k logic elements),
some design teams may be tempted to design their
own prototyping boards. This was common some
years back, given that most designers tend to feel,
with some justification, that they’re closest to their
own design and thus are
best equipped to design a
prototyping vehicle.
If the ASIC design
will indeed fit into
one FPGA, it’s probably
safe to go this
route. But if the design
must be partitioned
across multiple FPGAs,
this is not necessarily
a wise route to take.
Designing prototyping
boards is a full-time
endeavor in its own
right, and you’re probably better off spending your
time debugging the ASIC itself rather than the board
you’re trying to design to prototype it.
Consequently, there are a number of commercially
available FPGA prototyping products designed for
exactly this purpose, often complete with the software
required to properly partition your design. Such
commercial boards enable systems houses to functionally
verify very large ASIC designs of well over
10 million equivalent ASIC gates.
INTERFACING TO REAL-WORLD STIMULUS
For example, GiDEL’s PROCstar III board packs
up to four of Altera’s Stratix III FPGAs (Fig. 1).
That’s enough capacity to handle pipelined systemon-
a-chip (SoC) designs up to
12 million ASIC gates. If
that’s not enough for your
design, multiple boards
can be combined for even
greater capacity.
The PROCstar III
boards also illustrate
another important facility
of FPGA boards in
the prototyping realm,
and that is their ability
to handle real-world
interfaces for simulation of various kinds of stimulus.
Many applications, including wireless and wireline,
require designers to feed the prototype with simulated
network traffic to evaluate their performance,
while other applications must be fed with streaming
audio/video for similar purposes. As do many commercially
available FPGA boards, the PROCstar III
boards accept a variety of plug-in daughterboards for
communication protocols such as CameraLink, DVI,
and Gigabit Ethernet.
Another prototyping system that exemplifies the
performance available in commercial offerings is the
latest member of the HAPS family from Synopsys’
Synplicity Business Group. The HAPS-51T is based
on Xilinx’s Virtex-5 LX330T FPGAs. Like GiDEL’s
product, it’s a suitable prototyping vehicle for applications
using high-speed serial interfaces like PCI
Express, SATA, and Gigabit Ethernet.
The HAPS-51T takes advantage of the LX330T
devices’ 24 RocketIO GTP transceivers and adds
on-board DDR2 memory. Furthermore, to achieve
an expandable and modular architecture, the board
uses what Synopsys calls the HapsTrak high-speed
daughterboard connectivity scheme. HapsTrak comprises
a set of guidelines for pinouts and mechanical
characteristics that help ensure compatibility with
earlier and future generations of HAPS motherboards
and daughterboards.
Sporting one of the industry’s highest capacities, the DINI Group’s
DN7006K10PCIe prototyping system
handles up to 15 million equivalent
ASIC gates while providing chip-tochip
low-voltage differential signal
(LVDS) speeds of 1.2 Gbits/s. Based
on Altera’s Stratix III FPGAs, the
board comes with up to six FPGAs that
allow users to run their designs at nearreal-
time clock speeds. The FPGAs,
which come in 1760-pin packages,
provide up to 1120 I/Os per chip. The
board packs a host of connectivity features
as well as four DDR2 memories.
Reference designs, diagnostics, and
models for partitioning are included.
One of the more capable lineups
in the marketplace is that of EVE,
whose family of FPGA-based emulation
systems comes complete with a
compiler that automatically converts
ASIC design constructs into FPGA
constructs. This eliminates any need
to change the ASIC’s RTL. Users gain
full visibility into all signals at runtime
without recompiling, enabling quick
debugging.
The latest addition to EVE’s line,
dubbed ZeBu-Personal, is aimed at
block-level verification and the system-
integration phase of the design
cycle, in which multiple logic blocks
and software must be verified together
(Fig. 2). Hardware design and software
development teams can share the
same system and design representation,
and they can easily collaborate
when debugging complex hardware/
software interactions.
ZeBu-Personal handles up to 5 million
ASIC gates and offers up to 512
Mbytes of design memory. Using
Xilinx’s Virtex-5 LX330 FPGAs, the
system delivers emulation speeds of up
to 60 MHz (design clock; system clock
runs at 300 MHz). The system permits
co-simulation with the industry’s leading
RTL simulators (VCS, NC-Sim,
and ModelSim) as well as debug with
Springsoft’s Verdi debug suite.
|