rfnoc: rf network on chip - meetupfiles.meetup.com/18094742/rfnoc_cyberspectrum.pdfbefore rfnoc...

Post on 21-Jul-2020

8 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

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

top related