Cadence Encounter
To use the Cadence tools, you must change this environment variable:
export OSUcells=/mada/software/techfiles/osu_soc_v2.7/cadence
The OSU scripts for Cadence can be copied from here:
cp -rf /mada/software/techfiles/osu_soc_v2.7/cadence/flow/tsmc018
You will need to specify the correct top-level name and gate-level netlist name in encounter.conf. To place and route the design, type:
encounter -init encounter.tcl
with X11 exported to your local machine. If this completes successfully, you can hit "f" to center the layout. If you use the -cmd argument, it will save all your GUI commands into a file for replay later.
Bugs due to new version
reportTA is no longer a valid command. Instead, you should substitute this in the files with timeDesign. This is available under the Timing menu.
Notes on 45nm
If you want to synthesize a design using the Nangate FreePDK45 cell library, you need to make a few changes:
1) You need to compile the Nangate .lib into a .db and use that. To do this, run:
dc_shell-t
Then execute these commands:
read_lib /mada/software/techfiles/NangateOpenCellLibrary_PDKv1_3_v2009_07/liberty/NangateOpenCellLibrary_typical_conditional_ccs.lib write_lib NangateOpenCellLibrary
which will create a file NangateOpenCellLibrary.db. Move that to your project directory.
2) Then, these lines change to the compile_dc.tcl:
set search_path [concat $search_path . ] set link_library [set target_library [concat [list NangateOpenCellLibrary.db ] [list dw_foundation.sldb]]]
3) In the encounter.conf, you need to reference the .lib file instead of the .tlf file. You also need to point to the .lef file. Specifically, these lines change:
set OSUcells /mada/software/techfiles/NangateOpenCellLibrary_PDKv1_3_v2009_07 set rda_Input(ui_timelib) "$OSUcells/liberty/NangateOpenCellLibrary_typical_conditional_ccs.lib" set rda_Input(ui_leffile) "$OSUcells/lef/NangateOpenCellLibrary.lef"