( ESNUG 354 Item 7 ) ---------------------------------------------- [6/1/00]
From: [ A Synopsys PhysOpt CAE ]
Subject: Common Errors On LEF2PLIB Conversion For PhysOpt & Chip Architect
John, please post this to ESNUG.
If you're using the current version of PhysOpt, you will need to do a
Cadence LEF to Synopsys PLIB conversion to make sure your physical library
for PhysOpt that corresponds to the logical library. Your physical
library defines properties for ASIC cells that allows placement tools to
know the size of the cell, the location of the pins, the locations of
obstructions, and other physical data.
The creation of a physical library involves two steps:
1) lef2plib conversion
lef2plib "physical_lib_name" "lef_filename" "plib filename"
2) compile plib to pdb format in psyn_shell
psyn_shell -f make_pdb.tcl
"make_pdb.tcl" has in it:
read_plib plib_filename
write -output physical_lib.pdb physical_lib_name
exit
The only new variable that is needed to load the physical library in PhysOpt
is:
set_physical_library physical_lib.pdb
Note: PhysOpt will look in your "search_path" to find the physical library.
When you invoke the command "physopt" in psyn_shell, PhysOpt performs one
last check of the logical vs the physical libraries. During the comparison
you may see Warning messages regarding missing physical library for
corresponding logical library. You can invoke a check_only to compare the
logical library with the physical library with the following command:
physopt -check_only
Another check the user can make to see if cells are included in the physical
library is to use the command below:
report_lib -physical "my_physical_lib"
This way you can find any physical probelms before you start a full PhysOpt
run. If a Warning occurs for any cells that you plan on using, below is a
list of guidelines to check to get rid of the warnings:
1) Make sure there is a matching LEF file for your corresponding logical
cell.
2) Check to see that the cell name in the LEF file exactly matches the
cell name in the logical library. The checks are case sensitive so
watch for uppercase vs lowercase errors.
3) PhysOpt checks for matching pin names. To verify the pin names match,
consider the following steps:
* Check that you have the same number of pins in the LEF and the
LIB files. You can grep for keywords to get a quick number of pins.
* Watch for different characters in bus pin names. A common mistake
is "[" in the LEF and "(" in the LIB file.
* Watch for case sensitivity between the pin names.
4) PhysOpt also checks the direction of pins. A mismatch of the direction
for a pin will also cause a mismatch.
Hope this helps.
- [ A Synopsys PhysOpt CAE ]
|
|