An Efficient Educational Approach for the Study of 16 QAM and Block Codes

Similar documents
EE 435/535: Error Correcting Codes Project 1, Fall 2009: Extended Hamming Code. 1 Introduction. 2 Extended Hamming Code: Encoding. 1.

EFFECTS OF PHASE AND AMPLITUDE ERRORS ON QAM SYSTEMS WITH ERROR- CONTROL CODING AND SOFT DECISION DECODING

FACULTY OF ENGINEERING LAB SHEET ETN3046 ANALOG AND DIGITAL COMMUNICATIONS TRIMESTER 1 (2018/2019) ADC2 Digital Carrier Modulation

Communication Efficiency of Error Correction Mechanism Based on Retransmissions

Wireless Communication Systems Laboratory Lab#1: An introduction to basic digital baseband communication through MATLAB simulation Objective

COMPARISON OF CHANNEL ESTIMATION AND EQUALIZATION TECHNIQUES FOR OFDM SYSTEMS

Using TCM Techniques to Decrease BER Without Bandwidth Compromise. Using TCM Techniques to Decrease BER Without Bandwidth Compromise. nutaq.

Performance measurement of different M-Ary phase signalling schemes in AWGN channel

Experiment 1 Introduction to MATLAB and Simulink

UNIVERSITY OF SOUTHAMPTON

Problem Sheet 1 Probability, random processes, and noise

International Journal of Digital Application & Contemporary research Website: (Volume 1, Issue 7, February 2013)

Implementation of Reed-Solomon RS(255,239) Code

Probability of Error Calculation of OFDM Systems With Frequency Offset

Channel Coding RADIO SYSTEMS ETIN15. Lecture no: Ove Edfors, Department of Electrical and Information Technology

HIGH ORDER MODULATION SHAPED TO WORK WITH RADIO IMPERFECTIONS

An Energy-Division Multiple Access Scheme

BER Analysis of BPSK for Block Codes and Convolution Codes Over AWGN Channel

RADIO SYSTEMS ETIN15. Channel Coding. Ove Edfors, Department of Electrical and Information Technology

5.1 Graphing Sine and Cosine Functions.notebook. Chapter 5: Trigonometric Functions and Graphs

UNIT I Source Coding Systems

CALIFORNIA STATE UNIVERSITY, NORTHRIDGE FADING CHANNEL CHARACTERIZATION AND MODELING

Maximum Likelihood Detection of Low Rate Repeat Codes in Frequency Hopped Systems

Assignment 6: Solution to MATLAB code for BER generation of QPSK system over AWGN channel.

Improvement of MFSK -BER Performance Using MIMO Technology on Multipath Non LOS Wireless Channels

Physical Layer: Modulation, FEC. Wireless Networks: Guevara Noubir. S2001, COM3525 Wireless Networks Lecture 3, 1

Chapter 2 Channel Equalization

Columbia University. Principles of Communication Systems ELEN E3701. Spring Semester May Final Examination

Orthogonal vs Non-Orthogonal Multiple Access with Finite Input Alphabet and Finite Bandwidth

Solutions to Information Theory Exercise Problems 5 8

Multipath can be described in two domains: time and frequency

arxiv: v1 [cs.it] 30 Sep 2012

Revision of Lecture Eleven

30. Signal Space Analysis of BASK, BFSK, BPSK, and QAM

Bit Error Rate Performance Evaluation of Various Modulation Techniques with Forward Error Correction Coding of WiMAX

Adaptive Kalman Filter based Channel Equalizer

ELT DIGITAL COMMUNICATIONS

Adaptive communications techniques for the underwater acoustic channel

BER ANALYSIS OF WiMAX IN MULTIPATH FADING CHANNELS

Improvement Of Block Product Turbo Coding By Using A New Concept Of Soft Hamming Decoder

Objectives. Presentation Outline. Digital Modulation Revision

SIMULATIVE STUDY (LINK/SYSTEM) OF WCDMA SYSTEMS

Performance of Reed-Solomon Codes in AWGN Channel

On Performance Improvements with Odd-Power (Cross) QAM Mappings in Wireless Networks

IN AN MIMO communication system, multiple transmission

Comparative Analysis of the BER Performance of WCDMA Using Different Spreading Code Generator

The Impact of Imperfect One Bit Per Subcarrier Channel State Information Feedback on Adaptive OFDM Wireless Communication Systems

Effect of AWGN & Fading (Rayleigh & Rician) Channels on BER Performance of Free Space Optics (FSO) Communication Systems

Parallel Combinatory Multiple-Subcarrier Optical Communication Systems

Intuitive Guide to Principles of Communications By Charan Langton Coding Concepts and Block Coding

DIGITAL COMMINICATIONS

Performance analysis of BPSK system with ZF & MMSE equalization

Error Correction with Hamming Codes

Lecture 17 Components Principles of Error Control Borivoje Nikolic March 16, 2004.

Performance Analysis of Maximum Likelihood Detection in a MIMO Antenna System

Comparative Analysis of Different Modulation Schemes in Rician Fading Induced FSO Communication System

Performance of Combined Error Correction and Error Detection for very Short Block Length Codes

Performance Analysis of Concatenated RS-CC Codes for WiMax System using QPSK

Combined Transmitter Diversity and Multi-Level Modulation Techniques

Performance Evaluation and Comparative Analysis of Various Concatenated Error Correcting Codes Using BPSK Modulation for AWGN Channel

Communication Engineering Term Project ABSTRACT

Swedish College of Engineering and Technology Rahim Yar Khan

d[m] = [m]+ 1 2 [m 2]

Power Efficiency of LDPC Codes under Hard and Soft Decision QAM Modulated OFDM

Performance Analysis of OFDM for Different Digital Modulation Schemes using Matlab Simulation

CHAPTER 4. DESIGN OF ADAPTIVE MODULATION SYSTEM BY USING 1/3 RATE TURBO CODER (SNR Vs BER)

Design of a Few Interleaver Techniques used with Gold Codes in Faded Wireless Channels

Signal Processing in Massive MIMO Systems Realized with Low Complexity Hardware

Orthogonal Frequency Division Multiplexing (OFDM) based Uplink Multiple Access Method over AWGN and Fading Channels

Impulsive Noise Reduction Method Based on Clipping and Adaptive Filters in AWGN Channel

SNR Estimation in Nakagami-m Fading With Diversity Combining and Its Application to Turbo Decoding

Cooperative Orthogonal Space-Time-Frequency Block Codes over a MIMO-OFDM Frequency Selective Channel

BER Comparison of DCT-based OFDM and FFT-based OFDM using BPSK Modulation over AWGN and Multipath Rayleigh Fading Channel

High-Rate Non-Binary Product Codes

OFDM Transmission Corrupted by Impulsive Noise

EE521 Analog and Digital Communications

Interference Mitigation in MIMO Interference Channel via Successive Single-User Soft Decoding

OFDM Systems For Different Modulation Technique

PERFORMANCE OF CODED OFDM IN IMPULSIVE NOISE ENVIRONMENT

BER Performance with GNU Radio

ECE 6640 Digital Communications

PERFORMANCE ANALYSIS OF DIFFERENT M-ARY MODULATION TECHNIQUES IN FADING CHANNELS USING DIFFERENT DIVERSITY

DESIGN AND IMPLEMENTATION OF AN ALGORITHM FOR MODULATION IDENTIFICATION OF ANALOG AND DIGITAL SIGNALS

5-5 Multiple-Angle and Product-to-Sum Identities

Bit Error Rate Assessment of Digital Modulation Schemes on Additive White Gaussian Noise, Line of Sight and Non Line of Sight Fading Channels

Channel Estimation on MIMO-OFDM Systems

COMPARATIVE PERFORMANCE EVALUATION OF M-ARY QAM MODULATION SCHEMES USING SIMULINK AND BERTool

Performance of OFDM-Based WiMAX System Using Cyclic Prefix

Exact BER Analysis of an Arbitrary Square/ Rectangular QAM for MRC Diversity with ICE in Nonidentical Rayleigh Fading Channels

STUDY OF THE PERFORMANCE OF THE LINEAR AND NON-LINEAR NARROW BAND RECEIVERS FOR 2X2 MIMO SYSTEMS WITH STBC MULTIPLEXING AND ALAMOTI CODING

Detection and Estimation of Signals in Noise. Dr. Robert Schober Department of Electrical and Computer Engineering University of British Columbia

Degrees of Freedom in Adaptive Modulation: A Unified View

UTA EE5362 PhD Diagnosis Exam (Spring 2012) Communications

Performance Evaluation of Nonlinear Equalizer based on Multilayer Perceptron for OFDM Power- Line Communication

Image Filtering. Median Filtering

Lab/Project Error Control Coding using LDPC Codes and HARQ

MULTIPLE transmit-and-receive antennas can be used

Outline. Communications Engineering 1

SCHEME OF COURSE WORK. Course Code : 13EC1114 L T P C : ELECTRONICS AND COMMUNICATION ENGINEERING

Principles of Communications

Transcription:

An Efficient Educational Approach for the Study of 16 QAM and Block Codes Luciano L. Mendes and Geraldo G. R. Gomes Abstract: The main purpose of this paper is to show how some programs developed in the wireless research group can improve the apprenticeship and the teaching of digital modulation techniques and cyclic block codes in AWGN channels. Index Terms Educational programs, digital modulation, cyclic block code. I. INTRODUCTION Today, the necessity of digital communication at high rates has provided a great interest on digital modulation techniques. Because of it, the knowledge of the variables that define the digital communications scenario is a major requirement for students of Telecommunication Engineering. Thus, with the objective to improve the apprenticeship and teaching process of those techniques, this paper presents some didactics computational tools that present the principles of a 16 QAM digital modulation transmitted through an AWGN channel. This paper also presents a program that demonstrates how the cyclic block codes work. The blocks codes are used for detection and even correction of errors introduced by the channel noise. Any other digital modulation scheme can be simulated using the programs presented in this paper as support. The programs have been developed for MATLAB 5.3 using the graphic user interface for a better interaction with the user. The programs are: 16qam.m; 16qam_awgn.m; code74.m; described in details following. II. GENERATION OF A 16QAM SYSTEM First, the program 16qam.m has been developed to demonstrate how a 16 QAM constellation is generated. The program is based on the constellation shown in Fig. 1. Manuscript received on July 21,2001. Luciano L. Mendes, INATEL, Rua João de Camargo 510, (035) 34719269, lucianol@inatel.br; Geraldo G. R. Gomes, INATEL, Rua João de Camargo 510, (035) 34719273, ge@inatel.br. Fig. 1 16 QAM constellation with Gray code. The Fig. 1 shows some important characteristics for the generation of a 16QAM constellation, where each symbol is defined by four data bits. The orthogonal plain of this constellation is formed by a sine and a cosine. Thus, any symbol can be represented by the vector sum of the orthogonal signals. Note that the two least significant bits define the position on the x-axis and the two most significant bits define the position of the symbol on the y-axis. So, the definition of any symbol in the time domain can be easily obtained. For example, a symbol defined by the coordinates (-3; 3) can be represented in the time domain as shown in (1): s sin 3 1000 1001 1011 1010 1100 1 1101 1111 1110-3 -1 1 3 cos 0100-1 0101 0111 0110-3 0000 0001 0011 0010 ( t) = cos( ϖ t) + 3 sin( ϖ t) 3 (1) The program 16qam.m allows the user to enter with the four data bits to define which symbol must be simulated. The symbol generated is shown in a graphic and it stays plotted until the button Limpar a Tela is not pressed. The Fig. 2 shows the result of a simulation where all the 16 symbols have been simulated.

cloud of 1000 symbols around these coordinates. Thus, the original coordinate of the transmitted symbol becomes the mean value of the noisy symbols. In this case, the noise has a Gaussian distribution so the distribution of the symbols around the original coordinates is also Gaussian. Note that the distance between two adjacent symbols is always two. With this condition, we can define the boundaries of the transmitted symbol using (2): Decision Boundaries = Original Coordinates +/- 1 (2) Fig. 2 Simulation with 16qam.m. The program also allow the user observe the influence of Gray code on the definition of each symbol. When the Gray code is applied, only one bit changes from an adjacent symbol to another. The advantage of Gray code for probability of bit error is approached in the next section. III. INFLUENCE OF WHITE NOISE Once known how to define a 16QAM constellation, the user can study the influence of the additive white Gaussian noise (AWGN) on the symbols. The program 16qam_awgn.m has been developed to show which factors contribute with the degradation of the signal by the noise and the consequences of this influence in the probability of bit error. Fig. 3 shows the result of a simulation where the symbol generated by the bits [1 1 1 1] has been transmitted 1000 times with a signal to noise ratio of 6 db. For the symbol [1 1 1 1], the decision boundaries (2; 2), (2; 0), (0; 0) e (0; 2) are the vertices of a square. The area of this square is defined as decision region of the transmitted symbol, in this case, the symbol [1 1 1 1]. If the received symbol has coordinates inside of the decision region, the receiver decides that the transmitted symbol was [1 1 1 1]. Otherwise, a symbol error occurs. Using Gray code, when a symbol error between two adjacent symbols occurs, only one bit is wrong. This characteristic improves the quality of the system, once the most common symbol errors in an AWGN channel are adjacent symbol errors. Another characteristic that influences on the probability of a symbol error is the amount of neighbors around the symbol. The symbol that has more neighbors has a bigger probability of error. The program allows the user explore the influences of Eb/No ratio on the symbols. Fig. 4 shows the result of a simulation where Eb/No=15dB and Fig. 5 shows the result of a simulation where Eb/No=0dB. Fig. 4 Influence of noise with Eb/No=15dB. Fig. 3 Influence of noise with Eb/No=6dB. According to Fig. 1, the original coordinates for the symbol defined by the bits [1 1 1 1] are (1; 1). The Fig. 3 shows a

Fig. 5 Influence of noise with Eb/No=0dB. Observing Fig. 3, 4 and 5, the user can visualize how the signal to noise ratio determines the dispersion of the symbols around the mean value. The signal to noise ratio is proportional to the noise variance and variations in this ratio provokes variations in the influence of the noise in the transmitted symbols. The probability density function of a noisy symbol can be written as: 2 1 ( ) 1 x µ p x = exp (3) 2πσ 2 σ Where: µ is the mean value; σ is the standard deviation and x is the random variable. Once µ is the original coordinates of the transmitted symbol, the standard deviation is defines as: No σ = (4) 2 The program shows a graphic where the user can visualize the influence of Eb/No ratio on the probability of bit error. This simulation can facilitate the apprenticeship of the concept of probability density function. IV. BLOCK CODES Presented the consequences of AWGN in the digital communications, the program code74.m is introduced to show how to improve the quality of a system in an AWGN scenario. To make this improvement, the system uses parity bits that allow the detection and correction of errors by the receiver. The program code74.m simulates a cyclic block code denominated Hamming (7,4). A (7,4) code is a block code that generates a vector of seven bits using four data bits. It means that this code introduces three parity bits. Note that 128 vectors can be obtained using seven bits but only sixteen can be defined by four data bits. These sixteen vectors are denominated code vectors or code words. The parity bits are introduced by a Generator Matrix. These parity bits allow those error patterns to be algebraically detected and corrected automatically. The decoder verifies if the received vector is a code vector or not. If the received vector is a code vector, then the parity is removed and the information is obtained. If the received vector is not a code vector, then the decoder approximates the received vector to the nearest code vector. Thus, the decoder always supplies a code vector at the output. The capability of error detection and error correction of a code is defined as a function of the minimum distance between two code words. The parameter d min determines this minimum distance of the code. For the (7,4) code this parameter is equal to three. Once known the value of d min the capability of error detection and error correction can be defined (5) and (6): cd = d min 1 (5) d 1 t = min (6) 2 Equation (5) defines the number of bit errors that can be detected in a vector and (6) defines the number of bit errors that can be corrected in a vector. The (7,4) code is able to detect two errors and to correct one error introduced by the channel. The decodification of the received vectors is done by a Parity Verifier Matrix that calculates the error syndrome for each vector. The error syndrome is a word with the same length of parity. The all-null syndrome is used to define that the received vector is a code vector, presumed to be equal to the transmitted vector. Each one of the other possible syndromes is associated with only one error patter that can be corrected. In this example, there are three bits for syndrome, so seven no null syndromes can be defined. Each code vector has seven bits, so each syndrome can be associated to an error pattern of one bit and it allows the automatic detection and correction of one bit error that occurs in any position in the received vector. Note that if two or more bit errors are introduced in the code vector, the decoder will not be able to correct these errors. The program code74.m has been developed to allow simulations to verify how this code works and its capabilities of error detection and error correction, as shown in Fig. 6.

Fig. 6 (7,4) Hamming Code. From the data vector given by the user, the coder generates the code vector to be transmitted, where the first three bits are the parity bit. The code vector is transmitted and summed with AWG noise. Thus, the code vector composted by integers numbers (0 or 1) is received as a vector composted by real random numbers. The decoder has to approximate the real values to the nearest integers (0 or 1). The received vector, which is the result of this approximation, is used in the process that determines the syndrome. Once the syndrome is calculated, the error pattern that must be summed with the received vector to generate a code vector at the decoder output can be defined. Fig. 6 shows that the syndrome is an all-null vector so no errors occurred due the noise in the channel. Note that an all-null syndrome does not guarantee that the received vector is equal to the transmitted vector. If three bits are changed by the noise in the channel, the received vector can be a code vector, but it is different from the transmitted vector. In this case, the syndrome is also a null syndrome but there are errors in the received vector. It is important to mention that the probability of this event occurs is very low because in the communication systems the signal to noise ratio is relatively high. Fig. 7 shows how the code works when one bit error occurs while Fig. 8 shows how the code works when two bit errors occur. Fig. 7 One bit error. Fig. 8 Two bit errors. In Fig. 7, the code was able to detect and correct the bit that has been changed by the channel. It has been shown that this code is able to correct any error pattern of one bit. Fig. 8 shows that the code is able to detect that errors have occurred in the channel but it is unable to correct the vector. Note that after the correction, the number of bit errors has increased. The option Code74B allows the user to better explorer this phenomenon, as shown in Fig. 9.

Fig. 9 Opition Code74B. Fig. 9 shows the amount of bit errors in the received vectors before and after the correction by the decoder. Observe that every received vector with only one bit error has been corrected and present no bit errors after the error correction. This means that the code was able to correct all vectors that had one bit error. Observe also that every received vector with two bit errors after the error correction present three bits errors. It means that the code was able to detect the error but when it try to approximate the received vector to a code vector, the decoder introduces one more bit error. Vectors with three or more bit errors can or cannot be detect but they cannot be corrected. Therefore, the decoder will never deliver a vector on its output that has one or two bit errors because it always delivers a code vector and the code vectors have at least three different bits from each other. V. CONCLUSION The interactively of these programs shows that they can help student to absolve some definitions and concepts related with digital communication. The project here presented has the purpose of develop tools to help the apprenticeship and teaching of phenomena that happen in an AWGN channel. The factors that influence the system can be explored in a way that the student can understand how and why these phenomena occur. MATLAB 5.3 was used as platform for these tools because this mathematics program has a simple language and a graphic user interface that facilitates the exposition of the concepts in a didactic way. REFERENCE [1] D. Hanselman, and B. Littlefield, Matlab 5 The Student Edition, Makron Books, São Paulo, SP, 1999. [2] John D. Proakis, Digital Communications, 3rd ed., McGraw Hill, New York, NY, 1995.