blob: ab99499537ed351dc47475d2450ae739f06fae9f [file] [log] [blame]
Ahmed Ghazyd4ec2f02021-04-05 18:32:10 +02001# 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
18set script_dir [file dirname [file normalize [info script]]]
19
20source $script_dir/../../caravel/openlane/user_project_wrapper_empty/fixed_wrapper_cfgs.tcl
21
22set ::env(DESIGN_NAME) user_project_wrapper
23#section end
24
25# User Configurations
26
27## Source Verilog Files
28set ::env(VERILOG_FILES) "\
manarabdelatye542bdf2021-04-20 11:15:40 +020029 $script_dir/../../caravel/verilog/rtl/defines.v \
Ahmed Ghazyd4ec2f02021-04-05 18:32:10 +020030 $script_dir/../../verilog/rtl/user_project_wrapper.v"
31
32## Clock configurations
33set ::env(CLOCK_PORT) "user_clock2"
34set ::env(CLOCK_NET) "mprj.clk"
35
36set ::env(CLOCK_PERIOD) "10"
37
38## Internal Macros
39### Macro Placement
40set ::env(MACRO_PLACEMENT_CFG) $script_dir/macro.cfg
41
42### Black-box verilog and views
43set ::env(VERILOG_FILES_BLACKBOX) "\
44 $script_dir/../../caravel/verilog/rtl/defines.v \
Konrad Rzeszutek Wilk2b9b8492021-06-09 19:57:33 -040045 $script_dir/../../verilog/rtl/sha1/src/sha1_wb.v \
46 $script_dir/../../verilog/rtl/sha1/src/wrapper_sha1.v"
Ahmed Ghazyd4ec2f02021-04-05 18:32:10 +020047
48set ::env(EXTRA_LEFS) "\
Konrad Rzeszutek Wilk2b9b8492021-06-09 19:57:33 -040049 $script_dir/../../lef/wrapper_sha1.lef"
Ahmed Ghazyd4ec2f02021-04-05 18:32:10 +020050
51set ::env(EXTRA_GDS_FILES) "\
Konrad Rzeszutek Wilk2b9b8492021-06-09 19:57:33 -040052 $script_dir/../../gds/wrapper_sha1.gds"
Ahmed Ghazyd4ec2f02021-04-05 18:32:10 +020053
manarabdelaty609ec982021-04-21 17:00:06 +020054set ::env(GLB_RT_MAXLAYER) 5
55
Konrad Rzeszutek Wilkbb936922021-06-12 08:01:17 -040056set ::env(GLB_RT_ADJUSTMENT) 0.70
57# 0 -> 1: 1 means don't use the layer
58# l2 is met1
59set ::env(GLB_RT_L2_ADJUSTMENT) 0.9
60set ::env(GLB_RT_L3_ADJUSTMENT) 0.7
61
62set ::env(ROUTING_OPT_ITERS) 100
manarabdelaty609ec982021-04-21 17:00:06 +020063set ::env(FP_PDN_CHECK_NODES) 0
Ahmed Ghazyd4ec2f02021-04-05 18:32:10 +020064
65# The following is because there are no std cells in the example wrapper project.
66set ::env(SYNTH_TOP_LEVEL) 1
67set ::env(PL_RANDOM_GLB_PLACEMENT) 1
68
69set ::env(PL_RESIZER_DESIGN_OPTIMIZATIONS) 0
70set ::env(PL_RESIZER_TIMING_OPTIMIZATIONS) 0
71set ::env(PL_RESIZER_BUFFER_INPUT_PORTS) 0
72set ::env(PL_RESIZER_BUFFER_OUTPUT_PORTS) 0
73
74set ::env(DIODE_INSERTION_STRATEGY) 0
75set ::env(FILL_INSERTION) 0
76set ::env(TAP_DECAP_INSERTION) 0
77set ::env(CLOCK_TREE_SYNTH) 0