Uploaded by KothagundlaGopiKrishnaK

Import Design

advertisement
IMPORT DESIGN
Linux Environment
CONFIDENTIAL
STEPS FOR PHYSICAL DESIGN –
Launch Innovus
Step 1: Enter into macro_design directory
$ cd macro_design
Step 2: create soft link for inputs required for physical design
$ ln -s /home/internship/pd/pd_macro/DATA DATA
$ ln -s /home/internship/pd/pd_macro/LIBS LIBS
$ ln -s /home/internship/pd/pd_macro/SCRIPTS SCRIPTS
Step 3 : Create directory for output database and reports
$ mkdir DBS
Step 4 : invoke the innovus tool in macro_design directory and you should see command prompt
innovus> and innovus GUI opened
$ innovus
CONFIDENTIAL
CADENCE INNOVUS SHELL and GUI
CONFIDENTIAL
STEPS FOR PHYSICAL DESIGN –
Source Design Settings
Step 5 : source the inputs for the physical design
process in innovus command prompt to check if
all inputs are in order.
leon.globals is created in innovus GUI by
providing required settings
innovus> source DATA/files/leon.globals
• Design global variables and settings are
done using this step
# Version 1.1
setUserDataValue ::TimeLib::tsgMarkCellLatchConstructFlag 1
setUserDataValue conf_ioOri {R0}
setUserDataValue conf_row_height 1.710000
setUserDataValue dcgHonorSignalNetNDR 1
setUserDataValue defHierChar {/}
setUserDataValue delaycal_input_transition_delay {0.1ps}
setUserDataValue distributed_client_message_echo {1}
setUserDataValue distributed_mmmc_disable_reports_auto_redirection {0}
setUserDataValue fpIsMaxIoHeight 0
setUserDataValue fp_core_height 654.930000
setUserDataValue fp_core_to_bottom 25.080000
setUserDataValue fp_core_to_left 25.000000
setUserDataValue fp_core_to_right 25.000000
setUserDataValue fp_core_to_top 25.000000
setUserDataValue fp_core_width 938.585000
setUserDataValue gpsPrivate::oigCGFixOutOfCoreChannels 1
setUserDataValue gpsPrivate::oigPBAwareTopoMode 23
setUserDataValue gpsPrivate::oigTopoBCMode 0
setUserDataValue gpsPrivate::oigTopoUseBABInTopLvlNodesInOCP 1
setUserDataValue gpsPrivate::oigUseNewMaxBufDistAPI 1
setUserDataValue init_design_settop 0
setUserDataValue init_gnd_net {VSS}
setUserDataValue init_lef_file [list LIBS/lef/gsclib045.fixed2.lef LIBS/lef/MEM2_128X32.lef
LIBS/lef/MEM1_256X32.lef LIBS/lef/pads.lef]
setUserDataValue init_mmmc_file "DATA/files/viewDefinition.tcl"
setUserDataValue init_oa_search_lib {}
setUserDataValue init_pwr_net {VDD}
setUserDataValue init_verilog "DATA/files/leon.v.gz"
setUserDataValue lsgOCPGainMult 1.000000
setUserDataValue pegDefaultResScaleFactor 1.000000
setUserDataValue pegDetailResScaleFactor 1.000000
setUserDataValue timing_library_float_precision_tol 0.000010
setUserDataValue timing_library_load_pin_cap_indices {}
setUserDataValue tso_post_client_restore_command {update_timing ; write_eco_opt_db ;}
CONFIDENTIAL
STEPS FOR PHYSICAL DESIGN –
Import the Design
Step 6 : Load the design, see if there are any ERRORS in the log
innovus> init_design
• The init_design command
executes a number of checks
to validate the design.
• It is important that you
review the log file to
understand and resolve the
warnings and error messages
that it reports.
CONFIDENTIAL
STEPS FOR PHYSICAL DESIGN –
Santy Checks
• Sanity Checks mainly checks the quality of netlist.
• It also consists of checking the issues related to Library files, Timing Constraints, IO’s.
❑Library Checks
▪ All Cells have timing data.(.libs for all cells)
▪ All cells have physical data(.lef for all cells)
❑Netlist Checks
▪ Floating Pins
▪ Un-driven I/O Ports
▪ Unloaded I/O Ports
▪ Multiple drivers etc.
❑SDC Checks
▪ Clocks reaching all clock pins of flops.
▪ Ports missing input/output delays.
▪ Ports missing slew/load constraints.
▪ Multiple clocks driving same register.
❑Netlist vs SDC Checks
▪ Pre layout timing.
STEPS FOR PHYSICAL DESIGN –
Santy Checks – checkDesign command
Run this command at any stage of a design
to check the following :
❑Physical library
❑Timing library
❑Placement
❑Floorplan
❑Netlist
❑I/O
❑Tie-hi and tie-low pins
❑Power and ground pins
innovus> checkDesign ​ ​
[-help]
{ -all[-danglingNet [highlight]] | [[-io]
[-netlist [-danglingNet [highlight]]]
[-physicalLibrary]
[-timingLibrary]
[-powerGround]
[ -tieHiLo]
[-floorplan]
[-place]
[-spef] ] }
[[-noText] [-outdir directoryName ]
[-browser]] | [-noHtml
[-outfile fileName ]]
checkDesign reports
innovus 4> checkDesign -physicalLibrary
**WARN: (IMPREPO-205): There are 1 Cells with missing PG PIN.
Design check done.
Report saved in file checkDesign/leon.main.htm.ascii.
*** Summary of all messages that are not suppressed in this session:
Severity ID
Count Summary
WARNING IMPREPO-205
1 There are %d Cells with missing PG
PIN.
*** Message Summary: 1 warning(s), 0 error(s)
innovus 5> checkDesign -timingLibrary
Design check done.
Report saved in file checkDesign/leon.main.htm.ascii.
*** Message Summary: 0 warning(s), 0 error(s)
innovus 4> checkDesign -netlist
**WARN: (IMPDB-2139): Input netlist has a cell CLKINVX12 which is marked dont_use in the library.
This cell will not be used in timing optimization. Use set_dont_use command to change.
**WARN: (IMPDB-2139): Input netlist has a cell CLKINVX12 which is marked dont_use in the library.
This cell will not be used in timing optimization. Use set_dont_use command to change.
**WARN: (IMPDB-2139): Input netlist has a cell CLKINVX12 which is marked dont_use in the library.
This cell will not be used in timing optimization. Use set_dont_use command to change.
**WARN: (IMPDB-2139): Input netlist has a cell CLKINVX12 which is marked dont_use in the library.
This cell will not be used in timing optimization. Use set_dont_use command to change.
**WARN: (IMPDB-2139): Input netlist has a cell CLKINVX12 which is marked dont_use in the library.
This cell will not be used in timing optimization. Use set_dont_use command to change.
**WARN: (IMPDB-2139): Input netlist has a cell CLKINVX12 which is marked dont_use in the library.
This cell will not be used in timing optimization. Use set_dont_use command to change.
**WARN: (EMS-27):
Message (IMPDB-2139) has exceeded the current message display limit of 20.
To increase the message display limit, refer to the product command reference manual.
# Number of cells of input netlist marked dont_use = 519.
Design check done.
Report saved in file checkDesign/leon.main.htm.ascii.
*** Summary of all messages that are not suppressed in this session:
Severity ID
Count Summary
WARNING IMPDB-2139
519 Input netlist has a cell %s which is mar...
WARNING IMPDB-2136
295 %s term '%s' of %s instance '%s' does no...
WARNING IMPREPO-200
1 There are %d Floating Ports in the top d...
WARNING IMPREPO-202
1 There are %d Ports connected to core ins...
WARNING IMPREPO-216
1 There are %d Instances with input pins t...
WARNING IMPREPO-218
1 There are %d Floating Instance terminals...
WARNING IMPREPO-227
1 There are %d High Fanout nets (>50).
*** Message Summary: 819 warning(s), 0 error(s)
CONFIDENTIAL
STEPS FOR PHYSICAL DESIGN USING
CADENCE INNOVUS - OTHERS
• Step 7 : Continue in innovus GUI
o
o
o
o
o
o
o
Floorplan
Powerplan
Placement
CTS
Routing
PV and
Analyse the reports in each stage of the design process
CONFIDENTIAL
Download