Islamic University of Gaza. Faculty of Engineering Electrical Engineering Department Spring-2011

Similar documents
Experiment 8: Sampling

Sampling and Reconstruction of Analog Signals

DIGITAL SIGNAL PROCESSING. Chapter 1 Introduction to Discrete-Time Signals & Sampling

Waveform Encoding - PCM. BY: Dr.AHMED ALKHAYYAT. Chapter Two

Chapter-2 SAMPLING PROCESS

Signals and Systems. Lecture 13 Wednesday 6 th December 2017 DR TANIA STATHAKI

Laboratory Assignment 2 Signal Sampling, Manipulation, and Playback

Music 270a: Fundamentals of Digital Audio and Discrete-Time Signals

Continuous vs. Discrete signals. Sampling. Analog to Digital Conversion. CMPT 368: Lecture 4 Fundamentals of Digital Audio, Discrete-Time Signals

EEE 309 Communication Theory

Multirate Digital Signal Processing

Laboratory Assignment 5 Amplitude Modulation

CMPT 318: Lecture 4 Fundamentals of Digital Audio, Discrete-Time Signals

Digital Processing of Continuous-Time Signals

Digital Signal Processing

Digital Signal Processing (Subject Code: 7EC2)

Multirate DSP, part 1: Upsampling and downsampling

EEE 309 Communication Theory

Digital Processing of

SIGNALS AND SYSTEMS LABORATORY 13: Digital Communication

Signal Characteristics

Figure 1: Block diagram of Digital signal processing

Communications IB Paper 6 Handout 3: Digitisation and Digital Signals

TE 302 DISCRETE SIGNALS AND SYSTEMS. Chapter 1: INTRODUCTION

Electrical & Computer Engineering Technology

II Year (04 Semester) EE6403 Discrete Time Systems and Signal Processing

QUESTION BANK. SUBJECT CODE / Name: EC2301 DIGITAL COMMUNICATION UNIT 2

ANALOGUE AND DIGITAL COMMUNICATION

The quality of the transmission signal The characteristics of the transmission medium. Some type of transmission medium is required for transmission:

Concordia University. Discrete-Time Signal Processing. Lab Manual (ELEC442) Dr. Wei-Ping Zhu

CHAPTER 4. PULSE MODULATION Part 2

PROBLEM SET 6. Note: This version is preliminary in that it does not yet have instructions for uploading the MATLAB problems.

Advanced Digital Signal Processing Part 2: Digital Processing of Continuous-Time Signals

!"!#"#$% Lecture 2: Media Creation. Some materials taken from Prof. Yao Wang s slides RECAP

Lecture Schedule: Week Date Lecture Title

1. In the command window, type "help conv" and press [enter]. Read the information displayed.

Problem Set 1 (Solutions are due Mon )

Lecture 3 Review of Signals and Systems: Part 2. EE4900/EE6720 Digital Communications

SAMPLING THEORY. Representing continuous signals with discrete numbers

Chapter 3 Data Transmission COSC 3213 Summer 2003

Terminology (1) Chapter 3. Terminology (3) Terminology (2) Transmitter Receiver Medium. Data Transmission. Direct link. Point-to-point.

Sampling of Continuous-Time Signals. Reference chapter 4 in Oppenheim and Schafer.

ECE 556 BASICS OF DIGITAL SPEECH PROCESSING. Assıst.Prof.Dr. Selma ÖZAYDIN Spring Term-2017 Lecture 2

Audio /Video Signal Processing. Lecture 1, Organisation, A/D conversion, Sampling Gerald Schuller, TU Ilmenau

DSP Laboratory (EELE 4110) Lab#10 Finite Impulse Response (FIR) Filters

Multirate Signal Processing Lecture 7, Sampling Gerald Schuller, TU Ilmenau

Introduction to Discrete-Time Control Systems

Recall. Sampling. Why discrete time? Why discrete time? Many signals are continuous-time signals Light Object wave CCD

DIGITAL COMMUNICATION

ME scope Application Note 01 The FFT, Leakage, and Windowing

Fundamentals of Digital Communication

Sampling, interpolation and decimation issues

Topic 2. Signal Processing Review. (Some slides are adapted from Bryan Pardo s course slides on Machine Perception of Music)

THE CITADEL THE MILITARY COLLEGE OF SOUTH CAROLINA. Department of Electrical and Computer Engineering. ELEC 423 Digital Signal Processing

ECE 2111 Signals and Systems Spring 2012, UMD Experiment 9: Sampling

y(n)= Aa n u(n)+bu(n) b m sin(2πmt)= b 1 sin(2πt)+b 2 sin(4πt)+b 3 sin(6πt)+ m=1 x(t)= x = 2 ( b b b b

Principles of Baseband Digital Data Transmission

Biomedical Signals. Signals and Images in Medicine Dr Nabeel Anwar

YEDITEPE UNIVERSITY ENGINEERING FACULTY COMMUNICATION SYSTEMS LABORATORY EE 354 COMMUNICATION SYSTEMS

SAMPLING AND RECONSTRUCTING SIGNALS

Chapter 2: Digitization of Sound

Sampling and Signal Processing

Discrete-time Signals & Systems

Data Communications & Computer Networks

CS3291: Digital Signal Processing

Sampling and Pulse Trains

Pulse Code Modulation

Pulse Code Modulation

Digital Communication (650533) CH 3 Pulse Modulation

Module 3 : Sampling and Reconstruction Problem Set 3

Moving from continuous- to discrete-time

DSP First. Laboratory Exercise #7. Everyday Sinusoidal Signals

Annex. 1.3 Measuring information

System on a Chip. Prof. Dr. Michael Kraft

Discrete-time Signals & Systems

Lecture Fundamentals of Data and signals

Signal Processing Summary

Analyzing A/D and D/A converters

EE390 Final Exam Fall Term 2002 Friday, December 13, 2002

FFT Analyzer. Gianfranco Miele, Ph.D

ECEGR Lab #8: Introduction to Simulink

ECE 201: Introduction to Signal Analysis

Introduction to Telecommunications and Computer Engineering Unit 3: Communications Systems & Signals

Final Exam Solutions June 14, 2006

Intuitive Guide to Fourier Analysis. Charan Langton Victor Levin

ECE438 - Laboratory 7a: Digital Filter Design (Week 1) By Prof. Charles Bouman and Prof. Mireille Boutin Fall 2015

ece 429/529 digital signal processing robin n. strickland ece dept, university of arizona ECE 429/529 RNS

Discrete Fourier Transform (DFT)

Pulse Code Modulation (PCM)

(i) Understanding of the characteristics of linear-phase finite impulse response (FIR) filters

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

Discrete-Time Signal Processing (DTSP) v14

NON-UNIFORM SIGNALING OVER BAND-LIMITED CHANNELS: A Multirate Signal Processing Approach. Omid Jahromi, ID:

DSP Laboratory (EELE 4110) Lab#11 Implement FIR filters on TMS320C6711 DSK.

Basic Signals and Systems

UNIT TEST I Digital Communication

Downloaded from 1

Communication Theory II

PYKC 27 Feb 2017 EA2.3 Electronics 2 Lecture PYKC 27 Feb 2017 EA2.3 Electronics 2 Lecture 11-2

INTRODUCTION TO COMMUNICATION SYSTEMS LABORATORY IV. Binary Pulse Amplitude Modulation and Pulse Code Modulation

Transcription:

Islamic University of Gaza Faculty of Engineering Electrical Engineering Department Spring-2011 DSP Laboratory (EELE 4110) Lab#4 Sampling and Quantization OBJECTIVES: When you have completed this assignment, you will: understand the concept of sampling, aliasing, quantization and reconstruction. demonstrate the effect of aliasing on the reconstruction process. INTRODUCTION: Digital communications has proved to be a very efficient means of transporting speech, music, video, and data over different kinds of media. These media include satellite, microwave, fiber-optic, coaxial, and cellular channels. One special advantage that digital communication holds over analog communication is in the superior handling of noise in the channel. Baseband signals such as speech, music, and video are naturally occurring analog signals. Hence, the processes of analog to digital (A/D) conversion at the transmitter and digital to analog conversion (D/A) at the receiver are integral sections of the entire communication. THEORETICAL PART: (1) Sampling. In order to store, transmit or process analog signals using digital hardware, we must first convert them into discrete-time signals by sampling. The processed discrete-time signal is usually converted back to analog form by interpolation, resulting in a reconstructed analog signal xr(t). The sampler reads the values of the analog signal xa(t) at equally spaced sampling instants. The time interval Ts between adjacent samples is known as the sampling period (or sampling interval). The sampling rate, measured in samples per second, is fs =1/Ts. x[n]= xa(nts), n=, -1, 0, 1, 2,. Also it possible to reconstruct xa(t) from its samples: xa(t) = x[tfs].

Figure 4.1: Sampling and Reconstruction process Sampling Theorem The uniform sampling theorem states that a bandlimited signal having no spectral components above f m hetez can be determined uniquely by values sampled at uniform intervals of : T s 1 2f m The upper limit on T s can be expressed in terms of sampling rate, denoted fs=1/ts. The restriction, stated in term of the sampling rate, is known as the Nyquist criterion. The statement is: f s 2f m The sampling rate f s = 2f m is also called Nyquist rate.the allow Nyquist criterion is a theoretically sufficient condition to allow an analog signal to be reconstructed completely from a set of a uniformly spaced discrete-time samples. Impulse Sampling Assume an analog waveform x(t),as shown in figure 4.2(a), with a Fourier transform, X(f) which is zero outside the interval ( f m < f < f m ),as shown in figure 4.2(b). The sampling of x(t) can be viewed as the product of x(t) with a periodic train of unit impulse function x δ (t), shown in figure 4.2(c) and defined as x δ t = n= δ( t nt s ) where T s is the sampling period and δ(t) is the unit impulse or Dirac delta function.let us choose T s = 1/2f m, so that the Nyquist criterion is just satisfied. The sifting property of the impulse function states that x t δ t t o = x t o δ t t o Using this property, we can see that x S t, the sampled version of x(t) shown in figure 4.2(e), is given by x S t = x(t)x δ (t) = n= x(t)δ( t nt s ) = n= x(nt s )δ( t nt s )

Using the frequency convolution property of the Fourier transform we can transform the time-domain product x(t)x δ (t) to the frequency-domain convolution f X δ f, X δ f = 1 T s n= δ( f nf s ) where X δ f is the Fourier transform of the impulse train x δ (t). Notice that the Fourier transform of an impulse train is another impulse train; the values of the periods of the two trains are reciprocally related to one another. Figure 4.2(c) and (d) illustrate the impulse train x δ (t) and its Fourier transform X δ f, respectively. We can solve for the transform X S f of the sampled waveform: X S f = X f X δ f = X f * 1 T s n= δ( f nf s ) X S f = 1 T s n= δ( f nf s ) Figure 4.2: Sampling theorem using the frequency convolution property of the Fourier transform We therefore conclude that within the original bandwidth, the spectrum X S f is, to within a constant factor (1/T s ), exactly the same as that of x(t) in addition, the spectrum repeats itself periodically in frequency every f s hertz.

Aliasing Aliasing in Frequency Domain If fs does not satisfy the Nyquist rate, f s < 2f m, the different components of X S f overlap and will not be able to recover x(t) exactly as shown in figure 4.3(b). This is referred to as aliasing in frequency domain. Figure 4.3: Spectra for various sampling rates. (a) Sampled spectrum f s > 2f m (b) Sampled spectrum f s < 2f m Aliasing in time domain As we shall presently see, the frequency content of the analog signal xa(t) has to be limited before attempting to sample it. This means that xa(t) cannot change too fast; consequently, the average value over the interval nts Δ to nts+δ is a good approximation of the ideally sampled value xa(t) of nts. t = nt S, 1 F = 1 1 f F S, F = ff S, Ω = ωf S where, F : is the frequency of x(t), f : is the frequency of x[n] Note that the range of the frequency variable F for continuous-time sinusoids are < F <, < Ω < However, the situation is different for discrete-time sinusoids 1 2 < f < 1 2, π < ω < π Discrete- time sinusoid whose radian frequencies are separated by integer multiples of 2π are identical. Sequence that result from a sinusoid with a frequency w > π is identical to a sequence obtained from a sinusoidal with frequency : -π w π. But for continuous-time sinusoids result in distinct signals for Ω or F in the range : - < F < or - < Ω <

Figure 4.4 shows a simple example.the solid line describes a 0.5Hz continuous-time sinusoidal signal and the dash-dot line describes a 1.5 Hz continuous time sinusoidal signal. When both signals are sampled at the rate of Fs =2 samples/sec, their samples coincide, as indicated by the circles. This means that x1[nts] is equal to x2[nts] and there is no way to distinguish the two signals apart from their sampled versions. This phenomenon is known as aliasing. Figure 4.4: Two sinusoidal signals are indistinguishable from their sampled versions x 1 nt S = cos 2πF 1 nt S = cos 2π 1 2 n 1 2 = cos 0.5πn x 2 nt S = cos 2πF 2 nt S = cos 2π 3 2 n 1 2 cos 1.5πn = cos 1.5πn 2πn = cos 0.5πn = cos 0.5πn = cos 0.5πn x 1 nt S = x 2 nt S Reconstruct x 1 t and x 2 t x 1 t = x tf S = cos 0.5π tf S = cos 0.5π t 2 = cos 2π 0.5 t = x 2 t On the other hand, F aliased = F base + k F S f aliased = f base + k, k = ±1, ±2,., k = ±1, ±2,. where F aliased and f aliased are outside the fundamental frequency range: F S 2 F base F S 2 and 1 2 f base 1 2 Avoiding Aliasing In order to avoid aliasing we must restrict the analog signal xa(t) to the frequency range, Fo less than Fs/2. Thus, every sampler must be preceded by an analog low-pass filter, known as an anti-aliasing filter; with a cut-off frequency fc equals fs /2. This means that the high frequency artifacts of the continuous-time signal will be lost. This is the cost of managing aliasing. In practice, the anti-aliasing filter will have a cutoff frequency at roughly 90% of

the Nyquist frequency and use the other 10% for roll-off. The on-board codec of the DSK has a sampling rate of fs = 8 khz and an anti-aliasing filter with cutoff frequency 3.6 khz, which is 90% of fs/2 (Nyquist Frequency). Figure 4.5: Avoiding aliasing in signal processing (2) Downsampling. If the desired sampling rate is lower than the sampling rate of the available data, in this case, we may use a process called downsampling or decimation to reduce the sampling rate of the signal. Decimating, or downsampling, a signal x(n) by a factor of D is the process of creating a new signal y(n) by taking only every Dth sample of x(n). Therefore y(n) is simply x(dn). Using this method we can resample the discrete signals with no need for reconstruction first. This process will give you the ability to vary the sampling rate of a discrete signal by discarding some of its values in the time domain depending on the desired sampling rate. For example, if we want to reduce the sampling rate to the half, we down a sample between every two samples. In this case, we downsampled the signal by 2, or ( 2 ). Similarly, ( 3 ) x[n] will produce a signal that has a sample rate equals one third the sampling rate of x[n] by taking every third sample of x[n] and discarding two samples in between. As an example, if the original sequence with a sampling period T= 0.1 second (sampling rate = 10 samples per sec) is given by x(n) : 8 7 4 8 9 6 4 2 2 5 7 7 6 4... and we downsample the data sequence by a factor of 3, we obtain the downsampled sequence as y(m) : 8 8 4 5 6... with the resultant sampling period T = 3 x 0.1 = 0.3 second (the sampling rate now is 3.33 samples per second). After downsampling by a factor of D, the new sampling period becomes DT, and therefore the new sampling frequency is F S,D = 1 = F S DT s D, where F S is the original sampling rate.

By MATLAB, we can do this in an easy way. For example, >> x=1:1:10 x = 1 2 3 4 5 6 7 8 9 10 >> x2=x(1:2:end) x2 = 1 3 5 7 9 (3) Quantization. The second stage in the A/D process is amplitude quantization, where the sampled discrete-time signal x(n), is quantized into a finite set of output levels. The quantized signal can take only one of L levels, which are designed to cover the dynamic range: x min x(n) x max The step size or resolution of the uniform quantizer is given as: Δ = x max x min L 1 The step size can be either integer or fraction and is determined by the number of levels L. For binary coding, L is usually a power of 2, and practical values are 256 (=2 ^8) or greater. The difference between the actual analog value and quantized digital value is called quantization error. This error is due to rounding. and, Quantization error : e ( n) x ( n) x ( n) q error 2 2 q A continuous time signal, such as voice, has a continuous range of amplitudes and therefore its samples have a continuous amplitude range i.e. they are only discrete in time not in amplitude. In other words, within the finite amplitude range of the signal, we find an infinite number of amplitude levels. It is not necessary in fact to transmit the exact amplitude of the samples. Any human sense (the ear or the eye), as ultimate receiver, can detect only finite intensity differences. This means that the original continuous time signal may be approximated by a signal constructed of discrete amplitudes selected on a minimum error basis from an available set. Clearly, if we assign the discrete amplitude levels with sufficiently close spacing we may take the approximated signal practically indistinguishable from the original continuous signal. Amplitude quantization is defined as the process of transforming the sample amplitude m(nts) of a message signal m(t) at time t=nts into a discrete amplitude v(nts) taken from a finite set of possible amplitudes.

Practical Parts: Part 1: Aliasing in Time Domain The signal x t = sin 2πF o t can be sampled at the rate F S = 1 T S Aliasing will be observed for various F o to yield x(n) = cos 2π F o F S n a) Let F S =10 khz and F o =1 khz. Compute and plot x[n] using stem.m. n=0:50; Fs=10000; Fo=1000; xn=sin(2*pi*(fo/fs)*n) figure(1) stem(xn) b) Use subplot to plot x(t) for F o =300 Hz, 700 Hz, 1100 Hz and 1500 Hz. Fs=10000; t=0:0.0001:50/fs; Fo=[300,700,1100,1500]; for i=1:4; subplot(4,1,i) xt=sin(2*pi*fo(i)*t) plot(t,xt) end Comment on the following words for the result figure in (b): (a) The period:. (b) The rate of oscillation:. c) Use subplot to plot x[n] for F o =300 Hz, 700 Hz, 1100 Hz and 1500 Hz. Fs=10000; n=0:50; Fo=[300,700,1100,1500]; for i=1:4; subplot(4,1,i) xn=sin(2*pi*(fo(i)/fs)*n) stem(xn) end Comment on the following words for the result figure in (c): (a) Aliasing: :. (b) The period:. (c) The rate of oscillation:. (d) Fill in the table below with appropriate values:

F aliased T=1/F F base f aliased f base N=1/f base F o =300 Hz F o =700 Hz F o =1100 Hz F o =1500 Hz d) Repeat (b) and (c) for F o =8500 Hz, 8900 Hz, 9300 Hz and 9700 Hz. e) Repeat (b) and (c) for F o =10300 Hz, 10700 Hz, 11100 Hz and 11500 Hz. Exercise 1 Consider an analog signal x(t) consisting of three sinusoids x(t)= cos(2πt)+cos(8πt)+cos(12πt) Using Matlab, (a) Show that if this signal is sampled at a rate of Fs = 5 Hz, it will be aliased with the following signal, in the sense that their sample values will be the same: x a (t)= 3cos(2πt) (b) Repeat part (a) with Fs = 10 Hz. In this case, determine the signal x(t) with which x a (t) is aliased. Plot both x(t) and x a (t) on the same graph over the range 0 t 1 sec. Verify again that the signals intersect at the sampling instants.

Part 2: Aliasing in Frequency Domain: a) Construct the simulink model shown in Figure 4.6. b) Input a sine wave of Fo=5 Hz frequency from the signal generator. Choose a sampling time of 0.01 sec for the pulse generator with pulse duration of 50 % of the sampling period. Choose the cut-off frequency of 120π for the Butterworth low-pass filter. c) Start the simulation for 1sec and notice all visualizers(included them in your report). d) Repeat steps 2 and 3 for a sine wave with Fo = 95 Hz. Comment. e) Repeat steps 2 and 3 for a sine wave with Fo = 105 Hz. Comment. Figure 4.6: Simulink model to implement aliasing in frequency domain Part 3: Downsampling: a) Using MATLAB, generate a sine wave with frequency Fo of 1300 Hz, and sampling frequency Fs of 8000 Hz. b) Save the data of the sine wave as a sound file, named as 8000.wav. c) Listen to the tone of the 1300 Hz sine wave. d) Downsample the data of the sine wave by 2. This will result in a sine wave with a sampling rate of 4000 Hz. Repeat steps b, c and compare the sounds. e) Generate a sine wave with frequency Fo of 1300 Hz, and sampling frequency Fs of 4000Hz. f) Repeat steps b and c and compare the sounds.

clc clear all n=0:1:5000; Fo=1300; Fs=8000; x=sin(2*pi*fo*n/fs); sound (x); pause clear all n=0:2:5000; Fo=1300; Fs=8000; x=sin(2*pi*fo*n/fs); sound (x); pause clear all n=0:1:5000; Fo=1300; Fs=4000; x=sin(2*pi*fo*n/fs); sound(x(1:2500)); Part 4: Quantization: a) Write a Matlab function Y = uquant(x,l) which will uniformly quantize an input array X (either a vector or a matrix) to L discrete levels. function y=uquant(x,n) del=((max(max(x))-(min(min(x)))))/(n-1); r=(x-min(min(x)))/del; r=round(r); y=r*del+min(min(x));

Example: Quantized x=2sin (2pi*t) using 16 levels. 2 1.5 1 0.5 0-0.5-1 -1.5-2 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 x-min(min(x)) Shift to +ve region [ o to 4] 4 3.5 3 2.5 2 1.5 1 0.5 0 0 20 40 60 80 100 120 4 3.5 3 2.5 2 1.5 1 0.5 0 0 20 40 60 80 100 120 Divide by del 15 Mapping to [ 0 to 15 ] 0 15 10 5 0 0 20 40 60 80 100 120 Round to the nearest level. 2 1.5 1 0.5 0-0.5-1 -1.5-2 0 20 40 60 80 100 120 Re-mapping to [ -2 to 2 ] 15 10 5 0 0 20 40 60 80 100 120

b) Use this function to quantize an analog sinusoidal signal with L=4 and 32 levels. Compute the SQR for each level. t=0:.001:1; y=2*sin(2*pi*t) figure(1) subplot(311) plot(y) q1=uquant(y,4) subplot(312) plot(q1) q2=uquant(y,32) subplot(313) plot(q2) Ps=mean(y.^2); Pq1=mean(q1.^2); Pq2=mean(q2.^2); SQR1=Ps/Pq1; SQR2=Ps/Pq2; c) Audio quantization, use uquant function to quntize an audio signal at different levels and compare the result quantized signals by hearing them. clc clear all [y,fs]=wavread('speech_dft.wav'); sound(y,fs) for b=1:7; L=2.^b; yq=uquant(y,l); pause b sound(yq,fs) end f) Construct the simulink model shown in Figure 4.6. Input a sine wave of Fo=1 Hz frequency from the signal generator. Choose a sampling time of 0.1 sec for the pulse generator with pulse duration of 50 % of the sampling period. Choose the quantization interval of 0.5 for the Quantizer. Start the simulation and notice all visualizers(included them in your report).

Figure 4.7: Simulink model for sampling and quantization Exercise 2 (1) Image Quantization Use uquant function to quantize the office_4.jpg image (you can found it in the direction c:\program Files\matlab\toolbox\images\imdemosimage\office_4.jpg) to 7, 4, 2 and 1 b/pel. Observe and print the output images for each level. Note you must first convert the image from RGB to gray image. (2) Audio Quantization Form results in part 4(c) answer the following questions: (a) Describe the change in quality as the number of b/sample is reduced? (b) Do you think 4 b/sample is acceptable for telephone systems? (c) Plot the SQNR versus number of bits.generate this curve by computing the SQNR for 7, 6, 5,..., 1 bits/sample. Also display this curve in semi-log(db). (d) Plot the distortion versus number of bits in linear and semi-log scales.

Exercise 3 Given a sinusoidal waveform with a frequency of 100 Hz, (a) Write a MATLAB program to quantize the x(t) using 4-bit quantizers to obtain the quantized signal x q, assuming that the signal range is from -5 to 5 volts. (b) Plot the original signal, quantized signal, and quantization error, respectively. (c) Calculate the SQNR due to quantization using the MATLAB program. Check for your answer with equation (1.4.32) in Proakis's Book. Note: Your report should include the following: 1- All Matlab programs and its results with a short comment on each result. 2- Answer any internal questions in practical parts. 3- Solve all lab exercises.