0% found this document useful (0 votes)
384 views77 pages

Innovus

The document outlines a graduate-level course on VLSI System Design using the Innovus tool, covering topics such as design import, floorplanning, power planning, clock tree synthesis, and routing. It details the steps involved in creating a low power, high-performance VLSI design, including setting design constraints, placing macros, and optimizing for timing. The course emphasizes practical exercises and the use of various tools within Innovus to achieve effective design outcomes.

Uploaded by

workat60474
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
384 views77 pages

Innovus

The document outlines a graduate-level course on VLSI System Design using the Innovus tool, covering topics such as design import, floorplanning, power planning, clock tree synthesis, and routing. It details the steps involved in creating a low power, high-performance VLSI design, including setting design constraints, placing macros, and optimizing for timing. The course emphasizes practical exercises and the use of various tools within Innovus to achieve effective design outcomes.

Uploaded by

workat60474
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 77

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

You might also like