Design Methodology for Systems-on-Chip What is needed and what is not Daniel D. Gajski Center for...
-
Upload
lillian-sandoval -
Category
Documents
-
view
216 -
download
2
Transcript of Design Methodology for Systems-on-Chip What is needed and what is not Daniel D. Gajski Center for...
![Page 1: Design Methodology for Systems-on-Chip What is needed and what is not Daniel D. Gajski Center for Embedded Computer Systems University of California, Irvine.](https://reader035.fdocuments.us/reader035/viewer/2022062618/5514a96755034640138b4d1e/html5/thumbnails/1.jpg)
Design Methodology for
Systems-on-ChipWhat is needed and what is not
Daniel D. GajskiCenter for Embedded Computer Systems
University of California, Irvine
www.cecs.uci.edu/~gajski
![Page 2: Design Methodology for Systems-on-Chip What is needed and what is not Daniel D. Gajski Center for Embedded Computer Systems University of California, Irvine.](https://reader035.fdocuments.us/reader035/viewer/2022062618/5514a96755034640138b4d1e/html5/thumbnails/2.jpg)
Copyright 2002 Daniel D. Gajski 2IEEE OCCS, 8/26/02
Who we are?
• Center for Embedded Computer Systems (www.cecs.uci.edu)
• Independent Research Organization in UC
• 15 faculty and over 60 Ph.D. students
• Methodology group:• first system contract 1989 from SRC• over 50 person years in system methodology since 1990• over 10 Ph.D. in system design flow since 1990• published first books on:
– RTL Sythesis 1992
– Embedded Systems 1994
– System Design 2001
• developed SpecC language• leaders in SpecC Open Technology Consortium (www.specc.org)• “Inspired” SystemC
![Page 3: Design Methodology for Systems-on-Chip What is needed and what is not Daniel D. Gajski Center for Embedded Computer Systems University of California, Irvine.](https://reader035.fdocuments.us/reader035/viewer/2022062618/5514a96755034640138b4d1e/html5/thumbnails/3.jpg)
Copyright 2002 Daniel D. Gajski 3IEEE OCCS, 8/26/02
Outline
• System gap• Semantics, styles and refinements• RTL Semantics• System-Level Semantics• Where are we going?• Conclusion
![Page 4: Design Methodology for Systems-on-Chip What is needed and what is not Daniel D. Gajski Center for Embedded Computer Systems University of California, Irvine.](https://reader035.fdocuments.us/reader035/viewer/2022062618/5514a96755034640138b4d1e/html5/thumbnails/4.jpg)
Copyright 2002 Daniel D. Gajski 4IEEE OCCS, 8/26/02
Past Design Flow
Simulate
Capture & Simulate
Physical
Logic
Specs
Design
Manufacturing
Algorithms
System Gap
1960’s
![Page 5: Design Methodology for Systems-on-Chip What is needed and what is not Daniel D. Gajski Center for Embedded Computer Systems University of California, Irvine.](https://reader035.fdocuments.us/reader035/viewer/2022062618/5514a96755034640138b4d1e/html5/thumbnails/5.jpg)
Copyright 2002 Daniel D. Gajski 5IEEE OCCS, 8/26/02
Past and Present Design Flow
Describe
SimulateSimulate
System Gap
Capture & Simulate
Physical
Logic
Specs
Design
Manufacturing
Algorithms
1960’s
Describe & Synthesize
Manufacturing
Specs
Algorithms(software)
Physical
Logic
Design
1980’s
![Page 6: Design Methodology for Systems-on-Chip What is needed and what is not Daniel D. Gajski Center for Embedded Computer Systems University of California, Irvine.](https://reader035.fdocuments.us/reader035/viewer/2022062618/5514a96755034640138b4d1e/html5/thumbnails/6.jpg)
Copyright 2002 Daniel D. Gajski 6IEEE OCCS, 8/26/02
Past, Present and Future Design Flow
Communications
Functionality
Connectivity
Protocols
TimingDescribe
SimulateSimulate
Physical
Logic
Specs
Design
Manufacturing
Capture & Simulate
Algorithms
Describe & Synthesize
Manufacturing
Specs
Algorithms(software)
Physical
Logic
Design
Specify, Explore & Refine
Architecture
Manufacturing
Executable Spec
Algorithms
Physical
Logic
Design
System Gap
1960’s 2000’s1980’s
![Page 7: Design Methodology for Systems-on-Chip What is needed and what is not Daniel D. Gajski Center for Embedded Computer Systems University of California, Irvine.](https://reader035.fdocuments.us/reader035/viewer/2022062618/5514a96755034640138b4d1e/html5/thumbnails/7.jpg)
Copyright 2002 Daniel D. Gajski 7IEEE OCCS, 8/26/02
Missing Semantics:Simulation Dominated Design Flow
Finite State Machine
3.4152.715
case X is
when X1 =>
when X2 => Table Lookup
Controller Memory
• Simulatable but not synthesizable
![Page 8: Design Methodology for Systems-on-Chip What is needed and what is not Daniel D. Gajski Center for Embedded Computer Systems University of California, Irvine.](https://reader035.fdocuments.us/reader035/viewer/2022062618/5514a96755034640138b4d1e/html5/thumbnails/8.jpg)
Copyright 2002 Daniel D. Gajski 8IEEE OCCS, 8/26/02
Y Chart
Behavior Structure
Physical
Synthesis
PhysicalDesign
![Page 9: Design Methodology for Systems-on-Chip What is needed and what is not Daniel D. Gajski Center for Embedded Computer Systems University of California, Irvine.](https://reader035.fdocuments.us/reader035/viewer/2022062618/5514a96755034640138b4d1e/html5/thumbnails/9.jpg)
Copyright 2002 Daniel D. Gajski 9IEEE OCCS, 8/26/02
Y Chart
Behavior Structure
Physical
Logic
Transistor
RTL
System
![Page 10: Design Methodology for Systems-on-Chip What is needed and what is not Daniel D. Gajski Center for Embedded Computer Systems University of California, Irvine.](https://reader035.fdocuments.us/reader035/viewer/2022062618/5514a96755034640138b4d1e/html5/thumbnails/10.jpg)
Copyright 2002 Daniel D. Gajski 10IEEE OCCS, 8/26/02
Y Chart
Behavior Structure
Physical
Logic
Transistor
RTL
System
MoC
MoC
MoC
MoC
![Page 11: Design Methodology for Systems-on-Chip What is needed and what is not Daniel D. Gajski Center for Embedded Computer Systems University of California, Irvine.](https://reader035.fdocuments.us/reader035/viewer/2022062618/5514a96755034640138b4d1e/html5/thumbnails/11.jpg)
Copyright 2002 Daniel D. Gajski 11IEEE OCCS, 8/26/02
Abstraction Algebra
Algebra := < {objects}, {operations} >
SoC Algebra := < {models}, {transformations} >
Ordered set of transformations < tm, … , t2, t1 > is a refinement iff
model B = tm( … ( t2( t1( model A ) ) ) … )
Question: { models } ? ; { transformations } ?
![Page 12: Design Methodology for Systems-on-Chip What is needed and what is not Daniel D. Gajski Center for Embedded Computer Systems University of California, Irvine.](https://reader035.fdocuments.us/reader035/viewer/2022062618/5514a96755034640138b4d1e/html5/thumbnails/12.jpg)
Copyright 2002 Daniel D. Gajski 12IEEE OCCS, 8/26/02
Why Abstraction Algebra?
1. Enabling standard for ESDA
2. Discover truth behind system-level myths
3. Define system-level field (abstract semantics)
4. Introduce interoperability
5. Identify system-level methodology
6. Apply system-level methodology to SystemC, SpecC
and others.
![Page 13: Design Methodology for Systems-on-Chip What is needed and what is not Daniel D. Gajski Center for Embedded Computer Systems University of California, Irvine.](https://reader035.fdocuments.us/reader035/viewer/2022062618/5514a96755034640138b4d1e/html5/thumbnails/13.jpg)
Copyright 2002 Daniel D. Gajski 13IEEE OCCS, 8/26/02
Semantics, Styles & Refinements
• Each model uses well defined semantics• Each model has simple style• Each style uniquely expressed
– no syntactic variance or semantic ambiguity
• Each model needs style checker
• Each model can be refined from its predecessor• Clear refinement rules• Clear application order of refinement rules• Model refinements are verifiable
![Page 14: Design Methodology for Systems-on-Chip What is needed and what is not Daniel D. Gajski Center for Embedded Computer Systems University of California, Irvine.](https://reader035.fdocuments.us/reader035/viewer/2022062618/5514a96755034640138b4d1e/html5/thumbnails/14.jpg)
Copyright 2002 Daniel D. Gajski 14IEEE OCCS, 8/26/02
RTL Computational Models
• Finite State Machine with Data (FSMD)• Combined model for control and computation
– FSMD = FSM + DFG
• Implementation: controller plus datapath
FSMD model
S1 S2
S3
Op2 Op3
Op4
Op6
Op1
Op5Op1 Op2
Op3
Op1 Op2
![Page 15: Design Methodology for Systems-on-Chip What is needed and what is not Daniel D. Gajski Center for Embedded Computer Systems University of California, Irvine.](https://reader035.fdocuments.us/reader035/viewer/2022062618/5514a96755034640138b4d1e/html5/thumbnails/15.jpg)
Copyright 2002 Daniel D. Gajski 15IEEE OCCS, 8/26/02
RTL Processor
Bus1
Bus2
Bus3
Datapath
D Q
D Q
D Q
Control
inputs
Next-Sate
Logicor
Addressgenerator
Outputlogic
orProgrammemory
Stateregister
orPC
Controloutputs
Register
Selector
Register
Datapathoutputs
RFCache
ALU
Signalstatus
Controller
Latch
Datamemory
IR
SR
Cotrolsignals
![Page 16: Design Methodology for Systems-on-Chip What is needed and what is not Daniel D. Gajski Center for Embedded Computer Systems University of California, Irvine.](https://reader035.fdocuments.us/reader035/viewer/2022062618/5514a96755034640138b4d1e/html5/thumbnails/16.jpg)
Copyright 2002 Daniel D. Gajski 16IEEE OCCS, 8/26/02
RTL Synthesis
Op2 Op3
Op4
Op6
Op1
Op5Op1 Op2
Op3
Op1 Op2
S1 S2
S3
FSMD modelRTL Processor
D
Q
D
Q
D
Q
Controlinputs
Next-statelogic
orAddress
generator
Outputlogic
orProgrammemory
Stateregister
orPC
Controloutputs
Controlsignals
Bus1
Bus2
Selector
Register
Datapathoutputs
ALU
Bus3
Datapath
Signalstatus
Controller
Register Memory
RF
SR
IR
Latch
Datamemory
RTL
![Page 17: Design Methodology for Systems-on-Chip What is needed and what is not Daniel D. Gajski Center for Embedded Computer Systems University of California, Irvine.](https://reader035.fdocuments.us/reader035/viewer/2022062618/5514a96755034640138b4d1e/html5/thumbnails/17.jpg)
Copyright 2002 Daniel D. Gajski 17IEEE OCCS, 8/26/02
RTL Synthesis
Op1 Op2
Op3
Op1 Op2
S1 S2
S3
FSMD model
Allocation
Rescheduling
Variable binding Operation Binding
Bus Binding
FSM Synthesis
RTL Processor
D
Q
D
Q
D
Q
Controlinputs
Next-statelogic
orAddress
generator
Outputlogic
orProgrammemory
Stateregister
orPC
Controloutputs
Controlsignals
Bus1
Bus2
Selector
Register
Datapathoutputs
ALU
Bus3
Datapath
Signalstatus
Controller
Register Memory
RF
SR
IR
Latch
Datamemory
Op2 Op3
Op4
Op6
Op1
Op5
RTL
![Page 18: Design Methodology for Systems-on-Chip What is needed and what is not Daniel D. Gajski Center for Embedded Computer Systems University of California, Irvine.](https://reader035.fdocuments.us/reader035/viewer/2022062618/5514a96755034640138b4d1e/html5/thumbnails/18.jpg)
Copyright 2002 Daniel D. Gajski 18IEEE OCCS, 8/26/02
System Computational Models
• Program State Machine– States described by procedures in a programming language
• Example: SpecC! (SystemC!)
PSM modelProc
Proc
Proc
Proc
Proc
![Page 19: Design Methodology for Systems-on-Chip What is needed and what is not Daniel D. Gajski Center for Embedded Computer Systems University of California, Irvine.](https://reader035.fdocuments.us/reader035/viewer/2022062618/5514a96755034640138b4d1e/html5/thumbnails/19.jpg)
Copyright 2002 Daniel D. Gajski 19IEEE OCCS, 8/26/02
System Synthesis
PSM model
Proc
Proc
Proc
Proc
Proc
Memory
Memory
µProcessor
Interface
Comp.IP
Bus
Interface
Interface
Interface
Custom HW
System architecture
System
![Page 20: Design Methodology for Systems-on-Chip What is needed and what is not Daniel D. Gajski Center for Embedded Computer Systems University of California, Irvine.](https://reader035.fdocuments.us/reader035/viewer/2022062618/5514a96755034640138b4d1e/html5/thumbnails/20.jpg)
Copyright 2002 Daniel D. Gajski 20IEEE OCCS, 8/26/02
System Semantics
Objects:- Behaviors- Channels
Composition:- Hierarchy- Order • Sequential • Parallel • Piped • States- Transitions • TI • TOC, TOS, ...- Synchronization
Objects:- Components • Proc • IP • Memories • IF- Connections • Buses • Wires
Composition:(same as in Behavior Model)
System
![Page 21: Design Methodology for Systems-on-Chip What is needed and what is not Daniel D. Gajski Center for Embedded Computer Systems University of California, Irvine.](https://reader035.fdocuments.us/reader035/viewer/2022062618/5514a96755034640138b4d1e/html5/thumbnails/21.jpg)
Copyright 2002 Daniel D. Gajski 21IEEE OCCS, 8/26/02
System Synthesis
PSM model
Proc
Proc
Proc
Proc
Proc
Memory
Memory
µProcessor
Interface
Comp.IP
Bus
Interface
Interface
Interface
Custom HW
System architecture
Profiling
Allocation IF Synthesis
Refinement
Behavior Binding Channel Binding
System
Variable Binding
![Page 22: Design Methodology for Systems-on-Chip What is needed and what is not Daniel D. Gajski Center for Embedded Computer Systems University of California, Irvine.](https://reader035.fdocuments.us/reader035/viewer/2022062618/5514a96755034640138b4d1e/html5/thumbnails/22.jpg)
Copyright 2002 Daniel D. Gajski 22IEEE OCCS, 8/26/02
System Synthesis (continued)
RTL/IS Implementation+ results
Mem RFState
Control
ALU
Datapath
PC
Control Pipeline
IF FSM
IF FSMIP Netlist
RAM
IR
Memory
State
State
HCFSMD model
FMDS4
FSMD5
FSMD3
FSMD2
FSMD1
RTL MoC
![Page 23: Design Methodology for Systems-on-Chip What is needed and what is not Daniel D. Gajski Center for Embedded Computer Systems University of California, Irvine.](https://reader035.fdocuments.us/reader035/viewer/2022062618/5514a96755034640138b4d1e/html5/thumbnails/23.jpg)
Copyright 2002 Daniel D. Gajski 23IEEE OCCS, 8/26/02
EDA Approach: Simulation
System
RTL
Logic
TransistorVHDL, Verilog,
![Page 24: Design Methodology for Systems-on-Chip What is needed and what is not Daniel D. Gajski Center for Embedded Computer Systems University of California, Irvine.](https://reader035.fdocuments.us/reader035/viewer/2022062618/5514a96755034640138b4d1e/html5/thumbnails/24.jpg)
Copyright 2002 Daniel D. Gajski 24IEEE OCCS, 8/26/02
C++ Approach: Syntax
System
RTL
Logic
Transistor
![Page 25: Design Methodology for Systems-on-Chip What is needed and what is not Daniel D. Gajski Center for Embedded Computer Systems University of California, Irvine.](https://reader035.fdocuments.us/reader035/viewer/2022062618/5514a96755034640138b4d1e/html5/thumbnails/25.jpg)
Copyright 2002 Daniel D. Gajski 25IEEE OCCS, 8/26/02
MoC Approach: Diversity
System
RTL
Logic
Transistor
MoC
![Page 26: Design Methodology for Systems-on-Chip What is needed and what is not Daniel D. Gajski Center for Embedded Computer Systems University of California, Irvine.](https://reader035.fdocuments.us/reader035/viewer/2022062618/5514a96755034640138b4d1e/html5/thumbnails/26.jpg)
Copyright 2002 Daniel D. Gajski 26IEEE OCCS, 8/26/02
SystemC Approach: Language First
Source: J. Kunkel, VP Synopsis, (CODES, May 2002)
C++
SystemC
CSupported
Subset
![Page 27: Design Methodology for Systems-on-Chip What is needed and what is not Daniel D. Gajski Center for Embedded Computer Systems University of California, Irvine.](https://reader035.fdocuments.us/reader035/viewer/2022062618/5514a96755034640138b4d1e/html5/thumbnails/27.jpg)
Copyright 2002 Daniel D. Gajski 27IEEE OCCS, 8/26/02
SpecC Approach: Semantics First
System
RTL
Logic
Transistor
MoC
![Page 28: Design Methodology for Systems-on-Chip What is needed and what is not Daniel D. Gajski Center for Embedded Computer Systems University of California, Irvine.](https://reader035.fdocuments.us/reader035/viewer/2022062618/5514a96755034640138b4d1e/html5/thumbnails/28.jpg)
Copyright 2002 Daniel D. Gajski 28IEEE OCCS, 8/26/02
SystemC/SpecC
SpecC
C++
SystemC
C
![Page 29: Design Methodology for Systems-on-Chip What is needed and what is not Daniel D. Gajski Center for Embedded Computer Systems University of California, Irvine.](https://reader035.fdocuments.us/reader035/viewer/2022062618/5514a96755034640138b4d1e/html5/thumbnails/29.jpg)
Copyright 2002 Daniel D. Gajski 29IEEE OCCS, 8/26/02
Quote from SystemC
FUNCTIONAL SPECIFICATION FOR
SYSTEMC 2.0
Version 2.0-MJanuary 17, 2001
1.8 ACKNOWLEDGEMENTS
“Many companies and individuals have contributed time and resources in the development of both SystemC 1.0 and SystemC 2.0. Some of these contributors are listed in the contributors section of this specification and in the SystemC 1.0 Users’s Guide.
It should be noted that the fundamental mechanisms used to model communication and synchronization in SystemC 2.0 - interfaces, channels, and events - were inspired by similar constructs in Professor Daniel Gajski’s SpecC language. (For further information, see “SpecC: Specification Language and Methodology” at www.wkap.nl)”
![Page 30: Design Methodology for Systems-on-Chip What is needed and what is not Daniel D. Gajski Center for Embedded Computer Systems University of California, Irvine.](https://reader035.fdocuments.us/reader035/viewer/2022062618/5514a96755034640138b4d1e/html5/thumbnails/30.jpg)
Copyright 2002 Daniel D. Gajski 30IEEE OCCS, 8/26/02
Conclusion
Work to be done:
1. Abstraction Levels
2. Model Semantics
3. Refinement Rules
4. Methodology
5. Language
6. Simulation, Synthesis, Verification Tools
7. ESDA Market/Community Emergence
Prediction: No success in 7 without 1-6