19
DS204 November 10, 2004 www.xilinx.com 1 Product Specification © 2004 Xilinx, Inc. All rights reserved. All Xilinx trademarks, registered trademarks, patents, and further disclaimers are as listed at http://www.xilinx.com/legal.htm . All other trademarks and registered trademarks are the property of their respective owners. All specifications are subject to change without notice. NOTICE OF DISCLAIMER: Xilinx is providing this design, code, or information "as is." By providing the design, code, or information as one possible implementation of this feature, application, or standard, Xilinx makes no representation that this implementation is free from any claims of infringement. You are responsible for obtaining any rights you may require for your implemen- tation. Xilinx expressly disclaims any warranty whatsoever with respect to the adequacy of the implementation, including but not limited to any warranties or representations that this imple- mentation is free from claims of infringement and any implied warranties of merchantability or fitness for a particular purpose. Features Viterbi Decoder, jointly developed by L-3 Communications and Xilinx, reaches OC3 (155Mbps) data rates and higher Available for all Virtex™, Virtex-E, Virtex-II™, Virtex-II Pro™, Virtex-4™, Spartan-II™, Spartan™-IIE, and Spartan-3™ FPGAs Industry-standard constraint length 7, (G0,G1)=(171,133) or (133,171) compatible with Q1900, DVB, IEEE802.11a, IEEE802.16a, HiperAccess, HiperMan, INTELSAT IESS-308/309 Adaptive rate change via puncturing interface Best state logic in traceback reduces latency and improves Bit Error Rate (BER) up to 0.65dB at rate 7/8; necessary for TDMA burst modems using high code rates. Parameterizable options for soft data input, accumulated path metric, and best state widths Fully synchronous one-clock version (Viterbi1x, see Figure 2) for adaptive traceback length up to 126 Fully synchronous 2x clock version (Viterbi2x, see Figure 2) for reduced latency, lower power dissipation, and half Block RAM size; with adaptive traceback length of 48 or 96 The Viterbi2x version has a 29 clock latency for IEEE802.11a PLCP header 24-bit SIGNAL symbol using zero-tail termination control signals Normalization output for synchronization and indication of data link SNR Viterbi2x supports BER monitor Alternative branch metric inputs for Pragmatic Trellis Coded Modulation (PTCM) Erasure capability of framing/synchronization patterns VHDL source code or netlist distribution with VHDL channel model for BER simulation Incorporates Xilinx Smart-IP™ technology for maximum performance 0 IEEE802-Compatible Viterbi Decoder v1.1 DS204 November 10, 2004 0 0 Product Specification LogiCORE™ Facts Core Specifics Supported Device Family Virtex, Virtex-E, Virtex-II, Virtex-II Pro, Virtex-4, Spartan-II, Spartan-IIE, Spartan-3 Resources Used See Table 9 and Table 9 Special Features RPM Core Provided with Core Documentation Product Specification Design File Formats VHDL and EDIF Constraints File UCF Verification VHDL Testbench Instantiation Template VHDL Wrapper Reference Designs & application notes None Additional Items None Design Tool Requirements Xilinx Implementation Tools ISE 6.1.03i or later Verification ModelSim PE 5.4e Simulation ModelSim PE 5.4e Synthesis Synplify Pro 7.1 Support Support provided by Xilinx, Inc.

Xilinx IEEE802-Compatible Viterbi Decoder v1 · PDF file · 2018-01-26• VHDL source code or netlist distribution with VHDL channel model for BER simulation • Incorporates Xilinx

  • Upload
    doliem

  • View
    232

  • Download
    2

Embed Size (px)

Citation preview

  • Features Viterbi Decoder, jointly

    developed by L-3 Communications and Xilinx, reaches OC3 (155Mbps) data rates and higher

    Available for all Virtex, Virtex-E, Virtex-II, Virtex-II Pro, Virtex-4, Spartan-II, Spartan-IIE, and Spartan-3 FPGAs

    Industry-standard constraint length 7, (G0,G1)=(171,133) or (133,171) compatible with Q1900, DVB, IEEE802.11a, IEEE802.16a, HiperAccess, HiperMan, INTELSAT IESS-308/309

    Adaptive rate change via puncturing interface

    Best state logic in traceback reduces latency andimproves Bit Error Rate (BER) up to 0.65dB at rate7/8; necessary for TDMA burst modems using highcode rates.

    Parameterizable options for soft data input, accumulated path metric, and best state widths

    Fully synchronous one-clock version (Viterbi1x, see Figure 2) for adaptive traceback length up to 126

    Fully synchronous 2x clock version (Viterbi2x, see Figure 2) for reduced latency, lower power dissipation, and half Block RAM size; with adaptive traceback length of 48 or 96

    The Viterbi2x version has a 29 clock latency for IEEE802.11a PLCP header 24-bit SIGNAL symbol using zero-tail termination control signals

    Normalization output for synchronization and indication of data link SNR

    Viterbi2x supports BER monitor

    Alternative branch metric inputs for Pragmatic Trellis Coded Modulation (PTCM)

    Erasure capability of framing/synchronization patterns

    VHDL source code or netlist distribution with VHDL channel model for BER simulation

    Incorporates Xilinx Smart-IP technology for maximum performance

    0

    IEEE802-CompatibleViterbi Decoder v1.1

    DS204 November 10, 2004 0 0 Product Specification

    LogiCORE Facts

    Core Specifics

    Supported Device Family

    Virtex, Virtex-E, Virtex-II, Virtex-II Pro, Virtex-4, Spartan-II, Spartan-IIE, Spartan-3

    Resources Used See Table 9 and Table 9

    Special Features RPM Core

    Provided with Core

    Documentation Product Specification

    Design File Formats VHDL and EDIF

    Constraints File UCF

    Verification VHDL Testbench

    Instantiation Template VHDL Wrapper

    Reference Designs & application notes

    None

    Additional Items None

    Design Tool Requirements

    Xilinx Implementation Tools

    ISE 6.1.03i or later

    Verification ModelSim PE 5.4e

    Simulation ModelSim PE 5.4e

    Synthesis Synplify Pro 7.1

    Support

    Support provided by Xilinx, Inc.

    DS204 November 10, 2004 www.xilinx.com 1Product Specification

    2004 Xilinx, Inc. All rights reserved. All Xilinx trademarks, registered trademarks, patents, and further disclaimers are as listed at http://www.xilinx.com/legal.htm. All other trademarks and registered trademarks are the property of their respective owners. All specifications are subject to change without notice.NOTICE OF DISCLAIMER: Xilinx is providing this design, code, or information "as is." By providing the design, code, or information as one possible implementation of this feature, application, or standard, Xilinx makes no representation that this implementation is free from any claims of infringement. You are responsible for obtaining any rights you may require for your implemen-tation. Xilinx expressly disclaims any warranty whatsoever with respect to the adequacy of the implementation, including but not limited to any warranties or representations that this imple-mentation is free from claims of infringement and any implied warranties of merchantability or fitness for a particular purpose.

    www.xilinx.comhttp:www.xilinx.com/legal.htmhttp://www.xilinx.com/legal.htmhttp://www.xilinx.com/legal.htm

  • IEEE802-Compatible Viterbi Decoder v1.1

    2

    Figure Top x-ref 1

    Figure 1: Virtex2x Decoder VHDL Interface Signals

    Figure Top x-ref 2

    Figure 2: Viterbi1x Decoder VHDL Interface Signals

    xip2120

    L16tcmidata(widthd-1:0)qdata(widthd-1:0)ieraseqeraseerasenbvs0_nvs1_ntbs0

    hdenc0hdenc1h00_tcm(widthd:0)h01_tcm(widthd:0)h10_tcm(widthd:0)h11_tcm(widthd:0)secin[3:0]

    resetceclkclk2

    tbdoutenaout

    nrmihard

    qhard

    secout[3:0]tbd1outtbqout

    xip2119

    tblength[6:0]tcmidata(widthd-1:0)qdata(widthd-1:0)ieraseqeraseerasenbvs0_nvs1_n

    h00_tcm(widthd:0)h01_tcm(widthd:0)h10_tcm(widthd:0)h11_tcm(widthd:0)

    resetceclk

    tbdout

    nrm

    www.xilinx.com DS204 November 10, 2004Product Specification

    www.xilinx.com

  • IEEE802-Compatible Viterbi Decoder v1.1

    DS204 NovProduct Sp

    Functional DescriptionThe core implements a Viterbi Decoder for decoding convolutionally encoded data. The basic architec-ture of a convolutional encoder is shown in Figure 6. In the convolutional encoder, the incoming data isbrought into the constraint register a bit at a time. The two required output bits are then generated bymodulo-2 addition of the required bits from the constraint register. The bits to be XORed are selected bythe convolutional codes as shown in Figure 6. The Viterbi core decodes the data generated by the con-volutional encoder that has a constraint length k=7 and the two generator polynomials G0=171 andG1=133 as shown in Figure 6. Simply swapping idata and qdata inputs allows the same Viterbi decodercore to decode data encoded with generator polynomials G0=133 and G1=171. The Viterbi core has afully parallel architecture, which provides fast data throughput. The core also supports puncturingrates n/(n+1) through an external interface that generates the signals vs0_n and vs1_n. Puncturinggives a large range of transmission rates and reduces the bandwidth requirement on the channel. Seethe Puncturing section. The decoder core consists of three main blocks as shown in Figure 7.

    Branch Metric Calculation

    The first block is the Branch Metric Unit (BMU). This module costs the incoming data using a Euclideanmetric. The incoming data is soft coded with a parameterizable bit width that can be set to any value.It is possible to bypass the BMU with external PTCM branch metrics. The data format of the Viterbi coreis offset binary. The conversion between offset two's complement and offset binary is shown in Table 1.For offset two's complement, the analog signal midpoint is between 000 and 111. For offset binary, theanalog signal midpoint is between 011 and 100. Even though the soft data representation is offset; thisdoes not imply the analog input signal should have any DC offsets. Any analog signal DC offset beforeconversion to soft data inputs will result in reduced BER and higher normalization rates, and thusshould be avoided.

    Add Compare Select

    The second block in the decoder is the Add Compare Select unit (ACS). This module selects the optimalpath to each state in the Viterbi trellis (survival path). Figure 8 shows one stage in the Viterbi trellis fora constraint length 3 decoder. The ACS module decodes for each state in the trellis, thus for a constraintlength 7 decoder that has 64 states there are 64 sub-blocks in the ACS block. See the section on CoreResource Utilization for further characterization of the decoder. The ACS has a Best State Calculation

    Table 1: Data Format for Soft Width 3

    Offset Twos Complement Offset Binary

    Strongest 0 011 000

    010 001

    001 010

    Weakest 0 000 011

    Weakest 1 111 100

    110 101

    101 110

    Strongest 1 100 111

    ember 10, 2004 www.xilinx.com 3ecification

    www.xilinx.com

  • IEEE802-Compatible Viterbi Decoder v1.1

    4

    (BSC) module which finds the state with the smallest accumulated path metric to start each tracebackblock.

    The BSC module output, used in traceback, improves BER up to 0.65dB for rate 7/8 compared to Qual-comm Q1900 in continuous mode; improvement is greater for burst operation. Generic Viterbi decod-ers without a BSC module require longer traceback lengths to achieve equivalent BER performance.Increasing traceback lengths results in increased Viterbi decoder latency, which is unacceptable inmany burst/TDMA applications. In applications with high code rates, the BSC module again is funda-mental in reducing traceback length for any given BER and latency requirement. If latency and trace-back length are not critical requirements, the BSC module can be removed for substantial size savings,as described in the core utilization section.

    For applications like IEEE802.11a with zero-tail packet termination, the input control signal tbs0 allowsthe user to bypass BSC output for the last block in the packet and substitute zero state address insteadof best state address. This combination of zero state for the last block and best state addresses for allother blocks in the packet reduces latency and provides higher BER performance for other blocks in thepacket.

    Traceback

    The third block in the decoder is the traceback module (see Figure 7). This module finds the optimalpath through the Viterbi trellis by tracing through a fixed number of ACS results. For the two-clock ver-sion, the recommended traceback length is 48 for non-punctured codes and 96 for punctured codes. Forthe one-clock version, the traceback length can be up to 126 for Virtex-II but is limited to 62 for non Vir-tex-II families. The traceback block is implemented in block RAM. For additional details, see the CoreResource Utilization section.

    Figure Top x-ref 3

    Figure 3: Convolutional Encoder of Constraint Length 7

    www.xilinx.com DS204 November 10, 2004Product Specification

    www.xilinx.com

  • IEEE802-Compatible Viterbi Decoder v1.1

    DS204 NovProduct Sp

    Puncturing

    Data can be punctured prior to transmission. The convolutional encoder is always a rate encoder, 2bits output for every 1 bit input. After encoding, certain bits of the rate encoded data are punctured(or deleted) and not tr