| puts stdout "Sourcing design .magicrc for technology sky130A ..." | |
| # Put grid on 0.005 pitch. This is important, as some commands don't | |
| # rescale the grid automatically (such as lef read?). | |
| set scalefac [tech lambda] | |
| if {[lindex $scalefac 1] < 2} { | |
| scalegrid 1 2 | |
| } | |
| # drc off | |
| drc euclidean on | |
| # default pdk | |
| # set SW_PDK_ROOT "/ef/tech/SW.2" | |
| set PDK "sky130A" | |
| set SCL_VARIANT "sky130_fd_sc_hd" | |
| set IO_VARIANT "sky130_fd_io" | |
| set PDKPATH "$::env(SW_PDK_ROOT)/$PDK" | |
| # loading technology | |
| tech load "$PDKPATH/libs.tech/magic/current/$PDK.tech" | |
| # load device generator | |
| source "$PDKPATH/libs.tech/magic/current/$PDK.tcl" | |
| # load bind keys (optional) | |
| source "$PDKPATH/libs.tech/magic/current/$PDK-BindKeys" | |
| # set units to lambda grid | |
| snap lambda | |
| # add path to reference cells | |
| set MAGPATH "$PDKPATH/libs.ref/$SCL_VARIANT/mag/*.mag" | |
| addpath "$PDKPATH/libs.ref/sky130_fd_pr_base/mag" | |
| addpath "$PDKPATH/libs.ref/$IO_VARIANT/mag" | |
| addpath "$PDKPATH/libs.ref/$SCL_VARIANT/mag" | |
| # addpath ${MAGPATH}/s8fmlt | |
| # add path to GDS cells | |
| # add path to IP from catalog. This procedure defined in the PDK script. | |
| catch {magic::query_mylib_ip} | |
| # add path to local IP from user design space. Defined in the PDK script. | |
| catch {magic::query_my_projects} |