RV-IOV: Tethering RISC-V Processors via Scalable I/O Virtualization - - PowerPoint PPT Presentation

rv iov tethering risc v processors via scalable i o
SMART_READER_LITE
LIVE PREVIEW

RV-IOV: Tethering RISC-V Processors via Scalable I/O Virtualization - - PowerPoint PPT Presentation

RV-IOV: Tethering RISC-V Processors via Scalable I/O Virtualization Luis Vega and Michael B. Taylor Bespoke Silicon Group University of Washington 1 Berkeleys Tethered Rocket core The host system provide support for: Rocket Core


slide-1
SLIDE 1

RV-IOV: Tethering RISC-V Processors via Scalable I/O Virtualization

Luis Vega and Michael B. Taylor Bespoke Silicon Group University of Washington

1

slide-2
SLIDE 2

Berkeley’s Tethered Rocket core

The host system provide support for:

  • Memory subsystem
  • Load binaries
  • Start/terminate programs
  • System call offloading (w/ PK)
  • Emulate peripheral devices (w/ OS)

Rocket Core Host System

2

slide-3
SLIDE 3

Berkeley’s Rocket Emulation Platforms

Zybo Zedboard ZC706

https://github.com/ucb-bar/fpga-zynq

3

slide-4
SLIDE 4

Challenge #1: ASIC prototyping

4

I/O Host Mem Total # 36 298 334 I/O I/O I/O I/O QFN QFP WL-CSP BGA FC ~68 ~300 ~1k ~2k Total package I/O Package cost ($) Total Package I/O ~~ 3 x Data-I/O (power supply reasons)

slide-5
SLIDE 5

Challenge #2: FPGA (LUT) resources

5

slide-6
SLIDE 6

Solution: RV-IOV

  • RV-IOV decouples the Rocket core from the host processor
  • RV-IOV allows multiple Rocket cores to be implemented on

external ASIC prototypes or FPGA emulation boards

  • RV-IOV extends Rocket supported FPGA boards

6

slide-7
SLIDE 7

RV-IOV system level

Switch RV-IOV

Host (FPGA)

Arbiter Shared interconnect RV-IOV

Client (FPGA or ASIC)

Switch RV-IOV Rocket system (1) RV-IOV Rocket system (n)

Virtual I/O Physical I/O Scalable

Host Processor

7

slide-8
SLIDE 8

Rocket core

RV-IOV - internal operations

  • 1. Memory serialization
  • 2. Stream interleaving

8

Host

RV-IOV

Mem

single stream

slide-9
SLIDE 9

RV-IOV - memory serialization

  • AXI4 memory protocol is

serialized

  • Merge write/read memory

channels into a single bidirectional channel

9

write Memory serializer read Rocket core

{aw, w, b} {ar, r} Mem host

memory host

slide-10
SLIDE 10

RV-IOV - stream interleaving

10

  • Interleave memory and host packets
  • Round robin fashion
  • Flow control: credit protocol
  • Maximize throughput
  • Avoid deadlocks

Stream Interleaving memory host single stream

slide-11
SLIDE 11

RV-IOV FPGA evaluation

Zedboard

11

DoubleTrouble

DoubleTrouble is an Open Source Emulation Platform

https://bjump.org

slide-12
SLIDE 12

RV-IOV FPGA evaluation

12

One hop system Two hop system

slide-13
SLIDE 13

Rocket core configuration

  • 5 stage, in-order, scalar processor
  • Double precision, floating point
  • I-cache: 16 KB 4-way assoc.
  • D-cache: 16 KB 4-way assoc.
  • RV64G ISA

13

slide-14
SLIDE 14

Results

14

slide-15
SLIDE 15

Conclusion

15

  • RV-IOV increases implementation flexibility for both ASIC and

FPGA Rocket designs

  • RV-IOV allows larger Rocket core configurations, i.e. multi-

core and powerful accelerators

  • RV-IOV will be available @ https://bjump.org/rv_iov
slide-16
SLIDE 16

Questions?

16