Title: HDL-Based Layout Synthesis Methodologies
1HDL-Based Layout Synthesis Methodologies
- Allen C.-H. Wu
- Department of Computer Science
- Tsing Hua University
- Hsinchu, Taiwan, R.O.C
- Email chunghaw_at_cs.nthu.edu.tw
2Outline
- Introduction
- Timing analysis
- Design planning
- RTL timing budgeting
- A timing-driven soft-macro placement and
resynthesis method - Discussion
3Why Needs HDL-based Design Methodologies?
Design complexity
Then
Now
Schematic capture
HDL design specification
Component mapping may be some logic
optimization
Synthesis
Place route
Place route
Layouts
Layouts
SW assembly language gt high-level language
4An HDL-based Design Flow
HDL design specification
HDL coding styles
Applications
RTL synthesis
Logic synthesis
Cell libraries
Layout architectures
Layout synthesis
Layouts
5Top-Down Design Methodology
HDL design specification
Preserving design hierarchy
RTL synthesis
Bridging the gap between RTL, logic, and
layout synthesis
Logic synthesis
Layout synthesis
Layouts
6Applications and Layout Architectures
- Datapath dominated designs DSPs and processors.
- Control dominated designs controllers and
communication chips. - Mixed type of designs.
- Bit-sliced stacks.
- Standard cells.
- Macro-cell-based.
- FPGAs.
7Layout-driven Design methodology
HDL design specification
RTL synthesis
Multi-level estimation engine
Logic synthesis
Back annotation
Layout synthesis
Layouts
8Design Estimation
- Timing
- Area
- Power
- Statistic VS. quick-synthesis methods
- Analytical VS. constructive methods
9Outline
- Introduction
- gtTiming analysis
- Design planning
- RTL timing budgeting
- A timing-driven soft-macro placement and
resynthesis method - Summary
10Minimum Cycle Time
Critical path delay
Clock skew
11Timing Analysis
- Critical path delay analysis
- Clock skew analysis
- Timing analysis at different design levels
- Delay calculation
- Parasitic extraction
- Accuracy VS. fidelity
12Timing Analysis
HDL design spec.
HDL specification
RTL synthesis
Logic equations
Logic synthesis
Accuracy
Complexity
Cell-based netlists (Tech. dependent or
independent)
Layout synthesis
Floorplanning and P R
Layouts
13RTL and Logic-level Timing Analysis
HDL Spec.
Macro
Macro
Macro based
Logic equations
Outputs
Inputs
Macro
Cell-based netlist
Unit and zero delay models for cells and wires
14RTL Timing Analysis
HDL design spec.
A
Aspect ratio
A
Aspect ratio
Macro
Macro
T
T
Floorplanning
Re-synthesis re-floorplanning
Back annotation
3
3
1
1
4
4
2
2
15Chip-level Timing Analysis
Macro cells
- Taken into account inter-macro wiring delays.
- Chip-level path enumeration.
- Estimation vs. back annotation.
Floorplanning
Layout extraction
Wiring delay
16Macro-level Timing Analysis
Netlists
- Taken into account intra-macro wiring delays.
- Path delay enumeration.
- Estimation vs. back annotation.
P R
Layout extraction
Wiring delay information
17Accuracy of Timing Analysis
Design Stages
Accuracy
RTL
100/-50???
Floorplanning
100/-25
Placement
100/-15
Global routing
100/-7
Detailed routing
100/-0
Source DAC97 Tutorial by Blaauw_Cong_Tsay
18Outline
- Introduction
- Timing analysis
- gt Design planning
- RTL timing budgeting
- A timing-driven soft-macro placement and
resynthesis method - Summary
19Design Planning
- Macro definitions
- Soft macro generation
- Macro placement
- Pin assignment
20Chip Planning I
Soft macros
Hard macros
21Chip Planning II
Soft macros
Hard macros
22Design Planning Considerations
- How much timing, area, and power budgets should
be assigned to each macro? - How to generate soft macros?
- top-down
- bottom-up
- How to layout clock and power/ground network?
23Design Budgeting
Driving resistance
Load capacitance
Macro
Arrival time
Required arrival time
RTL Spec.
RTL Logic synthesis
Netlists
24Soft Macro Generation
Partitioning
SM
SM
SM
Clustering
Based on design hierarchical information
25Soft Macro Generation (Cont.)
Perform clustering techniques on a flattened
netlist
Clustering criteria . Timing . Interconnect
26Design Hierarchy Preservation
HDLs
Verilog design spec.
Mod1
Mod2
Mod3
HDL synthesis
Macro formation
Macro placement
Macro to cell placement
Initial placement
27Clock Network Styles
- Mesh robust, large area and power
- Trunk simple
- Tree min area, many supporting design algorithms
28Clock Issues at RTL
Critical path is determined from clock skew
and skew cannot be determined until placement
is completed!
How to incorporate clock skew issues into
early design planning???? Still an open problem!
29RTL Timing Analysis
HDL design spec.
A
Aspect ratio
A
Aspect ratio
Macro
Macro
T
T
Floorplanning
Re-synthesis re-floorplanning
Back annotation
3
3
1
1
4
4
2
2
30Timing-critical Macro Detection
HDL Spec.
HDL spec.
Macro
Macro
HDL synthesis
Critical macro
Floorplanning
Chip-level timing analysis
Back annotation
31RTL Design Planning
Floorplanning
HDL Spec.
Macro
Macro
Back-annotation
Delay area estimations
Cell library
RTL timing analysis
Constructive or analytical method
Back-annotation
32Outline
- Introduction
- Timing analysis
- Design planning
- gt RTL timing budgeting
- A timing-driven soft-macro placement and
resynthesis method - Summary
33RTL Design Budgeting
Loop
Area Delay Power
Budget?
Loop
Loop
34Timing Budgeting
Cross-macro timing paths!!!
1 Cycle
35Timing Budgeting Issues
- How to estimate delay and area from RTL
specification??? - After floorplanning? After RTL/logic synthesis?
After placement? After routing? - Run time VS. accuracy?
- How to distribute timing budget among macros?
- No much work has been done in this area!!!
36Timing Budgeting for Design Optimization
Minimize total area subject to satisfying the
timing constraints.
37Outline
- Introduction
- Timing analysis
- Design planning
- RTL timing budgeting
- gt A timing-driven soft-macro placement and
resynthesis method - Summary
38A Typical Design Flow for Macro-based Design
Back-annotation
HDL Synthesis
Timing Analysis
No
OK?
Floorplanning
Yes
P R
39Design Hierarchy Preservation
Preserving HDL design hierarchy for
soft-macro placement?
HDL Description
HM
M1
HM
M_11
M2
SM
M_12
HM
A complete chip design methodology?
40Considerations
- How to utilize HDL design-hierarchy information
to guide soft-macro placement procedure? - How to integrate design tasks and point tools at
different design level to form a complete chip
design methodology? - How to exploit the interaction between different
design tasks.
41Design Flow for Design Hierarchy Preservation
42Structural-tree Construction
- The main objective is to preserve the design
structural information from an HDL design
description for macro formation.
Top
SM4,5
SM1,2
HM1
HM2
SM1
SM2
SM3
SM4
SM5
43Soft macro Formation
- Decomposition of large soft macros.
- A large macro is too rigid for macro placement. - Clustering of small soft macros.
- Many small macros increase the computational
complexity.
44Soft Macro Placement
- Inputs a set of software macros and the
available area for soft macros. - Outputs the relative location of each soft macro
on the layout plane. - 1st step force-directed-based placement.
- 2nd step Sweeping-based soft-macro assignment.
45Floorplanning and Soft-Macro Area Extraction
HM
HM
46Force-directed-based Placement
HM
SM4
HM
HM
SM2
SM3
SM1
HM
47Soft-macro Placement
Y
SM1
SM1
SM4
SM2
SM2
X
SM4
SM3
SM3
48The Experimental procedure Design Synthesis
Structural-tree Construction
SM Formation
Netlist
49The Experimental Procedure Floorplanning and PR
50The Experimental Procedure Timing Analysis
51Benchmarking Designs
52Results
53The Most Critical Path without Preserving Design
Hierarchy
54The Most Critical Path with Preserving Design
Hierarchy
55Resynthesis for Area/Delay Minimization
Resynthesis for area minimization
HM
SM1
SM2
SM3
Resynthesis for delay minimization
56Resynthesis-based Design Flow
P R
HDL Synthesis
Timing Analysis
Yes
OK?
Floorplanning
No
Resynthesis
SM Placement
57Slack Computation for Resynthesis Selection
p1
p2
FF
p3
Macro
NEG(SM_i) Slack(p_j), for all Slack(p_j) lt
0.
58The Experimental Design Flow
HDL Description
yes
no
Chip Layout
59Benchmarking Designs
60Results (Ind2 using 0.5 um tech.)
61Results (Ind2 using 0.25 um tech.)
62Results (Ave. Gate Delay VS. Interconnect Delay
of Ind2)
63The Initial Critical Path of Ind2 using the 0.5um
Library
64The Critical Path of Ind2 after 2 Resynthesis
Iterations
65Discussion
- How to perform timing analysis at different
design stages? - Timing, area and power budgeting methods for
early design planning? - Performance-driven and power-driven chip design
methodologies.