Ahmed Ghazy | d4ec2f0 | 2021-04-05 18:32:10 +0200 | [diff] [blame] | 1 | # SPDX-FileCopyrightText: 2020 Efabless Corporation |
| 2 | # |
| 3 | # Licensed under the Apache License, Version 2.0 (the "License"); |
| 4 | # you may not use this file except in compliance with the License. |
| 5 | # You may obtain a copy of the License at |
| 6 | # |
| 7 | # http://www.apache.org/licenses/LICENSE-2.0 |
| 8 | # |
| 9 | # Unless required by applicable law or agreed to in writing, software |
| 10 | # distributed under the License is distributed on an "AS IS" BASIS, |
| 11 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| 12 | # See the License for the specific language governing permissions and |
| 13 | # limitations under the License. |
| 14 | # SPDX-License-Identifier: Apache-2.0 |
| 15 | |
| 16 | # Base Configurations. Don't Touch |
| 17 | # section begin |
| 18 | set script_dir [file dirname [file normalize [info script]]] |
| 19 | |
| 20 | source $script_dir/../../caravel/openlane/user_project_wrapper_empty/fixed_wrapper_cfgs.tcl |
| 21 | |
| 22 | set ::env(DESIGN_NAME) user_project_wrapper |
| 23 | #section end |
| 24 | |
| 25 | # User Configurations |
| 26 | |
| 27 | ## Source Verilog Files |
| 28 | set ::env(VERILOG_FILES) "\ |
manarabdelaty | e542bdf | 2021-04-20 11:15:40 +0200 | [diff] [blame] | 29 | $script_dir/../../caravel/verilog/rtl/defines.v \ |
mrg | 0d14b0b | 2021-06-17 11:22:43 -0700 | [diff] [blame] | 30 | $script_dir/../../verilog/rtl/openram_testchip.v \ |
AmoghLonkar | cf608e2 | 2021-06-07 15:31:05 -0700 | [diff] [blame] | 31 | $script_dir/../../verilog/rtl/user_project_wrapper.v " |
Ahmed Ghazy | d4ec2f0 | 2021-04-05 18:32:10 +0200 | [diff] [blame] | 32 | |
| 33 | ## Clock configurations |
mrg | 0d14b0b | 2021-06-17 11:22:43 -0700 | [diff] [blame] | 34 | set ::env(CLOCK_PORT) {io_in\[17\]} |
| 35 | set ::env(CLOCK_NET) "CONTROL_LOGIC.clk" |
| 36 | set ::env(RESET_PORT) {io_in\[15\] wb_rst_i} |
Ahmed Ghazy | d4ec2f0 | 2021-04-05 18:32:10 +0200 | [diff] [blame] | 37 | |
mrg | 0d14b0b | 2021-06-17 11:22:43 -0700 | [diff] [blame] | 38 | set ::env(CLOCK_PERIOD) "30" |
mrg | 8188070 | 2021-06-16 20:34:50 -0700 | [diff] [blame] | 39 | set ::env(BASE_SDC_FILE) "$script_dir/user_project_wrapper.sdc" |
Ahmed Ghazy | d4ec2f0 | 2021-04-05 18:32:10 +0200 | [diff] [blame] | 40 | |
| 41 | ## Internal Macros |
| 42 | ### Macro Placement |
| 43 | set ::env(MACRO_PLACEMENT_CFG) $script_dir/macro.cfg |
| 44 | |
| 45 | ### Black-box verilog and views |
| 46 | set ::env(VERILOG_FILES_BLACKBOX) "\ |
| 47 | $script_dir/../../caravel/verilog/rtl/defines.v \ |
AmoghLonkar | d7ce953 | 2021-05-31 09:29:20 -0700 | [diff] [blame] | 48 | $script_dir/../../verilog/rtl/sky130_sram_1kbyte_1rw1r_32x256_8.v \ |
mrg | 2f1a8ef | 2021-06-14 13:26:17 -0700 | [diff] [blame] | 49 | $script_dir/../../verilog/rtl/sky130_sram_1kbyte_1rw1r_8x1024_8.v \ |
| 50 | $script_dir/../../verilog/rtl/sky130_sram_2kbyte_1rw1r_32x512_8.v \ |
| 51 | $script_dir/../../verilog/rtl/sky130_sram_4kbyte_1rw1r_32x1024_8.v \ |
| 52 | $script_dir/../../verilog/rtl/sky130_sram_8kbyte_1rw1r_32x2048_8.v \ |
AmoghLonkar | d7ce953 | 2021-05-31 09:29:20 -0700 | [diff] [blame] | 53 | $script_dir/../../verilog/rtl/sram_1rw0r0w_32_1024_sky130.v \ |
| 54 | $script_dir/../../verilog/rtl/sram_1rw0r0w_32_256_sky130.v \ |
| 55 | $script_dir/../../verilog/rtl/sram_1rw0r0w_32_512_sky130.v \ |
mrg | e988856 | 2021-06-18 08:01:45 -0700 | [diff] [blame^] | 56 | $script_dir/../../verilog/rtl/sram_1rw0r0w_32_512_sky130.v \ |
mrg | 0d14b0b | 2021-06-17 11:22:43 -0700 | [diff] [blame] | 57 | $script_dir/../../verilog/rtl/sram_1rw0r0w_64_512_sky130.v" |
| 58 | #$script_dir/../../verilog/rtl/openram_testchip.v |
Ahmed Ghazy | d4ec2f0 | 2021-04-05 18:32:10 +0200 | [diff] [blame] | 59 | |
| 60 | set ::env(EXTRA_LEFS) "\ |
AmoghLonkar | d7ce953 | 2021-05-31 09:29:20 -0700 | [diff] [blame] | 61 | $script_dir/../../lef/sky130_sram_1kbyte_1rw1r_32x256_8.lef \ |
mrg | 2f1a8ef | 2021-06-14 13:26:17 -0700 | [diff] [blame] | 62 | $script_dir/../../lef/sky130_sram_1kbyte_1rw1r_8x1024_8.lef \ |
| 63 | $script_dir/../../lef/sky130_sram_2kbyte_1rw1r_32x512_8.lef \ |
| 64 | $script_dir/../../lef/sky130_sram_4kbyte_1rw1r_32x1024_8.lef \ |
| 65 | $script_dir/../../lef/sky130_sram_8kbyte_1rw1r_32x2048_8.lef \ |
AmoghLonkar | d7ce953 | 2021-05-31 09:29:20 -0700 | [diff] [blame] | 66 | $script_dir/../../lef/sram_1rw0r0w_32_1024_sky130.lef \ |
| 67 | $script_dir/../../lef/sram_1rw0r0w_32_256_sky130.lef \ |
| 68 | $script_dir/../../lef/sram_1rw0r0w_32_512_sky130.lef \ |
mrg | 0d14b0b | 2021-06-17 11:22:43 -0700 | [diff] [blame] | 69 | $script_dir/../../lef/sram_1rw0r0w_64_512_sky130.lef" |
| 70 | # $script_dir/../../lef/openram_testchip.lef |
Ahmed Ghazy | d4ec2f0 | 2021-04-05 18:32:10 +0200 | [diff] [blame] | 71 | |
| 72 | set ::env(EXTRA_GDS_FILES) "\ |
AmoghLonkar | d7ce953 | 2021-05-31 09:29:20 -0700 | [diff] [blame] | 73 | $script_dir/../../gds/sky130_sram_1kbyte_1rw1r_32x256_8.gds \ |
mrg | 2f1a8ef | 2021-06-14 13:26:17 -0700 | [diff] [blame] | 74 | $script_dir/../../gds/sky130_sram_1kbyte_1rw1r_8x1024_8.gds \ |
| 75 | $script_dir/../../gds/sky130_sram_2kbyte_1rw1r_32x512_8.gds \ |
| 76 | $script_dir/../../gds/sky130_sram_4kbyte_1rw1r_32x1024_8.gds \ |
| 77 | $script_dir/../../gds/sky130_sram_8kbyte_1rw1r_32x2048_8.gds \ |
AmoghLonkar | d7ce953 | 2021-05-31 09:29:20 -0700 | [diff] [blame] | 78 | $script_dir/../../gds/sram_1rw0r0w_32_1024_sky130.gds \ |
mrg | 8bde8f8 | 2021-06-17 11:52:32 -0700 | [diff] [blame] | 79 | $script_dir/../../gds/sram_1rw0r0w_32_256_sky130.gds \ |
AmoghLonkar | d7ce953 | 2021-05-31 09:29:20 -0700 | [diff] [blame] | 80 | $script_dir/../../gds/sram_1rw0r0w_32_512_sky130.gds \ |
mrg | 0d14b0b | 2021-06-17 11:22:43 -0700 | [diff] [blame] | 81 | $script_dir/../../gds/sram_1rw0r0w_64_512_sky130.gds" |
| 82 | # $script_dir/../../gds/openram_testchip.gds |
Ahmed Ghazy | d4ec2f0 | 2021-04-05 18:32:10 +0200 | [diff] [blame] | 83 | |
AmoghLonkar | 49efff8 | 2021-05-29 21:31:43 -0700 | [diff] [blame] | 84 | set ::env(GLB_RT_MAXLAYER) 5 |
manarabdelaty | 609ec98 | 2021-04-21 17:00:06 +0200 | [diff] [blame] | 85 | |
AmoghLonkar | 49efff8 | 2021-05-29 21:31:43 -0700 | [diff] [blame] | 86 | set ::env(FP_PDN_CHECK_NODES) 0 |
AmoghLonkar | 41062a7 | 2021-05-26 09:08:09 -0700 | [diff] [blame] | 87 | # Power config |
AmoghLonkar | 41062a7 | 2021-05-26 09:08:09 -0700 | [diff] [blame] | 88 | |
AmoghLonkar | 49efff8 | 2021-05-29 21:31:43 -0700 | [diff] [blame] | 89 | #set ::env(FP_PIN_ORDER_CFG) $script_dir/pin_order.cfg |
AmoghLonkar | 41062a7 | 2021-05-26 09:08:09 -0700 | [diff] [blame] | 90 | |
| 91 | # Placement config |
| 92 | set ::env(PL_OPENPHYSYN_OPTIMIZATIONS) 0 |
mrg | 8de4e28 | 2021-06-14 18:02:33 -0700 | [diff] [blame] | 93 | set ::env(PL_DIAMOND_SEARCH_HEIGHT) 500 |
mrg | 0d14b0b | 2021-06-17 11:22:43 -0700 | [diff] [blame] | 94 | #set ::env(PL_RANDOM_GLB_PLACEMENT) 1 |
AmoghLonkar | 41062a7 | 2021-05-26 09:08:09 -0700 | [diff] [blame] | 95 | |
mrg | 8188070 | 2021-06-16 20:34:50 -0700 | [diff] [blame] | 96 | set ::env(GLB_RT_ADJUSTMENT) 0.25 |
mrg | 4a0200e | 2021-06-17 16:45:35 -0700 | [diff] [blame] | 97 | set ::env(PL_TARGET_DENSITY) 0.25 |
AmoghLonkar | 41062a7 | 2021-05-26 09:08:09 -0700 | [diff] [blame] | 98 | |
AmoghLonkar | a51bbbe | 2021-05-30 16:05:33 -0700 | [diff] [blame] | 99 | #set ::env(MAGIC_DRC_USE_GDS) 0 |
| 100 | |
AmoghLonkar | d55f176 | 2021-06-02 08:13:04 -0700 | [diff] [blame] | 101 | set ::env(RUN_KLAYOUT_DRC) 0 |
AmoghLonkar | bb967ab | 2021-06-03 08:42:24 -0700 | [diff] [blame] | 102 | set ::env(RUN_KLAYOUT_XOR) 0 |
AmoghLonkar | cf608e2 | 2021-06-07 15:31:05 -0700 | [diff] [blame] | 103 | |
mrg | 4a0200e | 2021-06-17 16:45:35 -0700 | [diff] [blame] | 104 | # Spray diodes |
mrg | 4a0200e | 2021-06-17 16:45:35 -0700 | [diff] [blame] | 105 | set ::env(DIODE_INSERTION_STRATEGY) 1 |
AmoghLonkar | cf608e2 | 2021-06-07 15:31:05 -0700 | [diff] [blame] | 106 | # The following is because there are no std cells in the example wrapper project. |
AmoghLonkar | 58d416f | 2021-06-10 22:44:09 -0700 | [diff] [blame] | 107 | #set ::env(SYNTH_TOP_LEVEL) 1 |
| 108 | #set ::env(PL_RANDOM_GLB_PLACEMENT) 1 |
AmoghLonkar | cf608e2 | 2021-06-07 15:31:05 -0700 | [diff] [blame] | 109 | |
AmoghLonkar | 58d416f | 2021-06-10 22:44:09 -0700 | [diff] [blame] | 110 | #set ::env(PL_RESIZER_DESIGN_OPTIMIZATIONS) 0 |
| 111 | #set ::env(PL_RESIZER_TIMING_OPTIMIZATIONS) 0 |
| 112 | #set ::env(PL_RESIZER_BUFFER_INPUT_PORTS) 0 |
| 113 | #set ::env(PL_RESIZER_BUFFER_OUTPUT_PORTS) 0 |
AmoghLonkar | cf608e2 | 2021-06-07 15:31:05 -0700 | [diff] [blame] | 114 | |
AmoghLonkar | 58d416f | 2021-06-10 22:44:09 -0700 | [diff] [blame] | 115 | #set ::env(DIODE_INSERTION_STRATEGY) 0 |
| 116 | #set ::env(FILL_INSERTION) 0 |
| 117 | #set ::env(TAP_DECAP_INSERTION) 0 |
AmoghLonkar | cf608e2 | 2021-06-07 15:31:05 -0700 | [diff] [blame] | 118 | # set ::env(CLOCK_TREE_SYNTH) 0 |