Cadence Innovus – Physical Design Flow
Hands-on with Floorplanning, Powerplan, CTS & Routing
Industry-Driven DRC/LVS Tips & Reports
For Students, Job-Seekers, & Professionals
Low Power High-Performance VLSI Design Lab Reference | For Learning & Research Use
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 Reference | For Learning & Research Use 1
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 Reference | For Learning & Research Use 2
Open GUI
[innovus/build] $ innovus Do not use &
[innovus] $ make innovus
In this exercise & homework
Low Power High-Performance VLSI Design Lab Reference | For Learning & Research Use 3
Import design
Low Power High-Performance VLSI Design Lab Reference | For Learning & Research Use 4
Set the design constraints
Uniquify instantiated cell types
Let themultiplemodules 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.
Preventtoolfrom adding any new assign statements to the
Verilog netlist
Low Power High-Performance VLSI Design Lab Reference | For Learning & Research Use
Import Design
1.
2.
4.
file in ./script/
5.
6.
3.
Low Power High-Performance VLSI Design Lab Reference | For Learning & Research Use 6
[Link]
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 Reference | For Learning & Research Use 7
MMMC View
MMMC: Multi-Mode Multi Corner
Usingdifferentconstraintstooptimizethe design
Timing libraries(Max, Min, Typical)
Capacitance Table
Capacitance table
Different timing library(Max, Min, Typical
Design constraint
Combinetiming & RC table to create delay corner
Set different analysis view for different timing issues
Low Power High-Performance VLSI Design Lab Reference | For Learning & Research Use 8
IO Pins(1/2)
7
1
2 8
4
5 10
Low Power High-Performance VLSI Design Lab Reference | For Learning & Research Use 9
IO Pins(2/2)
Low Power High-Performance VLSI Design Lab Reference | For Learning & Research Use 10
Floorplan
Place the macro
Low Power High-Performance VLSI Design Lab Reference | For Learning & Research Use 11
First Floorplan View
1.
Submodules Core Area
Macros
Low Power High-Performance VLSI Design Lab Reference | For Learning & Research Use 12
Purpose and Set environment
Purposes
IOPads 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 Reference | For Learning & Research Use 13
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 Reference | For Learning & Research Use 14
Specify Floorplan
1.
2.
Height/Width ratio
3.
4.
𝑠𝑡𝑑 𝑐𝑒𝑙𝑙 + 𝑚𝑎𝑐𝑟𝑜 𝑐𝑒𝑙𝑙
Core utilization = 𝑐𝑜𝑟𝑒 𝑎𝑟𝑒𝑎
5.
6.
Low Power High-Performance VLSI Design Lab Reference | For Learning & Research Use 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 Reference | For Learning & Research Use 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
Preventtheplacement of blocks and standard cells in order to reduce the
congestionaround blocks
Routing Halo
Reducethepossibility 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
Placethepowerwiresforallkinds 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 IOPad for the core
Block Ring
Power ring supply power from Core ring for theblock
Block Pins
Connectthe block ring to the core ring
Power Stripe
Additional power wires (same metal as ring) to reduce the IR drop
Follow Pins
Thepower 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.
4.
2.
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.
4.
2.
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
Createtheclocktreewhichisthemostimportantinthe design
Low Power High Performance VLSI Design Lab 45
VLSI System Design (Graduate Level) Fall 2022
CCOpt
Clock Concurrent Optimization
Createtheclocktreeandoptimizethe design at the same time
Two steps
CCOpt design
Setup & hold time optimization
ERROR IMPCCOPT-5054can 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/Tielocell connect tiehi/tielonet to supply voltage or ground with resister
Tiehi/Tielocell is added for ESD protection
Low Power High Performance VLSI Design Lab 51
VLSI System Design (Graduate Level) Fall 2022
Routing
Addingwirestoconnect 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.
Ifworstnegativeslacks(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.
Ifworstnegativeslacks(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
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 Innovussuddenly 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 analyzeFloorplancommand, the layout will be destroyed, so remember saving
the designbefore 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
([Link]
Cell-Based IC Physical Design and Verification -SoC Encounter
([Link]
design/handout/4-1.Soc_Encounter.pdf)
Cadence Help
Low Power High Performance VLSI Design Lab 78