Skip to content

Commit 9f4795a

Browse files
committed
synth: Add yosys-slang option; demonstrate on Ibex
Signed-off-by: Martin Povišer <[email protected]>
1 parent 1adb9c6 commit 9f4795a

Some content is hidden

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

62 files changed

+11536
-9012
lines changed

flow/designs/nangate45/ibex/config.mk

Lines changed: 26 additions & 42 deletions
Original file line numberDiff line numberDiff line change
@@ -2,48 +2,32 @@ export DESIGN_NICKNAME = ibex
22
export DESIGN_NAME = ibex_core
33
export PLATFORM = nangate45
44

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

4832
export SDC_FILE = $(DESIGN_HOME)/$(PLATFORM)/$(DESIGN_NICKNAME)/constraint.sdc
4933

flow/designs/src/ibex/README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,6 @@ Cloned from https://github.com/lowRISC/ibex (`commit 77d801001554cce8fe69e742e96
1010
# Modifications
1111

1212
- Default configuration from Repository.
13-
- Converted to verilog [using](https://github.com/zachjs/sv2v).
13+
- Pruned to only those source files which are used and moved most to the top directory.
1414
- Added timing constraints.
1515
- Added LICENSE.

0 commit comments

Comments
 (0)