Digital Signal Processing Reference
In-Depth Information
requirements of the algorithm to be implemented, how to efficiently use the various
resources of the target device, and having the ability to quickly generate and tune
an efficient custom computing architecture. This chapter explores the capabilities
of current FPGA for implementing DSP applications, the types of computing
architectures which harness these capabilities best, and some examples of how these
systems may be built quickly and efficiently. In Sects. 2 and 3 , FPGA technology
and the major processing resources available on state-of-the-art FPGA pertinent to
DSP system implementation are described. Section 4 describes the classes of target
architecture and their associated design processes for FPGA DSP, whilst Sect. 5
describes the characteristics of modern approaches to enabling higher productivity
design processes for FPGA.
2
FPGA Technology
2.1
FPGA Fundamentals
The programmability of FPGA is based on two key principles: the use of pro-
grammable functional blocks, and programmable interconnect which allows multi-
ple blocks to be connected to form more complex logical functions. The conceptual
structure of a modern FPGA device, highlighting the key architectural components,
is given in Fig. 1 .
Modern FPGA are composed of four fundamental on-chip components:
1. Look Up Tables (LUTs)
2. DSP Units (DSPs)
3. Memories (RAMs)
4. Programmable Interconnect
5. Programmable Input/Output Pins
This current structure has grown from a classical FPGA structure composed
of LUT, interconnect and input/output pin resources. A LUT is a Read-Only-
Memory (ROM) which may be programmed to emulate logical functions by storing
the relevant output in the memory location corresponding to the inputs which
produce those outputs. Loading the data into each LUT on the chip is known as
configuring the FPGA. By interconnecting these LUTs, which perform arbitrary
logical functions, in an arbitrary manner using the programmable interconnect,
networks of LUTs may be created to implement any logical functions. The resulting
networks are then connected to the outside world via the programmable pins.
In the most recent generations of FPGA, the number of LUTs has grown steadily
to very large numbers; in tandem, FPGA architectures have diversified to include on-
chip units for high-performance arithmetic (DSPs) and memory storage (RAMs),
creating a highly diverse set of resources with which designers may construct
processing architectures. In the latest generations of FPGA, these resources place
 
Search WWH ::




Custom Search