GNU Radio @ FOSS.IN 2007
-
Upload
rakesh-peter -
Category
Documents
-
view
227 -
download
1
description
Transcript of GNU Radio @ FOSS.IN 2007
![Page 1: GNU Radio @ FOSS.IN 2007](https://reader033.fdocuments.us/reader033/viewer/2022061615/55273d0c49795971178b45cb/html5/thumbnails/1.jpg)
h4x0r1n the air waves with GNU Radio
/* or how to 0wn the un1v3rse.... */
rakesh peter vu3rgp
centre for excellence in computational engineering and networkingamrita vishwa vidyapeetham
![Page 2: GNU Radio @ FOSS.IN 2007](https://reader033.fdocuments.us/reader033/viewer/2022061615/55273d0c49795971178b45cb/html5/thumbnails/2.jpg)
“A certain convergence occurs when multiple technologies align in time to make possible those things that once were only dreamed.”
-- Gerald Youngblood (K5SDR), “A Software-Defined Radio for the Masses”
![Page 3: GNU Radio @ FOSS.IN 2007](https://reader033.fdocuments.us/reader033/viewer/2022061615/55273d0c49795971178b45cb/html5/thumbnails/3.jpg)
Software (Defined) Radio • From Godfather – Joe Mitola III
• Development initiated by SpeakEasy project / JTRS / MIT SpectrumWare • Defining waveforms in code
– Modulation – Ciphering – Coding
• Need for RF Frontend
“A software radio is a radio whose channel modulation waveforms are defined in software. That is, waveforms are generated as sampled digital signals, converted from digital to analog via a wideband DAC and then possibly upconverted from IF to RF. The receiver, similarly, employs a wideband Analog to Digital Converter (ADC) that captures all of the channels of the software radio node. The receiver then extracts, downconverts and demodulates the channel waveform using software on a general purpose processor.”
![Page 4: GNU Radio @ FOSS.IN 2007](https://reader033.fdocuments.us/reader033/viewer/2022061615/55273d0c49795971178b45cb/html5/thumbnails/4.jpg)
Conventional Radio Architecture
Antenna
RF Amp Mixer
Local Oscillator
Band Pass Filter IF Amp Demodulator AF Amp Audio
RF Amp Mixer
Local Oscillator
Band Pass Filter IF Amp
Antenna
Analog<>Digital Converter
DSP Processor
Software Defined Radio Architecture
RF Frontend
![Page 5: GNU Radio @ FOSS.IN 2007](https://reader033.fdocuments.us/reader033/viewer/2022061615/55273d0c49795971178b45cb/html5/thumbnails/5.jpg)
So what’s so interesting?
<snip>http://www.sds.lcs.mit.edu/SpectrumWare/mpeg/lcs35lo.MPG
</snip>
Courtesy: SpectrumWare project, Network and Mobile Systems Lab, MIT
![Page 6: GNU Radio @ FOSS.IN 2007](https://reader033.fdocuments.us/reader033/viewer/2022061615/55273d0c49795971178b45cb/html5/thumbnails/6.jpg)
Real World Scenarios• Eliminating Standard Woes for Cellular Service Providers
– AT&T Case Study • > $4 billion expenditure for changing TDMA to GSM • ~ 10 years for Return of Investment
– Vanu Anywave Base Station – Eventual concordance in Standards Development and Deployment
• Public Safety Interoperability– Emergency situations– Integrating Legacy analog systems, trunked radios, cellular networks
• Convergence Devices– Single chipset for all your waveforms (GSM/CDMA/WiFi/Bluetooth/GPS/RFID)
![Page 7: GNU Radio @ FOSS.IN 2007](https://reader033.fdocuments.us/reader033/viewer/2022061615/55273d0c49795971178b45cb/html5/thumbnails/7.jpg)
GNU Radio• Open source Signal processing toolset
• Works on General Purpose Processors– Linux, OS/X, Windows (Cygwin/MinGW)
• Forked from MIT Pspectra project– Initiated by John Gilmore, lead by Eric Blossom– Fueled by the MPAA HDTV Broadcast Flag trial
• Modular and Hybrid C++/Python architecture
• Flow-graph abstraction
• Open source components– FFTW, SWIG, SDCC, wxGUI, autotools, boost…
![Page 8: GNU Radio @ FOSS.IN 2007](https://reader033.fdocuments.us/reader033/viewer/2022061615/55273d0c49795971178b45cb/html5/thumbnails/8.jpg)
Hello, World ;)
src0 src1
adder
sink
Flow Graph Representation
![Page 9: GNU Radio @ FOSS.IN 2007](https://reader033.fdocuments.us/reader033/viewer/2022061615/55273d0c49795971178b45cb/html5/thumbnails/9.jpg)
Module LibrarySource / Sinks
SignalNoiseNullFile
NetworkPacketVideoAudioUSRPFFT
Scope
Type Conversions
Complex <-> IntShort/ Real / ImagComplex <-> Mag / Arg
Float <-> Complex / Char / UCharPacked <-> UnpackedSymbols <-> Chunks
Vector <-> Stream <-> StreamsInterleaver / Deinterleaver
Complex Conjugate
Math operations
AddSubtractMultiplyDivide
Log
Filters
FIR IIR (single pole)
FFT/IFFTFreq. Translating FIR
Rational Resampling FIRRoot Raised Cosine
HilbertPower Squelch
Modulation
WFM / NBFMAM / PM / SSB
FSK / PSK / QAMGMSK / VSB-8 / OFDM
Coding
Differential TrellisViterbiBCJR
Reed Solomon
Misc.
M&M Clock RecoveryAGCPLL
Costas LoopAdaptive Equalizer
![Page 10: GNU Radio @ FOSS.IN 2007](https://reader033.fdocuments.us/reader033/viewer/2022061615/55273d0c49795971178b45cb/html5/thumbnails/10.jpg)
GNU Radio Companion • Visual interface for flowgraph construction
– Labview-like drag-drop-connect-configure interface
• ~200 blocks from the GNU Radio toolset
• Excellent tool for learning / experimenting DSP
• Rapid prototyping (a-la un-coding)
• XML representation of the flowgraph
• Developed and maintained by Joshua Blum
![Page 11: GNU Radio @ FOSS.IN 2007](https://reader033.fdocuments.us/reader033/viewer/2022061615/55273d0c49795971178b45cb/html5/thumbnails/11.jpg)
Universal Software Radio Peripheral (USRP)
• 4 x 12 bit 64 MS/s ADCs• 4 x 14 bit 128 MS/s DACs
• FPGA – Altera Cyclone EP1C12
• USB 2.0 PC Interface (32MB/s)– Cypress 68013 Controller
• 8051 core for FPGA Init
• Daughterboard support– Programmable Configuration
• External Clock interface
• Open Design
• Designed by Matt Ettus and sold by Ettus Research
![Page 12: GNU Radio @ FOSS.IN 2007](https://reader033.fdocuments.us/reader033/viewer/2022061615/55273d0c49795971178b45cb/html5/thumbnails/12.jpg)
USRP Daughterboards
BasicTX / BasicRX [1 to 250 MHz] LFTX / LFRX [0 to 30 MHz]
TVRX [50 to 860 MHz] DBSRX [800 to 2400 MHz] RFX Series [400/900/1200/1800/2400 MHz]
![Page 13: GNU Radio @ FOSS.IN 2007](https://reader033.fdocuments.us/reader033/viewer/2022061615/55273d0c49795971178b45cb/html5/thumbnails/13.jpg)
FPGA Functional Architecture
Analog to Digital Converter
RF F
ront
end
Digital to Analog Converter
USB
Bus
CORDIC
CIC Interpolator
CIC Decimator + Half Band Filter
RX FIFO
TX FIFO
![Page 14: GNU Radio @ FOSS.IN 2007](https://reader033.fdocuments.us/reader033/viewer/2022061615/55273d0c49795971178b45cb/html5/thumbnails/14.jpg)
GNU Radio Projects• GSM Scanner• OpenGNSS• 802.11 WiFi stack (BBN Adroit)• DVB• Radio Astronomy• HDTV• RFID• Bluetooth• Active / Passive Radar• OFDM• MIMO• FM/AM/SSB Radio• NOAA Weather Sat • …pretty much anything RF !!
• Cantilever control• Acoustic Modems • Signal Analyzer / Generator• Medical Imaging
![Page 15: GNU Radio @ FOSS.IN 2007](https://reader033.fdocuments.us/reader033/viewer/2022061615/55273d0c49795971178b45cb/html5/thumbnails/15.jpg)
New and Comin…• USRP2 (Q1 2008)
– 100MS/s 14bit ADC / 400MS/s 16bit DAC– Xilinx Spartan III FPGA – Gigabit Ethernet Interface (3-6x improvement)– 1MB onboard SRAM– Standalone features (SD card loadable)– Multiple USRP linking
• Message Blocks / Inband signalling– Priority Scheduling and Message handling between blocks– Support for MAC layer development– Control Plane information and Metadata to/from the Transciever
• Timing / Power constraints
• Pure C++ native interface
• Cell BE support – Ongoing dev with Sony PlayStation 3 and IBM Cell SDK
• Spread Spectrum implementations – Direct Sequence– Fast Frequency Hopping
![Page 16: GNU Radio @ FOSS.IN 2007](https://reader033.fdocuments.us/reader033/viewer/2022061615/55273d0c49795971178b45cb/html5/thumbnails/16.jpg)
Alternatives…• Hardware
– High Performance SDR (HPSDR)• Atlas, Ozy, Janus, Mercury….
– FlexRadio SDRs• SDR-1000 / FLEX-5000
– Simple Software Radio Peripheral– VU-SDR – SoftRock / YU1LM / Elektor designs
QuickSilver (Mercury proto)
OzymandiasAtlas
Janus
SoftRock RXTX
FLEX-5000
SDR-1000
VU-SDR
![Page 17: GNU Radio @ FOSS.IN 2007](https://reader033.fdocuments.us/reader033/viewer/2022061615/55273d0c49795971178b45cb/html5/thumbnails/17.jpg)
Alternatives…• Software
– OSSIE from VirginiaTech• Software Communications Architecture (SCA) reference
implementation• Supports USRP
– Linrad– DttSP
• C++ DSP Core – PowerSDR / SDRadio / Rocky / …
• Narrow band processing using soundcard• Windows platform• Great UI and Features
![Page 18: GNU Radio @ FOSS.IN 2007](https://reader033.fdocuments.us/reader033/viewer/2022061615/55273d0c49795971178b45cb/html5/thumbnails/18.jpg)
^ How to Contribute… ^• Documentation
– Spread across code comments(doxygen), mailing lists and occasional student thesis
– Need for a rigid and open documentation framework– Easing the high initial learning curve
• RF/VLSI Hardware Design– Making affordable solutions for the enthusiasts– Improving the learning curve…Getting industry-ready…
• Implementing new modules– Rapid technological growth fueled by extensive research– New and better communication protocols, modulation/coding schemes
![Page 19: GNU Radio @ FOSS.IN 2007](https://reader033.fdocuments.us/reader033/viewer/2022061615/55273d0c49795971178b45cb/html5/thumbnails/19.jpg)
Benefits• Students
– Breaking the technology barrier– Essentially prevent much prevalent “never-see-daylight" scenario of theses !
• Industry members– Rapid prototyping of new technologies– Get to contribute to a much happening project (!!) and get a chance to speak at
future FOSS.INs (!!!!) ;)
• The Kid Next Block– Tools for total anarchy - not sci-fi anymore!!
• Own the satellites, space station, space telescopes, deep space probes,...• Lesser evil stuff ;)
– Kill “Security through Obscurity “• FCC Case against open SDRs
![Page 20: GNU Radio @ FOSS.IN 2007](https://reader033.fdocuments.us/reader033/viewer/2022061615/55273d0c49795971178b45cb/html5/thumbnails/20.jpg)
Resources
• GNU Radio Wiki– http://www.gnuradio.org/trac
• Captured IQ samples – http://www.kd7lmo.net/ground_gnuradio_ota.html
• Ettus Research– http://www.ettus.com
• HPSDR– http://www.hpsdr.org
• VU-SDR mailing list– http://groups.yahoo.com/group/vusdr/
• Compendium of SDR projects– http://f4dan.free.fr/sdr_eng.html
![Page 21: GNU Radio @ FOSS.IN 2007](https://reader033.fdocuments.us/reader033/viewer/2022061615/55273d0c49795971178b45cb/html5/thumbnails/21.jpg)
Thank you !