Академический Документы
Профессиональный Документы
Культура Документы
Technology Migration
Technology Migration is the process of the moving from one
hardware or operating Environment to another for the basis of
optimization.
The following slides will talk about using RISC V has a means
for FPGA and ASIC optimization.
Market conditions dictate freely migrating between these
technologies is highly desirable
E.g. price pressure, power reduction, ASIC EOL, security
RISC V Specifications
ROA adopted RISC V integer set as their base with operation
ability on both 32 and 64bit machines.
They called it RV11.
1. RV11 = in-order execution with single instruction issue.
.Folded optimizing, 5 stage Pipeline
ID stage decides if instruction sequence can be optimized.
Improves IPC by hiding stalls
.Migration ability
Parameters allows trade offs between features, ISA extensions,
and performance vs. area
Flexible bus interface allows virtual drop-in into any existing
system
Architecture
Case Study
Replaced an existing NIOS II CPU working on an Altera
Cyclone V with ASIC migration
Specifications:
100 DMIPS
No MMU , No Caches
AHB3 bus incorporated .
Implementation Results
Logic Cells
Flip-flops
bRAM
Fmax
Power
Cyclone-V
1923 ALMs
1561
114MHz
556mW
Nextreme-3
7924 eCells
2386
649MHz
170mW
14721 eCells
4249
578MHz
221mW
64bit
Introduction
lowRISC is creating a fully open-sourced, Linux-capable,
RISC-V-based SoC, that can be used either directly or as the basis
for a custom design.
It is based for the operators or customers to base their derivative
designs on this open project chip.
They call it as LINUX of Hardware world.
Focus areas includes Flexibility and Security on the open source
SoC .
Projects in 2015
1. Tagged Memory
2. Untethered SoC
Tagged Memory
Tagged memory associates metadata with each
memory location and can be used to implement finegrained memory access restrictions. Attacks which
hijack control flow can be prevented by using this
protection to restrict writes .
Tagged Memory
Motivation: security and other applications
-An end to control-flow hijacking attacks .
-Flexible security policies. Also uses for debug, performance
monitoring.
The implementation of tagged memory presented here
provides only basic support by extending on-chip caches to
hold tags and by adding a tag cache.
Instruction set support is provided for testing in the form of
load and store tag (ltag, stag) instructions.
Tagged Memory
The bare minimum changes required for a tagged memory
system to work are:
Instructions to get and set memory tags.
A modified compiler which will tag every code pointer and
verify the tag is still present when loading it. The function
prologue and epilogue will set and clear the tag on the return
address.
Modifications to the memory allocator to clear the tags upon
freeing an allocation.
Untethered SoC
Working to provide a standalone or untethered SoC for Rocket Chip. Cores
in the original Rocket chip rely on communicating with a companion processor
via the host-target interface (HTIF) to access peripherals and I/O.
This release removes this requirement, adding an I/O bus and instantiating
FPGA peripherals which can boot RISC V Linux.
lowRISC in 2016
Kernel changes in Untethered SoC foe a better performance. The
new additions may include porting new libraries in the system.
Replace FPGA vendor-provided IP with vendor-neutral ones
also helping in FPGA migration in future cases.
Interrupt controller .
Why
firewalls?
Further Implementations
Re-integrate tagged memory.
Integrate minion cores . This may include adding new
scalable cores for more advanced functionalities.
Shim implementation .
Integration of third-party IP
Benchmarking and performance analysis
Introduction
Initial :
An ARM-M0 to be used as on-chip test platform for
high-speed interfaces. Test of high-speed flops and
circuitry within a processor.
Current:
A low-footprint RISC-V microcontroller alike EFM32
(Silicon Labs) and SAMD11 (Atmel) with USB lowspeed PHY on-chip.
Reference Inputs