14
DSP Techniques for Software Radio A System Example Dr. Jamil Ahmad

DSP Techniques for Software Radio A System Example Dr. Jamil Ahmad

Embed Size (px)

Citation preview

Page 1: DSP Techniques for Software Radio A System Example Dr. Jamil Ahmad

DSP Techniques for Software Radio

A System Example

Dr. Jamil Ahmad

Page 2: DSP Techniques for Software Radio A System Example Dr. Jamil Ahmad

2

SDR System

GNU Radio SDR Hardware Support SDR Software Development SDR Demo

Page 3: DSP Techniques for Software Radio A System Example Dr. Jamil Ahmad

3

Why GNU Radio?

Open source Knowledge Sharing Growing Applications Open Hardware Architecture PC Interface – General Purpose

DSP

Page 4: DSP Techniques for Software Radio A System Example Dr. Jamil Ahmad

4

GNU Radio Hardware

Universal Software Radio Peripheral (USRP) Multi-Channel Multi-Band Flexible

Hardware Wideband system USB 2.0 Interface Developed for Linux Analog RF and Digital Front End

Processing

Page 5: DSP Techniques for Software Radio A System Example Dr. Jamil Ahmad

5

USRP Board

Page 6: DSP Techniques for Software Radio A System Example Dr. Jamil Ahmad

6

USRP

Daughter Cards Flexible Analog RF Front Ends

0-5GHz Support MIMO System

High Speed Data Conversion Mother Board

High Speed FPGA for Front-End Processing

USB 2.0 Interface with PC

Page 7: DSP Techniques for Software Radio A System Example Dr. Jamil Ahmad

7

USRP FPGA Processing

Page 8: DSP Techniques for Software Radio A System Example Dr. Jamil Ahmad

8

USRP ADCs 4 – 12bit A/D Converters 64M samples/sec each (theoretically a

32MHz wide band) 42.66M samples/s, 32M samples/s ... also

possible. 2V Peak-to-Peak input PGA to increase gain up to 20db before

A/D for weak signals.

Page 9: DSP Techniques for Software Radio A System Example Dr. Jamil Ahmad

9

USRP DACs

4 - 14bit D/A Converters 128M samples/s each Theoretical 64 MHz bandwidth Tx

signal but should not attempt more than 50 MHz

Page 10: DSP Techniques for Software Radio A System Example Dr. Jamil Ahmad

10

USRP Data Conversion Effectively 4 input and 4 ouput channels Usually use a complex signal input/output

so 2 complex inputs and 2 complex outputs There is also onboard interpolation in the

FPGA (DDC) for both TX and RX All samples sent across the USB are 16-bit

signed integer values USB can only handle 32Megabytes/s or less

Page 11: DSP Techniques for Software Radio A System Example Dr. Jamil Ahmad

11

GNU Radio Software

SDR Blocks Basic DSP blocks in C++

SDR System Python to connect DSP processing

blocks Example Code

Page 12: DSP Techniques for Software Radio A System Example Dr. Jamil Ahmad

12

GNU Radio SoftwareHello World Example: Dial Tone Output

#!/usr/bin/env python

from gnuradio import gr

from gnuradio import audio

def build_graph ():

sampling_freq = 48000

ampl = 0.1

fg = gr.flow_graph ()

src0 = gr.sig_source_f (sampling_freq, gr.GR_SIN_WAVE, 350, ampl)

src1 = gr.sig_source_f (sampling_freq, gr.GR_SIN_WAVE, 440, ampl)

dst = audio.sink (sampling_freq)

fg.connect ((src0, 0), (dst, 0))

fg.connect ((src1, 0), (dst, 1))

return fg

if __name__ == '__main__':

fg = build_graph ()

fg.start ()

raw_input ('Press Enter to quit: ')

fg.stop ()

Page 13: DSP Techniques for Software Radio A System Example Dr. Jamil Ahmad

13

SDR System Demo

64-QAM OFDM System No RF PC-to-PC analog wire connection

using sound cards Both Tx and RX

Page 14: DSP Techniques for Software Radio A System Example Dr. Jamil Ahmad

14

GNU Radio

GNU Software Radio

http://www.gnu.org/software/gnuradio/

USRP http://www.ettus.com