Title: Rapid Development of a Flexible Validated Processor Model
1Rapid Development of a Flexible Validated
Processor Model
- David A. Penry
- Manish Vachharajani
- David I. August
- The Liberty Architecture Research Group
- Princeton University
- Dept. of Electrical and Computer Engineering
- University of Colorado, Boulder
2Architectural Exploration
- Want baseline simulator to be validated
- Want rapid model changes (flexibility)
3Why are flexible, validated simulators hard?
- Barriers to flexibility
- Concurrent hardware, but sequential simulators
- Lack of reuse
- Validation 3 kinds of errors Black Shen, 98
- Specification knowing what to model
- Abstraction deciding how much to model
- Modeling doing it right
- Liberty Simulation Environment addresses
flexibility and modeling error through
concurrent structural modeling
4The Itanium 2
Register Renaming uOp insertion
BranchResolution
EXP
REN
REG
EXE
DET
WRB
DCU
Structural Hazard Detection
Data Hazard Detection
- 11 weeks, 1 designer
- Systematic, incremental approach
5Designing the model Front-end
EXP
REN
REG
EXE
DET
WRB
DCU
Investigation
Modeling
6Designing the model EXP
REN
REG
EXE
DET
WRB
EXP
DCU
Investigation
Modeling
7Designing the model REN
REG
EXE
DET
WRB
EXP
REN
DCU
Investigation
Modeling
8Designing the model Rest of backend
EXP
REN
DCU
Investigation
Modeling
9Designing the model DCU
EXP
REN
DCU
Investigation
Modeling
10Initial model results
11Is this good enough?
- Evaluate effectiveness of instruction prefetching
(186.crafty)
12Initial model component analysis
13Refinements Front end
I-BUF
ROT
EXP
REN
IPG
DCU
Investigation
Modeling
14Refinements L1D
- Fix page size
- Add real hardware page table walk
I-BUF
ROT
EXP
REN
IPG
DCU
Investigation
Modeling
15Refinements Load-use stalls
- Add detailed L2/L3 cache behavior
I-BUF
ROT
EXP
REN
IPG
DCU
Investigation
Modeling
16Refined model component analysis
17Comparison of component errors
18Refined model results
19Uses of the model within our group
- New pipeline organization with re-cycling of
instructions (4 weeks) - Rangan, et al. Decoupled Software Pipelining
with the Synchronization Array. PACT 04. (2
weeks) - Reis, et al. Design and Evaluation of Hybrid
Fault-Detection Systems. ISCA-32. (a few hours
to modify, a couple days to learn LSE)
20Conclusions
- Liberty Simulation Environment is effective at
reducing modeling errors and increasing
flexibility - To control abstraction and specification errors
- Use disciplined refinement investigate, decide,
model - Quantitatively verify documents
- Quantitatively verify abstractions
- Single metrics are not enough to validate models
21Backup slides
22Simulator Construction Systems
- Reuse simulator infrastructure
- But still must be able to reuse descriptions
- Structural composition
- Medium-grained components
- Standard communication contracts
- High parameterizability
- Separation of concerns
23This study Itanium 2
- HW complexity ? model complexity
- 11 weeks, 1 designer
24Liberty Simulation Environment
- Simulator construction system for high reuse
- Two-tiered specifications
- Leaf module templates in C
- Netlisting language for instantiation and
customization - Three-signal standard communications contract
with overrides (control functions) - Code is generated
25Shapes
26Designing the model
EXP
REN
REG
EXE
DET
WRB
DCU
Investigation
Modeling