91192v00 System Level Design
91192v00 System Level Design
91192v00 System Level Design
ignal processing has traditionally hours instead of the months or even years phase shift across the audio frequency range
FPGA Implementation
The Xilinx System Generator for DSP is an
extension of Simulink that provides design
entry, data path definition, bit- and cycle-true
simulations, test bench generation, hardware
co-simulation and VHDL code generation.
The tool’s block library maps to Xilinx DSP
LogiCores, which are optimized implementa-
tions of typical DSP functions such as filters,
direct digital synthesizer and FFT. Engineers
pick blocks from the library, define the fixed
point parameters (word size, binary point posi-
tion, rounding, saturation), and hook them
together like standard Simulink blocks.
Gateways are used to convert between the Figure 3 Detail is added to the design to create the transmitter and
standard Simulink and the Xilinx-specific data receiver processing, which shares a common set of local oscilla-
types used by the Xilinx blocks. tors. This top-level model captures the five main subsystems
As Figure 4 indicates, there are also blocks needed to create the radio. Each block contains several levels
for Lyr SignalMaster hardware, marked here as of hierarchy, getting down to fixed-point implementation details
“LSP.” The ADC (red) represents the 64M where required. The light red blocks handle the 64 M Samples/s
data rates and will therefore be implemented in the FPGA. The
Samples/s converter, while the DAC (red) is
green blocks handle data at both 15.625 and 7.8125K
the 64M Samples/s DAC. The gate_1 gateway
Samples/s, and will be implemented in the DSP chip.
block is a 32-bit register that the DSP can write
to change the frequency of the direct digital
synthesizer in the RF Local Oscillator block.
The down-converted IQ stream from the
Rx_Mix_Filters is fed to a 32-bit gateway that
interfaces to the TI DSP. On the transmit side,
another gateway (IQ from DSP) takes data
from the TI DSP and drives the IQ input of the
TX_Filters_Mix block. This diagram shows
the top level; further detail is contained within
each block.
Once the data paths and processing are
defined, simulation reveals whether the design
meets the objectives of dynamic range, and
whether spurious responses introduced by the
fixed-point implementation have been rejected.
If not, chances are that more bits must be used
in the filter coefficients and/or data paths. Once
the performance objectives are met, you can
generate the approximately 200 files of VHDL
required to implement the design.
It is then a matter of using the normal
Xilinx tool flow of synthesis, place and rout,
and bit-stream generation to program the Figure 4 The FPGA signal processing portion of the design is simulated to
FPGA. This process requires virtually no user bit- and cycle-true accuracy by using the Xilinx System Generator
intervention and bit-stream generation can be for DSP in The MathWorks Simulink environment. Data path size,
accomplished with a single mouse click. filter coefficient quantization, and all fixed-point attributes are
One of the more interesting reports that can defined using parameterized blocks. The LSP blocks represent
be generated is a “floor plan” of the FPGA gateways to and from the DSP chip (cyan) while the red block rep-
design. The digital frequency translator con- resents the high-speed ADC and DAC hardware on the Lyr
sumed virtually all (95%) of the FPGA. The SignalMaster development hardware.