diff --git a/hw/Makefile b/hw/Makefile index 89f783bfc4e55a28f359a6acb0fbee1edea2618a..6e3b21a1dd5e493003ff2b8d9fe45cb8d905f26d 100644 --- a/hw/Makefile +++ b/hw/Makefile @@ -7,8 +7,7 @@ TARGETS = main all: $(TARGETS) -TESTS = srt-reciprocal-tb reciprocal-tb \ - reg-file-tb reg-file-ice40-tb shift-unit-tb alu-unit-tb +TESTS = reg-file-tb reg-file-ice40-tb shift-unit-tb alu-unit-tb check: all $(TESTS) ../run-tests $(TESTS) @@ -25,7 +24,7 @@ clean: top-ice40-sim: top-ice40.vl cpu-all.vl reg-file-ice40.vl mem-mux.vl \ alu-unit.vl unary-unit.vl shift-unit.vl cnt-unit.vl \ mul-unit.vl reciprocal-unit.vl load-store-unit.vl \ - instr-fetch.vl instr-decode.vl srt-reciprocal.vl \ + instr-fetch.vl instr-decode.vl \ cpu.vl top-ice40-sim.vl \ ram-unit.vl avr109rx.vl avr109tx.vl tty-ice40.vl @@ -42,7 +41,7 @@ random-bram.hex: top-ice40.json: top-ice40.vl cpu-all.vl reg-file-ice40.vl mem-mux.vl \ alu-unit.vl unary-unit.vl shift-unit.vl cnt-unit.vl \ mul-unit.vl reciprocal-unit.vl load-store-unit.vl \ - instr-fetch.vl instr-decode.vl srt-reciprocal.vl \ + instr-fetch.vl instr-decode.vl \ cpu.vl \ ram-unit.vl avr109rx.vl avr109tx.vl tty-ice40.vl random-bram.hex yosys -q -p 'hierarchy -libdir arith/lib ; synth_ice40 -json top-ice40.json' \ @@ -67,8 +66,7 @@ logic-analyzer-example.asc: logic-analyzer-example.json txd.pcf nextpnr-ice40 --hx8k --package ct256 \ --json $< --pcf txd.pcf --asc $@ -stats: srt-reciprocal.stats \ - instr-fetch.stats instr-decode.stats \ +stats: instr-fetch.stats instr-decode.stats \ reg-file.stats reg-file-ice40.stats \ cnt-unit.stats alu-unit.stats mem-mux.stats \ unary-unit.stats shift-unit.stats mul-unit.stats \ @@ -78,16 +76,13 @@ stats: srt-reciprocal.stats \ %.stats: instr-defines.vl %.vl $(YOSYS_STATS) $^ -L $@ -srt-reciprocal.stats: srt-reciprocal.vl mul-unit.stats: STATS_FLAGS = -top mul_unit -reciprocal-unit.stats: srt-reciprocal.vl reciprocal.vl - tty-ice40.stats: avr109rx.vl avr109tx.vl cpu.stats: cpu-all.vl reg-file-ice40.vl mem-mux.vl \ alu-unit.vl unary-unit.vl shift-unit.vl cnt-unit.vl \ mul-unit.vl reciprocal-unit.vl load-store-unit.vl \ - instr-fetch.vl instr-decode.vl srt-reciprocal.vl \ + instr-fetch.vl instr-decode.vl \ cpu.vl ram-unit.vl $(YOSYS_STATS) $< > $@T && mv $@T $@ diff --git a/hw/arith/.gitignore b/hw/arith/.gitignore index 31b6ba250917aa3cb6914879ca278521ee1305af..ae69e148210997bc0a4ef7f3e056b50a17729df3 100644 --- a/hw/arith/.gitignore +++ b/hw/arith/.gitignore @@ -17,4 +17,6 @@ /popc-test /umul4-test /umul8-test +/reciprocal-test +/srt_reciprocal-test /dadda-tree diff --git a/hw/arith/Makefile b/hw/arith/Makefile index b810b9a523e9d1db09789470c943f6fd8971c0d2..59b76dd1652699dfe8beae5564bdbe8a14e13bd9 100644 --- a/hw/arith/Makefile +++ b/hw/arith/Makefile @@ -9,7 +9,8 @@ TESTS = add_ha-test add_fa-test add_bk4-test add_bk8-test add_bk8s-test \ add_h64-test add_bk16-test carry_only-test \ umul4-test umul8-test ctz-test popc-test genmask-test \ mul3_stage-test mul4_stage-test mul6_stage-test \ - mul_3w64-test mul_4w64-test mul_6w64-test + mul_3w64-test mul_4w64-test mul_6w64-test \ + reciprocal-test srt_reciprocal-test all: $(TARGETS) diff --git a/hw/reciprocal.vl b/hw/arith/lib/reciprocal.v similarity index 100% rename from hw/reciprocal.vl rename to hw/arith/lib/reciprocal.v diff --git a/hw/srt-reciprocal.vl b/hw/arith/lib/srt_reciprocal.v similarity index 100% rename from hw/srt-reciprocal.vl rename to hw/arith/lib/srt_reciprocal.v diff --git a/hw/reciprocal-tb.vl b/hw/arith/reciprocal-test.v similarity index 98% rename from hw/reciprocal-tb.vl rename to hw/arith/reciprocal-test.v index b95b68125c27e4fe6ec7b1cb02f42ce144248370..43a28c641197d300803bdfcaff2b4cfdb888ffe1 100644 --- a/hw/reciprocal-tb.vl +++ b/hw/arith/reciprocal-test.v @@ -14,8 +14,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. */ -`include "reciprocal.vl" - module main; reg [63:0] d; wire [63:0] v; diff --git a/hw/srt-reciprocal-tb.vl b/hw/arith/srt_reciprocal-test.v similarity index 99% rename from hw/srt-reciprocal-tb.vl rename to hw/arith/srt_reciprocal-test.v index b3a2d95a65059fd65d667e6162da870037956845..28c57ad83130a801bfaf5fede059be5310bce5fc 100644 --- a/hw/srt-reciprocal-tb.vl +++ b/hw/arith/srt_reciprocal-test.v @@ -14,8 +14,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. */ -`include "srt-reciprocal.vl" - module main; parameter n = 64; diff --git a/hw/cpu-all.vl b/hw/cpu-all.vl index 543f42e4bab46b2a7d6aee430135d8517bf8955b..a6a30b446138b703dad70757f5b7530d9491ca43 100644 --- a/hw/cpu-all.vl +++ b/hw/cpu-all.vl @@ -30,5 +30,4 @@ `include "load-store-unit.vl" `include "instr-decode.vl" `include "instr-fetch.vl" -`include "srt-reciprocal.vl" `include "cpu.vl"