View
8
Download
0
Category
Preview:
Citation preview
RFNoC: RF Network on ChipJonathon Pendlum
12/17/2014
Introduction
R&D Engineer at Ettus
Graduated Northeastern University with MS in CompE
Active in SDR since 2007
SDR Research Group at Purdue University
GNU Radio Google Summer of Code 2013
http://gnuradio.org/redmine/projects/gnuradio/wiki/Zynq
Before RFNoC – Short FPGA Primer
Field Programmable Gate Array
Xilinx, Altera, & Microsemi
Sea of logic blocks with programmable interconnect
Lookup Tables, Registers, Block RAMs, Multipliers
Why are FPGAs useful?
Extreme Parallelism
1000s of Multipliers
Highly Deterministic
Flexible I/O
System glue / Interface many devices
Reprogrammable
Programming Language Support
Low level: Verilog, SystemVerilog, VHDL
High level: SystemC, MyHDL, Chisel, Vivado HLS
FPGAs & SDR
Extreme Parallelism Example: Fast Fourier Transform
FPGAs & SDR
Serial Processing
FPGAs & SDR
Parallel Processing
Big FPGAs in Ettus Third Gen Devices
X300 / X310
Xilinx Kintex 7
406K Logic Cells; 3840 kB Memory; 1540 Multipliers
Free Space ~85%
200 MHz of instantaneous bandwidth
The Goal
Heterogeneous processing
Composable & modular both on GPP and FPGA
Move blocks to the platform that makes most sense
Reuse and rearrange blocks
RF Network-on-Chip
What does RFNoC do?
Makes FPGA acceleration more accessible Dedicated FPGA space for computation engines
FIR filter, FFT, Polyphase filter, Correlator
OFDM Sync, Costas Loop, Bit Sync, Crypto
Low latency protocol processing
Handles Data Transport
Packetization and routing
Flow control
No host is necessary
Simple data and control interfaces
AXI Stream connections (industry standard)
Large library of existing IP
Each computation engine in its own clock domain
Software API to configure crossbar and transfer data
computation engines
Supported in GNU Radio
Traditional Flowgraph
Traditional Flowgraph
RFNoC Flowgraph
RFNoC Flowgraph
RFNoC Flowgraph
RFNoC Flowgraph
DEMO
Beta Release Available Now!
See RFNoC Getting Started Wiki to install:
github.com/EttusResearch/uhd/wiki/RFNoC:-Getting-Started
EttusResearch UHD / GNU Radio repos – rfnoc-devel branch
X300/X310 supported, E310 coming soon
Rapid development – check USRP mailing list
Questions: rfnoc@ettus.com
Jonathon Pendlum – jonathon.pendlum@ettus.com
Matt Ettus – matt@ettus.com
Martin Braun – martin.braun@ettus.com
Recommended