Title: Channel Coding
1Channel Coding
- NCU-EE VLSI/DSP Lab.
- Freshman Training Course
- Speaker ???
- Advisor ??? ??
2Outline
- Overview of Channel coding
- Digital Communication System
- Types of Error Control
- Types of Channel Coding
- Turbo Codes
- Introduction
- System model
- Log-MAP vs SOVA
- Simulation
- SW Memory Architectures
- Conclusions
3Digital Communication System
JPEG, MPEG, etc.
RS code, Turbo code,
QPSK, QAM, BPSK, etc.
rb
rc
Information
Source
Channel
Modulator
Source
Encoder
Encoder
rs
Channel
Demodu-
Channel
Source
Data Sink
lator
Decoder
Decoder
4Channel Coding
- Channel coding refers to the class of signal
transformation designed to improve communication
performance by enabling the transmitted signals
to better withstand the effects of various
channel impairments. - Channel coding can be partitioned into two areas,
waveform (or signal design) coding and structured
sequences (or structured redundancy.) - Waveform coding deals with transforming waveforms
into better waveforms, to make the detection
process less subject to errors. - Structured sequence deals with transforming data
sequences into better sequences, having
structured redundancy.
5Types of Error Control
- Before we discuss the detail of structured
redundancy, let us describe the two basic ways
such redundancy is used for controlling errors. - Error detection and retransmission, utilizes
parity bits (redundant bits added to data) to
detect that an error has been made and requires
two-way link for dialogue between the transmitter
and receiver. - Forward error correction (FEC), requires a one
way link only, since in this case the parity bit
are designed for both the detection and
correction of errors.
6Why Use Error-Correction Coding
- Trade-off
- Error Performance verse Bandwidth
- Power verse Bandwidth
- Data Rate verse Bandwidth
- Capacity verse Bandwidth
- Coded verse Uncoded Performance
- Coding Gains
- For a given bit-error probabilities, coding gain
is defined as the reduction in Eb/N0 that can be
realized through the use of code.
7Types of Channel Coding
- Block codes
- Extended Golay code
- Hamming code
- BCH code
- Convolutional codes
- Recursive or Nonrecursive
- Systematic or Nonsystematic
- Reed-Solomon Codes
- Interleaving and Concatenated Codes
- Turbo Codes
8Block Codes
- (n,k) Block Codes
- message k-tuple u(u1,u2,,uk)
- code word n-tuple v(v1,v2,,vn)
- code rate Rk/n
9Convolustional Codes
- (n,k,m) Convolutional Codes
- message k-tuple u(u1,u2,,uk)
- code word n-tuple v(v1,v2,,vn)
- code rate Rk/n
- memory order m
- Constraint length Km1
- Generator polynomials g1(x) 1xx2
g2(x)1x2
10Outline
- Overview of Channel coding
- Digital Communication System
- Types of Error Control
- Types of Channel Coding
- Turbo Codes
- Introduction
- System model
- Log-MAP vs SOVA
- Simulation
- SW Memory Architectures
- Conclusions
11Turbo Codes
- Shannons channel coding theorem guarantees the
existence of codes that can achieve arbitrary
small probability of error if the data
transmission rate is smaller than the channel
capacity.
12Applications
- Turbo code is currently adopted as the channel
coding schemes in many next-generation
communication systems - WCDMA, CDMA2000
- CCSDS in space communications
- Baseband Signal compensation in Fiber
transmission systems
13Specifications in WCDMA
14Specification in CDMA2000
15Turbo Code v.s. Convolutional Code
- Convolutional Code
- Non-recursive
- Non-systematic
- Without Interleaver
- Turbo Code
- Recursive
- Systematic
- Parallel structure
- Use Interleaver
NSC
RSC
16Design Flow
17System Model
18Log-MAP vs SOVA
G7 5, Unpunctured(1/3), frame
size1024, Iteration8.
Iteration increment..
SOVA
Iteration increment..
Log_MAP
19The SOVA algorithm
20Log-MAP Algorithms
21Log-MAP Algorithms
22Sliding Window Memory Issue
- The extrinsic and APP value are made with a
delay, which is equal to received sequence
length. - But the decoder decisions length can be reduced
to about six times the encoder memory because of
reliable decoding decision.
23Simulation Results (1/3)
24Simulation Results (2/3)
25Simulation Results (3/3)
26SW - Memory Architectures
- Advantage
- 1 Less memory size. 2. Might be Lower
latency. - Disadvantage
- 1.Read-modify-write access required for the
memory. - 2.Address is hard to be controlled.
27Timing Diagram
28Position VS Time
A
DO
B0
B1
G
Decode output without LIFO
Decode output with LIFO
29ACS Unit
Add-compare-select (ACS) Unit
30Forward / Backward Processor
Trellis States
Forward Processor (A) / Backward Processor (B)
Block Diagram
Block Diagram based on Trellis States
31Novel Turbo Code Iteration Issues
- In high-quality channel environments, a large of
decoding iterations are not required to obtain
the target BER, and it is possible to terminate
the process after a few numbers of decoding
iterations.
Denterlever
SISO (MAP1) Decoder
SISO (MAP2) Decoder
Interlever
Threshold Detection
Hard Decision
Denterlever
32Outline
- Overview of Channel coding
- Digital Communication System
- Types of Error Control
- Types of Channel Coding
- Turbo Codes
- Introduction
- System model
- Log-MAP vs SOVA
- Simulation
- SW Memory Architectures
- Conclusions
33Conclusions
- We discuss some fundamentals of channel coding.
- We discuss some basic implementation issues for
turbo codes. - This study can be exploited in development of
high performance receiver with different
constraints of cost and throughput. - The novel turbo decoder can practically have
lower iteration with the adaptive SNR channel
estimation.