Professional Documents
Culture Documents
Specifications
Design flow
1. Synthesis
2. Floorplan
3. Power Plan
4. IR Drop measurement
5. Placement
6. CTS
7. Routing
Input files for floorplan
Chiptop using ICC tool
1. Start the ICC tool using the following commands.
Command:
csh
icc_shell -gui
icc_shell gui_start
2. Load Libraries and
Symbol Libraries
using GUI
Setup Command:
•set search_path /home/jayesh.munjani/chip_top/chip90
•.lib contains information about characteristics and functions of each cell provided
by vendor.
•Cell characteristics includes information such as cell names, pin names, technology,
area, delay arc, fanout etc.
.sdb file
•It contains definitions of graphic symbols that represent library cells in design
schematic and is provided by vendor.
7
3. Setting TLU+
•Command:
•set_tlu_plus_files -max_tluplus
•/home/eitra.group3/Downloads/chiptop/
chip90/ref/tlup/
saed90nm_1p9m_1t_Cmax.tluplus
•-min_tluplus
/home/eitra.group3/Downloads/chiptop/chip
90/ref/tlup/saed90nm_1p9m_1t_Cmin.tluplu
s
•-tech2itf_map
/home/eitra.group3/Downloads/chiptop/chip
90/ref/tlup/tech2itf.map
Content of TLU files
• TLU+ files contain RC parasitics of metal per unit length for accurate RC extractions.
Command:
create_mw_lib -technology
/home/eitra.group3/Downloads/chiptop/chip90/ref/tech/saed90nm.tf -mw_reference_library
{/home/eitra.group3/Downloads/chiptop/chip90/ref/saed90nm_fr
/home/eitra.group3/Downloads/chiptop/chip90/ref/sram4x128}
10
Content of .tf and .ref file
tf file
• .tf file contains information of metal layers and via.
• It contains layers and via names, type of metal, its pitch, width, spacing etc.
• It also contains geometry of cells, coordinates, its symmetry, size etc.
Ref file
• Reference libraries contains physical information of standard, macro and pad cells,
which is necessary for placement and routing.
5. Opening Library
Command:
open_mw_lib /home/eitra.group3/Downloads/chiptop/chip90/chip_top_iter5
12
6. Importing verilog file
Command:
read_verilog {/home/eitra.group3/Downloads/chiptop/chip90/results/compile.v}
13
7. Import a Design
Floorplan
Objectives of floorplan
• Minimize the area
• Minimize the timing
• Reduce wire length
• Reduce IR drop
Command:
create_floorplan -left_io2core 10 -bottom_io2core 10 -right_io2core 10 -top_io2core 10
set_object_fixed_edit [get_selection]
Placement
• Placement is the process of deciding physical location of standard cell in the block.
• Objectives of placement:
• Timing, power and area optimization
• Routable design
• Minimizing timing DRC
• Types of placement
• Congestion driven
• Timing driven
Placing a Macros in floor-planning
Command:
derive_pg_connection -power_net {VDD} -ground_net {VSS} -power_pin {VDD} -ground_pin
{VSS}
19
Step – 2: Creating Rings
Command:
create_rectangular_rings -nets {VDD VSS} -left_segment_layer M8 -right_segment_layer M8
-bottom_segment_layer M9 -top_segment_layer M9
23
Offset
24
Step – 3: Setting power network constraints of straps
Command:
set_fp_rail_constraints -add_layer -layer M6 -direction vertical -max_strap 50 -min_strap 16
-max_width 4.5 -min_width 1.5 -spacing minimum -offset 10
set_fp_rail_constraints -add_layer -layer M7 -direction horizontal -max_strap 50 -min_strap 16
-max_width 4.5 -min_width 1.5 -spacing minimum -offset 10
25
Step – 4: Creating virtual power pads
Command:
create_fp_virtual_pad -net VDD -point {9.875 1542.345}
create_fp_virtual_pad -net VDD -point {1543.180
1542.350}
create_fp_virtual_pad -net VDD -point {1543.195 9.790}
create_fp_virtual_pad -net VDD -point {10.045 9.825}
create_fp_virtual_pad -net VSS -point {9.465 1543.325}
create_fp_virtual_pad -net VSS -point {1543.640 8.915}
create_fp_virtual_pad -net VSS -point {9.605 1543.480}
create_fp_virtual_pad -net VSS -point {9.780 1543.275}
26
Step – 5: Synthesizing power network
Command:
synthesize_fp_rail -nets {VDD VSS} -synthesize_power_plan -power_budget 1000
-honor_conn_view_layers {M6 M7 M8 M9}
27
Power Report (report_power)
Area Utilization (get_utilization)
Placement of standard cells (create_fp_placement)
Congestion Report before Routing
Clock Tree Synthesis
• CTS is the process of connecting the clock to all clock pins of sequential circuits
by using inverters/buffers in order to balance the skew.
• All clock are driven by single clock source.
• The goal of CTS is to minimize the Skew and Latency.
• Constraints of clock tree synthesis are Latency, Skew Max Transition, Max
Capacitance Max Fan-out and list of buffers and inverters.
• Different types of clock tree routings are: H-tree, X-tree, Multi level clock tree,
Fish bone
• Routing is the stage where the interconnections are made by determining the precise
paths for each nets.
• Objectives of routing: Skew requirement, Open/ short clean up, Routed path must
meet setup and hold timing margin, DRVs max capacitance / transition must be under
limit
• Types of routing: Global/ Trial, Track assignment, Detailed, Search and repair
• Constraints of routing: Setting limits on routing to specific regions, Setting the max
length for the routing wires, Blocking routing in specific region, Set preferred routing
direction.
report_constraints
Thank You
T