Intro Brief to GNU Radio
-
Upload
elizeu-calegari -
Category
Documents
-
view
67 -
download
3
description
Transcript of Intro Brief to GNU Radio
Johnathan CorganCorgan LabsJune 2013
Copyright © 20092013 Corgan Labs
GNU RadioOpen Source SDR Framework
June 2013 2
Open Source SDR● Software Defined Radio implemented using very low
cost hardware, freely available software, executing on commodity processors
● Price point and simplicity makes it accessible to individual engineers vs. larger systems
● Suitable for waveform research, prototyping of larger systems, or rapid deployment of custom designs
● All source code for firmware, SDR framework, DSP library, and application code is available at no cost
● Large community of software radio engineers exchanging ideas, code, and expertise
June 2013 3
GNU Radio/USRP SDR System
GNU Radio HostApplication
BasebandModulation/Demodulation
ExternalRF Electronics
Low Noise RxPower Amp for TX
Ettus ResearchUSRP (FPGAbased)
Up/Down ConversionADC/DAC
Interpolation/Decimation
Up to 50 MspsComplex Baseband
Sample Stream
Up to ~80 MHzPassband,
DC ~6GHz(db dependent)
● A variety of models for different capabilities
● RF frontend/DAC/ADC operates across up to 100 MHz
● Programmable Spartan 3* series FPGA performs filtering/decimation/interpolation to transport limitations
GbE – 50 MspsUSB 2.0 – 16 Msps
I/Q
June 2013 4
The GNU Software Radio Project● GNU Radio is a SDR framework and DSP library
● Combines a large set of DSP building blocks with an easytointegrate runtime
● Most commonly used with the Ettus Research USRP, but has open driver model and supports many other devices
● Uses compiled C++ for signal processing and Python for highlevel code
● Fully opensource (GPLv3), no royalties or other fees
● All copyrights assigned to the Free Software Foundation
● Originally founded by Eric Blossom, project lead is now Dr. Tom Rondeau
June 2013 5
GNU Radio Software Design ● GNU Radio is optimized for continuous, overtheair
applications, vs. simulation of short periods of time
– High performance streaming interfaces between signal processing blocks
– Multithreaded for scalability across multicore processors
– Runtime scheduling maximizes “work per call” of DSP functions
● Highlevel interface (Python) to create processing flowgraph
– Hierarchical, streaming graph with “top block”
– No DSP in Python, just connecting precompiled C++
● Graphical frontend tool (GRC) for rapid design
● Hardware interface uses sample arrays for I/O
June 2013 6
Direct Conversion SDR Design
USRPDaughterboard
(all analog processing)
USRPMotherboard
(all digital processing)
LO
BandFilter
Gain LPF
QuadratureMixer
DC6 GHz(board specific)
ADC LO
LPF
ComplexMixer
(CORDIC)
50 to 50(32 to 32)
MHz
N
FPGA
Decimateby N4512
(8256)
100 Msps(64 Msps)14 bits(12 bits)
TX is 16 bits(14 bits)
ComplexBaseband
1 GbE(USB)
to GNU Radioapplication
I
Q
I
Q
June 2013 7
Design Flow/Usage Models● A research platform supporting investigation and
implementation of other projects (programmable lab gear)
● A working prototype, providing a fast, lowcost way to test algorithms and waveform design before going to a production system using something else
● A working, endtoend communication system ready for field deployment asis
● A component of an integrated service offering
● In each case, GNU Radio is providing the signal processing power on top of hardware SDR capability
June 2013 8
Cooperative Ranging/Bearing System● Phasedarray antenna and transaction results in range
and bearing calculation between cooperative systems
● Ultimate goal is customASIC implementing algorithm
● Design flow:
– GNU Radiobased rangingonly system using PCs and stock USRPs
– Custom RF daughterboard implementing multiple RX, single TX, adds AOA estimation
– Migration of algorithm from PC to USRP FPGA for wider bandwidth, performance
– Custom prototype hardware implementing singleboard solution
● Multistage design optimizes development complexity
June 2013 9
Ranging System Design
Ranging OnlyGNU Radio APP
Up/Down ConversionOnly
Ranging/AOATransaction
Custom RF Front Endfor PhasedArray
FPGAbased Waveform,“Math” done on ARM
CustomDesign
25 MHz
25 MHz
83 MHz
June 2013 10
GPS Interference Mitigation Analysis● GNU Radio and the USRP is used to test GPS jamming
mitigation algorithms in real time
● USRP #1 receives and downconverts GPS L1 to baseband
● Samplestream is fed to GNU Radiobased interference generator
● Signal is then rebroadcast using USRP #2
● Rebroadcast signal is split between commercial GPS and USRP #3
● USRP #3 provides baseband samples to custom research GPS implementation
June 2013 11
GPS Interference Mitigation Design
LNA
InterferenceGeneration
L1 Downconversion
UpconversionRebroadcast
Custom GPSProcessing
CommercialReceiver
(*lots* of attenuation!)
1.57542 GHz
4 MspsBaseband
June 2013 12
Agile Ground Station Network● The Open System for Agile Ground Stations (OSAGS)
was a NASAfunded Phase II SBIR project
● Three equatorial, network coordinated 2.4m Sband dishes using GNU Radio, USRP2s, and RFX2200 daughterboards
● 33% orbit coverage for equatorial orbits, 57 passes per day for polar
● SDR design allows multisatellite up and downlink with no mission specific hardware
● Permission uplink modulator, downlink demodulator, and telemetry processors loaded onthefly
June 2013 13
Example: SBand Ground Station
Standby USRPs
RX
TX NonBlockingGbE Switch
SDR PC
USRP2Downconverter
& ADC
USRP2DAC/
Upconverter
GbE
GbE
GbE
GbE
GbE
GbECisco Router
IPsec VPN
10/100/1000Switch
OffsiteWANLink
Dish Control/GS Management PC
Dish Control/GS Management PC
(Standby)
StandbySDR PC
GPS
RS232
RS232 Dish ControlInterface
TCP/IP
TCP/IP
TerabyteDisk Array
TerabyteDisk Array
Example: FM Channelization
GNU Radio ApplicationUSRP N210 & WBXDownconverter
& ADC
GbE
..
.
DemodulatedAudio Streams
over UDP
Bldg. MountedAntenna
LNA+BPF
88108 MHzFM Broadcast Band
25 Msps16bit I/Q UHD
SourcePFB
Channelizer
NetworkInterface & Control
DemodDemodDemod
50x 400 KhzChannels
N times4 KspsAudio
June 2013 15
Mobile Handset Location Tracking● Uses USRPs and GNU Radio to demodulate and identify
unique GSM handset uplink bursts
● By placing multiple receivers in a volume of interest, correlations between multiple measurements can be achieved
– Time of arrival
– Signal strength
– Arrival phase
● Offline statistical processing calculates aggregate data regarding movement within the volume
● Provided as a service to shopping malls, airports, etc.
● Example of SDR being used “behind the scenes”
June 2013 16
Example GNU Radio Applications● Spectrumsensing/monitoring, cognitive radio
● Digital packet radio
● Active and passive radar – low power SAR
● SATCOM ground station command and telemetry, satellite simulation
● Beamforming/radiolocation
● Ionospheric sounding, weather radar, wind profiling
● Laboratory testbench waveform generation
● Acoustic signal processing
● Academic – R&D, classroom instruction, textbook implementations
June 2013 17
The GNU Radio Companion
● Graphically create and execute flow graphs
● Includes Python code generator
● Rapid development and prototyping
June 2013 18
Obtaining GNU Radio Software● GNU Radio releases are distributed as a tarball or binary
packages (some platforms)
● Alternatively, one may use a version control client (Git) to download from the source code repository
● Platforms supported
– GNU/Linux (RHEL, FC, Ubuntu, Debian, ...)
– NetBSD, FreeBSD
– Mac OS/X
– Microsoft Windows (unofficial, supported by Ettus Research)
● Installation via source compilation requires installing a set of developer tools and libraries
● Precompiled packages exist for Debian, Ubuntu, Fedora Core
June 2013 19
GNU Radio Community● Redminebased project tracking system/wiki at
gnuradio.org
– Source code
– Wikibased documentation
– Bug tracker
● Mailing list discussgnuradio at lists.gnu.org
– Several thousand subscribers from beginners to RF experts
● IRC: #gnuradio
● Twitter: @gnuradio
● Many YouTube videos have been posted of GNU Radio in action