Development Tools to Ease Domain-Specific Acceleration ......design to deliver leading PPA quality...
Transcript of Development Tools to Ease Domain-Specific Acceleration ......design to deliver leading PPA quality...
![Page 1: Development Tools to Ease Domain-Specific Acceleration ......design to deliver leading PPA quality Handy peripheral IPs to speed up SoC construction Professional IDE with high code](https://reader033.fdocuments.in/reader033/viewer/2022051810/6016ab9840339e083126fc51/html5/thumbnails/1.jpg)
Driving Innovations™ 1
Introducing AndesCore™ and Development Tools to Ease Domain-Specific Acceleration Tommy Lin
Business Development Division Andes Technology Corp.
![Page 2: Development Tools to Ease Domain-Specific Acceleration ......design to deliver leading PPA quality Handy peripheral IPs to speed up SoC construction Professional IDE with high code](https://reader033.fdocuments.in/reader033/viewer/2022051810/6016ab9840339e083126fc51/html5/thumbnails/2.jpg)
Driving Innovations™
Andes RISC-V Product Overview
AndeSoft™ Stacks
AndeStar™ Architecture V5/V5e
AndeSight™ Tools
AndeShape™ Platforms
AndesCore™ Processors
Bus Interface Unit
AndesCore uCore
Instr LM
Intf
Data LM
Intf
Standby
& VIC COP Intf
ITLB MMU/MPU DTLB
Data
Cache
Instr
Cache
DMA Engine
EDM
Highly optimized design to deliver
leading PPA
Handy peripheral IPs to speed up
SoC construction
Professional IDE with high code quality
Extensive SW stacks from bare metal, RTOS to Linux
Best extensions to RISC-V
2
![Page 3: Development Tools to Ease Domain-Specific Acceleration ......design to deliver leading PPA quality Handy peripheral IPs to speed up SoC construction Professional IDE with high code](https://reader033.fdocuments.in/reader033/viewer/2022051810/6016ab9840339e083126fc51/html5/thumbnails/3.jpg)
Driving Innovations™ 3
AndesCore™ RISC-V Family
Linux and FPU/DSP
Fast/Compact, FPU/DSP
Leading Performance
D25F: +DSP
A25
V5, 32b, 5-stage, >1.2GHz, MMU/PMP, DSP, FPU, ACE
...
AX25
V5, 64b, 5-stage, >1.2GHz, MMU/PMP, DSP, FPU, ACE
...
N22
V5/V5e, 32b, 2-stage 800MHz, 16/32 GPR
Slim and Efficient
A25MPa
V5, 32b, 1~4 Cores L2 Cache Coherence
DSP, MMU, FPU, ACE ...
AX25MPa
V5, 64b, 1~4 Cores L2 Cache Coherence
DSP, MMU, FPU, ACE ...
N25F
V5, 32b, 5-stage, >1.2GHz PMP, FPU, ACE...
NX25F
V5, 64b, 5-stage, >1.2GHz PMP, FPU, ACE...
a. A25*MP: available Q1/2019 b. 28HPC+ RVT, SS, 0.81V, 0°C, with I/O constraints.
![Page 4: Development Tools to Ease Domain-Specific Acceleration ......design to deliver leading PPA quality Handy peripheral IPs to speed up SoC construction Professional IDE with high code](https://reader033.fdocuments.in/reader033/viewer/2022051810/6016ab9840339e083126fc51/html5/thumbnails/4.jpg)
Driving Innovations™
V5 ISA Extensions
4
► Andes innovations incorporating RISC-V technology ► Baseline extensions
• Instructions to speed up memory accesses – GP-implied load/store instructions with larger immediate – Calculate effective address according to data types
• Instructions to speed up branches – Compare (a small) constant and branch – Test a bit and branch
• Zero and sign extension • CoDense™: Code size compression on top of RISC-V C-extension
► Superset of fundamental RISC-V ISA
• Keep compatibility
► Andes Custom Extension™ (ACE) frameworks for DSA (Domain-Specific Architecture) • Powerful tool to automate housekeeping tasks
• No need to have CPU background
![Page 5: Development Tools to Ease Domain-Specific Acceleration ......design to deliver leading PPA quality Handy peripheral IPs to speed up SoC construction Professional IDE with high code](https://reader033.fdocuments.in/reader033/viewer/2022051810/6016ab9840339e083126fc51/html5/thumbnails/5.jpg)
Driving Innovations™
Development Environment
► AndeSight™ Feature-rich IDE
► AndeShape™ Development Boards
•Full-featured ADP-XC7K
•Corvette-F1 (Arduino-compatible)
► Debugging Hardware
•AICE-MINI+, AICE-MICRO
► AndeSoft™ Software Stack
•Bare metal demo projects
•FreeRTOS version 10
► Partner Supports
ADP-XC7
5
Corvette-F1
And more…
![Page 6: Development Tools to Ease Domain-Specific Acceleration ......design to deliver leading PPA quality Handy peripheral IPs to speed up SoC construction Professional IDE with high code](https://reader033.fdocuments.in/reader033/viewer/2022051810/6016ab9840339e083126fc51/html5/thumbnails/6.jpg)
Driving Innovations™
AndesCore™ Advantages
6
CPU XYZ N22 *
ISA RV-IMAC RV-IMAC+V5
CoreMark/MHz 3.1 3.95 (+27%)
DMIPS/MHz (no-inline) 1.38 1.80 (+30%)
CSiBE Code Size (KB) 1,340 1,185 (-12%) * N22 has the similar configurations to XYZ
0
0.5
1
1.5
2
DMIPS/MHz (no-inline)
XYZ N22 0
1
2
3
4
CoreMark/MHz
XYZ N22
1,100
1,200
1,300
1,400
CSiBE Code Size (KB)
XYZ N22
+27%
+30%
-12% ► 2-wire debug support to save chip cost
► Development tools with handy project management and debugging features
► Better Verilog RTL code • Human readable, CAD-tool friendly, and
configurable through GUI-tool by customers ► Rich extended features for embedded applications
• Misaligned accesses, StackSafe™, CoDense™ ► Higher performance and smaller code size
![Page 7: Development Tools to Ease Domain-Specific Acceleration ......design to deliver leading PPA quality Handy peripheral IPs to speed up SoC construction Professional IDE with high code](https://reader033.fdocuments.in/reader033/viewer/2022051810/6016ab9840339e083126fc51/html5/thumbnails/7.jpg)
Driving Innovations™
Efficiency vs. Flexibility
► Useful hardwired functions can become instructions • Multiply, multiply-add, divide: hardwired functions for 8051 • MotionComp, IDCT, VLD: parallel instructions in video processors Enable programmable acceleration
► Key to programmable acceleration • Find your hot spots or critical functions • Partition the tasks to get the desired flexibility and efficiency
7
Absolute Efficiency (hardwired accelerator: frame decoder)
Complete Flexibility (standard instructions: 3GHz CPU)
High Efficiency & Flexibility (custom instructions: MotionComp, IDCT, VLD)
![Page 8: Development Tools to Ease Domain-Specific Acceleration ......design to deliver leading PPA quality Handy peripheral IPs to speed up SoC construction Professional IDE with high code](https://reader033.fdocuments.in/reader033/viewer/2022051810/6016ab9840339e083126fc51/html5/thumbnails/8.jpg)
Driving Innovations™
Design Flow for ACE Acceleration
8
Profile application SW
to identify time-
critical code
Define ACE
instructions with cycle
estimation
Cycles met?
Start
No
Implement ACE
RTL
Evaluate PPA
Requirements
met?
Yes
Yes
Yes
No
No
Room to
improve?
Done
![Page 9: Development Tools to Ease Domain-Specific Acceleration ......design to deliver leading PPA quality Handy peripheral IPs to speed up SoC construction Professional IDE with high code](https://reader033.fdocuments.in/reader033/viewer/2022051810/6016ab9840339e083126fc51/html5/thumbnails/9.jpg)
Driving Innovations™
Andes Custom Extension™ Framework
9
CPU ISS (near-cycle accurate)
CPU RTL
Extensible Baseline Components
Compiler Asm/Disasm
Debugger
Source file Executable or library
Extended Tools
concise RTL
semantics, operands,
test-case spec
Script user.ace
Verilog user.v
Extended ISS
Extended RTL
Cross-checking Env.
Test Case Generator
Extended RTL
Extended ISS
C O P I L O T Custom-OPtimized Instruction deveLOpment Tools
![Page 10: Development Tools to Ease Domain-Specific Acceleration ......design to deliver leading PPA quality Handy peripheral IPs to speed up SoC construction Professional IDE with high code](https://reader033.fdocuments.in/reader033/viewer/2022051810/6016ab9840339e083126fc51/html5/thumbnails/10.jpg)
Driving Innovations™
Highlights of ACE Features
10
Items Description
Instructions
scalar single-cycle or multi-cycle
vector for loop or do-while loop
background option
retire immediately and continue execution in the background (applicable to scalar and vector)
Operands
standard immediate, GPR, baseline memory (thru CPU)
custom - ACR (ACE Register), ACM (ACE Memory) - With arbitrary width and number - ACR operands can be “implied” to save opcode
Auto
Generation by COPILOT
- Opcode assignment: automatic by default - All required tools and simulator (C or SystemC) - RTL code for instruction decoding, operand mapping, dependence checking,
input accesses, and output updates - Waveform control file
Fast turnaround time!
![Page 11: Development Tools to Ease Domain-Specific Acceleration ......design to deliver leading PPA quality Handy peripheral IPs to speed up SoC construction Professional IDE with high code](https://reader033.fdocuments.in/reader033/viewer/2022051810/6016ab9840339e083126fc51/html5/thumbnails/11.jpg)
Driving Innovations™
Madd32: A Simple Custom Instruction
11
► File madd32.ace: ACE definition file • insn: define instruction name, “madd32” • op(erand): operand names and attributes (in/out/io gpr, imm, etc.) • csim: instruction semantics in C for instruction set simulator • latency: estimated cycles spent on instruction execution; default is 1
► File madd32.v: concise Verilog RTL • //ACE_BEGIN . . . //ACE_END: instruction-specific Verilog logic
Benefits of ACE
Allow users to focus on instruction functionality
Offload housekeeping work
opcode selection
instruction decoding
operand mapping
input operand accesses
output operand updates
dependence checking
Adding instructions is just like ASIC design
Auto-generate
both RTL and
simulator code
![Page 12: Development Tools to Ease Domain-Specific Acceleration ......design to deliver leading PPA quality Handy peripheral IPs to speed up SoC construction Professional IDE with high code](https://reader033.fdocuments.in/reader033/viewer/2022051810/6016ab9840339e083126fc51/html5/thumbnails/12.jpg)
Driving Innovations™
#include “ace_user.h” //prototypes for auto-generated intrinsic
. . .
rslt= ace_madd32(rslt,X[i],C[i]); //invoke intrinsic
. . .
With ACE
uint fir32(uint *C, uint *X, uint n) {
uint rslt= 0;
for(int i=0; i<n; ++i)
rslt+= (C[i] & 0xffff)*(X[i] & 0xffff); //lower 16 bits
+ (C[i] >> 16) *(X[i] >> 16); //upper 16 bits
return rslt;
}
Pure C Code
Madd32: Easy Migration on Software
12
Pure C: 8 cycles With ACE: 1 cycle Speedup: 8x op = {io acc, in dat, in coef};
in out
![Page 13: Development Tools to Ease Domain-Specific Acceleration ......design to deliver leading PPA quality Handy peripheral IPs to speed up SoC construction Professional IDE with high code](https://reader033.fdocuments.in/reader033/viewer/2022051810/6016ab9840339e083126fc51/html5/thumbnails/13.jpg)
Driving Innovations™
Summary ► AndesCore™: Plus Andes Extensions
• Show the real flexibility and also keep compatibility • Provide better power, performance, area and code
density
► Benefits of ACE • Facilitates easy tradeoffs between efficiency and flexibility • Focus on instruction functionality, not CPU pipeline • Simplify and ease instruction design for ASIC engineers • COPILOT tools
– Handles housekeeping, interface and verification tasks – Auto-generates all needed tools, simulator and RTL
13
![Page 14: Development Tools to Ease Domain-Specific Acceleration ......design to deliver leading PPA quality Handy peripheral IPs to speed up SoC construction Professional IDE with high code](https://reader033.fdocuments.in/reader033/viewer/2022051810/6016ab9840339e083126fc51/html5/thumbnails/14.jpg)
Driving Innovations™ 14
RISC-V Activities at Embedded World
Exhibiting Thanks for joining the RISC-V Foundation at Hall 3A, Booth # 3A-536 with member companies
Andes Technology, CloudBEAR, GreenWaves Technologies, Imperas Software, SiFive, Syntacore and UltraSoC.
Presentations The booth will feature sessions with RISC-V Foundation members throughout the show. The conference program also
features a variety of RISC-V talks. Learn more: http://bit.ly/RISCVew19.
Happy Hour Receptions Join us for networking and drinks on Tuesday and Wednesday from 17:00 to 18:00 CET.
Scavenger Hunt
Visit the booths of RISC-V Foundation members and you could win a prize. Check in at the front desk to get a scavenger hunt “passport” and learn more.
Please reach out to [email protected] with any questions.
![Page 15: Development Tools to Ease Domain-Specific Acceleration ......design to deliver leading PPA quality Handy peripheral IPs to speed up SoC construction Professional IDE with high code](https://reader033.fdocuments.in/reader033/viewer/2022051810/6016ab9840339e083126fc51/html5/thumbnails/15.jpg)
Thank You!
15
15