diff --git a/xc7/picorv32.sh b/xc7/picorv32.sh index d06786c5..0ccb217e 100755 --- a/xc7/picorv32.sh +++ b/xc7/picorv32.sh @@ -2,6 +2,7 @@ set -ex rm -f picorv32.v wget https://raw.githubusercontent.com/cliffordwolf/picorv32/master/picorv32.v -yosys -p 'synth_ice40 -json picorv32.json -top top' picorv32.v picorv32_top.v -../nextpnr-ice40 --hx8k --asc picorv32.asc --json picorv32.json -icetime -d hx8k -t picorv32.asc +yosys picorv32.ys +../nextpnr-xc7 --json picorv32.json --xdl picorv32.xdl +#../nextpnr-ice40 --hx8k --asc picorv32.asc --json picorv32.json +#icetime -d hx8k -t picorv32.asc diff --git a/xc7/picorv32_top.v b/xc7/picorv32_top.v index 27f0ef0c..7e2bf488 100644 --- a/xc7/picorv32_top.v +++ b/xc7/picorv32_top.v @@ -11,13 +11,22 @@ module top ( output [ 3:0] mem_wstrb, input [31:0] mem_rdata ); + + wire gclk; + BUFGCTRL clk_gb ( + .I0(clk), + .CE0(1'b1), + .S0(1'b1), + .O(gclk) + ); + picorv32 #( .ENABLE_COUNTERS(0), .TWO_STAGE_SHIFT(0), .CATCH_MISALIGN(0), .CATCH_ILLINSN(0) ) cpu ( - .clk (clk ), + .clk (gclk ), .resetn (resetn ), .trap (trap ), .mem_valid(mem_valid),