SlideShare a Scribd company logo
1 of 7
Download to read offline
Advanced Computing : An International Journal (ACIJ), Vol.5, No.4, July 2014
DOI:10.5121/acij.2014.5401 1
PERFORMANCE ANALYSIS OF VITERBI DECODER
FOR WIRELESS APPLICATIONS
G.Sivasankar and L.Thangarani
Department of Electronics and Communication, Mepco Schlenk Engineering College,
Sivakasi, Tamilnadu, India
ABSTRACT
Viterbi decoder is employed in wireless communication to decode the convolutional codes; those codes are
used in every robust digital communication systems. Convolutional encoding and viterbi decoding is a
powerful method for forward error correction. This paper deals with synthesis and implementation of
viterbi decoder with a constraint length of three as well as seven and the code rate of ½ in FPGA (Field
Programmable Gate Array). The performance of viterbi decoder is analyzed in terms of resource
utilization. The design of viterbi decoder is simulated using Verilog HDL. It is synthesized and implemented
using Xilinx 9.1ise and Spartan 3E Kit. It is compatible with many common standards such as 3GPP, IEEE
802.16 and LTE.
KEYWORDS
Convolutional encoder, Constraint length, Code rate, Viterbi decoder, Viterbi algorithm, Hamming distance, Verilog
HDL, FPGA.
1. INTRODUCTION
Convolutional coding is a coding scheme used in digital communication systems. It gives an
alternative approach to block codes for transmission over a noisy channel. The process of adding
the redundant bits or information is known as channel coding. There two types of coding namely
block and convolutional code. The block codes can be applied only for the block of data but the
convolutional coding can be applied to a continuous data stream as well as to blocks of data [2].
IS-95, a wireless digital cellular standard for CDMA (Code Division Multiple Access), employs
convolutional coding. A convolutional code works by adding some structured redundant
information to the user’s data and then correcting errors using this information.
Viterbi decoding algorithm was developed by Andrew. J. Viterbi in 1967 [1]. It is used as a
decoding technique for convolutional codes as well as the bit detection in storage devices in many
places. The algorithm operates by forming trellis diagram, which is eventually traced back for
decoding the received information. It is also called as dynamic programming which is used for
finding the most likely sequence of hidden states, called viterbi path-that results in sequence of
observed events. Some of the applications of viterbi decoder include mobile communication,
satellite communication, digital cellular telephone etc..,
2. CONVOLUTIONAL ENCODER
Convolutional codes are employed to implement Forward Error Correction (FEC) which is
essential component in wireless communication. It achieves error free transmission by adding
Advanced Computing : An International Journal (ACIJ), Vol.5, No.4, July 2014
2
some redundant information to the source or input symbols. The convolutional encoder in figure 1
produces two bits of encoded information for each bit of input information, so it is called a rate
1/2 encoder. There are three parameters involved in the convolutional encoder and are n, k and K
, where n is number of output bits of the encoder; k is number of input bits of the encoder; K is
the constraint length of the encoder. The rate of encoder is defined as k/n. The encoder shown in
the figure 1 is a (2, 1, 3) encoder with rate ½. K=m+1, where m is the number of flip-flops of the
longest shift register of the encoder. Convolutional encoder increases the length of the message
sequence by adding redundant bits in order to increase the likelihood of detecting the transmitted
sequence even if errors have occurred during transmission.
Convolutional encoder consists of one or more shift registers and multiple exclusive or EXOR
gates. The information bits flows in to the shift register from one end and is shifted out at the
other end. EXOR gates are connected to some stages of the shift registers as well as to the current
input to generate the output. The block C and D represents the memory elements of the
convolutional encoder which is shown in the figure 1. The operation of a convolutional encoder
can be easily understood with the aid of a state diagram. Figure 2 represents the state diagram of
the convolutional encoder shown in figure 1. Figure 2 depicts state transitions and the
corresponding encoded outputs. Here there are two memory elements in the figure 1; so it takes
four states. For example, the input information sequence X= {1010} (begin from the all zero
state) leads to the state transition sequence S = {10, 01, 10, 01} and produces the output encoded
sequence C = {11, 01, 00, 01}. In the figure 2, S0, S1, S2, S3 represents the state values
00,01,10,11 respectively. The generator polynomial used in figure 1 is 1+x+x2
(for upper path B)
and 1+ x2
(for lower path A).
Figure 1. Convolutional Encoder for K=3
Figure 2. State Diagram of Convolutional Encoder for K=3
This paper also deals with viterbi decoder for K=7 convolutional encoder. The block diagram of
convolutional encoder for K= 7 is shown in figure 3. Here the encoder takes 64 states. Generally,
the number of states in the encoder is defined as 2K-1
. The K denotes the constraint length of the
encoder. The generator polynomial used in figure 1 is 1+x+x2
+ x3
+ x6
(for upper path A) and 1+
x2
+ x3
+ x5
+ x6
(for lower path B).
Advanced Computing : An International Journal (ACIJ), Vol.5, No.4, July 2014
3
Figure 3. Convolutional Encoder for K=7
3. VITERBI DECODER
Viterbi decoder is most commonly used to resolve convolution codes. This is essential for the
purpose of secure transmission of data and its corresponding retrieval during reception. Viterbi
decoders also have the property of compressing the number of bits of the data input to half. As a
result redundancy in the codes is also reduced; it is more effective and efficient of decoding.
Viterbi decoders are based on the basic algorithm which comprises of minimum distance and
minimum path calculation and retracing the path. This minimum distance calculation is
determined by EX-OR operation and then compared. This can be briefed by means of the block
diagram which is shown in figure 4.
Figure 4. Block Diagram of Viterbi Decoder
To describe the viterbi algorithm of viterbi decoder, one of the inputs of viterbi decoder is taken
which are 11110110. The input is taken from in the form of four sets each, consists of 2 bits
starting from the Most Significant Bit of the input. The first two bits from the MSB are taken and
are EXOR-ed with the values predetermined for the encoder as state0 and the values are obtained.
Similarly they are also EXOR-ed with the values of state 1 and the values are also noted and now
2 sets of 4 values each, for state 0 and state 1 is obtained. The corresponding values are compared
and the minimum of each of the 2 values is noted down for all the 4 values. Also corresponding
position values are marked as 00,01,10,11 respectively for each stage of the trellis diagram. For
the minimum path calculation, the value corresponding to that particular minimum path is taken
and its state value (state 0 or state 1) is assigned to the minimum path in decimal notation. This is
Advanced Computing : An International Journal (ACIJ), Vol.5, No.4, July 2014
4
the function of the Branch Metric Unit. In short it is named as BMU. In general there are two
types in viterbi decoding one is soft decision (Euclidean distance is considered for BMU) and
another one is hard decision (Hamming distance is considered for BMU). Once the first stage is
resolved, the second set of two bits starting from the MSB (11 in our case) is EXOR-ed as
explained for the first set. The equivalent value of the minimum distance is taken and is added to
the EXOR-ed outputs of the present stage for both value 0 and value 1. They are then compared
and minimum distance is once again obtained and its corresponding positions are assigned. This
is the function of the Add compare and select unit.
The final step is the trace back procedure, wherein all the values are consolidated to obtain the
final output. If the position of minimum value is 00 or 01, a 0 value is obtained in the output. For
any other values, 1 is obtained at the output. In this calculation, the minimum value of the last
stage is taken and based on its position a 1 or 0 is assigned as one of the output bits. The
corresponding path is chosen. The minimum value corresponding to that particular path is
considered and once again a position based output bit assignment is made as explained
previously, for the stage 3. This is repeated for all the remaining stages. Thus, 4 output bits are
obtained. Thus a 4 bit output is derived from an 8 bits input that was given to the viterbi decoder.
4. RESULTS AND DISCUSSION
The Convolutional encoder and Viterbi decoder is simulated and implemented using Verilog
HDL and Xilinx Spartan 3E Kit. The Viterbi decoder decodes the original input sequence by
using Viterbi algorithm. The proposed design of viterbi decoder occupies fewer amounts of
resources when compared with conventional design; it means that it has less hardware
complexity. The simulation result, device utilization summary and FPGA Editor of two different
encoder and decoder is shown in figures 5,6,7,9,10 and 11 respectively. The power analysis for
viterbi decoder is done by Xilinx XPower analyzer which is shown in figure 8. The power
consumed by the viterbi decoder is 0.081 Watt which is less compared to previous result [4]. The
device utilization summary shows that how much resources like LUT’s, flip flops, input and
output is utilized by the design of viterbi decoder for the convolutional encoder with the
constraint length of three. The Simulation result of convolutional encoder for K=7 is shown in
figure 10. The FPGA Editor shows that the amount of area which is occupied by the design of
viterbi decoder. The comparative analysis between two constraint lengths is shown in table 1. In
this table G1 and G2 represents generator polynomial of convolutional encoder. It denotes the
sequence of connections (a one representing a connection and a zero no connection) from the
memory elements (flip flops) of a shift register to an output. The comparative analysis result
shows that as constraint length increases hardware complexity increases.
Figure 5. Simulation Result of Convolutional Encoder for K=3
Advanced Computing : An International Journal (ACIJ), Vol.5, No.4, July 2014
5
Figure 6. Simulation Result of Viterbi Decoder for K=3
Figure 7. Device Utilization Summary and FPGA Editor of Viterbi Decoder for K=3
Figure 8. Power Supply Summary of Viterbi Decoder for K=3
Figure 9. Simulation Result of Convolutional Encoder for K=7
Advanced Computing : An International Journal (ACIJ), Vol.5, No.4, July 2014
6
Figure 10. Simulation Result of Viterbi Decoder for K=7
Figure 11. Device Utilization Summary and FPGA Editor of Viterbi Decoder for K=3
Device Utilization summary (xc3s500e-4ft256)
Rate ½, K= 3, G1= 101, G2=
111
Rate ½, K= 7, G1= 1111001,
G2= 1011011
Logic Utilization Used Used
Total no of slice registers 9 15
No of 4 input LUTs 142 154
No of latches 8 14
Table 1. Comparison between two constraint lengths
5. CONCLUSION
The design of viterbi decoder for convolutional encoder is synthesized and implemented on
Spartan 3E FPGA. Viterbi decoder can remove potential noise in the incoming stream by
decoding it. Even though the viterbi decoder is used in commercial wireless communication
purpose, the main complexity of the viterbi decoder, confines its application to convolutional
codes with a constraint length K, not exceeding 10.The future work is to improve the speed of the
decoding using VLSI techniques like folding, retiming etc.
Advanced Computing : An International Journal (ACIJ), Vol.5, No.4, July 2014
7
ACKNOWLEDGEMENTS
I would like to thank my parents who had sacrificed a lot in making me to reach this position. I
express my sincere thanks to our Principal Dr. S. Arivazhagan, M.E., Ph.D., for permitting and
providing all the facilities to carry out this work in the college campus.
REFERENCES
[1] A.J. Viterbi (1967) “Error bounds for Convolutional Coding and an asymptotically optimum decoding
algorithm ”, IEEE Transactions on Inform. Theory, Vol. 2, pp260-269.
[2] Mr.Vishal, G.Jadhao, Prof. Prafulla & D. Gawade (2012)“Performance analysis of linear block code
and convolutional code to study their comparative effectiveness”, IOSR Journal of Electrical and
Electronics Engineering.
[3] Hiral Pujara, Pankaj Prajapati (2013) “RTL Implementation of Viterbi Decoder using VHDL”, IOSR
Journal of VLSI and Signal Processing, Vol. 2, pp65-71.
[4] M.Gayathiri et al (2013) “FPGA implementation of high speed and low power viterbi encoder and
decoder ”, International journal of Engineering and Technology, Vol. 2, pp1315-1320.
Authors
Ms.L.Thangarani is pursuing her master degree in VLSI Design engineering. She has keen
interest in VLSI Design Techniques.
Mr.G.Sivasankar is an Assistant Professor in Electronics and Communication Engineering, Mepco Schlenk
Engineering College, Sivakasi. He is very much interested in Embedded Sys.

More Related Content

What's hot

FEC-Forward Error Correction for Optics Professionals..www.mapyourtech.com
FEC-Forward Error Correction for Optics Professionals..www.mapyourtech.comFEC-Forward Error Correction for Optics Professionals..www.mapyourtech.com
FEC-Forward Error Correction for Optics Professionals..www.mapyourtech.comMapYourTech
 
IRJET- Comparative Study of Implementation of 8-Bit Carry Select Adder us...
IRJET-  	  Comparative Study of Implementation of 8-Bit Carry Select Adder us...IRJET-  	  Comparative Study of Implementation of 8-Bit Carry Select Adder us...
IRJET- Comparative Study of Implementation of 8-Bit Carry Select Adder us...IRJET Journal
 
Digital Hierarchy
Digital HierarchyDigital Hierarchy
Digital Hierarchypaul4g
 
Packet Guide SONET/SDH
Packet Guide SONET/SDHPacket Guide SONET/SDH
Packet Guide SONET/SDHscribd1
 
FPGA Implementation of Viterbi Decoder using Hybrid Trace Back and Register E...
FPGA Implementation of Viterbi Decoder using Hybrid Trace Back and Register E...FPGA Implementation of Viterbi Decoder using Hybrid Trace Back and Register E...
FPGA Implementation of Viterbi Decoder using Hybrid Trace Back and Register E...ijsrd.com
 
Implementation of maximal length sequences for
Implementation of maximal length sequences forImplementation of maximal length sequences for
Implementation of maximal length sequences forIAEME Publication
 
Et3003 sem2-1314-5 network layers ii (intro to routing)
Et3003 sem2-1314-5 network layers ii (intro to routing)Et3003 sem2-1314-5 network layers ii (intro to routing)
Et3003 sem2-1314-5 network layers ii (intro to routing)Tutun Juhana
 
IRJET-Error Detection and Correction using Turbo Codes
IRJET-Error Detection and Correction using Turbo CodesIRJET-Error Detection and Correction using Turbo Codes
IRJET-Error Detection and Correction using Turbo CodesIRJET Journal
 
2015 comnet pci planning rs
2015 comnet pci planning rs2015 comnet pci planning rs
2015 comnet pci planning rsSatwik Sansare
 
Midterm review questions ans(networking)
Midterm review questions ans(networking)Midterm review questions ans(networking)
Midterm review questions ans(networking)welcometofacebook
 
21 Network Layer_Address_Mapping_Error_Reporting_and_Multicasting
21 Network Layer_Address_Mapping_Error_Reporting_and_Multicasting21 Network Layer_Address_Mapping_Error_Reporting_and_Multicasting
21 Network Layer_Address_Mapping_Error_Reporting_and_MulticastingAhmar Hashmi
 
Implementation of Joint Network Channel Decoding Algorithm for Multiple Acces...
Implementation of Joint Network Channel Decoding Algorithm for Multiple Acces...Implementation of Joint Network Channel Decoding Algorithm for Multiple Acces...
Implementation of Joint Network Channel Decoding Algorithm for Multiple Acces...csandit
 
Forward error correction
Forward error correctionForward error correction
Forward error correctionPrankit Mishra
 
Design and Implementation of Area Optimized, Low Complexity CMOS 32nm Technol...
Design and Implementation of Area Optimized, Low Complexity CMOS 32nm Technol...Design and Implementation of Area Optimized, Low Complexity CMOS 32nm Technol...
Design and Implementation of Area Optimized, Low Complexity CMOS 32nm Technol...IJERA Editor
 

What's hot (20)

FEC-Forward Error Correction for Optics Professionals..www.mapyourtech.com
FEC-Forward Error Correction for Optics Professionals..www.mapyourtech.comFEC-Forward Error Correction for Optics Professionals..www.mapyourtech.com
FEC-Forward Error Correction for Optics Professionals..www.mapyourtech.com
 
IRJET- Comparative Study of Implementation of 8-Bit Carry Select Adder us...
IRJET-  	  Comparative Study of Implementation of 8-Bit Carry Select Adder us...IRJET-  	  Comparative Study of Implementation of 8-Bit Carry Select Adder us...
IRJET- Comparative Study of Implementation of 8-Bit Carry Select Adder us...
 
Digital Hierarchy
Digital HierarchyDigital Hierarchy
Digital Hierarchy
 
Packet Guide SONET/SDH
Packet Guide SONET/SDHPacket Guide SONET/SDH
Packet Guide SONET/SDH
 
FPGA Implementation of Viterbi Decoder using Hybrid Trace Back and Register E...
FPGA Implementation of Viterbi Decoder using Hybrid Trace Back and Register E...FPGA Implementation of Viterbi Decoder using Hybrid Trace Back and Register E...
FPGA Implementation of Viterbi Decoder using Hybrid Trace Back and Register E...
 
Implementation of maximal length sequences for
Implementation of maximal length sequences forImplementation of maximal length sequences for
Implementation of maximal length sequences for
 
Instrumentation II : IOE TU
Instrumentation II : IOE TU Instrumentation II : IOE TU
Instrumentation II : IOE TU
 
Network Layer
Network LayerNetwork Layer
Network Layer
 
Et3003 sem2-1314-5 network layers ii (intro to routing)
Et3003 sem2-1314-5 network layers ii (intro to routing)Et3003 sem2-1314-5 network layers ii (intro to routing)
Et3003 sem2-1314-5 network layers ii (intro to routing)
 
08 Switching
08 Switching08 Switching
08 Switching
 
02 Network Models
02 Network Models02 Network Models
02 Network Models
 
Network Layer
Network LayerNetwork Layer
Network Layer
 
IRJET-Error Detection and Correction using Turbo Codes
IRJET-Error Detection and Correction using Turbo CodesIRJET-Error Detection and Correction using Turbo Codes
IRJET-Error Detection and Correction using Turbo Codes
 
SONET/SDH in CCN
SONET/SDH in CCNSONET/SDH in CCN
SONET/SDH in CCN
 
2015 comnet pci planning rs
2015 comnet pci planning rs2015 comnet pci planning rs
2015 comnet pci planning rs
 
Midterm review questions ans(networking)
Midterm review questions ans(networking)Midterm review questions ans(networking)
Midterm review questions ans(networking)
 
21 Network Layer_Address_Mapping_Error_Reporting_and_Multicasting
21 Network Layer_Address_Mapping_Error_Reporting_and_Multicasting21 Network Layer_Address_Mapping_Error_Reporting_and_Multicasting
21 Network Layer_Address_Mapping_Error_Reporting_and_Multicasting
 
Implementation of Joint Network Channel Decoding Algorithm for Multiple Acces...
Implementation of Joint Network Channel Decoding Algorithm for Multiple Acces...Implementation of Joint Network Channel Decoding Algorithm for Multiple Acces...
Implementation of Joint Network Channel Decoding Algorithm for Multiple Acces...
 
Forward error correction
Forward error correctionForward error correction
Forward error correction
 
Design and Implementation of Area Optimized, Low Complexity CMOS 32nm Technol...
Design and Implementation of Area Optimized, Low Complexity CMOS 32nm Technol...Design and Implementation of Area Optimized, Low Complexity CMOS 32nm Technol...
Design and Implementation of Area Optimized, Low Complexity CMOS 32nm Technol...
 

Similar to Performance analysis of viterbi decoder for wireless applications

Hard Decision Viterbi Decoder: Implementation on FPGA and Comparison of Resou...
Hard Decision Viterbi Decoder: Implementation on FPGA and Comparison of Resou...Hard Decision Viterbi Decoder: Implementation on FPGA and Comparison of Resou...
Hard Decision Viterbi Decoder: Implementation on FPGA and Comparison of Resou...IJERA Editor
 
Analysis and Implementation of Hard-Decision Viterbi Decoding In Wireless Com...
Analysis and Implementation of Hard-Decision Viterbi Decoding In Wireless Com...Analysis and Implementation of Hard-Decision Viterbi Decoding In Wireless Com...
Analysis and Implementation of Hard-Decision Viterbi Decoding In Wireless Com...IJERA Editor
 
Iaetsd vlsi implementation of efficient convolutional
Iaetsd vlsi implementation of efficient convolutionalIaetsd vlsi implementation of efficient convolutional
Iaetsd vlsi implementation of efficient convolutionalIaetsd Iaetsd
 
FPGA Implementation of Efficient Viterbi Decoder for Multi-Carrier Systems
FPGA Implementation of Efficient Viterbi Decoder for  Multi-Carrier SystemsFPGA Implementation of Efficient Viterbi Decoder for  Multi-Carrier Systems
FPGA Implementation of Efficient Viterbi Decoder for Multi-Carrier SystemsIJMER
 
AN EFFICIENT VITERBI DECODER
AN EFFICIENT VITERBI DECODERAN EFFICIENT VITERBI DECODER
AN EFFICIENT VITERBI DECODERIJCSEA Journal
 
Implementation of Viterbi Decoder on FPGA to Improve Design
Implementation of Viterbi Decoder on FPGA to Improve DesignImplementation of Viterbi Decoder on FPGA to Improve Design
Implementation of Viterbi Decoder on FPGA to Improve Designijsrd.com
 
IJCER (www.ijceronline.com) International Journal of computational Engineeri...
 IJCER (www.ijceronline.com) International Journal of computational Engineeri... IJCER (www.ijceronline.com) International Journal of computational Engineeri...
IJCER (www.ijceronline.com) International Journal of computational Engineeri...ijceronline
 
Performance Analysis of Steepest Descent Decoding Algorithm for LDPC Codes
Performance Analysis of Steepest Descent Decoding Algorithm for LDPC CodesPerformance Analysis of Steepest Descent Decoding Algorithm for LDPC Codes
Performance Analysis of Steepest Descent Decoding Algorithm for LDPC Codesidescitation
 
FPGA Based Decimal Matrix Code for Passive RFID Tag
FPGA Based Decimal Matrix Code for Passive RFID TagFPGA Based Decimal Matrix Code for Passive RFID Tag
FPGA Based Decimal Matrix Code for Passive RFID TagIJERA Editor
 
BER Performance for Convalutional Code with Soft & Hard Viterbi Decoding
BER Performance for Convalutional Code with Soft & Hard  Viterbi DecodingBER Performance for Convalutional Code with Soft & Hard  Viterbi Decoding
BER Performance for Convalutional Code with Soft & Hard Viterbi DecodingIJMER
 
A 2 stage data word packet communication decoder using rate 1-by-3 viterbi de...
A 2 stage data word packet communication decoder using rate 1-by-3 viterbi de...A 2 stage data word packet communication decoder using rate 1-by-3 viterbi de...
A 2 stage data word packet communication decoder using rate 1-by-3 viterbi de...eSAT Journals
 
Vlsi Implementation of Low Power Convolutional Coding With Viterbi Decoding U...
Vlsi Implementation of Low Power Convolutional Coding With Viterbi Decoding U...Vlsi Implementation of Low Power Convolutional Coding With Viterbi Decoding U...
Vlsi Implementation of Low Power Convolutional Coding With Viterbi Decoding U...IOSR Journals
 
Convolutional Error Control Coding
Convolutional Error Control CodingConvolutional Error Control Coding
Convolutional Error Control CodingMohammed Abuibaid
 
Gsm Soft Viterbi Code
Gsm Soft Viterbi CodeGsm Soft Viterbi Code
Gsm Soft Viterbi Codefrankie_z
 

Similar to Performance analysis of viterbi decoder for wireless applications (20)

Hard Decision Viterbi Decoder: Implementation on FPGA and Comparison of Resou...
Hard Decision Viterbi Decoder: Implementation on FPGA and Comparison of Resou...Hard Decision Viterbi Decoder: Implementation on FPGA and Comparison of Resou...
Hard Decision Viterbi Decoder: Implementation on FPGA and Comparison of Resou...
 
Analysis and Implementation of Hard-Decision Viterbi Decoding In Wireless Com...
Analysis and Implementation of Hard-Decision Viterbi Decoding In Wireless Com...Analysis and Implementation of Hard-Decision Viterbi Decoding In Wireless Com...
Analysis and Implementation of Hard-Decision Viterbi Decoding In Wireless Com...
 
Iaetsd vlsi implementation of efficient convolutional
Iaetsd vlsi implementation of efficient convolutionalIaetsd vlsi implementation of efficient convolutional
Iaetsd vlsi implementation of efficient convolutional
 
E42032732
E42032732E42032732
E42032732
 
FPGA Implementation of Efficient Viterbi Decoder for Multi-Carrier Systems
FPGA Implementation of Efficient Viterbi Decoder for  Multi-Carrier SystemsFPGA Implementation of Efficient Viterbi Decoder for  Multi-Carrier Systems
FPGA Implementation of Efficient Viterbi Decoder for Multi-Carrier Systems
 
K0216571
K0216571K0216571
K0216571
 
G364246
G364246G364246
G364246
 
40120140505011
4012014050501140120140505011
40120140505011
 
AN EFFICIENT VITERBI DECODER
AN EFFICIENT VITERBI DECODERAN EFFICIENT VITERBI DECODER
AN EFFICIENT VITERBI DECODER
 
Y25124127
Y25124127Y25124127
Y25124127
 
Implementation of Viterbi Decoder on FPGA to Improve Design
Implementation of Viterbi Decoder on FPGA to Improve DesignImplementation of Viterbi Decoder on FPGA to Improve Design
Implementation of Viterbi Decoder on FPGA to Improve Design
 
IJCER (www.ijceronline.com) International Journal of computational Engineeri...
 IJCER (www.ijceronline.com) International Journal of computational Engineeri... IJCER (www.ijceronline.com) International Journal of computational Engineeri...
IJCER (www.ijceronline.com) International Journal of computational Engineeri...
 
Lb35189919904
Lb35189919904Lb35189919904
Lb35189919904
 
Performance Analysis of Steepest Descent Decoding Algorithm for LDPC Codes
Performance Analysis of Steepest Descent Decoding Algorithm for LDPC CodesPerformance Analysis of Steepest Descent Decoding Algorithm for LDPC Codes
Performance Analysis of Steepest Descent Decoding Algorithm for LDPC Codes
 
FPGA Based Decimal Matrix Code for Passive RFID Tag
FPGA Based Decimal Matrix Code for Passive RFID TagFPGA Based Decimal Matrix Code for Passive RFID Tag
FPGA Based Decimal Matrix Code for Passive RFID Tag
 
BER Performance for Convalutional Code with Soft & Hard Viterbi Decoding
BER Performance for Convalutional Code with Soft & Hard  Viterbi DecodingBER Performance for Convalutional Code with Soft & Hard  Viterbi Decoding
BER Performance for Convalutional Code with Soft & Hard Viterbi Decoding
 
A 2 stage data word packet communication decoder using rate 1-by-3 viterbi de...
A 2 stage data word packet communication decoder using rate 1-by-3 viterbi de...A 2 stage data word packet communication decoder using rate 1-by-3 viterbi de...
A 2 stage data word packet communication decoder using rate 1-by-3 viterbi de...
 
Vlsi Implementation of Low Power Convolutional Coding With Viterbi Decoding U...
Vlsi Implementation of Low Power Convolutional Coding With Viterbi Decoding U...Vlsi Implementation of Low Power Convolutional Coding With Viterbi Decoding U...
Vlsi Implementation of Low Power Convolutional Coding With Viterbi Decoding U...
 
Convolutional Error Control Coding
Convolutional Error Control CodingConvolutional Error Control Coding
Convolutional Error Control Coding
 
Gsm Soft Viterbi Code
Gsm Soft Viterbi CodeGsm Soft Viterbi Code
Gsm Soft Viterbi Code
 

More from acijjournal

Jan_2024_Top_read_articles_in_ACIJ.pdf
Jan_2024_Top_read_articles_in_ACIJ.pdfJan_2024_Top_read_articles_in_ACIJ.pdf
Jan_2024_Top_read_articles_in_ACIJ.pdfacijjournal
 
Call for Papers - Advanced Computing An International Journal (ACIJ) (2).pdf
Call for Papers - Advanced Computing An International Journal (ACIJ) (2).pdfCall for Papers - Advanced Computing An International Journal (ACIJ) (2).pdf
Call for Papers - Advanced Computing An International Journal (ACIJ) (2).pdfacijjournal
 
cs - ACIJ (4) (1).pdf
cs - ACIJ (4) (1).pdfcs - ACIJ (4) (1).pdf
cs - ACIJ (4) (1).pdfacijjournal
 
cs - ACIJ (2).pdf
cs - ACIJ (2).pdfcs - ACIJ (2).pdf
cs - ACIJ (2).pdfacijjournal
 
7thInternational Conference on Data Mining & Knowledge Management (DaKM 2022)
7thInternational Conference on Data Mining & Knowledge Management (DaKM 2022)7thInternational Conference on Data Mining & Knowledge Management (DaKM 2022)
7thInternational Conference on Data Mining & Knowledge Management (DaKM 2022)acijjournal
 
7thInternational Conference on Data Mining & Knowledge Management (DaKM 2022)
7thInternational Conference on Data Mining & Knowledge Management (DaKM 2022)7thInternational Conference on Data Mining & Knowledge Management (DaKM 2022)
7thInternational Conference on Data Mining & Knowledge Management (DaKM 2022)acijjournal
 
7thInternational Conference on Data Mining & Knowledge Management (DaKM 2022)
7thInternational Conference on Data Mining & Knowledge Management (DaKM 2022)7thInternational Conference on Data Mining & Knowledge Management (DaKM 2022)
7thInternational Conference on Data Mining & Knowledge Management (DaKM 2022)acijjournal
 
4thInternational Conference on Machine Learning & Applications (CMLA 2022)
4thInternational Conference on Machine Learning & Applications (CMLA 2022)4thInternational Conference on Machine Learning & Applications (CMLA 2022)
4thInternational Conference on Machine Learning & Applications (CMLA 2022)acijjournal
 
7thInternational Conference on Data Mining & Knowledge Management (DaKM 2022)
7thInternational Conference on Data Mining & Knowledge Management (DaKM 2022)7thInternational Conference on Data Mining & Knowledge Management (DaKM 2022)
7thInternational Conference on Data Mining & Knowledge Management (DaKM 2022)acijjournal
 
3rdInternational Conference on Natural Language Processingand Applications (N...
3rdInternational Conference on Natural Language Processingand Applications (N...3rdInternational Conference on Natural Language Processingand Applications (N...
3rdInternational Conference on Natural Language Processingand Applications (N...acijjournal
 
4thInternational Conference on Machine Learning & Applications (CMLA 2022)
4thInternational Conference on Machine Learning & Applications (CMLA 2022)4thInternational Conference on Machine Learning & Applications (CMLA 2022)
4thInternational Conference on Machine Learning & Applications (CMLA 2022)acijjournal
 
Graduate School Cyber Portfolio: The Innovative Menu For Sustainable Development
Graduate School Cyber Portfolio: The Innovative Menu For Sustainable DevelopmentGraduate School Cyber Portfolio: The Innovative Menu For Sustainable Development
Graduate School Cyber Portfolio: The Innovative Menu For Sustainable Developmentacijjournal
 
Genetic Algorithms and Programming - An Evolutionary Methodology
Genetic Algorithms and Programming - An Evolutionary MethodologyGenetic Algorithms and Programming - An Evolutionary Methodology
Genetic Algorithms and Programming - An Evolutionary Methodologyacijjournal
 
Data Transformation Technique for Protecting Private Information in Privacy P...
Data Transformation Technique for Protecting Private Information in Privacy P...Data Transformation Technique for Protecting Private Information in Privacy P...
Data Transformation Technique for Protecting Private Information in Privacy P...acijjournal
 
Advanced Computing: An International Journal (ACIJ)
Advanced Computing: An International Journal (ACIJ) Advanced Computing: An International Journal (ACIJ)
Advanced Computing: An International Journal (ACIJ) acijjournal
 
E-Maintenance: Impact Over Industrial Processes, Its Dimensions & Principles
E-Maintenance: Impact Over Industrial Processes, Its Dimensions & PrinciplesE-Maintenance: Impact Over Industrial Processes, Its Dimensions & Principles
E-Maintenance: Impact Over Industrial Processes, Its Dimensions & Principlesacijjournal
 
10th International Conference on Software Engineering and Applications (SEAPP...
10th International Conference on Software Engineering and Applications (SEAPP...10th International Conference on Software Engineering and Applications (SEAPP...
10th International Conference on Software Engineering and Applications (SEAPP...acijjournal
 
10th International conference on Parallel, Distributed Computing and Applicat...
10th International conference on Parallel, Distributed Computing and Applicat...10th International conference on Parallel, Distributed Computing and Applicat...
10th International conference on Parallel, Distributed Computing and Applicat...acijjournal
 
DETECTION OF FORGERY AND FABRICATION IN PASSPORTS AND VISAS USING CRYPTOGRAPH...
DETECTION OF FORGERY AND FABRICATION IN PASSPORTS AND VISAS USING CRYPTOGRAPH...DETECTION OF FORGERY AND FABRICATION IN PASSPORTS AND VISAS USING CRYPTOGRAPH...
DETECTION OF FORGERY AND FABRICATION IN PASSPORTS AND VISAS USING CRYPTOGRAPH...acijjournal
 
Detection of Forgery and Fabrication in Passports and Visas Using Cryptograph...
Detection of Forgery and Fabrication in Passports and Visas Using Cryptograph...Detection of Forgery and Fabrication in Passports and Visas Using Cryptograph...
Detection of Forgery and Fabrication in Passports and Visas Using Cryptograph...acijjournal
 

More from acijjournal (20)

Jan_2024_Top_read_articles_in_ACIJ.pdf
Jan_2024_Top_read_articles_in_ACIJ.pdfJan_2024_Top_read_articles_in_ACIJ.pdf
Jan_2024_Top_read_articles_in_ACIJ.pdf
 
Call for Papers - Advanced Computing An International Journal (ACIJ) (2).pdf
Call for Papers - Advanced Computing An International Journal (ACIJ) (2).pdfCall for Papers - Advanced Computing An International Journal (ACIJ) (2).pdf
Call for Papers - Advanced Computing An International Journal (ACIJ) (2).pdf
 
cs - ACIJ (4) (1).pdf
cs - ACIJ (4) (1).pdfcs - ACIJ (4) (1).pdf
cs - ACIJ (4) (1).pdf
 
cs - ACIJ (2).pdf
cs - ACIJ (2).pdfcs - ACIJ (2).pdf
cs - ACIJ (2).pdf
 
7thInternational Conference on Data Mining & Knowledge Management (DaKM 2022)
7thInternational Conference on Data Mining & Knowledge Management (DaKM 2022)7thInternational Conference on Data Mining & Knowledge Management (DaKM 2022)
7thInternational Conference on Data Mining & Knowledge Management (DaKM 2022)
 
7thInternational Conference on Data Mining & Knowledge Management (DaKM 2022)
7thInternational Conference on Data Mining & Knowledge Management (DaKM 2022)7thInternational Conference on Data Mining & Knowledge Management (DaKM 2022)
7thInternational Conference on Data Mining & Knowledge Management (DaKM 2022)
 
7thInternational Conference on Data Mining & Knowledge Management (DaKM 2022)
7thInternational Conference on Data Mining & Knowledge Management (DaKM 2022)7thInternational Conference on Data Mining & Knowledge Management (DaKM 2022)
7thInternational Conference on Data Mining & Knowledge Management (DaKM 2022)
 
4thInternational Conference on Machine Learning & Applications (CMLA 2022)
4thInternational Conference on Machine Learning & Applications (CMLA 2022)4thInternational Conference on Machine Learning & Applications (CMLA 2022)
4thInternational Conference on Machine Learning & Applications (CMLA 2022)
 
7thInternational Conference on Data Mining & Knowledge Management (DaKM 2022)
7thInternational Conference on Data Mining & Knowledge Management (DaKM 2022)7thInternational Conference on Data Mining & Knowledge Management (DaKM 2022)
7thInternational Conference on Data Mining & Knowledge Management (DaKM 2022)
 
3rdInternational Conference on Natural Language Processingand Applications (N...
3rdInternational Conference on Natural Language Processingand Applications (N...3rdInternational Conference on Natural Language Processingand Applications (N...
3rdInternational Conference on Natural Language Processingand Applications (N...
 
4thInternational Conference on Machine Learning & Applications (CMLA 2022)
4thInternational Conference on Machine Learning & Applications (CMLA 2022)4thInternational Conference on Machine Learning & Applications (CMLA 2022)
4thInternational Conference on Machine Learning & Applications (CMLA 2022)
 
Graduate School Cyber Portfolio: The Innovative Menu For Sustainable Development
Graduate School Cyber Portfolio: The Innovative Menu For Sustainable DevelopmentGraduate School Cyber Portfolio: The Innovative Menu For Sustainable Development
Graduate School Cyber Portfolio: The Innovative Menu For Sustainable Development
 
Genetic Algorithms and Programming - An Evolutionary Methodology
Genetic Algorithms and Programming - An Evolutionary MethodologyGenetic Algorithms and Programming - An Evolutionary Methodology
Genetic Algorithms and Programming - An Evolutionary Methodology
 
Data Transformation Technique for Protecting Private Information in Privacy P...
Data Transformation Technique for Protecting Private Information in Privacy P...Data Transformation Technique for Protecting Private Information in Privacy P...
Data Transformation Technique for Protecting Private Information in Privacy P...
 
Advanced Computing: An International Journal (ACIJ)
Advanced Computing: An International Journal (ACIJ) Advanced Computing: An International Journal (ACIJ)
Advanced Computing: An International Journal (ACIJ)
 
E-Maintenance: Impact Over Industrial Processes, Its Dimensions & Principles
E-Maintenance: Impact Over Industrial Processes, Its Dimensions & PrinciplesE-Maintenance: Impact Over Industrial Processes, Its Dimensions & Principles
E-Maintenance: Impact Over Industrial Processes, Its Dimensions & Principles
 
10th International Conference on Software Engineering and Applications (SEAPP...
10th International Conference on Software Engineering and Applications (SEAPP...10th International Conference on Software Engineering and Applications (SEAPP...
10th International Conference on Software Engineering and Applications (SEAPP...
 
10th International conference on Parallel, Distributed Computing and Applicat...
10th International conference on Parallel, Distributed Computing and Applicat...10th International conference on Parallel, Distributed Computing and Applicat...
10th International conference on Parallel, Distributed Computing and Applicat...
 
DETECTION OF FORGERY AND FABRICATION IN PASSPORTS AND VISAS USING CRYPTOGRAPH...
DETECTION OF FORGERY AND FABRICATION IN PASSPORTS AND VISAS USING CRYPTOGRAPH...DETECTION OF FORGERY AND FABRICATION IN PASSPORTS AND VISAS USING CRYPTOGRAPH...
DETECTION OF FORGERY AND FABRICATION IN PASSPORTS AND VISAS USING CRYPTOGRAPH...
 
Detection of Forgery and Fabrication in Passports and Visas Using Cryptograph...
Detection of Forgery and Fabrication in Passports and Visas Using Cryptograph...Detection of Forgery and Fabrication in Passports and Visas Using Cryptograph...
Detection of Forgery and Fabrication in Passports and Visas Using Cryptograph...
 

Recently uploaded

My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024The Digital Insurer
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
Artificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraArtificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraDeakin University
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Wonjun Hwang
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
costume and set research powerpoint presentation
costume and set research powerpoint presentationcostume and set research powerpoint presentation
costume and set research powerpoint presentationphoebematthew05
 
Bluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdfBluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdfngoud9212
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
Science&tech:THE INFORMATION AGE STS.pdf
Science&tech:THE INFORMATION AGE STS.pdfScience&tech:THE INFORMATION AGE STS.pdf
Science&tech:THE INFORMATION AGE STS.pdfjimielynbastida
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksSoftradix Technologies
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsMiki Katsuragi
 
APIForce Zurich 5 April Automation LPDG
APIForce Zurich 5 April  Automation LPDGAPIForce Zurich 5 April  Automation LPDG
APIForce Zurich 5 April Automation LPDGMarianaLemus7
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Neo4j
 

Recently uploaded (20)

My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
Artificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraArtificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning era
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
costume and set research powerpoint presentation
costume and set research powerpoint presentationcostume and set research powerpoint presentation
costume and set research powerpoint presentation
 
Bluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdfBluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdf
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
Science&tech:THE INFORMATION AGE STS.pdf
Science&tech:THE INFORMATION AGE STS.pdfScience&tech:THE INFORMATION AGE STS.pdf
Science&tech:THE INFORMATION AGE STS.pdf
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other Frameworks
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
 
APIForce Zurich 5 April Automation LPDG
APIForce Zurich 5 April  Automation LPDGAPIForce Zurich 5 April  Automation LPDG
APIForce Zurich 5 April Automation LPDG
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024
 

Performance analysis of viterbi decoder for wireless applications

  • 1. Advanced Computing : An International Journal (ACIJ), Vol.5, No.4, July 2014 DOI:10.5121/acij.2014.5401 1 PERFORMANCE ANALYSIS OF VITERBI DECODER FOR WIRELESS APPLICATIONS G.Sivasankar and L.Thangarani Department of Electronics and Communication, Mepco Schlenk Engineering College, Sivakasi, Tamilnadu, India ABSTRACT Viterbi decoder is employed in wireless communication to decode the convolutional codes; those codes are used in every robust digital communication systems. Convolutional encoding and viterbi decoding is a powerful method for forward error correction. This paper deals with synthesis and implementation of viterbi decoder with a constraint length of three as well as seven and the code rate of ½ in FPGA (Field Programmable Gate Array). The performance of viterbi decoder is analyzed in terms of resource utilization. The design of viterbi decoder is simulated using Verilog HDL. It is synthesized and implemented using Xilinx 9.1ise and Spartan 3E Kit. It is compatible with many common standards such as 3GPP, IEEE 802.16 and LTE. KEYWORDS Convolutional encoder, Constraint length, Code rate, Viterbi decoder, Viterbi algorithm, Hamming distance, Verilog HDL, FPGA. 1. INTRODUCTION Convolutional coding is a coding scheme used in digital communication systems. It gives an alternative approach to block codes for transmission over a noisy channel. The process of adding the redundant bits or information is known as channel coding. There two types of coding namely block and convolutional code. The block codes can be applied only for the block of data but the convolutional coding can be applied to a continuous data stream as well as to blocks of data [2]. IS-95, a wireless digital cellular standard for CDMA (Code Division Multiple Access), employs convolutional coding. A convolutional code works by adding some structured redundant information to the user’s data and then correcting errors using this information. Viterbi decoding algorithm was developed by Andrew. J. Viterbi in 1967 [1]. It is used as a decoding technique for convolutional codes as well as the bit detection in storage devices in many places. The algorithm operates by forming trellis diagram, which is eventually traced back for decoding the received information. It is also called as dynamic programming which is used for finding the most likely sequence of hidden states, called viterbi path-that results in sequence of observed events. Some of the applications of viterbi decoder include mobile communication, satellite communication, digital cellular telephone etc.., 2. CONVOLUTIONAL ENCODER Convolutional codes are employed to implement Forward Error Correction (FEC) which is essential component in wireless communication. It achieves error free transmission by adding
  • 2. Advanced Computing : An International Journal (ACIJ), Vol.5, No.4, July 2014 2 some redundant information to the source or input symbols. The convolutional encoder in figure 1 produces two bits of encoded information for each bit of input information, so it is called a rate 1/2 encoder. There are three parameters involved in the convolutional encoder and are n, k and K , where n is number of output bits of the encoder; k is number of input bits of the encoder; K is the constraint length of the encoder. The rate of encoder is defined as k/n. The encoder shown in the figure 1 is a (2, 1, 3) encoder with rate ½. K=m+1, where m is the number of flip-flops of the longest shift register of the encoder. Convolutional encoder increases the length of the message sequence by adding redundant bits in order to increase the likelihood of detecting the transmitted sequence even if errors have occurred during transmission. Convolutional encoder consists of one or more shift registers and multiple exclusive or EXOR gates. The information bits flows in to the shift register from one end and is shifted out at the other end. EXOR gates are connected to some stages of the shift registers as well as to the current input to generate the output. The block C and D represents the memory elements of the convolutional encoder which is shown in the figure 1. The operation of a convolutional encoder can be easily understood with the aid of a state diagram. Figure 2 represents the state diagram of the convolutional encoder shown in figure 1. Figure 2 depicts state transitions and the corresponding encoded outputs. Here there are two memory elements in the figure 1; so it takes four states. For example, the input information sequence X= {1010} (begin from the all zero state) leads to the state transition sequence S = {10, 01, 10, 01} and produces the output encoded sequence C = {11, 01, 00, 01}. In the figure 2, S0, S1, S2, S3 represents the state values 00,01,10,11 respectively. The generator polynomial used in figure 1 is 1+x+x2 (for upper path B) and 1+ x2 (for lower path A). Figure 1. Convolutional Encoder for K=3 Figure 2. State Diagram of Convolutional Encoder for K=3 This paper also deals with viterbi decoder for K=7 convolutional encoder. The block diagram of convolutional encoder for K= 7 is shown in figure 3. Here the encoder takes 64 states. Generally, the number of states in the encoder is defined as 2K-1 . The K denotes the constraint length of the encoder. The generator polynomial used in figure 1 is 1+x+x2 + x3 + x6 (for upper path A) and 1+ x2 + x3 + x5 + x6 (for lower path B).
  • 3. Advanced Computing : An International Journal (ACIJ), Vol.5, No.4, July 2014 3 Figure 3. Convolutional Encoder for K=7 3. VITERBI DECODER Viterbi decoder is most commonly used to resolve convolution codes. This is essential for the purpose of secure transmission of data and its corresponding retrieval during reception. Viterbi decoders also have the property of compressing the number of bits of the data input to half. As a result redundancy in the codes is also reduced; it is more effective and efficient of decoding. Viterbi decoders are based on the basic algorithm which comprises of minimum distance and minimum path calculation and retracing the path. This minimum distance calculation is determined by EX-OR operation and then compared. This can be briefed by means of the block diagram which is shown in figure 4. Figure 4. Block Diagram of Viterbi Decoder To describe the viterbi algorithm of viterbi decoder, one of the inputs of viterbi decoder is taken which are 11110110. The input is taken from in the form of four sets each, consists of 2 bits starting from the Most Significant Bit of the input. The first two bits from the MSB are taken and are EXOR-ed with the values predetermined for the encoder as state0 and the values are obtained. Similarly they are also EXOR-ed with the values of state 1 and the values are also noted and now 2 sets of 4 values each, for state 0 and state 1 is obtained. The corresponding values are compared and the minimum of each of the 2 values is noted down for all the 4 values. Also corresponding position values are marked as 00,01,10,11 respectively for each stage of the trellis diagram. For the minimum path calculation, the value corresponding to that particular minimum path is taken and its state value (state 0 or state 1) is assigned to the minimum path in decimal notation. This is
  • 4. Advanced Computing : An International Journal (ACIJ), Vol.5, No.4, July 2014 4 the function of the Branch Metric Unit. In short it is named as BMU. In general there are two types in viterbi decoding one is soft decision (Euclidean distance is considered for BMU) and another one is hard decision (Hamming distance is considered for BMU). Once the first stage is resolved, the second set of two bits starting from the MSB (11 in our case) is EXOR-ed as explained for the first set. The equivalent value of the minimum distance is taken and is added to the EXOR-ed outputs of the present stage for both value 0 and value 1. They are then compared and minimum distance is once again obtained and its corresponding positions are assigned. This is the function of the Add compare and select unit. The final step is the trace back procedure, wherein all the values are consolidated to obtain the final output. If the position of minimum value is 00 or 01, a 0 value is obtained in the output. For any other values, 1 is obtained at the output. In this calculation, the minimum value of the last stage is taken and based on its position a 1 or 0 is assigned as one of the output bits. The corresponding path is chosen. The minimum value corresponding to that particular path is considered and once again a position based output bit assignment is made as explained previously, for the stage 3. This is repeated for all the remaining stages. Thus, 4 output bits are obtained. Thus a 4 bit output is derived from an 8 bits input that was given to the viterbi decoder. 4. RESULTS AND DISCUSSION The Convolutional encoder and Viterbi decoder is simulated and implemented using Verilog HDL and Xilinx Spartan 3E Kit. The Viterbi decoder decodes the original input sequence by using Viterbi algorithm. The proposed design of viterbi decoder occupies fewer amounts of resources when compared with conventional design; it means that it has less hardware complexity. The simulation result, device utilization summary and FPGA Editor of two different encoder and decoder is shown in figures 5,6,7,9,10 and 11 respectively. The power analysis for viterbi decoder is done by Xilinx XPower analyzer which is shown in figure 8. The power consumed by the viterbi decoder is 0.081 Watt which is less compared to previous result [4]. The device utilization summary shows that how much resources like LUT’s, flip flops, input and output is utilized by the design of viterbi decoder for the convolutional encoder with the constraint length of three. The Simulation result of convolutional encoder for K=7 is shown in figure 10. The FPGA Editor shows that the amount of area which is occupied by the design of viterbi decoder. The comparative analysis between two constraint lengths is shown in table 1. In this table G1 and G2 represents generator polynomial of convolutional encoder. It denotes the sequence of connections (a one representing a connection and a zero no connection) from the memory elements (flip flops) of a shift register to an output. The comparative analysis result shows that as constraint length increases hardware complexity increases. Figure 5. Simulation Result of Convolutional Encoder for K=3
  • 5. Advanced Computing : An International Journal (ACIJ), Vol.5, No.4, July 2014 5 Figure 6. Simulation Result of Viterbi Decoder for K=3 Figure 7. Device Utilization Summary and FPGA Editor of Viterbi Decoder for K=3 Figure 8. Power Supply Summary of Viterbi Decoder for K=3 Figure 9. Simulation Result of Convolutional Encoder for K=7
  • 6. Advanced Computing : An International Journal (ACIJ), Vol.5, No.4, July 2014 6 Figure 10. Simulation Result of Viterbi Decoder for K=7 Figure 11. Device Utilization Summary and FPGA Editor of Viterbi Decoder for K=3 Device Utilization summary (xc3s500e-4ft256) Rate ½, K= 3, G1= 101, G2= 111 Rate ½, K= 7, G1= 1111001, G2= 1011011 Logic Utilization Used Used Total no of slice registers 9 15 No of 4 input LUTs 142 154 No of latches 8 14 Table 1. Comparison between two constraint lengths 5. CONCLUSION The design of viterbi decoder for convolutional encoder is synthesized and implemented on Spartan 3E FPGA. Viterbi decoder can remove potential noise in the incoming stream by decoding it. Even though the viterbi decoder is used in commercial wireless communication purpose, the main complexity of the viterbi decoder, confines its application to convolutional codes with a constraint length K, not exceeding 10.The future work is to improve the speed of the decoding using VLSI techniques like folding, retiming etc.
  • 7. Advanced Computing : An International Journal (ACIJ), Vol.5, No.4, July 2014 7 ACKNOWLEDGEMENTS I would like to thank my parents who had sacrificed a lot in making me to reach this position. I express my sincere thanks to our Principal Dr. S. Arivazhagan, M.E., Ph.D., for permitting and providing all the facilities to carry out this work in the college campus. REFERENCES [1] A.J. Viterbi (1967) “Error bounds for Convolutional Coding and an asymptotically optimum decoding algorithm ”, IEEE Transactions on Inform. Theory, Vol. 2, pp260-269. [2] Mr.Vishal, G.Jadhao, Prof. Prafulla & D. Gawade (2012)“Performance analysis of linear block code and convolutional code to study their comparative effectiveness”, IOSR Journal of Electrical and Electronics Engineering. [3] Hiral Pujara, Pankaj Prajapati (2013) “RTL Implementation of Viterbi Decoder using VHDL”, IOSR Journal of VLSI and Signal Processing, Vol. 2, pp65-71. [4] M.Gayathiri et al (2013) “FPGA implementation of high speed and low power viterbi encoder and decoder ”, International journal of Engineering and Technology, Vol. 2, pp1315-1320. Authors Ms.L.Thangarani is pursuing her master degree in VLSI Design engineering. She has keen interest in VLSI Design Techniques. Mr.G.Sivasankar is an Assistant Professor in Electronics and Communication Engineering, Mepco Schlenk Engineering College, Sivakasi. He is very much interested in Embedded Sys.