Title: Modem Design, Implementation, and Testing Using NI
1Modem Design, Implementation, and Testing Using
NIs LabVIEW
- Prof. Brian L. Evans
- Embedded Signal Processing Laboratory
- The University of Texas at Austin
- bevans_at_ece.utexas.edu
Contributions by Vishal Monga, Zukang Shen, Ahmet
Toker, and Ian Wong, UT Austin
2Outline
- Real-Time DSP Course
- Single Carrier Transceiver
- Sinusoidal Generation
- Digital Filters
- Data Scramblers
- Pulse Amplitude Modulation
- Quadrature Amplitude Modulation
- Multicarrier Transceiver
- Conclusion
3Real-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
/
4Real-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
5Real-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)
6Lab 1. QAM Transmitter Diagram
Lab 4Rate Control
LabVIEW demo by Zukang Shen (UT Austin)
Lab 6 QAM Encoder
Lab 2 PassbandSignal
Lab 3Tx Filters
7Lab 1. QAM Transmitter Diagram
LabVIEW Control Panel
QAM Passband Signal
Eye Diagram
LabVIEW demo by Zukang Shen (UT Austin)
8Lab 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
9Lab 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 boards stereo codec operation
- Interrupt mechanisms and DMA transfers
10Lab 2. Sine Wave Generation
- 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
11Lab 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
Q poles zeros
1.7 -5.3533j16.9547 0.0j20.2479
61.0 -0.1636j19.9899 0.0j28.0184
Q poles zeros
0.68 -11.4343j10.5092 -3.4232j28.6856
10.00 -1.0926j21.8241 -1.2725j35.5476
optimized
classical
12Lab 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
13Lab 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)
14Lab 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
15Lab 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
16Lab 5. Digital PAM Transceiver
- 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
17Lab 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
18Lab 6. Digital QAM Transmitter
- Aim Develop QAM transmitter blocks in C
- Differential encoding of digital data
- Constellation mapping to QAM levels
- Interpolation filter bank for pulse shaping filter
19Lab 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
20Lab 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
21Developed Voiceband Transceiver Now What? Got
Anything Faster?
- 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
22Multicarrier Modulation by IFFT
Q
g(t)
x
x
I
Discrete time
g(t)
x
x
g(t)
x
x
g(t) pulse shaping filter Xi ith
symbol from encoder
23Multicarrier Modulation (ADSL)
QAM Mapping
00101
N/2 subchannels (carriers)
N real-valuedtimesamplesformsADSLsymbol
Mirror complex data (in blue) andtake conjugates
24Multicarrier Modulation (ADSL)
Inverse FFT
CP Cyclic Prefix
D/A transmit filter
ADSL frame is an ADSL symbol plus cyclic prefix
25Multicarrier Demodulation (ADSL)
S/P
N-point FastFourierTransform(FFT)
N/2 subchannels (carriers)
N time samples
26ADSL 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 real samples
N/2 subchannels
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
27Telecom and University Tracks
- Modem Design, Implementation, and Testing Using
NIs LabVIEW
Dr. Brian L. Evans Associate Professor The
University of Texas at Austin bevans_at_ece.utexas.ed
u