blob: 4afd9bdda890b5c95e14e2a6646a112cc8f76151 [file] [log] [blame]
Tim Edwards55f4d0e2020-07-05 15:41:02 -04001#!/bin/tcsh
2#---------------------------------------------------------------
3# Shell script setting up all variables used by the qflow scripts
4# for this project
5#---------------------------------------------------------------
6
7# The LEF file containing standard cell macros
8
9#ifdef EF_FORMAT
10set leffile=STAGING_PATH/TECHNAME/libs.ref/lef/sky130_osu130/sky130_osu130.lef
11#else (!EF_FORMAT)
12set leffile=STAGING_PATH/TECHNAME/libs.ref/sky130_osu130/lef/sky130_osu130.lef
13#endif (!EF_FORMAT)
14
15# The SPICE netlist containing subcell definitions for all the standard cells
16#ifdef EF_FORMAT
17set spicefile=STAGING_PATH/TECHNAME/libs.ref/spice/sky130_osu130/sky130_osu130.spice
18#else (!EF_FORMAT)
19set spicefile=STAGING_PATH/TECHNAME/libs.ref/sky130_osu130/spice/sky130_osu130.spice
20#endif (!EF_FORMAT)
21
22# The liberty format file containing standard cell timing and function information
23#ifdef EF_FORMAT
24set libertyfile=STAGING_PATH/TECHNAME/libs.ref/lib/sky130_osu130/sky130_osu130.lib
25#else (!EF_FORMAT)
26set libertyfile=STAGING_PATH/TECHNAME/libs.ref/sky130_osu130/lib/sky130_osu130.lib
27#endif (!EF_FORMAT)
28
29# If there is another LEF file containing technology information
30# that is separate from the file containing standard cell macros,
31# set this. Otherwise, leave it defined as an empty string.
32
33#ifdef METAL5
34#ifdef EF_FORMAT
35set techleffile=STAGING_PATH/TECHNAME/libs.ref/techLEF/sky130_osu130/sky130_osu130_tech.lef
36#else (!EF_FORMAT)
37set techleffile=STAGING_PATH/TECHNAME/libs.ref/sky130_osu130/techLEF/sky130_osu130_tech.lef
38#endif (!EF_FORMAT)
39#else
40# NOTE: There is no technology LEF file for the 3-metal stack!
41#endif
42
43# All cells below should be the lowest output drive strength value,
44# if the standard cell set has multiple cells with different drive
45# strengths. Comment out any cells that do not exist.
46
47set bufcell=BUFX2 ;# Minimum drive strength buffer cell
48set bufpin_in=A ;# Name of input port to buffer cell
49set bufpin_out=Y ;# Name of output port to buffer cell
50set clkbufcell=BUFX2 ;# Minimum drive strength buffer cell
51set clkbufpin_in=A ;# Name of input port to buffer cell
52set clkbufpin_out=Y ;# Name of output port to buffer cell
53
54set fillcell=FILL ;# Spacer (filler) cell (prefix, if more than one)
55set decapcell="" ;# Decap (filler) cell (prefix, if more than one)
56set antennacell="" ;# Antenna (filler) cell (prefix, if more than one)
57set antennapin_in="" ;# Antenna cell input connection
58set bodytiecell="" ;# Body tie (filler) cell (prefix, if more than one)
59
60# yosys tries to eliminate use of these; depends on source .v
61set tiehi="" ;# Cell to connect to power, if one exists
62set tiehipin_out="" ;# Output pin name of tiehi cell, if it exists
63set tielo="" ;# Cell to connect to ground, if one exists
64set tielopin_out="" ;# Output pin name of tielo cell, if it exists
65
66set gndnet="vdd" ;# Name used for ground pins in standard cells
67set vddnet="vss" ;# Name used for power pins in standard cells
68
69set separator="" ;# Separator between gate names and drive strengths
70set techfile=STAGING_PATH/TECHNAME/MAGIC_CURRENT/TECHNAME.tech ;# magic techfile
71set magicrc=STAGING_PATH/TECHNAME/MAGIC_CURRENT/TECHNAME.magicrc ;# magic startup script
72set magic_display="XR" ;# magic display, defeat display query and OGL preference
73set netgen_setup=STAGING_PATH/TECHNAME/libs.tech/netgen/TECHNAME_setup.tcl ;# netgen setup file for LVS
74#ifdef EF_FORMAT
75set gdsfile=STAGING_PATH/TECHNAME/libs.ref/gds/sky130_osu130/sky130_osu130.gds ;# GDS database of standard cells
76set verilogfile=STAGING_PATH/TECHNAME/libs.ref/verilog/sky130_osu130/sky130_osu130.v ;# Verilog models of standard cells
77#else (!EF_FORMAT)
78set gdsfile=STAGING_PATH/TECHNAME/libs.ref/sky130_osu130/gds/sky130_osu130.gds ;# GDS database of standard cells
79set verilogfile=STAGING_PATH/TECHNAME/libs.ref/sky130_osu130/verilog/sky130_osu130.v ;# Verilog models of standard cells
80#endif (!EF_FORMAT)
81
82# Set a conditional default in the project_vars.sh file for this process
83set postproc_options=""
84#ifdef METAL5
85# Normally one does not want to use the top metal for signal routing
86set route_layers = 5
87#else
88set route_layers = 3
89#endif
90set fill_ratios="100,0,0,0"
91set fanout_options="-l 100 -c 10"
92set addspacers_options="-stripe 1.6 40.0 PG"
93set xspice_options="-io_time=250p -time=50p -idelay=20p -odelay=50p -cload=250f"