SlideShare a Scribd company logo
International Journal of Trend in Scientific Research and Development (IJTSRD)
Volume 3 Issue 5, August 2019 Available Online: www.ijtsrd.com e-ISSN: 2456 – 6470
@ IJTSRD | Unique Paper ID – IJTSRD26710 | Volume – 3 | Issue – 5 | July - August 2019 Page 1794
Viterbi Decoder Plain Sailing Design for TCM Decoders
Suman Chandel1, Manju Mathur2
1Schollar, 2Professor
1,2Rajasthan College of Engineering for Women, Jaipur, Rajasthan, India
How to cite this paper: Suman Chandel |
Manju Mathur "Viterbi Decoder Plain
Sailing Design for TCM Decoders"
Published in
International
Journal of Trend in
Scientific Research
and Development
(ijtsrd), ISSN: 2456-
6470, Volume-3 |
Issue-5, August
2019, pp.1794-1797,
https://doi.org/10.31142/ijtsrd26710
Copyright © 2019 by author(s) and
International Journalof Trendin Scientific
Research and Development Journal. This
is an Open Access article distributed
under the terms of
the Creative
CommonsAttribution
License (CC BY 4.0)
(http://creativecommons.org/licenses/by
/4.0)
ABSTRACT
Convolutional codes are error correction technique used in noisy channels.
Viterbi Algorithm is the most widely-used decodingAlgorithm,which decodes
the sequence in a maximum likelihood sense. But the complexityof theViterbi
decoder increases with the coding rate of the system. Viterbi decoder is the
most power hungry module in the Trellis coded modulation system. Viterbi
decoding is the best technique for decoding the convolutional codes but it is
limited to smaller constraint lengths. The basic building blocks of Viterbi
decoder are branch metric unit, add compare and select unit and survivor
memory management unit. From the simulation results it is observed that the
proposed Viterbi decoder architecture with modified Branch metric
calculation can reducesignificant amountof computations in ordertodecrease
the hardware usage and to simplify the proceedings.
KEYWORDS: Convolution Encoder, Trace Back, Trellis Coded Modulation (TCM),
Viterbi Decoder, VLSI.
I. INTRODUCTION
For reliable communicationindigitalcommunicationsystem,
error correction is very important. Convolutional codes are
frequently used to correct errors in noisy channels. They
perform well even on very bad channels (with error
probabilities of about 10−3). Convolutional codes represent
one technique within the general class of channel codes,
permits reliable communication of an information sequence
over a channel that adds noise, alters the data, or otherwise
distorts the transmitted signal. Although convolutional
encoding is a simple process, decoding of a convolutional
code is much more complex task. Viterbi Algorithm is the
most widely used decoding Algorithm, which decodes the
sequencein a maximum likelihood sense. Butthe complexity
of the Viterbi decoder increases with the coding rate of the
system.
Trellis coded modulation (TCM) schemes are used in many
bandwidth- efficient systems. A TCM systemusuallyemploys
a high-rate convolutional code, which leads to a high
complexity of the Viterbi decoder (VD) for the TCM decoder,
even if the constraint length of the convolutional code is
moderate. Rate ¾ convolutional encoder is taken to analyse
the efficiency of using proposed architecture in the Viterbi
decoder. T-Algorithm is employed to achieve power
reduction. Branch metric calculation is modified to
reducesignificant amount of computations in order to
decrease the hardwareusageandtosimplifytheproceedings.
The precomputation steps are reduced thereby reducing the
amount of calculations.
The remainder of the paper provides the theoretical
background of Viterbi algorithm and viterbi decoder. Abrief
description of the modified calculation techniques used in
the Viterbi decoder design is also given in this paper.
Conclusions are provided in the last Section.
II. VITERBI ALGORITHM
Viterbi algorithm was introduced in 1967 by Viterbi. Viterbi
algorithm is called as optimum algorithm because it
minimizes the probability of error. The algorithm can be
broken down into the following three steps. 1. Weigh the
trellis; that is, calculate the branch metrics. 2. Recursively
computes the shortest paths to time n, in terms of the
shortest paths to time n-1. In this step, decisions are used to
recursively update the survivor path of the signal. This is
known as add-compare-select(ACS)recursion.3.Recursively
finds the shortest path leading to each trellis state using the
decisionsfrom Step2. The shortestpathiscalledthesurvivor
path for that state and the process is referred to as survivor
path decode. Finally, if all survivor paths are traced back in
time, they merge into a unique path, which is the most likely
signal path. The flowchartgiven infig 1 shows theworkingof
Viterbi algorithm. The algorithm for Viterbi decoder can be
explained by using the example below. Let us consider the
input 11010001.
IJTSRD26710
International Journal of Trend in Scientific Research and Development (IJTSRD) @ www.ijtsrd.com eISSN: 2456-6470
@ IJTSRD | Unique Paper ID – IJTSRD26710 | Volume – 3 | Issue – 5 | July - August 2019 Page 1795
Fig.1. Viterbi Algorithm
III. VITERBI DECODER
The basic units of Viterbi decoder are branchmetricunit,add
compare and select unit and survivor memory management
unit. The first unit is called branch metric unit. Here the
received data symbols are compared to the ideal outputs of
the encoder from the transmitter and branch metric is
calculated. Hamming distance or the Euclidean distance is
used for branch metric computation. The second unit, called
path metriccomputation unit, calculatesthepathmetricsofa
stage by adding the branch metrics, associated with a
received symbol, to the path metrics from the previous stage
of the trellis. The final unit is the trace-back process or
register exchange method, where the survivor path and the
output data are identified. The trace back (TB) and the
register- exchange (RE) methods are the two major
techniques usedfor the pathhistorymanagement in thechip
designs of Viterbi decoders.TheTBmethodtakesuplessarea
but requires much more time as compared to RE method
because it needs to search or trace the survivor path back
sequentially. Also, extra hardware is required to reverse the
decoded bits. The major disadvantage of the RE approach is
that its routingcost is very high especially in the case of long-
constraint lengths and it requiresmuchmoreresources.Fig2
shows the block diagram of Viterbi decoder which containsa
BMU,PMM, ACSU and SMU.
decision decoder, a branch metric is a Hamming distance
between the received pair of bits and the “ideal” pair.
Therefore, a branch metriccan take values of 0, 1 and 2.Thus
for every input pair we have 4 branch metrics (one for each
pair of “ideal” values). For a soft decision decoder, a branch
metric is measured using the Euclidean distance. Let xbe the
first received bit in the pair, y – the second, x0 and y0 – the
“ideal” values. Then branch metric is
Mb=(x-x0)2 (y-y0)2
Fig.2. Diagram of Viterbi decoder
IV. IMPLEMENTATION
A. Convolutional encoder
Rate ¾ , high rate convolutional encoder is taken to analyse
the efficiency of proposed Viterbi decoder architecture.
Specifications of this encoder are given in the table 1. Fig 3
shows the structure of rate ¾ convolutional encoder
Table 1: Specifications of rate ¾ convolution encoder
Parameter Symbol Value
Input Length K 3
Output length N 4
Coding rate k/n 3/4
Memory register count M 6
Constraint length K 7
Fig.3. Rate ¾ convolution encoder
B. Viterbi decoder
A Viterbi algorithm consists of the following three major
parts:
Branch metric calculation – calculation of a distance
between the input pair of bits and the four possible
“ideal” pairs (“00”, “01”, “10”, “11”).
Path metric calculation – for every encoder state,
calculate a metric for the survivor path ending in this
state (a survivor path is a path with the minimum
metric).
Traceback – this step is necessary for hardware
implementations that don't store full information about
the survivor paths, but store only one bit decision every
time when one survivor path is selected from the two.
C. Branch metric calculation
Methods of branch metric calculation are different for hard
decision and soft decision decoders. For a hard Furthermore
when we calculate 4 branch matrics for a soft decision
decoder, we don’t actually need to know the absolute metric
values- only the differencebetweenthemmakesthesense.So
nothing will change if we subtract one value from all four
branch metrics.
Mb= (x2-2x x0 + x02) + (y2 – 2y y0 + y02)
Mb * = Mb – x2 – y2 = (x02 – 2 x x0) + (y02 – 2 y y0)
Note that the secondformula,Mb *,canbecalculatedwithout
hardware multiplication: x02 and y02 can be pre- calculated,
and multiplication of x by x0 and y by y0 can be done very
easily in hardware given that x0 and y0 are constants. It
should be alsonoted that Mb * is asigned variableandshould
be calculated in 2's complement format.
International Journal of Trend in Scientific Research and Development (IJTSRD) @ www.ijtsrd.com eISSN: 2456-6470
@ IJTSRD | Unique Paper ID – IJTSRD26710 | Volume – 3 | Issue – 5 | July - August 2019 Page 1796
D. Path metric calculation
Path metrics are calculated using a procedure called ACS
(Add-Compare-Select). This procedure is repeated for every
encoder state.
Add –for a given state, we know two states on the
previous step which can move to this state, and the
output bit pairs that correspond to these transitions. To
calculate new path metrics, we add the previous path
metrics with the corresponding branch metrics.
Compare, select– we now have two paths, ending in a
given state. One of them (with greatermetric) is dropped.
As there are 2K-1 encoder states, we have 2K-1 survivor paths
at any given time. It is important that the difference between
two survivor path metrics cannot exceed δ log(K−1),where δ
is a difference between maximum and minimum possible
branch metrics. The problem with path metrics is that they
tend to grow constantly and will eventually overflow. But,
sincethe absolute values of path metricdon'tactuallymatter,
and the difference between them is limited,adatatypewitha
certain number of bits will be sufficient. There are two ways
of dealing with this problem.Sincetheabsolutevaluesofpath
metric don't actually matter, we can at any time subtract an
identical value from the metric of every path. It is usually
done when all path metricsexceedachosenthreshold(inthis
case the threshold value is subtracted from every path
metric). This method is simple, but not very efficient when
implemented in hardware. The second approach allows
overflow, but uses a sufficient number of bits to be able to
detect whether the overflow took place or not. The compare
procedure must be modified in this case.
E. Trace back method
The final stepis the trace back procedure, wherein the allthe
values are consolidated to obtain the final output. If the
position of minimum value is 00 or 01, a 0 is obtained
in the output. For any other values, a 1 is obtained at the
output. In this calculation, the minimum value of the lastrow
is taken and based on its position a 1 or 0 is assigned as one
of the output bits. The corresponding path is noted and
converted to binary.
The minimum value corresponding to that particular path, is
noted and once again a position based output bit assignment
is made as explained previously, for the row 3. This is
repeated for all the remaining rows. Thus,4 output bits are
obtained. These bits are then concatenated and a process of
bit reversal is made .thus a 4 bit output is derived from an 8
bits input that was given to the Viterbi decoder. In the TB
method, the storage can be implementedasRAMandiscalled
the path memory. Comparisons in the ACS unit and not the
actual survivors are stored. After at least L branches have
been processed, the trellis connections are recalled in the
reverse order and the path is traced back through the trellis
diagram. The TB method extractsthedecodedbits,beginning
from the state with the minimum PM. Beginning at this state
and tracing backward in timeby following the survivor path,
which originallycontributed to thecurrentPM,auniquepath
is identified. While tracing back through the trellis, the
decoded output sequence, corresponding to the traced
branches, is generated in the reverse order. Trace back
architecture has a limited memory bandwidth in nature, and
thus limits the decoding speed.
F. Register Exchange Method
The register exchange (RE) method is the simplest
conceptually and a commonlyusedtechnique. Becauseof the
large power consumption and large area required in VLSI
implementations of the RE method, the trace back method
(TB) method is the preferred method in the design of large
constraint length, high performance Viterbi decoders. In the
register exchange, a register assigned to each state contains
information bits for the survivor path fromtheinitialstate to
the current state. In fact, the register keeps the partially
decoded output sequence along the path, as illustrated in
Figure 6. The register of state S1 at t=3 contains ’101’.This is
the decoded output sequence along the hold path from the
initial state. The register- exchange method eliminates the
need to trace back since the register of the final state
contains the decoded output sequence. However, this
method results in complex hardware due totheneedtocopy
the contents of all the registers in a stage to the next stage.
The survivor path information is applied to the least
significant bit of each register, and alltheregistersperforma
shift left operation at each stage to make room for the next
bits. Hence, each register fills in the survivor path
information from the least significant bit toward the most
significant bit. The scheme is called shift update. The shift
update method is simple in implementation but causes high
switching activity due to the shift operation and, hence,
results in high power dissipation. Fig 4 shows the register
exchange method.
Fig.4. Exchange method
V. CONCLUSION
Viterbi algorithm is the most commonly used algorithm to
decode the convolution code. The main drawback is its high
computational complexity and power hungry
implementation for large coding rate since its constraint
length should be high. In this project, Viterbi decoder with
modified Branch metic calculation is designed in order to
decrease the hardware usage and to simplify the
proceedings.
ACKNOWLEDGEMENT
I would like to express my specialthanksand appreciation to
my family and my teachers for their support and
encouragement throughout this work.
REFERENCES
[1] J. Nargis1, D. Vaithiyanathan2, R.Seshasayanan3,
“Design of High Speed Low Power Viterbi Decoder for
TCM System”, IEEE Transactions on Information
Communications and Embedded Systems, Feb 2013
[2] Jinjin He, Huaping Liu, Zhongfeng Wang, Xinming
Huang, and Kai Zhang, “High-Speed Low-PowerViterbi
Decoder Design for TCM Decoders”, IEEE Transactions
on VLSI, VOL. 20, NO. 4,APRIL 2012
[3] Bandwidth-efficient modulations, Consultative
Committee For SpaceDataSystem, Matera,Italy,CCSDS
401(3.3.6) Green Book, Issue 1, Apr. 2003.
International Journal of Trend in Scientific Research and Development (IJTSRD) @ www.ijtsrd.com eISSN: 2456-6470
@ IJTSRD | Unique Paper ID – IJTSRD26710 | Volume – 3 | Issue – 5 | July - August 2019 Page 1797
[4] J. B. Anderson and E. Offer, Reduced-state sequence
detection with convolutional codes, IEEE Trans. Inf.
Theory, vol. 40, no. 3, pp. 965972, May 1994.
[5] Vladimir Stojanovic,Viterbialgorithmimplementation,
Massachusets Institute of Technology.
[6] S. J. Simmons, Breadth-first trellis decoding with
adaptive effort, IEEE Trans. Commun., vol. 38, no. 1,pp.
312, Jan.1990.
[7] F. Chan and D. Haccoun, Adaptive viterbi decoding of
convolutional codes over memoryless channels, IEEE
Trans. Commun., vol. 45, no. 11, pp. 13891400, Nov.
1997.
[8] R. A. Abdallah and N. R. Shanbhag, Error-resilient low-
power viterbi decoder architectures, IEEE Trans.Signal
Process., vol. 57, no. 12, pp. 49064917, Dec. 2009
[9] Anubhuthi Khare, Jagdish Patel, Manish Saxena, FPGA
Based Efficient implementation of Viterbi Decoder,
International Journal of Engineering and Advanced
Technology (IJEAT) ISSN: 2249 – 8958, Volume-1,
Issue-1, October 2011

More Related Content

PDF
Implementation of Viterbi Decoder on FPGA to Improve Design
PDF
A CORDIC based QR Decomposition Technique for MIMO Detection
PDF
A Configurable and Low Power Hard-Decision Viterbi Decoder in VLSI Architecture
PDF
Hx3414601462
PDF
BER Performance of OFDM-QAM over AWGN and RICAIN Channels Using Error Correct...
PPTX
Viterbi decoder in optical comm system
PPTX
SDH Frame Structure
PPTX
Design of a high speed low power Brent Kung Adder in 45nM CMOS
Implementation of Viterbi Decoder on FPGA to Improve Design
A CORDIC based QR Decomposition Technique for MIMO Detection
A Configurable and Low Power Hard-Decision Viterbi Decoder in VLSI Architecture
Hx3414601462
BER Performance of OFDM-QAM over AWGN and RICAIN Channels Using Error Correct...
Viterbi decoder in optical comm system
SDH Frame Structure
Design of a high speed low power Brent Kung Adder in 45nM CMOS

What's hot (20)

PPTX
HIGH-SPEED LOW-POWER VITERBI DECODER DESIGN FOR TCM DECODERS
PDF
Gq3511781181
PDF
Efficient FPGA implementation of high speed digital delay for wideband beamfor...
PPTX
131020 viterbi block_dungnguyen
PDF
K0216571
DOCX
Design of Filter Circuits using MATLAB, Multisim, and Excel
PDF
High Speed and Area Efficient Booth Multiplier Using SQRT CSLA with Zero Find...
PDF
Q010228189
PPT
Digital Hierarchy
PDF
Evaluation of BER in LTE System using Various Modulation Techniques over diff...
PPT
SDH BASICS
PDF
International Journal of Engineering Research and Development
DOCX
Ramya Project
PDF
Lb35189919904
PPT
SDH MAPPING AND MULTIPLEXING
PDF
Implementation of channel estimation algorithms in ofdm for 64 subcarriers
PDF
Report adders
PDF
20120130406009 2
PDF
Design of Optimized FIR Filter Using FCSD Representation
PDF
Design of 8-Bit Comparator Using 45nm CMOS Technology
HIGH-SPEED LOW-POWER VITERBI DECODER DESIGN FOR TCM DECODERS
Gq3511781181
Efficient FPGA implementation of high speed digital delay for wideband beamfor...
131020 viterbi block_dungnguyen
K0216571
Design of Filter Circuits using MATLAB, Multisim, and Excel
High Speed and Area Efficient Booth Multiplier Using SQRT CSLA with Zero Find...
Q010228189
Digital Hierarchy
Evaluation of BER in LTE System using Various Modulation Techniques over diff...
SDH BASICS
International Journal of Engineering Research and Development
Ramya Project
Lb35189919904
SDH MAPPING AND MULTIPLEXING
Implementation of channel estimation algorithms in ofdm for 64 subcarriers
Report adders
20120130406009 2
Design of Optimized FIR Filter Using FCSD Representation
Design of 8-Bit Comparator Using 45nm CMOS Technology
Ad

Similar to Viterbi Decoder Plain Sailing Design for TCM Decoders (20)

PDF
High Speed Low Power Veterbi Decoder Design for TCM Decoders
PDF
E010224043
PDF
Design of High Speed and Low Power Veterbi Decoder for Trellis Coded Modulati...
PDF
Iaetsd vlsi implementation of efficient convolutional
PDF
FPGA Implementation of Viterbi Decoder using Hybrid Trace Back and Register E...
PDF
G364246
PDF
AN EFFICIENT VITERBI DECODER
PDF
International Journal of Engineering Research and Development (IJERD)
PDF
40120140505011
PDF
Design and Performance Analysis of Convolutional Encoder and Viterbi Decoder ...
PDF
A 2 stage data word packet communication decoder using rate 1-by-3 viterbi de...
PDF
E42032732
PDF
Data detection with a progressive parallel ici canceller in mimo ofdm
PDF
Hard Decision Viterbi Decoder: Implementation on FPGA and Comparison of Resou...
PDF
A Low Power VITERBI Decoder Design With Minimum Transition Hybrid Register Ex...
PDF
A LOW POWER VITERBI DECODER DESIGN WITH MINIMUM TRANSITION HYBRID REGISTER EX...
PDF
A LOW POWER VITERBI DECODER DESIGN WITH MINIMUM TRANSITION HYBRID REGISTER ...
PDF
IJCER (www.ijceronline.com) International Journal of computational Engineeri...
PDF
Area, Delay and Power Comparison of Adder Topologies
PDF
IRJET-Error Detection and Correction using Turbo Codes
High Speed Low Power Veterbi Decoder Design for TCM Decoders
E010224043
Design of High Speed and Low Power Veterbi Decoder for Trellis Coded Modulati...
Iaetsd vlsi implementation of efficient convolutional
FPGA Implementation of Viterbi Decoder using Hybrid Trace Back and Register E...
G364246
AN EFFICIENT VITERBI DECODER
International Journal of Engineering Research and Development (IJERD)
40120140505011
Design and Performance Analysis of Convolutional Encoder and Viterbi Decoder ...
A 2 stage data word packet communication decoder using rate 1-by-3 viterbi de...
E42032732
Data detection with a progressive parallel ici canceller in mimo ofdm
Hard Decision Viterbi Decoder: Implementation on FPGA and Comparison of Resou...
A Low Power VITERBI Decoder Design With Minimum Transition Hybrid Register Ex...
A LOW POWER VITERBI DECODER DESIGN WITH MINIMUM TRANSITION HYBRID REGISTER EX...
A LOW POWER VITERBI DECODER DESIGN WITH MINIMUM TRANSITION HYBRID REGISTER ...
IJCER (www.ijceronline.com) International Journal of computational Engineeri...
Area, Delay and Power Comparison of Adder Topologies
IRJET-Error Detection and Correction using Turbo Codes
Ad

More from ijtsrd (20)

PDF
A Study of School Dropout in Rural Districts of Darjeeling and Its Causes
PDF
Pre extension Demonstration and Evaluation of Soybean Technologies in Fedis D...
PDF
Pre extension Demonstration and Evaluation of Potato Technologies in Selected...
PDF
Pre extension Demonstration and Evaluation of Animal Drawn Potato Digger in S...
PDF
Pre extension Demonstration and Evaluation of Drought Tolerant and Early Matu...
PDF
Pre extension Demonstration and Evaluation of Double Cropping Practice Legume...
PDF
Pre extension Demonstration and Evaluation of Common Bean Technology in Low L...
PDF
Enhancing Image Quality in Compression and Fading Channels A Wavelet Based Ap...
PDF
Manpower Training and Employee Performance in Mellienium Ltdawka, Anambra State
PDF
A Statistical Analysis on the Growth Rate of Selected Sectors of Nigerian Eco...
PDF
Automatic Accident Detection and Emergency Alert System using IoT
PDF
Corporate Social Responsibility Dimensions and Corporate Image of Selected Up...
PDF
The Role of Media in Tribal Health and Educational Progress of Odisha
PDF
Advancements and Future Trends in Advanced Quantum Algorithms A Prompt Scienc...
PDF
A Study on Seismic Analysis of High Rise Building with Mass Irregularities, T...
PDF
Descriptive Study to Assess the Knowledge of B.Sc. Interns Regarding Biomedic...
PDF
Performance of Grid Connected Solar PV Power Plant at Clear Sky Day
PDF
Vitiligo Treated Homoeopathically A Case Report
PDF
Vitiligo Treated Homoeopathically A Case Report
PDF
Uterine Fibroids Homoeopathic Perspectives
A Study of School Dropout in Rural Districts of Darjeeling and Its Causes
Pre extension Demonstration and Evaluation of Soybean Technologies in Fedis D...
Pre extension Demonstration and Evaluation of Potato Technologies in Selected...
Pre extension Demonstration and Evaluation of Animal Drawn Potato Digger in S...
Pre extension Demonstration and Evaluation of Drought Tolerant and Early Matu...
Pre extension Demonstration and Evaluation of Double Cropping Practice Legume...
Pre extension Demonstration and Evaluation of Common Bean Technology in Low L...
Enhancing Image Quality in Compression and Fading Channels A Wavelet Based Ap...
Manpower Training and Employee Performance in Mellienium Ltdawka, Anambra State
A Statistical Analysis on the Growth Rate of Selected Sectors of Nigerian Eco...
Automatic Accident Detection and Emergency Alert System using IoT
Corporate Social Responsibility Dimensions and Corporate Image of Selected Up...
The Role of Media in Tribal Health and Educational Progress of Odisha
Advancements and Future Trends in Advanced Quantum Algorithms A Prompt Scienc...
A Study on Seismic Analysis of High Rise Building with Mass Irregularities, T...
Descriptive Study to Assess the Knowledge of B.Sc. Interns Regarding Biomedic...
Performance of Grid Connected Solar PV Power Plant at Clear Sky Day
Vitiligo Treated Homoeopathically A Case Report
Vitiligo Treated Homoeopathically A Case Report
Uterine Fibroids Homoeopathic Perspectives

Recently uploaded (20)

PPTX
Institutional Correction lecture only . . .
PPTX
school management -TNTEU- B.Ed., Semester II Unit 1.pptx
PDF
Abdominal Access Techniques with Prof. Dr. R K Mishra
PDF
Complications of Minimal Access Surgery at WLH
PDF
Chapter 2 Heredity, Prenatal Development, and Birth.pdf
PDF
2.FourierTransform-ShortQuestionswithAnswers.pdf
PPTX
Cell Structure & Organelles in detailed.
PPTX
202450812 BayCHI UCSC-SV 20250812 v17.pptx
PDF
STATICS OF THE RIGID BODIES Hibbelers.pdf
PDF
102 student loan defaulters named and shamed – Is someone you know on the list?
PDF
Module 4: Burden of Disease Tutorial Slides S2 2025
PPTX
Lesson notes of climatology university.
PDF
The Lost Whites of Pakistan by Jahanzaib Mughal.pdf
PDF
A GUIDE TO GENETICS FOR UNDERGRADUATE MEDICAL STUDENTS
PDF
Black Hat USA 2025 - Micro ICS Summit - ICS/OT Threat Landscape
PDF
RMMM.pdf make it easy to upload and study
PPTX
Presentation on HIE in infants and its manifestations
PDF
O5-L3 Freight Transport Ops (International) V1.pdf
PDF
Saundersa Comprehensive Review for the NCLEX-RN Examination.pdf
PDF
VCE English Exam - Section C Student Revision Booklet
Institutional Correction lecture only . . .
school management -TNTEU- B.Ed., Semester II Unit 1.pptx
Abdominal Access Techniques with Prof. Dr. R K Mishra
Complications of Minimal Access Surgery at WLH
Chapter 2 Heredity, Prenatal Development, and Birth.pdf
2.FourierTransform-ShortQuestionswithAnswers.pdf
Cell Structure & Organelles in detailed.
202450812 BayCHI UCSC-SV 20250812 v17.pptx
STATICS OF THE RIGID BODIES Hibbelers.pdf
102 student loan defaulters named and shamed – Is someone you know on the list?
Module 4: Burden of Disease Tutorial Slides S2 2025
Lesson notes of climatology university.
The Lost Whites of Pakistan by Jahanzaib Mughal.pdf
A GUIDE TO GENETICS FOR UNDERGRADUATE MEDICAL STUDENTS
Black Hat USA 2025 - Micro ICS Summit - ICS/OT Threat Landscape
RMMM.pdf make it easy to upload and study
Presentation on HIE in infants and its manifestations
O5-L3 Freight Transport Ops (International) V1.pdf
Saundersa Comprehensive Review for the NCLEX-RN Examination.pdf
VCE English Exam - Section C Student Revision Booklet

Viterbi Decoder Plain Sailing Design for TCM Decoders

  • 1. International Journal of Trend in Scientific Research and Development (IJTSRD) Volume 3 Issue 5, August 2019 Available Online: www.ijtsrd.com e-ISSN: 2456 – 6470 @ IJTSRD | Unique Paper ID – IJTSRD26710 | Volume – 3 | Issue – 5 | July - August 2019 Page 1794 Viterbi Decoder Plain Sailing Design for TCM Decoders Suman Chandel1, Manju Mathur2 1Schollar, 2Professor 1,2Rajasthan College of Engineering for Women, Jaipur, Rajasthan, India How to cite this paper: Suman Chandel | Manju Mathur "Viterbi Decoder Plain Sailing Design for TCM Decoders" Published in International Journal of Trend in Scientific Research and Development (ijtsrd), ISSN: 2456- 6470, Volume-3 | Issue-5, August 2019, pp.1794-1797, https://doi.org/10.31142/ijtsrd26710 Copyright © 2019 by author(s) and International Journalof Trendin Scientific Research and Development Journal. This is an Open Access article distributed under the terms of the Creative CommonsAttribution License (CC BY 4.0) (http://creativecommons.org/licenses/by /4.0) ABSTRACT Convolutional codes are error correction technique used in noisy channels. Viterbi Algorithm is the most widely-used decodingAlgorithm,which decodes the sequence in a maximum likelihood sense. But the complexityof theViterbi decoder increases with the coding rate of the system. Viterbi decoder is the most power hungry module in the Trellis coded modulation system. Viterbi decoding is the best technique for decoding the convolutional codes but it is limited to smaller constraint lengths. The basic building blocks of Viterbi decoder are branch metric unit, add compare and select unit and survivor memory management unit. From the simulation results it is observed that the proposed Viterbi decoder architecture with modified Branch metric calculation can reducesignificant amountof computations in ordertodecrease the hardware usage and to simplify the proceedings. KEYWORDS: Convolution Encoder, Trace Back, Trellis Coded Modulation (TCM), Viterbi Decoder, VLSI. I. INTRODUCTION For reliable communicationindigitalcommunicationsystem, error correction is very important. Convolutional codes are frequently used to correct errors in noisy channels. They perform well even on very bad channels (with error probabilities of about 10−3). Convolutional codes represent one technique within the general class of channel codes, permits reliable communication of an information sequence over a channel that adds noise, alters the data, or otherwise distorts the transmitted signal. Although convolutional encoding is a simple process, decoding of a convolutional code is much more complex task. Viterbi Algorithm is the most widely used decoding Algorithm, which decodes the sequencein a maximum likelihood sense. Butthe complexity of the Viterbi decoder increases with the coding rate of the system. Trellis coded modulation (TCM) schemes are used in many bandwidth- efficient systems. A TCM systemusuallyemploys a high-rate convolutional code, which leads to a high complexity of the Viterbi decoder (VD) for the TCM decoder, even if the constraint length of the convolutional code is moderate. Rate ¾ convolutional encoder is taken to analyse the efficiency of using proposed architecture in the Viterbi decoder. T-Algorithm is employed to achieve power reduction. Branch metric calculation is modified to reducesignificant amount of computations in order to decrease the hardwareusageandtosimplifytheproceedings. The precomputation steps are reduced thereby reducing the amount of calculations. The remainder of the paper provides the theoretical background of Viterbi algorithm and viterbi decoder. Abrief description of the modified calculation techniques used in the Viterbi decoder design is also given in this paper. Conclusions are provided in the last Section. II. VITERBI ALGORITHM Viterbi algorithm was introduced in 1967 by Viterbi. Viterbi algorithm is called as optimum algorithm because it minimizes the probability of error. The algorithm can be broken down into the following three steps. 1. Weigh the trellis; that is, calculate the branch metrics. 2. Recursively computes the shortest paths to time n, in terms of the shortest paths to time n-1. In this step, decisions are used to recursively update the survivor path of the signal. This is known as add-compare-select(ACS)recursion.3.Recursively finds the shortest path leading to each trellis state using the decisionsfrom Step2. The shortestpathiscalledthesurvivor path for that state and the process is referred to as survivor path decode. Finally, if all survivor paths are traced back in time, they merge into a unique path, which is the most likely signal path. The flowchartgiven infig 1 shows theworkingof Viterbi algorithm. The algorithm for Viterbi decoder can be explained by using the example below. Let us consider the input 11010001. IJTSRD26710
  • 2. International Journal of Trend in Scientific Research and Development (IJTSRD) @ www.ijtsrd.com eISSN: 2456-6470 @ IJTSRD | Unique Paper ID – IJTSRD26710 | Volume – 3 | Issue – 5 | July - August 2019 Page 1795 Fig.1. Viterbi Algorithm III. VITERBI DECODER The basic units of Viterbi decoder are branchmetricunit,add compare and select unit and survivor memory management unit. The first unit is called branch metric unit. Here the received data symbols are compared to the ideal outputs of the encoder from the transmitter and branch metric is calculated. Hamming distance or the Euclidean distance is used for branch metric computation. The second unit, called path metriccomputation unit, calculatesthepathmetricsofa stage by adding the branch metrics, associated with a received symbol, to the path metrics from the previous stage of the trellis. The final unit is the trace-back process or register exchange method, where the survivor path and the output data are identified. The trace back (TB) and the register- exchange (RE) methods are the two major techniques usedfor the pathhistorymanagement in thechip designs of Viterbi decoders.TheTBmethodtakesuplessarea but requires much more time as compared to RE method because it needs to search or trace the survivor path back sequentially. Also, extra hardware is required to reverse the decoded bits. The major disadvantage of the RE approach is that its routingcost is very high especially in the case of long- constraint lengths and it requiresmuchmoreresources.Fig2 shows the block diagram of Viterbi decoder which containsa BMU,PMM, ACSU and SMU. decision decoder, a branch metric is a Hamming distance between the received pair of bits and the “ideal” pair. Therefore, a branch metriccan take values of 0, 1 and 2.Thus for every input pair we have 4 branch metrics (one for each pair of “ideal” values). For a soft decision decoder, a branch metric is measured using the Euclidean distance. Let xbe the first received bit in the pair, y – the second, x0 and y0 – the “ideal” values. Then branch metric is Mb=(x-x0)2 (y-y0)2 Fig.2. Diagram of Viterbi decoder IV. IMPLEMENTATION A. Convolutional encoder Rate ¾ , high rate convolutional encoder is taken to analyse the efficiency of proposed Viterbi decoder architecture. Specifications of this encoder are given in the table 1. Fig 3 shows the structure of rate ¾ convolutional encoder Table 1: Specifications of rate ¾ convolution encoder Parameter Symbol Value Input Length K 3 Output length N 4 Coding rate k/n 3/4 Memory register count M 6 Constraint length K 7 Fig.3. Rate ¾ convolution encoder B. Viterbi decoder A Viterbi algorithm consists of the following three major parts: Branch metric calculation – calculation of a distance between the input pair of bits and the four possible “ideal” pairs (“00”, “01”, “10”, “11”). Path metric calculation – for every encoder state, calculate a metric for the survivor path ending in this state (a survivor path is a path with the minimum metric). Traceback – this step is necessary for hardware implementations that don't store full information about the survivor paths, but store only one bit decision every time when one survivor path is selected from the two. C. Branch metric calculation Methods of branch metric calculation are different for hard decision and soft decision decoders. For a hard Furthermore when we calculate 4 branch matrics for a soft decision decoder, we don’t actually need to know the absolute metric values- only the differencebetweenthemmakesthesense.So nothing will change if we subtract one value from all four branch metrics. Mb= (x2-2x x0 + x02) + (y2 – 2y y0 + y02) Mb * = Mb – x2 – y2 = (x02 – 2 x x0) + (y02 – 2 y y0) Note that the secondformula,Mb *,canbecalculatedwithout hardware multiplication: x02 and y02 can be pre- calculated, and multiplication of x by x0 and y by y0 can be done very easily in hardware given that x0 and y0 are constants. It should be alsonoted that Mb * is asigned variableandshould be calculated in 2's complement format.
  • 3. International Journal of Trend in Scientific Research and Development (IJTSRD) @ www.ijtsrd.com eISSN: 2456-6470 @ IJTSRD | Unique Paper ID – IJTSRD26710 | Volume – 3 | Issue – 5 | July - August 2019 Page 1796 D. Path metric calculation Path metrics are calculated using a procedure called ACS (Add-Compare-Select). This procedure is repeated for every encoder state. Add –for a given state, we know two states on the previous step which can move to this state, and the output bit pairs that correspond to these transitions. To calculate new path metrics, we add the previous path metrics with the corresponding branch metrics. Compare, select– we now have two paths, ending in a given state. One of them (with greatermetric) is dropped. As there are 2K-1 encoder states, we have 2K-1 survivor paths at any given time. It is important that the difference between two survivor path metrics cannot exceed δ log(K−1),where δ is a difference between maximum and minimum possible branch metrics. The problem with path metrics is that they tend to grow constantly and will eventually overflow. But, sincethe absolute values of path metricdon'tactuallymatter, and the difference between them is limited,adatatypewitha certain number of bits will be sufficient. There are two ways of dealing with this problem.Sincetheabsolutevaluesofpath metric don't actually matter, we can at any time subtract an identical value from the metric of every path. It is usually done when all path metricsexceedachosenthreshold(inthis case the threshold value is subtracted from every path metric). This method is simple, but not very efficient when implemented in hardware. The second approach allows overflow, but uses a sufficient number of bits to be able to detect whether the overflow took place or not. The compare procedure must be modified in this case. E. Trace back method The final stepis the trace back procedure, wherein the allthe values are consolidated to obtain the final output. If the position of minimum value is 00 or 01, a 0 is obtained in the output. For any other values, a 1 is obtained at the output. In this calculation, the minimum value of the lastrow is taken and based on its position a 1 or 0 is assigned as one of the output bits. The corresponding path is noted and converted to binary. The minimum value corresponding to that particular path, is noted and once again a position based output bit assignment is made as explained previously, for the row 3. This is repeated for all the remaining rows. Thus,4 output bits are obtained. These bits are then concatenated and a process of bit reversal is made .thus a 4 bit output is derived from an 8 bits input that was given to the Viterbi decoder. In the TB method, the storage can be implementedasRAMandiscalled the path memory. Comparisons in the ACS unit and not the actual survivors are stored. After at least L branches have been processed, the trellis connections are recalled in the reverse order and the path is traced back through the trellis diagram. The TB method extractsthedecodedbits,beginning from the state with the minimum PM. Beginning at this state and tracing backward in timeby following the survivor path, which originallycontributed to thecurrentPM,auniquepath is identified. While tracing back through the trellis, the decoded output sequence, corresponding to the traced branches, is generated in the reverse order. Trace back architecture has a limited memory bandwidth in nature, and thus limits the decoding speed. F. Register Exchange Method The register exchange (RE) method is the simplest conceptually and a commonlyusedtechnique. Becauseof the large power consumption and large area required in VLSI implementations of the RE method, the trace back method (TB) method is the preferred method in the design of large constraint length, high performance Viterbi decoders. In the register exchange, a register assigned to each state contains information bits for the survivor path fromtheinitialstate to the current state. In fact, the register keeps the partially decoded output sequence along the path, as illustrated in Figure 6. The register of state S1 at t=3 contains ’101’.This is the decoded output sequence along the hold path from the initial state. The register- exchange method eliminates the need to trace back since the register of the final state contains the decoded output sequence. However, this method results in complex hardware due totheneedtocopy the contents of all the registers in a stage to the next stage. The survivor path information is applied to the least significant bit of each register, and alltheregistersperforma shift left operation at each stage to make room for the next bits. Hence, each register fills in the survivor path information from the least significant bit toward the most significant bit. The scheme is called shift update. The shift update method is simple in implementation but causes high switching activity due to the shift operation and, hence, results in high power dissipation. Fig 4 shows the register exchange method. Fig.4. Exchange method V. CONCLUSION Viterbi algorithm is the most commonly used algorithm to decode the convolution code. The main drawback is its high computational complexity and power hungry implementation for large coding rate since its constraint length should be high. In this project, Viterbi decoder with modified Branch metic calculation is designed in order to decrease the hardware usage and to simplify the proceedings. ACKNOWLEDGEMENT I would like to express my specialthanksand appreciation to my family and my teachers for their support and encouragement throughout this work. REFERENCES [1] J. Nargis1, D. Vaithiyanathan2, R.Seshasayanan3, “Design of High Speed Low Power Viterbi Decoder for TCM System”, IEEE Transactions on Information Communications and Embedded Systems, Feb 2013 [2] Jinjin He, Huaping Liu, Zhongfeng Wang, Xinming Huang, and Kai Zhang, “High-Speed Low-PowerViterbi Decoder Design for TCM Decoders”, IEEE Transactions on VLSI, VOL. 20, NO. 4,APRIL 2012 [3] Bandwidth-efficient modulations, Consultative Committee For SpaceDataSystem, Matera,Italy,CCSDS 401(3.3.6) Green Book, Issue 1, Apr. 2003.
  • 4. International Journal of Trend in Scientific Research and Development (IJTSRD) @ www.ijtsrd.com eISSN: 2456-6470 @ IJTSRD | Unique Paper ID – IJTSRD26710 | Volume – 3 | Issue – 5 | July - August 2019 Page 1797 [4] J. B. Anderson and E. Offer, Reduced-state sequence detection with convolutional codes, IEEE Trans. Inf. Theory, vol. 40, no. 3, pp. 965972, May 1994. [5] Vladimir Stojanovic,Viterbialgorithmimplementation, Massachusets Institute of Technology. [6] S. J. Simmons, Breadth-first trellis decoding with adaptive effort, IEEE Trans. Commun., vol. 38, no. 1,pp. 312, Jan.1990. [7] F. Chan and D. Haccoun, Adaptive viterbi decoding of convolutional codes over memoryless channels, IEEE Trans. Commun., vol. 45, no. 11, pp. 13891400, Nov. 1997. [8] R. A. Abdallah and N. R. Shanbhag, Error-resilient low- power viterbi decoder architectures, IEEE Trans.Signal Process., vol. 57, no. 12, pp. 49064917, Dec. 2009 [9] Anubhuthi Khare, Jagdish Patel, Manish Saxena, FPGA Based Efficient implementation of Viterbi Decoder, International Journal of Engineering and Advanced Technology (IJEAT) ISSN: 2249 – 8958, Volume-1, Issue-1, October 2011