cadence foundation flow and db tcl commands in encounter
TRANSCRIPT
Cadence Foundation flow Cadence Foundation flow and db Tcl commands in and db Tcl commands in EncounterEncounter
Cadence Foundation flowCadence Foundation flowCadence Foundation flow s(FF) are the
recommended procedures for implementing flat, hierarchical, and low-power/CPF designs using the EDI system software
FF provides a set scripts that gives an easy way to automate these flows
The scripts generated from FF are a starting point for building an implementation environment, but we can customize the scripts at various points in the flow
OverviewSpecifying the flow to runScripts for steps in the flowSubscriptsPlug-in scripts
Overview Overview Inputs for FF are
◦setup.tcl◦edi_config.tcl◦lp_config.tcl
The setup.tcl contains a single source of all design data required to run design
The edi_config.tcl contains flow variables which can be used to customize the flow
The lp_config.tcl file is used for low power designs
Using input files for FF, we can run Cadence genflow script to create the implementation environment with run scripts
For any customization in the flow, edit setup.tcl, edi_config.tcl and lp_config.tcl
Specifying the flow to runSpecifying the flow to runThe EDI system software selects
the flow to run as follows◦If the vars(cpf_file) variable is
defined, the low-power flow is run◦If the vars(partition_list) variable is
defined, the hierarchical flow is run◦If neither of these flows is defined,
the flat flow is run
Scripts for steps in the Scripts for steps in the flowflow
Each script runs independently, starting from the database created by the previous step and creating a database when it completes
SubscriptsSubscriptsIn addition to the setup.tcl script,
the flow scripts use the following subscripts internally◦utils.tcl – common procedure for all
foundation flows◦procs.tcl procedures that execute the
EDI foundation flows
Plug-in scriptsPlug-in scriptsTo customize the flow, plug-ins
can be added into the flowThese plug-ins lets us to include
design-specific requirements while leaving the flow scripts unchanged
Create a plug-in file in PLUG directory and place it in edi_config.tcl file
Db tcl commandsDb tcl commandsEDI uses tcl shell for user
command-line interfaceFor each and every operation we
do will have equivalent tcl command. This tcl command can be found in encounter.cmd file
Db commandsDb commandsTcl commands in EDI are 3 types
◦Pre defined commands with existing functionality
◦Fe-tcl commands◦Db tcl commands
Pre-defined commandsPre-defined commandsThese pre-defined commands will
have a defined functionality and can be found in EDI command reference
These commands does a specific task as explained in the command referencee.g. placeDesign --- placed all instances
Can be only used as the commands in tcl procedure script
Fe-tcl commandsFe-tcl commandsThese fp-tcl commands are set of
tcl procedures which can be used to query data inside EDI
There are atleast around 3000 fp-tcl commands in EDI
Very hard to rememberCan be used to write our own tcl
procedure scripts
Example fe tcl script
proc user_get_all_ios { } { set ioList {} dbForEachCellFTerm [dbgTopCell] ftermId { set ioList [concat $ioList [dbFTermName $ftermId]] } return $ioList}
Db-tcl commandsDb-tcl commandsNew and very fast way of
accessing the data from EDINo need to remember so many
commandsVery much helpful for tcl
programming and automaton in EDI
Using a single question mark will show you a list of the attributes available at this level.> dbGet head.?> head: allCells dbUnits layers mfgGrid objType props
To list all the attributes AND their values use a double question mark
Another starting point using dbget is ‘top’Using top, we can access all design based infoE.g. Examples using dbget
>dbget head.layers.name>YM0 M1 M2 M3 M4 M5 M6 M7 M8 M9 CA V1 V2 V3 V4
V5 V6 V7 V8 OVERLAP>dbget top.name