ECE 559 VLSI – Design Project Viterbi Decoder VLSI Design Project Spring 2002 Dan Breen Keith Grimes Damian Nowak David Rust Advisor: Prof. Goeckel.

Slides:



Advertisements
Similar presentations
Convolutional Codes Mohammad Hanaysheh Mahdi Barhoush.
Advertisements

Decoding of Convolutional Codes  Let C m be the set of allowable code sequences of length m.  Not all sequences in {0,1}m are allowable code sequences!
1 S Digital Communication Systems Cyclic Codes.
Reliable Data Processor in VLSI
6.375 Project Arthur Chang Omid Salehi-Abari Sung Sik Woo May 11, 2011
Maximum Likelihood Sequence Detection (MLSD) and the Viterbi Algorithm
Submission May, 2000 Doc: IEEE / 086 Steven Gray, Nokia Slide Brief Overview of Information Theory and Channel Coding Steven D. Gray 1.
EEE377 Lecture Notes1 EEE436 DIGITAL COMMUNICATION Coding En. Mohd Nazri Mahmud MPhil (Cambridge, UK) BEng (Essex, UK) Room 2.14.
ECE 559 VLSI – Design Project Viterbi Decoder VLSI Design Project Spring 2002 Dan Breen Keith Grimes Damian Nowak David Rust Advisor: Prof. Goeckel.
Quantum Error Correction SOURCES: Michele Mosca Daniel Gottesman Richard Spillman Andrew Landahl.
Coding and Error Control
Reconfigurable Computing S. Reda, Brown University Reconfigurable Computing (EN2911X, Fall07) Lecture 17: Application-Driven Hardware Acceleration (3/4)
Turbo Codes Azmat Ali Pasha.
Lecture 9-10: Error Detection and Correction Anders Västberg Slides are a selection from the slides from chapter 8 from:
Figure 6.1. A convolutional encoder. Figure 6.2. Structure of a systematic convolutional encoder of rate.
An FPGA Based Adaptive Viterbi Decoder Sriram Swaminathan Russell Tessier Department of ECE University of Massachusetts Amherst.
Forward Error Correction. FEC Basic Idea Send redundant data Receiver uses it to detect/correct errors Reduces retransmissions/NAKs Useful when RTT is.
EE 3220: Digital Communication Dr Hassan Yousif 1 Dr. Hassan Yousif Ahmed Department of Electrical Engineering College of Engineering at Wadi Aldwasser.
EE 3220: Digital Communication Dr Hassan Yousif 1 Dr. Hassan Yousif Ahmed Department of Electrical Engineering College of Engineering at Wadi Aldwasser.
296.3Page :Algorithms in the Real World Convolutional Coding & Viterbi Decoding.
Viterbi Decoder Project Alon weinberg, Dan Elran Supervisors: Emilia Burlak, Elisha Ulmer.
ECED 4504 Digital Transmission Theory
S Advanced Digital Communication (4 cr)
Sequential Soft Decision Decoding of Reed Solomon Codes Hari Palaiyanur Cornell University Prof. John Komo Clemson University 2003 SURE Program.
RICE UNIVERSITY Implementing the Viterbi algorithm on programmable processors Sridhar Rajagopal Elec 696
1 Channel Coding (II) Cyclic Codes and Convolutional Codes.
CODING/DECODING CONCEPTS AND BLOCK CODING. ERROR DETECTION CORRECTION Increase signal power Decrease signal power Reduce Diversity Retransmission Forward.
Practical Session 10 Error Detecting and Correcting Codes.
1 Chapter 8. Coding and Error Control Wen-Shyang Hwang KUAS EE.
Digital Communications I: Modulation and Coding Course Term Catharina Logothetis Lecture 12.
Outline Transmitters (Chapters 3 and 4, Source Coding and Modulation) (week 1 and 2) Receivers (Chapter 5) (week 3 and 4) Received Signal Synchronization.
DIGITAL COMMUNICATIONS Linear Block Codes
TI Cellular Mobile Communication Systems Lecture 4 Engr. Shahryar Saleem Assistant Professor Department of Telecom Engineering University of Engineering.
Real-Time Turbo Decoder Nasir Ahmed Mani Vaya Elec 434 Rice University.
1 Channel Coding (III) Channel Decoding. ECED of 15 Topics today u Viterbi decoding –trellis diagram –surviving path –ending the decoding u Soft.
Last time, we talked about:
Timo O. Korhonen, HUT Communication Laboratory 1 Convolutional encoding u Convolutional codes are applied in applications that require good performance.
Error Correction Code (2)
Error Detection and Correction
A simple rate ½ convolutional code encoder is shown below. The rectangular box represents one element of a serial shift register. The contents of the shift.
Sujan Rajbhandari LCS Convolutional Coded DPIM for Indoor Optical Wireless Links S. Rajbhandari, N. M. Aldibbiat and Z. Ghassemlooy Optical Communications.
Wireless Communication Research Lab. CGU What is Convolution Code? 指導教授:黃文傑 博士 學生:吳濟廷
Sequential Soft Decision Decoding of Reed Solomon Codes Hari Palaiyanur Cornell University Prof. John Komo Clemson University 2003 SURE Program.
Dr. Muqaibel \ EE430 Convolutional Codes 1 Convolutional Codes.
SNS COLLEGE OF ENGINEERING Department of Electronics and Communication Engineering Subject: Digital communication Sem: V Convolutional Codes.
Convolutional Coding In telecommunication, a convolutional code is a type of error- correcting code in which m-bit information symbol to be encoded is.
Implementation of Turbo Code in TI TMS320C8x Hao Chen Instructor: Prof. Yu Hen Hu ECE734 Spring 2004.
COMM 604:Channel Coding Course Instructor: Tallal Elshabrawy Instructor Office: C3.321 Lecture Time & Loc.: Tues. 2 nd Slot H19 Instructor
Interleaving Compounding Packets & Convolution Codes
Coding No. 1  Seattle Pacific University Digital Coding Kevin Bolding Electrical Engineering Seattle Pacific University.
Classical Coding for Forward Error Correction Prof JA Ritcey Univ of Washington.
FEC decoding algorithm overview VLSI 자동설계연구실 정재헌.
296.3:Algorithms in the Real World
DIGITAL SYTEM DESIGN MINI PROJECT CONVOLUTION CODES
The Viterbi Decoding Algorithm
What is this “Viterbi Decoding”
디지털통신 Introduction 임 민 중 동국대학교 정보통신공학과 1.
Pipelined Architectures for High-Speed and Area-Efficient Viterbi Decoders Chen, Chao-Nan Chu, Hsi-Cheng.
Coding and Interleaving
S Digital Communication Systems
COS 463: Wireless Networks Lecture 9 Kyle Jamieson
Error Correction Code (2)
Error Correction Code (2)
IV. Convolutional Codes
Coding and Error Control
Error Correction Code (2)
COS 463: Wireless Networks Lecture 9 Kyle Jamieson
Homework #2 Due May 29 , Consider a (2,1,4) convolutional code with g(1) = 1+ D2, g(2) = 1+ D + D2 + D3 a. Draw the.
IV. Convolutional Codes
Reconfigurable Computing (EN2911X, Fall07)
Presentation transcript:

ECE 559 VLSI – Design Project Viterbi Decoder VLSI Design Project Spring 2002 Dan Breen Keith Grimes Damian Nowak David Rust Advisor: Prof. Goeckel

ECE 559 VLSI – Design Project Definition of Feasibility Capable of being done or carried out. Reasonable, Likely

ECE 559 VLSI – Design Project Digital Communication System Source Encoder Channel Encoder Demodulator Channel Modulator Source Decoder Channel Decoder Source User A/D Conversion Compression “Few Bits” “More Bits” Redundancy to Reduce Probability of Error Viterbi Decoder - with Probability of Error of about Reconstruct Original Signal Guesses the “More Bits” Effective Channel with Probability 0.1 – 0.01 of flipping a bit

ECE 559 VLSI – Design Project Parameters Rate = 1/2 Constraint Length (K) = 3

ECE 559 VLSI – Design Project Channel Encoder 1-Bit Register Input Output = Rate = 1/2 K = 3

ECE 559 VLSI – Design Project Trellis Diagram – Heart of the Viterbi Decoder Enumerates all possible encoded sequences (basically a FSM transitioning with time)

ECE 559 VLSI – Design Project Viterbi Decoder Block Diagram Hamming Distance Compute Metric Path Select Path Memory Compare Select Input Output

ECE 559 VLSI – Design Project Hamming Distance Bit-wise XOR comparison of received channel symbol pair and possible channel symbol pairs. I.e. the hamming distance between 01 and 11 would be 1, and the hamming distance between 01 and 10 would be 2.

ECE 559 VLSI – Design Project Hamming Distance Module 2 Input Distance with

ECE 559 VLSI – Design Project Compute Metric Add the previous accumulated error metric to the current calculated hamming distance.

ECE 559 VLSI – Design Project Compute Metric Module 2 From Hamming Distance Error Metrics 3333 From Compare Select

ECE 559 VLSI – Design Project Compare Select Determines the smallest accumulated error metric entering each state. Reduces magnitude of accumulated error metric to prevent register overflow.

ECE 559 VLSI – Design Project Compare Select Module 4 From Compute Metric {0..7} To Path Memory 3 To Compute Metric

ECE 559 VLSI – Design Project Path Memory Stores the 4 possible paths through the trellis with their associated accumulated error metrics. Retains at least 5 * (K-1) previous trellis stages.

ECE 559 VLSI – Design Project Path Memory Module 4 From Compare Select {0..3} To Path Select {0..3}......

ECE 559 VLSI – Design Project Path Select Selects path with the lowest accumulated error metric and performs traceback and decoding.

ECE 559 VLSI – Design Project Path Select Module 4 From Path Memory {0..3} 4 Decoded Output

ECE 559 VLSI – Design Project

ECE 559 VLSI – Design Project Conclusion Yes…It is Feasible. Next…complete modules and perform testing and verification of Viterbi decoder.

ECE 559 VLSI – Design Project References 1.Communication Systems Engineering, 1 st edition (1994). John G. Proakis and Masoud Salehi. Prentice Hall. 2.“Lecture #14: Convolutional Codes” (Fall 1992). Kim Winick. 3.“A Tutorial on Convolutional Coding with Viterbi Decoder” (Nov 2001). Chip Fleming. 4.Advisor Lecture Notes (Feb 2002). Dennis Goeckel. 5. Project Web Page