***** calibre hcell file format *****
i.e.
//layout name || cdl source name
ABC DEF //one to many
ABC GHI //one to many
UVW XYZ //many to one
RST XYZ //many to one
LMN PQK //one to one
JFQ KPT //one to one
2020年9月22日星期二
calibre hcell file format
output a shape/net to gds format
***** output a shape/net to gds format *****
DRC CHECK MAP "rule_check" GDSII "layer number" "datatype" "filename"
i.e.
Grow_Metal1 { @ Grow metal1 by 0.1u
SIZE metal1 BY 0.1
}
DRC CHECK MAP Grow_Metal1 GDSII 21 0 "./mask/grown_m1.gds"
i.e.
LAYER metal metal1 metal2 metal3 // define layer set "metal"
Plot_RESET { @ Output all metal shapes beloging to RESET net
NET metal RESET
}
DRC CHECK MAP Plot_RESET GDSII 1 0 "./plots/RESET.gds"
2012年1月30日星期一
To probe signal from layout for reviewing
This can be done by running DRC check
Keep the layer and connection definition, delete the rule checks in the rule deck (NOT the header file),
then add the following commands at end of the rule deck:
*** remember to set "DRC MAXIMUM RESULTS ALL", since the result output
*** may be exceed the max. limits
// probe nets
Plot_VDDA { @output all metal shapes belonging to VDDA net
NET Metaltop VDDA
NET Met3 VDDA
NET Met2 VDDA
NET PolyxRes VDDA
NET Nsd VDDA
NET Psd VDDA
}
DRC CHECK MAP Plot_VDDA GDSII 6 0 "./plots/VDDA.gds"
Convert verilog netlist to spice netlist
v2lvs -v verilog_in.v -o spice_out.sp -w 3
for more complex syntax put into a script, say "v2sp.sh"
v2lvs -n -s0 GND -s1 VDD -s inc_1.cdl -s inc_2.sp -lsp sp_ref_lib.sp -v $1 -o $2
e.g. run in console:
./v2sp.sh input.v output.sp
##
-n : make the unconnected pins to get numbered connections starting at 1000
-s0
-s1
-s
-lsp
-v
-o
$1 : system var, which is filename1
$2 : system var, which is filename2
To ignore a cell or region when running DRC/LVS
LAYOUT WINDEL 315 2638 384 2680 // ignore the rectangle region at (315, 2638) (384, 2680)
EXCLUDE CELL "cell_name" // exclude the "cell_name"
LVS BOX cell1 cell2 // treat cell1, cell2 as a black box, only check pin connection, not the inside netlist/layout of the cells. (useful for phantom cells or unfinished cells for doing LVS)
Layout pin text placement
The pin text on the layout can be specified by a text file rather than placing the text label on layout. This approach can be used for running LVS of a gds file which doesn't include any text information.
LAYER M2_TXT 50 // define the layer
TEXT LAYER M2_TXT // define layer as a text layer
LAYOUT TEXT CLOCK 10.5 16.8 M2_TXT // place the text "CLOCK" at (10.5, 16.8)
the layout text can be included in a separated file to simplify the rule deck file