Open-Source SDR on Embedded Platforms
Total Page:16
File Type:pdf, Size:1020Kb
See discussions, stats, and author profiles for this publication at: https://www.researchgate.net/publication/304346578 Open-Source SDR on Embedded Platforms Presentation · June 2016 DOI: 10.13140/RG.2.1.1108.4409 CITATIONS READS 0 1,478 1 author: Raj Bhattacharjea Georgia Tech Research Institute 7 PUBLICATIONS 63 CITATIONS SEE PROFILE Some of the authors of this publication are also working on these related projects: Open-Source SDR on Embedded Platforms View project Accelerated Signal-Processing on Embedded Platforms: Paths Forward View project All content following this page was uploaded by Raj Bhattacharjea on 23 June 2016. The user has requested enhancement of the downloaded file. Open-Source SDR on Embedded Platforms June 1, 2016 Dr. Rajib Bhattacharjea Georgia Tech Research Institute Information and Communications Lab Atlanta, GA 30318, USA 1 GTRI Part 1 Overview • Prereqs • Topics to be covered • SDR background • SDR uses and users • SDR components • Demo 1 2 GTRI Prerequisites • Radio/Comms Fundamentals - Analog and Digital Modulation - Mixers, filters, LNA, PA • Circuit analysis concepts - Transistors - Filters • Software concepts - High level language source code - Assembly language • Digital and analog signal processing concepts - Convolution - FFT - Dot products 3 GTRI What We’re Going to Learn About (and play with) 4 GTRI Single Board Computers! http://hackerboards.com/ringing-in-2016-with-64-open-spec-hacker-friendly-sbcs/ 5 GTRI Embedded Computers from the Living Room! 6 GTRI Signal Processing with Open Source Tools! http://wiki.opendigitalradio.org/FM_RDS_Stereo_transmitter_using_gnuradio 7 GTRI Software Defined Radio Hardware! 8 GTRI What We’re Going to Learn About • Overview of available open-source software and embedded hardware tools for SDR development • Signal processing • RF signals • How to get started with SDR on popular embedded platforms - ARM or x86 embedded CPU - Linux • Commercial SDR hardware • Optimized signal processing capabilities available on embedded platforms 9 GTRI What We’re Not Going to Learn About • OpenEmbedded, yocto, poky, bitbake…although those would help you with devices that don’t have packages in the distros, or for developing reproducible builds for distribution. • Embedded CPU Hardware without available Linux kernel • IBM Power ISA, µC(Linux), MIPS, SPARC, etc. - Although the open source SDR ecosystem could be made to run on these kinds of platforms with various degrees of effort - MIPS is especially low hanging fruit and much of this talk applies to those devices too - Dedicated DSP chips • “IoT” but only because we’re not talking directly about what data goes over the radio links we’re talking about. If it was some kind of sensor data, this would be an IoT talk. • OSSIE (is it dead?) 10 GTRI Background (who, what, when, where, why, how?) 11 GTRI What is a Software-Defined Radio? • A communication system where the capabilities are largely determined by the software running on the system instead of by the radio hardware. • Consists of radio hardware and something to do the signal processing. • The term “SDR” can mean the whole system, or just the radio hardware. • Let’s consider a series of examples 12 GTRI Conventional Radio Example: Super Regenerative FM Receiver Design from: http://electronics-diy.com/simple-fm-radio.php 13 GTRI Conventional Radio Example: Super Regenerative FM Receiver • It’s purpose built for a specific task • Designed to tune over 88 MHz – 108 MHz • It isn’t easily reconfigurable and can perform no other task - The hardware defines the functionality - Many functional stages are collapsed into one; the one JFET is the: • Oscillator • Mixer • Amplifier • Filter • Uses VERY few components, only enough to achieve the function it is designed for 14 GTRI Conventional Radio Example: Superheterodyne FM Receiver 15 GTRI Conventional Radio Example: Superheterodyne FM Receiver Superheterodyne receiver schematic by Appaloosa released under CC-BY-SA 3.0 license. https://commons.wikimedia.org/wiki/File:Tuner1.svg 16 GTRI Conventional Radio Example: Superheterodyne FM Receiver 17 GTRI Conventional Radio Example: Superheterodyne FM Receiver Design from: http://www.daenotes.com/electronics/communication-system/superheterodyne-fm-receiver 18 GTRI Conventional Radio Example: Superheterodyne FM Receiver Design from: http://www.radio-electronics.com/info/rf-technology-design/fm-reception/foster-seeley-fm-detector-discriminator.php 19 GTRI Conventional Radio Example: Superheterodyne FM Receiver • It’s purpose-built for a specific task • Designed to tune over 88 MHz – 108 MHz • Design is more modular than the super regenerative design - Amplification, frequency synthesis, frequency mixing, and a multistage demodulator • Hardware defines the functionality - Could change out the limiter and discriminator for a simple envelope detector and get an AM radio receiver - Or a PLL and detect FSK • Design is more complicated and uses about 7 times the number of overall components and 5 times the number of transistors 20 GTRI Software Defined Radio: Superheterodyne w/ an ADC 21 GTRI Software Defined Radio: Superheterodyne w/ an ADC • Not purpose-built for a specific task! • Tuning range can be large • Signal processing is not done by a circuit designed for demodulation or discrimination of a specific type of waveform • Software signal processing defines the functionality - Hardware determines characteristics (tuning range, max instantaneous bandwidth, noise performance) 22 GTRI Who Uses SDR and Why? • Engineers in R&D • Enables cutting edge research • Academics • Speeds prototyping of new • US Military radio designs and signal processing algorithms - JTRS - SCA • Allows one radio to support different waveforms • US Intelligence Community • Permits radio designs to be • Amateur radio enthusiasts upgraded without buying new (hams) hardware • Others • Facilitates detailed offline signal analysis 23 GTRI Who uses SDR and Why? Video • https://youtu.be/Lv-vkBNzZwE 24 GTRI SDR Users / Developers in the DoD and IC • The Army, Navy, Air Force, and Marine Corps • “No Such Agency” in Fort Meade, MD - https://www.google.com/#q=nsa+redhawk • Defense Contractors - Harris http://rf.harris.com/media/RF-7800V-HH_Enlarged_26-12108.jpg 25 GTRI Components of an SDR • Analog front end - Quadrature demodulator - Wide or narrow tuning range - Wide or narrow bandwidths - RX Only, TX/RX half duplex, TX/RX full duplex, TX/RX MIMO configurations typical • ADC - Direct sampling ADC is a possibility, limits “tuning” range to (0,fs/2) • Baseband processor w/ high speed interface - FPGA - CPU - µC • Signal processing software 26 GTRI Components of an SDR: Front-end 27 GTRI Components of an SDR: Baseband Processor • Embedded device with a CPU or µC • FPGA 28 GTRI Demo 1 - CPU Frequency Demodulation 29 GTRI Questions? 30 GTRI Part 2 Overview • Embedded platforms • Consumer electronics embedded • Capabilities • Types • Will it SDR? Demos 2 – 4 • Embedded ARM landscape • SDR hardware options 31 GTRI Embedded Processors (low power brains) 32 GTRI Ubiquity of Embedded Platforms • Embedded processors or µCs are in - Car - Television - Speakers - Sound system - Wifi router - GPS receiver - Cable modem - Camera - Vacuum cleaner - Refrigerator - Watch 33 - Calculator, etc. GTRI Consumer Electronics Embedded Platforms • Largest consumer electronics companies all sell embedded devices - Connected TV devices - Tablets - more than 250 million projected to sell globally in 2016[1] - Smartphones – 1.4 billion units sold in 2015[2] • Android and iOS devices drive this market - Google - Apple - Samsung - Amazon [1] http://www.gartner.com/newsroom/id/2954317 [2] http://www.statista.com/topics/840/smartphones/ 34 GTRI Consumer Electronics Embedded Platforms • These embedded CPUS go by the name “applications processors” • Hardware manufacturers amortize investment into a technology; technology trickles laterally into the maker/hacker, educational, and industrial, and commercial communities - Broadcom markets the BCM2820 as “optimized for high volume markets including mobile phones, mobile TVs, and portable audio/video/game devices”[1] - Sells the almost identical BCM2835 as a learning platform to the Pi Foundation - R&D companies ship Raspberry Pi’s to their customers in other products • This is the class of embedded hardware we are talking about today [1] https://www.broadcom.com/press/release.php?id=929312 35 GTRI What Drives the Capabilities? • Often, the killer app: streaming, decoding, and playback of media - Special CPU instructions - Media processor / GPU hardware - Some of this capability might help in radio signal processing, more on this later • This talk focuses exclusively on ARM and Intel - Linux runs effortlessly, entire open-source ecosystem is available - Can be extended to anything that runs a full, modern Linux kernel (MIPS24K in particular) 36 GTRI Types of Consumer Electronics Embedded Platforms 37 GTRI Set Top Boxes • Class of devices used for consumption of media on TV screens • Options: - Roku devices - Apple TV - Amazon Fire TV - WDTV - NVIDIA Shield - Many, many lesser known brands (check online retailers for “Android TV” or “set top box”) 38 GTRI Set Top Boxes: Will it SDR? Yes it will! http://www.cnx-software.com/2015/12/06/how-to-run-headless-linux-on-amlogic-s905-devices-such-as-mini-mx-or-k1-plus/ 39 GTRI Stick Computers • New class of small form-factor computers for vending signs, kiosks, TV streaming, etc. • Options: - Intel Compute Stick - Amazon Fire Stick - Lenovo IdeaCentre - Asus Chromebit -