Create Presentation
Download Presentation

Download Presentation
## Modem Design, Implementation, and Testing Using NI’s LabVIEW

- - - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - - -

**http://www.ece.utexas.edu**http://www.wncg.org Modem Design, Implementation, and Testing Using NI’s LabVIEW • Prof. Brian L. Evans • Embedded Signal Processing Laboratory • The University of Texas at Austin • bevans@ece.utexas.edu Contributions by Vishal Monga, Zukang Shen, Ahmet Toker, and Ian Wong, UT Austin**Outline**• Real-Time DSP Course • Single Carrier Transceiver • Sinusoidal Generation • Digital Filters • Data Scramblers • Pulse Amplitude Modulation • Quadrature Amplitude Modulation • Multicarrier Transceiver • Conclusion**Real-Time DSP Course: Overview**• Objectives of junior-level class • Build intuition for signal processing concepts • Translate signal processing concepts intoreal-time digital communications software • Lecture: breadth (three hours/week) • Digital signal processing algorithms • Digital communication systems • Digital signal processor architectures • Laboratory: depth (three hours/week) • Deliver voiceband modem • “Design is the science of tradeoffs” (Yale Patt) • Test/validate implementation Over 500 served since 1997 http://www.ece.utexas.edu/~bevans/courses/realtime/**Real-Time DSP Course: Which DSP?**• Students are third-year undergraduates • Fixed-point DSPs for high-volume products • Battery-powered: cell phones, digital still cameras … • Wall-powered: ADSL modems, cellular basestations … • Fixed-point issues • Using non-standard C extensions for fractional data • Converting floating-point programs to fixed-point • Manual tracking of binary point prone to error • Floating-point DSPs • Feasibility for fixed-point DSP realization • Shorter prototyping time • Program TI TMS320C67x DSP in C • Code Composer Studio 2.2**Real-Time DSP Course: Textbooks**• C. R. Johnson, Jr., and W. A.Sethares, TelecommunicationBreakdown, Prentice Hall, 2004. • Intro to digital communicationsand transceiver design • Matlab examples • S. A. Tretter, Comm. System Design usingDSP Algorithms with Lab Experiments forthe TMS320C6701 & TMS320C6711, 2003. • Assumes DSP theory and algorithms • Assumes access to C6000 reference manuals • Errata/code: http://www.ece.umd.edu/~tretter Rick Johnson (Cornell) Bill Sethares (Wisconsin) Steven Tretter (Maryland)**Lab 1. QAM Transmitter Diagram**Lab 4Rate Control LabVIEW demo by Zukang Shen (UT Austin) Lab 6 QAM Encoder Lab 2 PassbandSignal Lab 3Tx Filters**Lab 1. QAM Transmitter Diagram**LabVIEW Control Panel QAM Passband Signal Eye Diagram LabVIEW demo by Zukang Shen (UT Austin)**Lab 1. QAM Transmitter Diagram**passband signal for 1200 bps mode square root raise cosine, roll-off = 0.75, SNR = passband signal for 2400 bps mode raise cosine, roll-off = 1, SNR = 30 dB**Lab 2. Sine Wave Generation**• Aim: Evaluate three waysto generate sine waves • Function call • Lookup table • Difference equation • Three output methods • Polling data transmit register • Software interrupts • Direct memory access (DMA) transfers • Expected outcomes are to understand • Signal quality vs. implementation complexity tradeoff • C6701 EVM board’s stereo codec operation • Interrupt mechanisms and DMA transfers**Lab 2. Sine Wave Generation**C6701 LabVIEW DSP Test Integration Toolkit 2.0 Code Composer Studio 2.2 • Evaluation procedure • Validate sine wave frequency on scope, and test for various sampling rates (14 sampling rates on board) • Method 1 with interrupt priorities • Method 1 with different DMA initialization(s) Spring 2004 Fall 2003HP 60 MHz Digital Storage Oscilloscope**Lab 3. Digital Filters**• Aim: Evaluate four ways to implementdiscrete-time linear time-invariant filters • FIR filter: convolution in C and assembly • IIR Filter: direct form and cascade of biquads, both in C • IIR filter design gotchas: oscillation & instability • In classical designs, poles sensitive to perturbation • Quality factor measures sensitivity of pole pair: Q [ ½ , ) where Q = ½ dampens and Q = oscillates • Elliptic analog lowpass IIR filter dp = 0.21 at wp = 20 rad/s and ds = 0.31 at ws = 30 rad/s [Evans 1999] optimized classical**Lab 3. Digital Filters**• IIR filter design for implementation • Butterworth/Chebyshev filters specialcases of elliptic filters • Minimum order not always most efficient • Filter design gotcha: polynomial inflation • Polynomial deflation (rooting) reliable in floating-point • Polynomial inflation (expansion) may degrade roots • Keep native form computed by filter design algorithm • Expected outcomes are to understand • Speedups from convolution assembly routine vs. C • Quantization effects on filter stability (IIR) • FIR vs. IIR: how to decide which one to use**Lab 3. Digital Filters**• Test Equipment • Agilent Function Generator • HP 60 MHz Digital Storage Oscilloscope • Spectrum Analyzer • Evaluation Procedure • Sweep filters with sinusoids to construct magnitude and phase responses • Manually using test equipment, or • Automatically by LabVIEW DSP Test Integration Toolkit • Check filter output for cut-off frequency, roll-off factor… • FIR: Compare execution times (in Code Composer) of • C without compiler optimizations • C with compiler optimizations • C callable assembly language routine • IIR: Compute execution times (in Code Composer)**Lab 4. Data Scramblers**• Aim: Generate pseudo-random bit sequences • Build data scrambler for given connection polynomial • Descramble data via descrambler • Obtain statistics of scrambled binary sequence • Expected outcomes are to understand • Principles of pseudo-noise (PN) sequence generation • Identify applications in communication systems**Lab 4. Data Scramblers**• Evaluation procedure • Check scrambler output for various deterministic sequences as input(s) • Descrambler must recover input sequence from scrambled one • Test for sequence period, autocorrelation and other significant statistical properties • Using DSP Test & Measurement Toolkit instead • Compute autocorrelation of PN sequence • Compare this autocorrelation with that of white noise generated by LabVIEW to measue PN sequence quality**Lab 5. Digital PAM Transceiver**3 d an d L gT[n] D/A Transmit Filter -d -3 d gT,0[n] 4-PAM gT,1[n] D/A Transmit Filter an Filter bank implementation • Aim: Develop PAM transceiver blocks in C • Amplitude mapping to PAM levels • Interpolation filter bank for pulse shaping filter • Clock recovery via phase locked loops L samples per symbol**Lab 5. Digital PAM Transceiver**• Expected Outcomes are to understand • Basics of PAM modulation • Zero inter-symbol interference condition • Clock synchronization issues • Test Equipment: Same as Lab 3 • Evaluation Procedure • Generate eye diagram to visualize PAM signal quality • Observe spectrum of modulated signal • Prepare DSP modules to test symbol clock frequency recovery subsystem**Lab 6. Digital QAM Transmitter**an L gT[m] Serial/parallelconverter Map to 2-D constellation cos(w0 n) + D/A J 1 bn Bit stream L gT[m] L samples per symbol sin(w0 n) • Aim: Develop QAM transmitter blocks in C • Differential encoding of digital data • Constellation mapping to QAM levels • Interpolation filter bank for pulse shaping filter**Lab 6. Digital QAM Transmitter**• Expected outcomes are to understand • In-phase and quadrature modulation principles • Bandwidth efficiency issues • Test equipment: same as Lab 5 • Evaluation procedure • Verify differential encoding and QAM mapping • Generate eye diagram to visualize QAM signal quality • Observe spectrum of modulated signal**Lab 7. Digital QAM Receiver – Part 1**• Aim: Develop QAM receiver blocks in C • Carrier recovery • Coherent demodulation • Decoding of QAM levels to digital data • Expected outcomes are to understand • Carrier detection and phase adjustment • Design of receive filter • Probability of error analysis to evaluate decoder • Test equipment: Same as Lab 6 • Evaluation procedure • Recover and display carrier on scope • Regenerate eye diagram and QAM constellation • Observe signal spectra at each decoding stage**Developed Voiceband Transceiver: Now What? Got Anything**Faster? channel carrier magnitude subchannel frequency Each ADSL/VDSL subchannel is 4.3 kHz wide (about a voice channel) and carries QAM encoded subsymbol • Multicarrier modulation divides broadband channel into narrowband subchannels • No inter-symbol interference if constant subchannel gain and ideal sampling • Based on fast Fourier transform (FFT) • ADSL/VDSL and IEEE 802.11a/g & 802.16a**Multicarrier Modulation by IFFT**Q g(t) x x I Discrete time g(t) x x + + g(t) x x g(t) : pulse shaping filterXi: ith symbol from encoder**Multicarrier Modulation (ADSL)**N-point Inverse FastFourierTransform(IFFT) Q X0 X1 x0 X2 x1 I x2 XN/2 XN/2-1* X2* xN-1 X1* QAM Mapping 00101 N/2 subchannels (carriers) N real-valuedtimesamplesformsADSLsymbol Mirror complex data (in blue) andtake conjugates:**Multicarrier Modulation (ADSL)**v samples N samples s y m b o l ( i+1) CP CP s y m b o l ( i ) copy copy Inverse FFT CP: Cyclic Prefix D/A + transmit filter ADSL frame is an ADSL symbol plus cyclic prefix**Multicarrier Demodulation (ADSL)**S/P N-point FastFourierTransform(FFT) N/2 subchannels (carriers) N time samples**ADSL Transceiver: Data Xmission**2.208 MHz N/2 subchannels N real samples S/P quadrature amplitude modulation (QAM) encoder mirror data and N-IFFT add cyclic prefix P/S D/A + transmit filter Bits 00110 TRANSMITTER each block programmed in lab and covered in one full lecture channel each block covered in one full lecture RECEIVER N/2 subchannels N real samples P/S time domain equalizer (FIR filter) QAM decoder N-FFT and remove mirrored data S/P remove cyclic prefix receive filter + A/D invert channel = frequency domain equalizer P/S parallel-to-serial S/P serial-to-parallel FFT fast Fourier transform**Telecom and University Tracks**Modem Design, Implementation, and Testing Using NI’s LabVIEW Dr. Brian L. Evans Associate Professor The University of Texas at Austin bevans@ece.utexas.edu