Software Defined Radio A Modular Approach Jonathan Haws

  • Slides: 27
Download presentation
Software Defined Radio A Modular Approach Jonathan Haws Blair Leonard Khemmer Porter Joshua Templin

Software Defined Radio A Modular Approach Jonathan Haws Blair Leonard Khemmer Porter Joshua Templin November 16, 2007

What is SDR? • Software Defined Radio – “A radio communication system which can

What is SDR? • Software Defined Radio – “A radio communication system which can potentially tune to any frequency band receive any modulation across a large frequency spectrum by means of as few as hardware possible and processing the signals through software” (Wikipedia, “Software Defined Radio”) – One device serves multiple purposes – Significant utility in military and cellular markets • Precursor to “Cognitive Radio” – Radio will alter transmission and reception parameters (modulation, frequency, and power) to avoid interference and improve overall Qo. S November 16, 2007 2

History • Many wireless devices are designed to serve a single purpose – Cell

History • Many wireless devices are designed to serve a single purpose – Cell phone, wireless router, GPS receiver, AM/FM radio, etc. • Many current software radio groups exists – GNURadio, HPSDR, SDR Forum, and others November 16, 2007 3

Problem • Design a software defined radio that has the ability to: 1. Change

Problem • Design a software defined radio that has the ability to: 1. Change modulation techniques “on-the-fly” 2. Avoid unwanted white noise 3. Provide a means to easily implement the same software on other radios November 16, 2007 4

Solution • Code and implement on a DSP various algorithms that provide the desired

Solution • Code and implement on a DSP various algorithms that provide the desired functionality of the radio • Keep code modular (C++ classes) November 16, 2007 5

Block Diagram of a SDR November 16, 2007 6

Block Diagram of a SDR November 16, 2007 6

Transmitter • Coder Block – Add bits to data stream to provide error protection

Transmitter • Coder Block – Add bits to data stream to provide error protection (data redundancy) • Bit/Symbol – Convert the data stream into transmission symbols for transmission • Transmit Filter – Shape the symbols to the desired waveform • Modulator – Modulate the signal for transmission November 16, 2007 7

Channel • Channel properties – Model a wireless channel with an appropriate transfer function

Channel • Channel properties – Model a wireless channel with an appropriate transfer function • White Noise – WSS random process modeled as a process with a constant power spectral density • Interference – Other interference modeled as normal random variables November 16, 2007 8

Receiver • LNA/AGC – Amplify signal to receiver circuit levels • Sampler – Sample

Receiver • LNA/AGC – Amplify signal to receiver circuit levels • Sampler – Sample the received signal for digital processing • Demodulator – Demodulate the received signal • Carrier Recovery – Recover the phase of the carrier signal • Matched Filter – Filter designed to match the transmitting filter • Timing Recovery – Recover original clock of the transmitter • Equalizer – Distortion compensation • Decoder – Decode symbols into appropriate bit stream November 16, 2007 9

Software Algorithm Development Process Algorithms will be 1. 2. 3. 4. 5. 6. Developed

Software Algorithm Development Process Algorithms will be 1. 2. 3. 4. 5. 6. Developed in MATLAB Tested in SIMULINK Converted to C/C++ Tested in C/C++ model Compared to SIMULINK Verified on DSP board November 16, 2007 10

Implementation Decisions • C++ – Ease of transition between Mat. Lab and C++ –

Implementation Decisions • C++ – Ease of transition between Mat. Lab and C++ – C++ will provide modular classes and functions • Inheritance and Virtual Functions – DSP Boards can be programmed with C/C++ • Linux – Documentation – Cross-Platform • Macintosh and IBM Compatible November 16, 2007 11

Modularity Utilities Class AM Modulation Class FM Modulation Class QA Modulation Class Transceiver Transmitter

Modularity Utilities Class AM Modulation Class FM Modulation Class QA Modulation Class Transceiver Transmitter November 16, 2007 Receiver 12

Radio Software Design … November 16, 2007 13

Radio Software Design … November 16, 2007 13

SIMULINK Model November 16, 2007 14

SIMULINK Model November 16, 2007 14

Modulation Techniques • Software Defined Radios allow for multiple modulation techniques • NO additional

Modulation Techniques • Software Defined Radios allow for multiple modulation techniques • NO additional hardware is needed – Filtering can also be accomplished without any additional hardware. November 16, 2007 15

Amplitude Modulation (AM) • V(t) = Vo cos(2 f t + ) – For

Amplitude Modulation (AM) • V(t) = Vo cos(2 f t + ) – For AM the value Vo is varied to change the amplitude of the signal. November 16, 2007 16

Frequency Modulation (FM) • V(t) = Vo cos(2 f t + ) – For

Frequency Modulation (FM) • V(t) = Vo cos(2 f t + ) – For FM f is varied. November 16, 2007 17

Quadrature AM • V(t) = Vo cos(2 f t + ) + Vo sin(2

Quadrature AM • V(t) = Vo cos(2 f t + ) + Vo sin(2 f t + ) – For QAM, two signals that are out of phase by 90 degrees are used simultaneously. November 16, 2007 18

QAM Waveform November 16, 2007 19

QAM Waveform November 16, 2007 19

Digital Modulation • The techniques that were discussed are for analog modulation. – The

Digital Modulation • The techniques that were discussed are for analog modulation. – The process is similar for digital modulation – The digital modulation types are: ASK, FSK, and QASK – Once these techniques are realized, they can be adapted to achieve other modulation types BPSK, QPSK, … November 16, 2007 20

Matched Filters • Maximize the SNR to improve Qo. S • Receiver filter is

Matched Filters • Maximize the SNR to improve Qo. S • Receiver filter is matched to the transmitter filter by the relationship November 16, 2007 21

Carrier and Timing Recovery Data aided vs. Non-data aided Data Aided • Only applicable

Carrier and Timing Recovery Data aided vs. Non-data aided Data Aided • Only applicable when data symbols are detected reliably • Requires phase and frequency information of the carrier • Based on decisions made by receiver November 16, 2007 Non-Data Aided • Independent of data symbols • Can be used for both tracking and acquisition • Not as accurate as Data-aided while tracking 22

Spectrum Digital DSP Boards SDI TMS 320 C 6713 DSP Boards • 225 MHz

Spectrum Digital DSP Boards SDI TMS 320 C 6713 DSP Boards • 225 MHz • 512 KB Flash • 8 MB SDRAM • Microphone, Speaker, Mono In/Out audio ports • USB Interface November 16, 2007 23

Demonstration November 16, 2007 24

Demonstration November 16, 2007 24

Preliminary Testing MATLAB simulation using AM modulation – Receiver rectifies signal and detects peaks

Preliminary Testing MATLAB simulation using AM modulation – Receiver rectifies signal and detects peaks Raw Signal Demodulated Signal November 16, 2007 25

Any Questions? November 16, 2007 26

Any Questions? November 16, 2007 26

Thank you! We appreciate your time and thank you for coming! November 16, 2007

Thank you! We appreciate your time and thank you for coming! November 16, 2007 27