VLSI System Design (Graduate Level) Fall 2022
Innovus
Speaker: Chun-Sheng Cheng
Instructor: Lih-Yih Chiou
Date: 2022.11.09
Low Power High Performance VLSI Design Lab
VLSI System Design (Graduate Level) Fall 2022
Outline
Introduction
Import design
Floorplan
Powerplan
Clock Tree Synthesis
Routing
DRC / LVS / Antenna
Save / Export Files
Report Design
Reference
Low Power High Performance VLSI Design Lab 1
VLSI System Design (Graduate Level) Fall 2022
Introduction
Innovus, successor of SoC Encounter, which developed by
Cadence, is an Automatic Placement & Routing (APR) tool.
With this tool, you can export the synthesized gate level netlist to
the GDS layout.
GDS: Graphic Design System, a database file format for IC layout
Import Floorplan Powerplan Placeplan CTS Routing
Low Power High Performance VLSI Design Lab 2
VLSI System Design (Graduate Level) Fall 2022
Open GUI
[innovus/build] $ innovus Do not use &
[innovus] $ make innovus
In this exercise & homework
Low Power High Performance VLSI Design Lab 3
VLSI System Design (Graduate Level) Fall 2022
Import design
Low Power High Performance VLSI Design Lab 4
VLSI System Design (Graduate Level) Fall 2022
Set the design constraints
Uniquify instantiated cell types
Let the multiple modules have different name, which means each module is
different.
For example, there are 2 SRAM modules, but they are different. If we don’t
uniquify the modules, the process will stop and have errors.
Prevent tool from adding any new assign statements to the
Verilog netlist
Low Power High Performance VLSI Design Lab
VLSI System Design (Graduate Level) Fall 2022
Import Design
1.
2.
4.
file in ./script/
5.
6.
3.
Low Power High Performance VLSI Design Lab 6
VLSI System Design (Graduate Level) Fall 2022
Default.globals
Design setup, including the design node LEF file and the MMMC
view file.
LEF file: Physical library, including process technology and APR technology
LEF File
MMMC View
Low Power High Performance VLSI Design Lab 7
VLSI System Design (Graduate Level) Fall 2022
MMMC View
MMMC: Multi-Mode Multi Corner
Using different constraints to optimize the design
Timing libraries(Max, Min, Typical)
Capacitance Table
Capacitance table
Different timing library(Max, Min, Typical
Design constraint
Combine timing & RC table to create delay corner
Set different analysis view for different timing issues
Low Power High Performance VLSI Design Lab 8
VLSI System Design (Graduate Level) Fall 2022
IO Pins(1/2)
7
1
2 8
4
5 10
Low Power High Performance VLSI Design Lab 9
VLSI System Design (Graduate Level) Fall 2022
IO Pins(2/2)
Low Power High Performance VLSI Design Lab 10
VLSI System Design (Graduate Level) Fall 2022
Floorplan
Place the macro
Low Power High Performance VLSI Design Lab 11
VLSI System Design (Graduate Level) Fall 2022
First Floorplan View
1.
Submodules Core Area
Macros
Low Power High Performance VLSI Design Lab 12
VLSI System Design (Graduate Level) Fall 2022
Purpose and Set environment
Purposes
IO Pads locations, Power pads number and location
Macro placement, such as memory
Placement & Routing blockage
Set environment
Remove assign statements from the Verilog
Set process mode
Low Power High Performance VLSI Design Lab 13
VLSI System Design (Graduate Level) Fall 2022
Connect Global Nets
1.
2.
3.
4.
5.
6.
Repeat Step 3. -> 7.
7.
First: VCC
Second: GND 8. 9. 10.
Low Power High Performance VLSI Design Lab 14
VLSI System Design (Graduate Level) Fall 2022
Specify Floorplan
1.
2.
Height/Width ratio
3.
4.
𝑠𝑡𝑑 𝑐𝑒𝑙𝑙 + 𝑚𝑎𝑐𝑟𝑜 𝑐𝑒𝑙𝑙
Core utilization =
𝑐𝑜𝑟𝑒 𝑎𝑟𝑒𝑎
5.
6.
Low Power High Performance VLSI Design Lab 15
VLSI System Design (Graduate Level) Fall 2022
Plan Design(1/4)
1.
2.
3.
Result in physical view
You can use this icon to move macro 4.
Low Power High Performance VLSI Design Lab 16
VLSI System Design (Graduate Level) Fall 2022
Plan Design(2/4)
If the first-time placement is not what you
prefer to be, you can use the “Incremental”
option to re-allocate the location of macros
based on the current placement
With few times of incremental placement,
the placement will be fix.
Low Power High Performance VLSI Design Lab 17
VLSI System Design (Graduate Level) Fall 2022
Plan Design(3/4)
Tips for macro placement
Place macros around chip periphery
Consider connections to fixed cells
Orient macros to minimize distance between pins
Reserve space for power grid and signal routing and possible buffer insertion
Keep edges pf macros aligned if possible
Low Power High Performance VLSI Design Lab 18
VLSI System Design (Graduate Level) Fall 2022
Plan Design(4/4)
Floorplan -> Floorplan Toolbox • All kinds of tools
• Shift
• Spacing
• Alignment
• Rotation
Click the icon in Toolbox
Low Power High Performance VLSI Design Lab 19
VLSI System Design (Graduate Level) Fall 2022
Add Halo
1. Blockage is used to avoid unwanted wire in certain area
Halo is the blockage for blocks such as memory
Two types of Halo
Placement Halo
Prevent the placement of blocks and standard cells in order to reduce the
congestion around blocks
Routing Halo
Reduce the possibility of long wire routing closed to the blocks
Long wire has higher cost and has DRC violations if too close to the
blocks.
Low Power High Performance VLSI Design Lab 20
VLSI System Design (Graduate Level) Fall 2022
Add Placement Halo (1/2)
1.
2.
4.
5.
3.
Low Power High Performance VLSI Design Lab 21
VLSI System Design (Graduate Level) Fall 2022
Add Placement Halo (1/2)
Click redraw icon
Low Power High Performance VLSI Design Lab 22
VLSI System Design (Graduate Level) Fall 2022
Add Routing Halo (1/2)
1.
4.
2.
5.
3.
6.
Low Power High Performance VLSI Design Lab 23
VLSI System Design (Graduate Level) Fall 2022
Add Routing Halo (2/2)
Click redraw icon
Low Power High Performance VLSI Design Lab 24
VLSI System Design (Graduate Level) Fall 2022
Powerplan
Place the power wires for all kinds of cells/blocks
Low Power High Performance VLSI Design Lab 25
VLSI System Design (Graduate Level) Fall 2022
Power wire
There are many types of power wire for different objectives.
Core Ring
Power ring supply power from IO Pad for the core
Block Ring
Power ring supply power from Core ring for the block
Block Pins
Connect the block ring to the core ring
Power Stripe
Additional power wires (same metal as ring) to reduce the IR drop
Follow Pins
The power wires for standard cells
Low Power High Performance VLSI Design Lab 26
VLSI System Design (Graduate Level) Fall 2022
Create Core Ring(1/2)
1.
4.
2. 5.
3.
7. 6.
8.
3 layers of VCC/GND
and interleaving
9.
Low Power High Performance VLSI Design Lab 27
VLSI System Design (Graduate Level) Fall 2022
Create Core Ring(2/2)
Low Power High Performance VLSI Design Lab 28
VLSI System Design (Graduate Level) Fall 2022
Create Block Ring (1/2)
2.
9.
5.
3.
4.
6.
7.
8.
1.
Select the block
Low Power High Performance VLSI Design Lab 29
VLSI System Design (Graduate Level) Fall 2022
Create Block Ring (2/2)
10.
The location of Ring side should
consider the location of blocks
The block is surrounded by the
power ring(Core/Block ring)
11.
Repeat step 1~11 for all blocks
Low Power High Performance VLSI Design Lab 30
VLSI System Design (Graduate Level) Fall 2022
Connect Block Pins (1/2)
1.
3.
2. 4.
Low Power High Performance VLSI Design Lab 31
VLSI System Design (Graduate Level) Fall 2022
Connect Block Pins (2/2)
5.
6.
7.
Low Power High Performance VLSI Design Lab 32
VLSI System Design (Graduate Level) Fall 2022
Create Power Stripe (1/3)
1.
9.
4.
2. 3. 5.
6.
7.
8.
Low Power High Performance VLSI Design Lab 33
VLSI System Design (Graduate Level) Fall 2022
Create Power Stripe (2/3)
12.
10.
11.
13.
14.
Low Power High Performance VLSI Design Lab 34
VLSI System Design (Graduate Level) Fall 2022
Create Power Stripe (3/3)
Repeat Step 5. -> 14.
• First: metal 4 / Vertical
• Second: metal 5 / Horizontal
Low Power High Performance VLSI Design Lab 35
VLSI System Design (Graduate Level) Fall 2022
Connect Follow Pins (1/2)
1.
5.
3.
2. 4.
Low Power High Performance VLSI Design Lab 36
VLSI System Design (Graduate Level) Fall 2022
Connect Follow Pins (2/2)
6.
7.
Low Power High Performance VLSI Design Lab 37
VLSI System Design (Graduate Level) Fall 2022
Verify DRC
1.
2.
3.
Low Power High Performance VLSI Design Lab 38
VLSI System Design (Graduate Level) Fall 2022
Verify Connectivity
1.
2.
3.
4.
5.
Low Power High Performance VLSI Design Lab 39
VLSI System Design (Graduate Level) Fall 2022
Placement
Place the standard cell
Low Power High Performance VLSI Design Lab 40
VLSI System Design (Graduate Level) Fall 2022
Place Standard Cells
Placement + pre-CTS Optimization
Check timing report
If worst negative slacks (WNS) < 0, you need to optimize design
Low Power High Performance VLSI Design Lab 43
VLSI System Design (Graduate Level) Fall 2022
Optimize Design (Optional)
1.
2. 3.
4.
5.
If worst negative slacks (WNS) < 0,
you need to optimize design
6.
Low Power High Performance VLSI Design Lab 44
VLSI System Design (Graduate Level) Fall 2022
Clock Tree Synthesis
Create the clock tree which is the most important in the design
Low Power High Performance VLSI Design Lab 45
VLSI System Design (Graduate Level) Fall 2022
CCOpt
Clock Concurrent Optimization
Create the clock tree and optimize the design at the same time
Two steps
CCOpt design
Setup & hold time optimization
ERROR IMPCCOPT-5054 can be ignored
Low Power High Performance VLSI Design Lab 46
VLSI System Design (Graduate Level) Fall 2022
Report Timing - Setup
1.
3.
2.
4.
5.
If worst negative slacks (WNS) < 0, you need to optimize design
Low Power High Performance VLSI Design Lab 47
VLSI System Design (Graduate Level) Fall 2022
Optimize Design – Setup (Optional)
1.
2. 3.
4.
5.
If worst negative slacks (WNS) < 0,
you need to optimize design
6.
Low Power High Performance VLSI Design Lab 48
VLSI System Design (Graduate Level) Fall 2022
Report Timing - Hold
1.
3.
2.
4.
5.
If worst negative slacks (WNS) < 0, you need to optimize design
Low Power High Performance VLSI Design Lab 49
VLSI System Design (Graduate Level) Fall 2022
Optimize Design – Hold (Optional)
1.
2. 3.
4.
5.
6.
If worst negative slacks (WNS) < 0, you need to optimize design
Low Power High Performance VLSI Design Lab 50
VLSI System Design (Graduate Level) Fall 2022
Add Tie Hi/Lo Cells
1.
4.
5.
2.
3.
Tiehi/Tielo cell connect tiehi/tielo net to supply voltage or ground with resister
Tiehi/Tielo cell is added for ESD protection
Low Power High Performance VLSI Design Lab 51
VLSI System Design (Graduate Level) Fall 2022
Routing
Adding wires to connect the whole design
Low Power High Performance VLSI Design Lab 52
VLSI System Design (Graduate Level) Fall 2022
Route
1.
4.
2.
5.
6.
3.
• Optimize Via
• Add via for yield issue
• Optimize Wire
• Some wires can use
same metal in different
direction
• Antenna
• Fix antenna effect
• SI Driven
• Prevent signal integrity 7.
Low Power High Performance VLSI Design Lab 53
VLSI System Design (Graduate Level) Fall 2022
Specify Analysis Mode
1.
2.
4.
3.
5.
7.
6.
CPPR: Clock Path Pessimism Removal
Low Power High Performance VLSI Design Lab 54
VLSI System Design (Graduate Level) Fall 2022
Report Timing (Setup)
1.
3.
2.
4.
5.
If worst negative slacks (WNS) < 0,
you need to optimize design
Low Power High Performance VLSI Design Lab 55
VLSI System Design (Graduate Level) Fall 2022
Optimize Design (Setup)
1.
2. 3.
4.
5.
If worst negative slacks (WNS) < 0,
you need to optimize design 6.
7.
Low Power High Performance VLSI Design Lab 56
VLSI System Design (Graduate Level) Fall 2022
Report Timing (Hold)
1.
3.
2.
4.
5.
If worst negative slacks (WNS) < 0,
you need to optimize design
Low Power High Performance VLSI Design Lab 57
VLSI System Design (Graduate Level) Fall 2022
Optimize Design (Hold)
1.
2. 3.
4.
5.
If worst negative slacks (WNS) < 0,
you need to optimize design 6.
7.
Low Power High Performance VLSI Design Lab 58
VLSI System Design (Graduate Level) Fall 2022
Add Core Filler
1.
4.
5.
2. 8. 6.
3.
7.
• Fill the empty space of the layout
• Connect the NWELL/PWELL layer in core rows
Low Power High Performance VLSI Design Lab 59
VLSI System Design (Graduate Level) Fall 2022
DRC / LVS / Antenna
Check the design
Low Power High Performance VLSI Design Lab 60
VLSI System Design (Graduate Level) Fall 2022
Verify DRC
• Design Rule Check
• Check if the layout violate the foundry
constraint or not.
• Including
• Minimum Width
• Minimum Spacing
• Short
• and other characteristics
1.
2. 3.
Low Power High Performance VLSI Design Lab 61
VLSI System Design (Graduate Level) Fall 2022
Verify Connectivity (LVS)
• Layout versus Schematic
• Check if the layout is same as the netlist
3.
1.
4.
2.
5.
6.
Low Power High Performance VLSI Design Lab 63
VLSI System Design (Graduate Level) Fall 2022
Verify Process Antenna
• Process Antenna
• Check if the layout has antenna effect or not
1.
2.
3.
Low Power High Performance VLSI Design Lab 64
VLSI System Design (Graduate Level) Fall 2022
Check violations
• Make sure at least
the LVS has no error
• Affect the
functionality of
the circuit
• Other violations can
use the Violation
Browser to check.
• Or double click
the cross icon
in physical view.
Low Power High Performance VLSI Design Lab 65
VLSI System Design (Graduate Level) Fall 2022
Floorplan View
• The location of hard macro
• The layout of power wiress
Low Power High Performance VLSI Design Lab 66
VLSI System Design (Graduate Level) Fall 2022
Amoeba View
• The distribution of soft modules
• Soft module
• Composed by standard
cells
• For example, CPU is the
soft module in our design.
Low Power High Performance VLSI Design Lab 67
VLSI System Design (Graduate Level) Fall 2022
Physical View
• All the wires and modules
• Hard macro – Memory
• Soft module – standard cells
• Metal
• Via
Low Power High Performance VLSI Design Lab 68
VLSI System Design (Graduate Level) Fall 2022
Save / Export Files
Saving the netlist, SDF file and the GDS file
Low Power High Performance VLSI Design Lab 69
VLSI System Design (Graduate Level) Fall 2022
Save Netlist
1.
4.
5.
2.
3.
Low Power High Performance VLSI Design Lab 70
VLSI System Design (Graduate Level) Fall 2022
Save SDF File
1.
3.
4.
5.
2.
Low Power High Performance VLSI Design Lab 71
VLSI System Design (Graduate Level) Fall 2022
Save GDS File
1.
4.
5.
6.
2. 7.
8.
3. Or use: (This one is better!!!)
Low Power High Performance VLSI Design Lab 72
VLSI System Design (Graduate Level) Fall 2022
Save Design
1.
3.
4.
2.
5.
• You can save the design after each stage in case of
the Innovus suddenly break down.
• Remember to change the saving directory in case
that you make clean to remove the build directory.
Low Power High Performance VLSI Design Lab 73
VLSI System Design (Graduate Level) Fall 2022
Restore Design
• Restoring the previous
1. stage if the current stage
2. 3. has some problem.
4.
7.
6.
5.
Low Power High Performance VLSI Design Lab 74
VLSI System Design (Graduate Level) Fall 2022
Area
• After analyzeFloorplan command, the layout will be destroyed, so remember saving
the design before using this command.
Low Power High Performance VLSI Design Lab 75
VLSI System Design (Graduate Level) Fall 2022
Power(1/2)
★ Step 1 ★ Step 3
Modify the frequency
for your design
★ Step 2 ★ Step 4
Low Power High Performance VLSI Design Lab 76
VLSI System Design (Graduate Level) Fall 2022
Power(2/2)
mW
Low Power High Performance VLSI Design Lab
VLSI System Design (Graduate Level) Fall 2022
Reference
CIC Training Manual – Cell-Based IC Physical Design and
Verification with Innovus, January 2021
Training Course of SoC Encounter
(http://www.ee.ncu.edu.tw/~jfli/vlsidi/lecture/soc)
Cell-Based IC Physical Design and Verification - SoC Encounter
(http://mspic.ee.nchu.edu.tw/class_course/university/97_VLSI-
design/handout/4-1.Soc_Encounter.pdf)
Cadence Help
Low Power High Performance VLSI Design Lab 78
VLSI System Design (Graduate Level) Fall 2022
Thanks for your participation
and attendance ! !
Low Power High Performance VLSI Design Lab 79