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

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

Transcript of Jonathan Haws Blair Leonard Khemmer Porter Joshua Templin November 16, 2007 Software Defined Radio A...

November 16, 2007

Jonathan HawsBlair Leonard

Khemmer PorterJoshua Templin

Software Defined RadioA Modular Approach

November 16, 2007 2

What is SDR?• Software Defined Radio

– “A radio communication system which can potentially tune to any frequency band and 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 QoS

November 16, 2007 3

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 4

Problem

• Design a software defined radio that has the ability to:

1. Change modulation techniques “on-the-fly”

2. Avoid unwanted white noise3. Provide a means to easily implement

the same software on other radios

November 16, 2007 5

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 6

Block Diagram of a SDR

November 16, 2007 7

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 8

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 9

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 10

Software AlgorithmDevelopment Process

Algorithms will be 1. Developed in MATLAB2. Tested in SIMULINK3. Converted to C/C++4. Tested in C/C++ model5. Compared to SIMULINK6. Verified on DSP board

November 16, 2007 11

Implementation Decisions

• C++– Ease of transition between MatLab 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 12

Modularity

Utilities Class

AM ModulationClass

QA ModulationClass

FM ModulationClass

Transceiver

Transmitter Receiver

November 16, 2007 13

Radio Software Design

November 16, 2007 14

SIMULINK Model

November 16, 2007 15

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 16

Amplitude Modulation (AM)

• V(t) = Vocos(2ft + )

– For AM the value Vo is varied to change the amplitude of the signal.

November 16, 2007 17

Frequency Modulation (FM)

• V(t) = Vocos(2ft + )– For FM f is varied.

November 16, 2007 18

Quadrature AM

• V(t) = Vocos(2ft + ) +

Vosin(2ft + )– For QAM, two signals that are out of

phase by 90 degrees are used simultaneously.

November 16, 2007 19

QAM Waveform

November 16, 2007 20

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 typesBPSK, QPSK, …

November 16, 2007 21

Matched Filters

• Maximize the SNR to improve QoS• Receiver filter is matched to the

transmitter filter by the relationship

P R f =C⋅P T f

November 16, 2007 22

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

Non-Data Aided

•Independent of data symbols

•Can be used for both tracking and acquisition

•Not as accurate as Data-aided while tracking

November 16, 2007 23

Spectrum Digital DSP Boards

SDI TMS320C6713 DSP Boards

• 225 MHz

• 512KB Flash

• 8MB SDRAM

• Microphone, Speaker, Mono In/Out audio ports

• USB Interface

November 16, 2007 24

Demonstration

November 16, 2007 25

Preliminary Testing

MATLAB simulation using AM modulation– Receiver

rectifies signal and detects peaks

Raw Signal

Demodulated Signal

November 16, 2007 26

Any Questions?

November 16, 2007 27

Thank you!

We appreciate your time and thank you for coming!