Home > Products > Intellectual Property > Lattice IP Cores > Block Convolutional Encoder
Block Convolutional Encoder
Overview
Convolutional encoding is a process of adding redundancy to a signal strea m to
provide error correction capability. The figure below shows a digital communication
system using the Convolutional Encoder. The digital data stream (such as vo ice,
image or any packetized data) is first convolutionally encoded, then modulated and finally transmitted through a channel.
Lattice’s Block Convolutional Encoder IP core is a parameterizable core for convolutional encoding of continuous or
burst input data streams. The core allows different code rates and constraint lengths and supports puncturing. It can
operate in continuous or block mode, whichever is required by the channel. In block mode, either Zero Flushing or Tail
Biting codes can be generated. All the configurable parameters, including operation mode, termination mode, generator
polynomials, code rate, and puncture pattern, can be defined by the user to suit the needs of the application. The code
rate and the puncture pattern can also be varied through the input ports dynamically, providing further flexibility for the IP
usage. Lattice’s Block Convolutional Encoder IP core is compatible with many networking and wireless standards that use
convolutional encoding.
Features
Compatible with the following standards: IEEE 802.16-2004, IEEE 802.11a,
3GPP, 3GPP2 and DVB-S
Supports both continuous and block encoding
Variable constraint length from 3 to 9
Supports both Zero Flushing and Tail Biting termination modes
Supports both internal and external zero padding in Zero Flushing mode
Supports both internal and external tail adding in Tail Biting mode
Supports a wide range of programmable code rates (input_rate/output_rate)
User defined generator polynomials
Output puncturing with unrestricted, user programmable puncture pat tern s
Supports dynamic puncturing mode, in which both the code rate and
puncture patterns can be varied through ports
Punctured code rate can be programmed to k/n, where k can be from 2 to 12
and n can be from k+1 to 2k-1; additionally, rate 1/2 is supported in dynamic
puncture mode
Handshake signals to support breaks in data stream or encoder busy
conditions
Performance and Resource Utilization
IPexpress User-Configurable Mode SLICEs LUTs Registers sysMEM EBRs I/Os fMAX (MHz)
Config 1 41 44 48 - 13 482
LatticeECP31
Pa
e 1 of 3Block Convolutional Encode
10/6/2011htt
://www.latticesemi.com/
roducts/intellectual
ro
ert
/i
cores/blockconvolutionalenco
...