| # Copyright 2020 Efabless Corporation |
| # |
| # Licensed under the Apache License, Version 2.0 (the "License"); |
| # you may not use this file except in compliance with the License. |
| # You may obtain a copy of the License at |
| # |
| # http://www.apache.org/licenses/LICENSE-2.0 |
| # |
| # Unless required by applicable law or agreed to in writing, software |
| # distributed under the License is distributed on an "AS IS" BASIS, |
| # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| # See the License for the specific language governing permissions and |
| # limitations under the License. |
| |
| # default pdk/scl |
| if { ![info exists ::env(PDK)] } { |
| set ::env(PDK) "sky130A" |
| } |
| if { ![info exists ::env(STD_CELL_LIBRARY)] } { |
| set ::env(STD_CELL_LIBRARY) "sky130_fd_sc_hd" |
| } |
| |
| set ::env(USE_GPIO_PADS) 0 |
| |
| if { ![info exists ::env(QUIT_ON_MISMATCHES)] } { |
| set ::env(QUIT_ON_MISMATCHES) {1} |
| } |
| if { ![info exists ::env(TEST_MISMATCHES)] } { |
| set ::env(TEST_MISMATCHES) {all} |
| } |
| |
| # Flow control defaults |
| set ::env(RUN_LVS) 1 |
| |
| set ::env(LEC_ENABLE) 0 |
| set ::env(YOSYS_REWRITE_VERILOG) 0 |
| |
| set ::env(PRIMARY_SIGNOFF_TOOL) magic |
| |
| set ::env(RUN_MAGIC) 1 |
| set ::env(RUN_MAGIC_DRC) 1 |
| set ::env(MAGIC_PAD) 0 |
| set ::env(MAGIC_ZEROIZE_ORIGIN) 0 |
| set ::env(MAGIC_GENERATE_GDS) 1 |
| set ::env(MAGIC_GENERATE_LEF) 1 |
| set ::env(MAGIC_GENERATE_MAGLEF) 1 |
| set ::env(MAGIC_WRITE_FULL_LEF) 0 |
| set ::env(MAGIC_DRC_USE_GDS) 1 |
| set ::env(MAGIC_EXT_USE_GDS) 0 |
| set ::env(MAGIC_INCLUDE_GDS_POINTERS) 0 |
| set ::env(MAGIC_DISABLE_HIER_GDS) 1 |
| set ::env(MAGIC_CONVERT_DRC_TO_RDB) 1 |
| |
| set ::env(KLAYOUT_XOR_GDS) 1 |
| set ::env(KLAYOUT_XOR_XML) 1 |
| |
| set ::env(RUN_ROUTING_DETAILED) 1 |
| set ::env(RUN_SIMPLE_CTS) 0 |
| set ::env(CLOCK_PERIOD) "10.0" |
| set ::env(RUN_KLAYOUT) 1 |
| set ::env(TAKE_LAYOUT_SCROT) 0 |
| set ::env(RUN_KLAYOUT_DRC) 0 |
| set ::env(KLAYOUT_DRC_KLAYOUT_GDS) 0 |
| set ::env(RUN_KLAYOUT_XOR) 1 |
| set ::env(USE_ARC_ANTENNA_CHECK) 1 |
| |
| set ::env(FILL_INSERTION) 1 |
| set ::env(TAP_DECAP_INSERTION) 1 |
| |
| set ::env(WIDEN_SITE) 1 |
| set ::env(WIDEN_SITE_IS_FACTOR) 1 |
| |
| set ::env(RUN_SPEF_EXTRACTION) 1 |
| set ::env(RUN_CVC) 1 |
| |
| set ::env(GENERATE_FINAL_SUMMARY_REPORT) 1 |
| |
| |
| # 0: no diodes |
| # 1: spray inputs with diodes |
| # 2: spray inputs with fake diodes first then fix up the violators with real ones |
| # 3: use FR Antenna Avoidance flow |
| # 4: Spray diodes on design pins, and add diodes where they need to be added for each macro. |
| # 5: Same as 2 but behaves like 4. |
| set ::env(DIODE_INSERTION_STRATEGY) 3 |
| |
| set ::env(STA_REPORT_POWER) {1} |
| set ::env(SAVE_FINAL_VIEWS) {1} |
| |
| ## ECO Flow |
| set ::env(ECO_ENABLE) {0} |
| set ::env(ECO_STARTED) {0} |
| set ::env(ECO_ITER) {0} |
| set ::env(ECO_FINISH) {0} |
| set ::env(ECO_SKIP_PIN) {1} |