|
|
Performs
TPC decoding as defined in the IEEE 802.16 and 802.16a standards.
Block sizes from
64 bits to 4 Kbits, 64 possible product codes.
Support of external
early termination + optional internal early termination at even/odd
half iterations for higher throughputs.
The
following rates had achieved for FPGAs:
Single-SISO option
achieves a data rate of 9 Mbps with five iterations using (64,57)^2
code, average rate can achieve a 28 Mbps.
Four-SISO option
achieves a data rate of 36 Mbps with five iterations using (64,57)^2
code, average rate can achieve a 112 Mbps.
Eight-SISO option
achieves a data rate of 72 Mbps with five iterations using (64,57)^2
code, average rate can achieve a 225 Mbps.
Sixteen-SISO option
achieves a data rate of 144 Mbps with five iterations using (64,57)^2
code, average rate can achieve a 450 Mbps.
Single-SISO option
requires 721 FFs, 74,668 RAM bits (single port).
Fully synchronous
design using a single clock.
Simple and efficient
interface to control the decoder operation.
Available for ASIC/FPGA
designs as verilog source code or as netlist.
Applications
The TPC Encoder core is designed to operate in local multi-point
distribution service (LMDS) and multi-channel
multi-point distribution service (MMDS) communication systems.
The core is especially useful for those communication links that
require high data rates, low latency, high code rates,
high spectral efficiency, and a high degree of forward error correction
capability.
Turbo Product Codes offer a higher performance alternative to
Reed-Solomon or Reed-Solomon concatenated with Viterbi
error correction methods.
Functional description
This core performs two-dimensional product code decoding with
constituent codes that are either extended Hamming codes or simple
parity codes. The decoder double buffer at its input to support
continuous decoding, the decoder is working on one buffer while
the host writes the second buffer. The decoder supports early
termination to save decoding time. The decoder shifts the recovered
data out every half iteration, the decoder also generates an output
address for each output bit to support the odd half iterations.
The core supports both extended
Hamming and parity only constituent codes as listed in the table
below:
|
x_code[2:0]/y_code[2:0]
|
x/y code
|
Code type
|
|
000
|
(8,4)
|
Extended Hamming
|
|
001
|
(16,11)
|
Extended Hamming
|
|
010
|
(32,26)
|
Extended Hamming
|
|
011
|
(64,57)
|
Extended Hamming
|
|
100
|
(8,7)
|
Parity only
|
|
101
|
(16,15)
|
Parity only
|
|
110
|
(32,31)
|
Parity only
|
|
111
|
(64,63)
|
Parity only
|
The TPC decoder core supports 8
possible code types for each of the constituent codes for a total
of 64 possible product codes.
Controlling the core
The core enable continuous packets decoding. A double buffer at
the input enable decoding operation while the host writes the
second buffer. The switching between the buffers is done automatically
by the decoder. Internal buffers are 16 bits wide, each row holds
4 input symbols, from left to right (bits 15:12 are the first
symbol and bits 3:0 are the 4'th symbol). The host should assert
the tpc_start_decoding after it had finished to write a data buffer
and the tpc_decoder_active signal is low. High tpc_data_out_valid
signal indicates that the decoder is writing out the decoded data
(information + parity) while high tpc_valid_data_out_valid signal
indicates a valid information bits.
Code shortening Code shortening provides a way
to achieve exact packet sizes to match specific system level constraints.
When shortened TPC codes are used, the actual data packet size
is reduced by inserting zeroes into the encoded and decoded block.
The zeroes are not transmitted over the communications link but
are reinserted into the block prior to decoding. Both the effective
block size and effective code rate are reduced by code shortening.
Ordering information
BTC decoder available as verilog source code or as EDIF netlist
for Xilinx/Altera FPGAs families.
Delivery includes:
Verilog
source code or verilog EDIF netlist.
Simulation
environment.
Documentation.
For more information please
contact
us
Back to top
|
|