Skip to content

Commit e4dd3e1

Browse files
committed
Revert "Merge pull request #3076 from povik/synth-yosys-slang"
This reverts commit 4ec37c3, reversing changes made to ac59028.
1 parent 6c6d84e commit e4dd3e1

File tree

88 files changed

+9251
-11653
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

88 files changed

+9251
-11653
lines changed

.gitmodules

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,3 @@
44
[submodule "tools/OpenROAD"]
55
path = tools/OpenROAD
66
url = ../OpenROAD.git
7-
[submodule "tools/yosys-slang"]
8-
path = tools/yosys-slang
9-
url = https://github.com/povik/yosys-slang.git

build_openroad.sh

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ OPENROAD_APP_BRANCH="master"
2121
INSTALL_PATH="$(pwd)/tools/install"
2222

2323
YOSYS_USER_ARGS=""
24-
YOSYS_ARGS=""
24+
YOSYS_ARGS="CONFIG=clang"
2525

2626
OPENROAD_APP_USER_ARGS=""
2727
OPENROAD_APP_ARGS=""
@@ -246,9 +246,6 @@ __local_build()
246246
echo "[INFO FLW-0017] Compiling Yosys."
247247
${NICE} make install -C tools/yosys -j "${PROC}" ${YOSYS_ARGS}
248248

249-
echo "[INFO FLW-0030] Compiling yosys-slang."
250-
${NICE} make install -C tools/yosys-slang -j "${PROC}" YOSYS_PREFIX="${INSTALL_PATH}/yosys/bin/"
251-
252249
echo "[INFO FLW-0018] Compiling OpenROAD."
253250
eval ${NICE} ./tools/OpenROAD/etc/Build.sh -dir="$DIR/tools/OpenROAD/build" -threads=${PROC} -cmake=\'${OPENROAD_APP_ARGS}\'
254251
${NICE} cmake --build tools/OpenROAD/build --target install -j "${PROC}"
@@ -343,7 +340,7 @@ __common_setup
343340

344341
# Choose install method
345342
if [ -z "${LOCAL_BUILD+x}" ] && command -v docker &> /dev/null; then
346-
echo "[INFO FLW-0000] Using docker build method."
343+
echo -n "[INFO FLW-0000] Using docker build method."
347344
__docker_build
348345
else
349346
echo -n "[INFO FLW-0001] Using local build method."

docs/tutorials/FlowTutorial.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -187,15 +187,15 @@ minimum required timing constraint.
187187
create_clock -name core_clock -period 17.4 [get_ports {clk_i}]
188188
```
189189

190-
### Design Input SystemVerilog
190+
### Design Input Verilog
191191

192-
The SystemVerilog input files are located in `./designs/src/ibex_sv/`
192+
The Verilog input files are located in `./designs/src/ibex/`
193193

194-
The design is defined in `ibex_core.sv` available
195-
[here](https://github.com/The-OpenROAD-Project/OpenROAD-flow-scripts/blob/master/flow/designs/src/ibex_sv/ibex_core.sv).
194+
The design is defined in `ibex_core.v` available
195+
[here](https://github.com/The-OpenROAD-Project/OpenROAD-flow-scripts/blob/master/flow/designs/src/ibex/ibex_core.v).
196196

197197
Refer to the `ibex` design `README.md`
198-
[here](https://github.com/The-OpenROAD-Project/OpenROAD-flow-scripts/blob/master/flow/designs/src/ibex_sv/README.md).
198+
[here](https://github.com/The-OpenROAD-Project/OpenROAD-flow-scripts/blob/master/flow/designs/src/ibex/README.md).
199199

200200
## Running The Automated RTL-to-GDS Flow
201201

docs/user/BuildLocally.md

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,6 @@ up the environment. The `make` command runs from RTL-GDSII generation for defaul
3232
``` shell
3333
source ./env.sh
3434
yosys -help
35-
yosys -m slang -p "slang_version"
3635
openroad -help
3736
cd flow
3837
make

docs/user/BuildWithDocker.md

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -79,7 +79,6 @@ Then, inside docker:
7979
``` shell
8080
source ./env.sh
8181
yosys -help
82-
yosys -m slang -p "slang_version"
8382
openroad -help
8483
cd flow
8584
make

docs/user/BuildWithPrebuilt.md

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,6 @@ export YOSYS_EXE=$(command -v yosys)
6363
export LD_LIBRARY_PATH="<klayout_location>/bin:$PATH"
6464
6565
yosys -help
66-
yosys -m slang -p "slang_version"
6766
openroad -help
6867
cd flow
6968
make

docs/user/FlowVariables.md

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -183,7 +183,6 @@ configuration file.
183183
| <a name="SYNTH_ARGS"></a>SYNTH_ARGS| Optional synthesis variables for yosys.| -flatten| |
184184
| <a name="SYNTH_BLACKBOXES"></a>SYNTH_BLACKBOXES| List of cells treated as a black box by Yosys. With Bazel, this can be used to run synthesis in parallel for the large modules of the design.| | |
185185
| <a name="SYNTH_GUT"></a>SYNTH_GUT| Load design and remove all internal logic before doing synthesis. This is useful when creating a mock .lef abstract that has a smaller area than the amount of logic would allow. bazel-orfs uses this to mock SRAMs, for instance.| | |
186-
| <a name="SYNTH_HDL_FRONTEND"></a>SYNTH_HDL_FRONTEND| Select an alternative language frontend to ingest the design. Available option is "slang". If the variable is empty, design is read with the Yosys read_verilog command.| | |
187186
| <a name="SYNTH_HIERARCHICAL"></a>SYNTH_HIERARCHICAL| Enable to Synthesis hierarchically, otherwise considered flat synthesis.| 0| |
188187
| <a name="SYNTH_KEEP_MODULES"></a>SYNTH_KEEP_MODULES| Mark modules to keep from getting removed in flattening.| | |
189188
| <a name="SYNTH_MEMORY_MAX_BITS"></a>SYNTH_MEMORY_MAX_BITS| Maximum number of bits for memory synthesis.| 4096| |
@@ -197,8 +196,7 @@ configuration file.
197196
| <a name="TIELO_CELL_AND_PORT"></a>TIELO_CELL_AND_PORT| Tie low cells used in Yosys synthesis to replace a logical 0 in the Netlist.| | |
198197
| <a name="TNS_END_PERCENT"></a>TNS_END_PERCENT| Default TNS_END_PERCENT value for post CTS timing repair. Try fixing all violating endpoints by default (reduce to 5% for runtime). Specifies how many percent of violating paths to fix [0-100]. Worst path will always be fixed.| 100| |
199198
| <a name="USE_FILL"></a>USE_FILL| Whether to perform metal density filling.| 0| |
200-
| <a name="VERILOG_DEFINES"></a>VERILOG_DEFINES| Preprocessor defines passed to the language frontend. Example: `-D HPDCACHE_ASSERT_OFF`| | |
201-
| <a name="VERILOG_FILES"></a>VERILOG_FILES| The path to the design Verilog/SystemVerilog files providing a description of modules.| | |
199+
| <a name="VERILOG_FILES"></a>VERILOG_FILES| The path to the design Verilog files or JSON files providing a description of modules (check `yosys -h write_json` for more details).| | |
202200
| <a name="VERILOG_INCLUDE_DIRS"></a>VERILOG_INCLUDE_DIRS| Specifies the include directories for the Verilog input files.| | |
203201
| <a name="VERILOG_TOP_PARAMS"></a>VERILOG_TOP_PARAMS| Apply toplevel params (if exist).| | |
204202
| <a name="YOSYS_FLAGS"></a>YOSYS_FLAGS| Flags to pass to yosys.| -v 3| |
@@ -216,7 +214,6 @@ configuration file.
216214
- [SDC_GUT](#SDC_GUT)
217215
- [SYNTH_BLACKBOXES](#SYNTH_BLACKBOXES)
218216
- [SYNTH_GUT](#SYNTH_GUT)
219-
- [SYNTH_HDL_FRONTEND](#SYNTH_HDL_FRONTEND)
220217
- [SYNTH_HIERARCHICAL](#SYNTH_HIERARCHICAL)
221218
- [SYNTH_KEEP_MODULES](#SYNTH_KEEP_MODULES)
222219
- [SYNTH_MEMORY_MAX_BITS](#SYNTH_MEMORY_MAX_BITS)
@@ -225,7 +222,6 @@ configuration file.
225222
- [SYNTH_WRAPPED_OPERATORS](#SYNTH_WRAPPED_OPERATORS)
226223
- [TIEHI_CELL_AND_PORT](#TIEHI_CELL_AND_PORT)
227224
- [TIELO_CELL_AND_PORT](#TIELO_CELL_AND_PORT)
228-
- [VERILOG_DEFINES](#VERILOG_DEFINES)
229225
- [VERILOG_FILES](#VERILOG_FILES)
230226
- [VERILOG_INCLUDE_DIRS](#VERILOG_INCLUDE_DIRS)
231227
- [VERILOG_TOP_PARAMS](#VERILOG_TOP_PARAMS)

flow/designs/asap7/cva6/config.mk

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,7 @@
1+
#
2+
# TODO before enablement: pipe VERILOG_DEFINES through to yosys
3+
#
4+
15
export PLATFORM = asap7
26

37
export DESIGN_NAME = cva6
@@ -193,4 +197,4 @@ export PLACE_DENSITY = 0.50
193197
export SKIP_LAST_GASP ?= 1
194198

195199

196-
export SYNTH_HDL_FRONTEND = slang
200+
export SYNTH_USE_SLANG = 1

flow/designs/asap7/ibex/config.mk

Lines changed: 1 addition & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -3,13 +3,7 @@ export PLATFORM = asap7
33
export DESIGN_NICKNAME = ibex
44
export DESIGN_NAME = ibex_core
55

6-
export VERILOG_FILES = $(sort $(wildcard $(DESIGN_HOME)/src/ibex_sv/*.sv)) \
7-
$(DESIGN_HOME)/src/ibex_sv/syn/rtl/prim_clock_gating.v
8-
9-
export VERILOG_INCLUDE_DIRS = \
10-
$(DESIGN_HOME)/src/ibex_sv/vendor/lowrisc_ip/prim/rtl/
11-
12-
export SYNTH_HDL_FRONTEND = slang
6+
export VERILOG_FILES = $(sort $(wildcard $(DESIGN_HOME)/src/$(DESIGN_NICKNAME)/*.v))
137

148
# if FLOW_VARIANT == pos_slack, use an SDC file that has a larger clock
159
# resulting in positive slack

flow/designs/gf12/ibex/config.mk

Lines changed: 38 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,46 @@ export DESIGN_NICKNAME = ibex
22
export DESIGN_NAME = ibex_core
33
export PLATFORM = gf12
44

5-
export VERILOG_FILES = $(sort $(wildcard $(DESIGN_HOME)/src/ibex_sv/*.sv)) \
6-
$(DESIGN_HOME)/src/ibex_sv/syn/rtl/prim_clock_gating.v
75

8-
export VERILOG_INCLUDE_DIRS = \
9-
$(DESIGN_HOME)/src/ibex_sv/vendor/lowrisc_ip/prim/rtl/
6+
export VERILOG_FILES = $(DESIGN_HOME)/src/$(DESIGN_NICKNAME)/ibex_alu.v \
7+
$(DESIGN_HOME)/src/$(DESIGN_NICKNAME)/ibex_branch_predict.v \
8+
$(DESIGN_HOME)/src/$(DESIGN_NICKNAME)/ibex_compressed_decoder.v \
9+
$(DESIGN_HOME)/src/$(DESIGN_NICKNAME)/ibex_controller.v \
10+
$(DESIGN_HOME)/src/$(DESIGN_NICKNAME)/ibex_core.v \
11+
$(DESIGN_HOME)/src/$(DESIGN_NICKNAME)/ibex_counter.v \
12+
$(DESIGN_HOME)/src/$(DESIGN_NICKNAME)/ibex_cs_registers.v \
13+
$(DESIGN_HOME)/src/$(DESIGN_NICKNAME)/ibex_csr.v \
14+
$(DESIGN_HOME)/src/$(DESIGN_NICKNAME)/ibex_decoder.v \
15+
$(DESIGN_HOME)/src/$(DESIGN_NICKNAME)/ibex_dummy_instr.v \
16+
$(DESIGN_HOME)/src/$(DESIGN_NICKNAME)/ibex_ex_block.v \
17+
$(DESIGN_HOME)/src/$(DESIGN_NICKNAME)/ibex_fetch_fifo.v \
18+
$(DESIGN_HOME)/src/$(DESIGN_NICKNAME)/ibex_icache.v \
19+
$(DESIGN_HOME)/src/$(DESIGN_NICKNAME)/ibex_id_stage.v \
20+
$(DESIGN_HOME)/src/$(DESIGN_NICKNAME)/ibex_if_stage.v \
21+
$(DESIGN_HOME)/src/$(DESIGN_NICKNAME)/ibex_load_store_unit.v \
22+
$(DESIGN_HOME)/src/$(DESIGN_NICKNAME)/ibex_multdiv_fast.v \
23+
$(DESIGN_HOME)/src/$(DESIGN_NICKNAME)/ibex_multdiv_slow.v \
24+
$(DESIGN_HOME)/src/$(DESIGN_NICKNAME)/ibex_pmp.v \
25+
$(DESIGN_HOME)/src/$(DESIGN_NICKNAME)/ibex_prefetch_buffer.v \
26+
$(DESIGN_HOME)/src/$(DESIGN_NICKNAME)/ibex_register_file_ff.v \
27+
$(DESIGN_HOME)/src/$(DESIGN_NICKNAME)/ibex_register_file_fpga.v \
28+
$(DESIGN_HOME)/src/$(DESIGN_NICKNAME)/ibex_register_file_latch.v \
29+
$(DESIGN_HOME)/src/$(DESIGN_NICKNAME)/ibex_wb_stage.v \
30+
$(DESIGN_HOME)/src/$(DESIGN_NICKNAME)/prim_badbit_ram_1p.v \
31+
$(DESIGN_HOME)/src/$(DESIGN_NICKNAME)/prim_clock_gating.v \
32+
$(DESIGN_HOME)/src/$(DESIGN_NICKNAME)/prim_generic_clock_gating.v \
33+
$(DESIGN_HOME)/src/$(DESIGN_NICKNAME)/prim_generic_ram_1p.v \
34+
$(DESIGN_HOME)/src/$(DESIGN_NICKNAME)/prim_lfsr.v \
35+
$(DESIGN_HOME)/src/$(DESIGN_NICKNAME)/prim_ram_1p.v \
36+
$(DESIGN_HOME)/src/$(DESIGN_NICKNAME)/prim_secded_28_22_dec.v \
37+
$(DESIGN_HOME)/src/$(DESIGN_NICKNAME)/prim_secded_28_22_enc.v \
38+
$(DESIGN_HOME)/src/$(DESIGN_NICKNAME)/prim_secded_39_32_dec.v \
39+
$(DESIGN_HOME)/src/$(DESIGN_NICKNAME)/prim_secded_39_32_enc.v \
40+
$(DESIGN_HOME)/src/$(DESIGN_NICKNAME)/prim_secded_72_64_dec.v \
41+
$(DESIGN_HOME)/src/$(DESIGN_NICKNAME)/prim_secded_72_64_enc.v \
42+
$(DESIGN_HOME)/src/$(DESIGN_NICKNAME)/prim_xilinx_clock_gating.v
43+
1044

11-
export SYNTH_HDL_FRONTEND = slang
1245

1346
export SDC_FILE = $(DESIGN_HOME)/$(PLATFORM)/$(DESIGN_NICKNAME)/constraint.sdc
1447

0 commit comments

Comments
 (0)