12.12.2012 Views

Xcell Journal: The authoritative journal for programmable ... - Xilinx

Xcell Journal: The authoritative journal for programmable ... - Xilinx

Xcell Journal: The authoritative journal for programmable ... - Xilinx

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

System Generator <strong>for</strong> DSP<br />

<strong>The</strong> <strong>Xilinx</strong> System Generator tool suite<br />

was employed to implement a majority of<br />

the J.83 modulator design. System<br />

Generator is a visual dataflow design<br />

environment based on <strong>The</strong> MathWorks<br />

Simulink ® visual modeling tool set. This<br />

programming interface allows you to<br />

work at a suitable level of abstraction<br />

from the target hardware plat<strong>for</strong>m and<br />

use the same model – not only <strong>for</strong> simulation<br />

and verification but also <strong>for</strong> FPGA<br />

implementation.<br />

System Generator blocks are bit- and<br />

cycle-true behavioral models of FPGA<br />

Internet<br />

TV Broadcast<br />

DIGITAL SIGNAL PROCESSING<br />

This programming interface allows you to work at a suitable level of<br />

abstraction from the target hardware plat<strong>for</strong>m and use the same model.<br />

MPEG<br />

Framer<br />

F<br />

I<br />

F<br />

O<br />

MPEG F<br />

I<br />

Framer & F<br />

Randomizer O<br />

Web &<br />

Application<br />

Servers<br />

Receivers<br />

MPEG<br />

Encoders<br />

Remultiplexers<br />

(StatMuxes)<br />

RS<br />

Encoder<br />

RS<br />

Encoder<br />

Backplane (e.g. Fibre Channel)<br />

intellectual property components, or<br />

library elements. A library-based approach<br />

results in design cycle compression in<br />

addition to generating area-efficient highper<strong>for</strong>mance<br />

circuits. Together with<br />

model features such as data-type propagation<br />

and the extensive virtual instruments<br />

that are part of the Simulink libraries, the<br />

environment facilitates rapid design space<br />

exploration, together with powerful<br />

mechanisms <strong>for</strong> model debugging.<br />

MATLAB ® scripts from <strong>The</strong><br />

MathWorks programmatically generate<br />

custom VHDL and project files based on<br />

user-defined parameters.<br />

Cable Head-End Customer Premise<br />

Convolutional<br />

Interleaver<br />

Convolutional<br />

Interleaver<br />

Concatenated FEC<br />

CMTS<br />

Router<br />

Video<br />

Servers<br />

Modulators/<br />

Transmitters<br />

Randomizer<br />

Byte to<br />

Symbol &<br />

Diff. Encoder<br />

F<br />

I<br />

F<br />

O<br />

Frame Sync<br />

Insertion &<br />

TCM<br />

Symbol<br />

Mapper<br />

F<br />

I<br />

F<br />

O<br />

F I<br />

F<br />

O<br />

Cable<br />

Modem<br />

Set Top<br />

Box<br />

Figure 1 – Cable network (J.83 modulator fits in the cable head-end modulator/transmitter block)<br />

Figure 2 – J.83 Annex B functional block diagram<br />

Concatenated FEC<br />

Figure 3 – J.83 Annex A/C functional block diagram<br />

RRC<br />

RRC<br />

J.83 in System Generator <strong>for</strong> DSP<br />

<strong>The</strong> J.83 specification defines the <strong>for</strong>ward<br />

error correction (FEC) and baseband modulation<br />

with pulse-shaping characteristics. <strong>The</strong><br />

J.83 Annex B FEC section (Figure 2) uses a<br />

concatenated coding technique with four<br />

processing layers, comprising an RS encoder,<br />

convolutional interleaver, randomizer followed<br />

by a frame sync insertion block, and<br />

trellis-coded modulation (TCM). <strong>The</strong> J.83<br />

Annex A and Annex C (Figure 3) have identical<br />

FEC processing stages, comprising an<br />

RS encoder, convolutional interleaver, and a<br />

byte-to-symbol differential encoder, followed<br />

by a symbol mapper.<br />

<strong>The</strong> System Generator <strong>Xilinx</strong> library, or<br />

block set, is abundantly populated with IP<br />

that enables rapid design and simulation of<br />

such a system. <strong>The</strong> tokens required to construct<br />

the J.83 FEC section – as well as the<br />

filter blocks required to construct pulseshaping<br />

filters – are available within the<br />

library browser. <strong>The</strong> underlying circuit of<br />

each of these tokens is optimized in area and<br />

speed to suit the <strong>Xilinx</strong> family of devices.<br />

Each of these elements is conveniently<br />

customizable to be compatible with the<br />

precise specification of the J.83 standard. It<br />

is then a simple matter of using these customized<br />

library elements to build out the<br />

circuit required.<br />

For example, you can obtain the<br />

(204,188) RS encoder required <strong>for</strong> J.83<br />

Annex A/C by using the <strong>Xilinx</strong> Reed<br />

Solomon encoder block, with the Code<br />

Specification parameter set to DVB.<br />

Similarly, the <strong>Xilinx</strong> interleaver deinterleaver<br />

block is directly used in the design,<br />

with the mode set to Interleaver and the<br />

Number of Branches and Length of<br />

Branches set to 12 and 17, respectively.<br />

This results in an exact match to the<br />

requirements of the interleaver in the J.83<br />

A/C specification. Using the visual graphic<br />

means of design entry in System Generator,<br />

these blocks are easily connected to each<br />

other and to the control circuitry that is<br />

part of the design.<br />

52 <strong>Xcell</strong> <strong>Journal</strong> Winter 2004

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!