aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorClifford Wolf <clifford@clifford.at>2018-06-13 17:38:34 +0200
committerClifford Wolf <clifford@clifford.at>2018-06-13 17:38:34 +0200
commit1a3d0f2f5dd763e08a237d53e92d775704f46f01 (patch)
tree968bc5b9085f3d96a2f1c93b0dac942dec4a0e75
parent16ee2a89a8cf11cd7126cd4e352a096115ba0e1e (diff)
downloadnextpnr-1a3d0f2f5dd763e08a237d53e92d775704f46f01.tar.gz
nextpnr-1a3d0f2f5dd763e08a237d53e92d775704f46f01.tar.bz2
nextpnr-1a3d0f2f5dd763e08a237d53e92d775704f46f01.zip
Add picorv32_top module with fewer IO pins
Signed-off-by: Clifford Wolf <clifford@clifford.at>
-rwxr-xr-xice40/picorv32.sh2
-rw-r--r--ice40/picorv32_top.v31
2 files changed, 32 insertions, 1 deletions
diff --git a/ice40/picorv32.sh b/ice40/picorv32.sh
index 9d171e76..2c67f641 100755
--- a/ice40/picorv32.sh
+++ b/ice40/picorv32.sh
@@ -2,5 +2,5 @@
set -ex
rm -f picorv32.v
wget https://raw.githubusercontent.com/cliffordwolf/picorv32/master/picorv32.v
-yosys -p 'synth_ice40 -nocarry -json picorv32.json -top picorv32' picorv32.v
+yosys -p 'synth_ice40 -nocarry -json picorv32.json -top top' picorv32.v picorv32_top.v
../nextpnr-ice40 --hx8k --asc picorv32.asc --json picorv32.json
diff --git a/ice40/picorv32_top.v b/ice40/picorv32_top.v
new file mode 100644
index 00000000..27f0ef0c
--- /dev/null
+++ b/ice40/picorv32_top.v
@@ -0,0 +1,31 @@
+module top (
+ input clk, resetn,
+ output trap,
+
+ output mem_valid,
+ output mem_instr,
+ input mem_ready,
+
+ output [31:0] mem_addr,
+ output [31:0] mem_wdata,
+ output [ 3:0] mem_wstrb,
+ input [31:0] mem_rdata
+);
+ picorv32 #(
+ .ENABLE_COUNTERS(0),
+ .TWO_STAGE_SHIFT(0),
+ .CATCH_MISALIGN(0),
+ .CATCH_ILLINSN(0)
+ ) cpu (
+ .clk (clk ),
+ .resetn (resetn ),
+ .trap (trap ),
+ .mem_valid(mem_valid),
+ .mem_instr(mem_instr),
+ .mem_ready(mem_ready),
+ .mem_addr (mem_addr ),
+ .mem_wdata(mem_wdata),
+ .mem_wstrb(mem_wstrb),
+ .mem_rdata(mem_rdata)
+ );
+endmodule