Professional Documents
Culture Documents
2008. 9
(joonhwan.yi@kw.ac.kr) joonhwan.yi@kw.ac.kr)
v Background v Electronic system level (ESL) design v ESL design tasks v v
Background
On-chip communication
- Bus fabric - Arbiter, bus matrix - Bus bridges
Software
Memory controller
Software
CPU CPU
SoC
Interfaces
- USIM, SDIO, USB, PCMCIA, UART, etc. - CDMA/Wibro modem
USIM SDIO USB
Software
- OS, device driver - Middleware - Application software
PCMCIA
Modem
v Mobile convergence
Voice + broadcasting + entertainment + camera + security + etc.
Design Abstractions
Level of abstractions Electronic system level RTL Gate level Transistor level
ESL
Block level Bus-functional level Both (with or without cycle accuracy) are possible Signal Transaction Function calls C/C++/SystemC
Algorithm level
Behavior level
No timing
Signal (bit-level)
Function calls
C/C++/SystemC
abstraction layer
1: bus-functional transaction level model w/ cycle-accuracy () 2: bus-functional transaction level model w/o cycle-accuracy (SW )
Copyrighted by Joonhwan Yi (joonhwan.yi@kw.ac.kr) 9
Processors / Accelerators
CPUs DSPs Interrupt controller, DMA controller, etc. HW accelerators
Memory
On-chip communication
- Bus fabric - Arbiter, bus matrix - Bus bridges
Software
Memory controller
Software
CPU CPU
SoC
Interfaces & host models
- USIM, SDIO, USB, PCMCIA, UART, etc. - Corresponding host models - CDMA/Wibro modem & basestation models
USIM SDIO USB
Software
- OS, device driver - Middleware - Application software
PCMCIA
Modem
Host
Host
Host
Host
Basestation
10
ESL Design
v Efficient hardware-software co-design in early design stage
/ hardware-software co-simulation
RTL
Late ( ~ )
FGPA
Very late ( ~ )
11
ESL Design
Requirements HW IPs SW IPs
IP
(algorithm / SW)
IPs
+
ESL 1
HW-SW partitioning
Architecture exploration
ESL 2
Architecture
Initial architecture
Architecture design
Architecture design
ESL 3
Implementation
HW-SW coverification
Implementation
Verification
Verification
Problem?
No
Success
14
Architecture Exploration
Performance
Intersection of the curve within a circle represents the set of optimum architecture solutions searchable at the abstraction level
Cost
15
Old flow
Architecture
Hardware
Software
16
HardwareHardware-Software Partitioning
v Definition
A process that makes decisions whether a required functionality of a system is more advantageously implemented in hardware or in software Fundamental phase of hardware-software co-design
ESL design
No
Yes
ESL design
Is it optimum? Yes
No
Software
Performance Analysis
ESL design tool data
Function call trace Cache hit rate Function execution time Variable value
Information (Data )
Function call overhead Cache size optimization Software execution time Software bug
SW
HW
System
HW & SW data
19
RTL Generation
v Behavioral synthesis
Automatic ESL to RTL mapping
Architecture design
ESL design
Architecture exploration
ESL design
Behavioral synthesis (RTL generation)
Initial software
Hardware design
Software design
Short time for RTL generation Short time for HW-SW co-verification
20
Power Analysis
v Why ESL power analysis?
Realistic scenario for power analysis Short analysis time for power analysis Base for system (HW & SW) power optimization
v : Samsung-Sequence ESL power analysis flow Samsung Scenario @ESL & analysis @RTL
Realistic scenario
Unrealistic scenario
Gate-level Transistor-level
Analysis
v ESL design very fast hardware simulation model design
FPGA chip RTL 3000 RTL available
v Hardware-software co-design Hardwareco ESL design hardware software (early system verification) (optimum system design)