Vendor: Commsonic Ltd Category: Channel Coding

Viterbi decoder (burst-mode),

The CMS0002 Viterbi Decoder core implements Viterbi’s algorithm for maximum likelihood decoding of non-feedback convolutional cod…

Overview

The CMS0002 Viterbi Decoder core implements Viterbi’s algorithm for maximum likelihood decoding of non-feedback convolutional codes. Applications include DOCSIS (J.83B), DVB T, 802.11a and 802.16.

The basic 1/2 rate convolutional encoder and decoder are shown above. For each input bit, two encoded bits are produced. The rate can be increased to 2/3, 3/4, 5/6, or 7/8 by non transmission (puncture) of certain bits. Punctured codes lose coding gain as the redundant content decreases.

The encoded X and Y bits are transmitted through a noisy channel. The received X and Y values are measured then presented as soft decision values to the decoder.

Zero Flush

Both 802.11a and 802.16 specify this mode of operation. With this approach, the convolutional encoder is guaranteed to be in state zero at both the beginning and end of the burst. This is especially important at the end of the burst because there is no further history to trace back from.

To support this mode, state metrics are initialised at the beginning of the burst such that all possible successor states will ultimately be based on state 0. A description of the processing steps follows:

  • State Metric Unit. This block maintains a measure of probability for each possible encoder state. As each soft pair is processed, the SMU produces the most likely received data bit for each state (the Branch Data vector).
  • Traceback Unit. This block provides a history of most likely state transitions. This allows traceback from any current state to ever more likely predecessor states.

After a certain depth the optimum state becomes known and traceback from this point produces reliable data. The required minimum traceback depth depends on the code parameters, puncture rate and soft-decision width.

At the end of the burst, extra zeros are appended to the data stream to flush the encoder to its known final state of 0. The known final state gives a valid starting point for traceback in the decoder. When the CodeBlockActive input goes to zero, the decoder forces a final state of zero and begins traceback of the data.

Memory Configuration

The core uses a novel memory architecture for the Traceback Unit. Traceback is performed in chunks of configurable size. These are arranged in a ring with each slice receiving a Best End State and producing a Best Initial State. The number of traceback slices (TBS) varies depending on ChunkSize and TBlength.

This allows separate optimisation for FPGA or ASIC. Often ASIC memory has a large minimum size (e.g. 64 words) with each RAM cell requiring individual attention and consequently a small number of larger RAM cells are appropriate.

Conversely, for FPGA applications, RAMs may be built from logic cells and the total bit count may be minimised by using a larger number of small RAM cells.

Note, that the total group delay through the decoder is reduced by using smaller ChunkSize. Refer to the Synthesis Controls section for further information

Key features

  • Programmable constraint length.
  • Programmable generator coefficients.
  • Supports variable puncture rates. External logic provides puncture pattern. Internal logic calculates modified branch metrics.
  • Zero-flush mode for 802.11a.
  • Continuous mode for DOCSIS, DVB-T and many other applications.
  • Configurable traceback length.
  • Configurable soft-decision width.
  • Flexible memory architecture suitable for FPGA or ASIC.

Block Diagram

What’s Included?

  • Available in vector-matched C++, VHDL, or synthesised netlist

Specifications

Identity

Part Number
CMS0002
Vendor
Commsonic Ltd
Type
Silicon IP

Files

Note: some files may require an NDA depending on provider policy.

Provider

Learn more about Channel Coding IP core

Practical Considerations of LDPC Decoder Design in Communications Systems

This paper covers some practical aspects of designing the LDPC decoder starting from comparison between different techniques, different decoders parameters or standards, the effect of those parameters on the LDPC performance, also it discusses the algorithm selection process, and floating point implementation process.

Audio Transport in DisplayPort VIP

DisplayPort uses Secondary Data Packets (SDPs), which are transported over the Main-Link that are not main video stream data. This allows it to carry audio and video simultaneously. The VIP supports audio transmission both in the original mode as defined in the specification as well as just as any other SDP being transmitted.

Frequently asked questions about Channel Coding IP cores

What is Viterbi decoder (burst-mode),?

Viterbi decoder (burst-mode), is a Channel Coding IP core from Commsonic Ltd listed on Semi IP Hub.

How should engineers evaluate this Channel Coding?

Engineers should review the overview, key features, supported foundries and nodes, maturity, deliverables, and provider information before shortlisting this Channel Coding IP.

Can this semiconductor IP be compared with similar products?

Yes. Buyers can compare this product with similar semiconductor IP cores or IP families based on category, provider, process options, and structured technical specifications.

×
Semiconductor IP