aboutsummaryrefslogtreecommitdiffstats
path: root/examples/gowin
diff options
context:
space:
mode:
authorClifford Wolf <clifford@clifford.at>2019-11-19 17:29:27 +0100
committerGitHub <noreply@github.com>2019-11-19 17:29:27 +0100
commit7ea0a5937ba2572f6d9d62e73e24df480c49561d (patch)
tree7825f438b83fdc730764ba15016eeeac9eb0cf41 /examples/gowin
parent15232a48af60fb7da3c3afdd144882ace2194197 (diff)
parent8ab412eb16b1d4f98117247bf85e0c37627ee459 (diff)
downloadyosys-7ea0a5937ba2572f6d9d62e73e24df480c49561d.tar.gz
yosys-7ea0a5937ba2572f6d9d62e73e24df480c49561d.tar.bz2
yosys-7ea0a5937ba2572f6d9d62e73e24df480c49561d.zip
Merge pull request #1449 from pepijndevos/gowin
Improvements for gowin support
Diffstat (limited to 'examples/gowin')
-rw-r--r--examples/gowin/demo.cst51
-rw-r--r--examples/gowin/demo.v4
-rw-r--r--examples/gowin/device.cfg16
-rw-r--r--examples/gowin/pnr.cfg8
-rw-r--r--examples/gowin/run.sh3
-rw-r--r--examples/gowin/run.tcl9
6 files changed, 45 insertions, 46 deletions
diff --git a/examples/gowin/demo.cst b/examples/gowin/demo.cst
index 22d7eb668..c8f89dcf8 100644
--- a/examples/gowin/demo.cst
+++ b/examples/gowin/demo.cst
@@ -1,41 +1,10 @@
-// 50 MHz Clock
-IO_LOC "clk" D11;
-
-// LEDs
-IO_LOC "leds[0]" D22;
-IO_LOC "leds[1]" E22;
-IO_LOC "leds[2]" G22;
-IO_LOC "leds[3]" J22;
-IO_LOC "leds[4]" L22;
-IO_LOC "leds[5]" L19;
-IO_LOC "leds[6]" L20;
-IO_LOC "leds[7]" M21;
-IO_LOC "leds[8]" N19;
-IO_LOC "leds[9]" R19;
-IO_LOC "leds[10]" T18;
-IO_LOC "leds[11]" AA22;
-IO_LOC "leds[12]" U18;
-IO_LOC "leds[13]" V20;
-IO_LOC "leds[14]" AA21;
-IO_LOC "leds[15]" AB21;
-
-
-// 7-Segment Display
-IO_LOC "seg7dig[0]" E20;
-IO_LOC "seg7dig[1]" G18;
-IO_LOC "seg7dig[2]" G20;
-IO_LOC "seg7dig[3]" F21;
-IO_LOC "seg7dig[4]" J20;
-IO_LOC "seg7dig[5]" H21;
-IO_LOC "seg7dig[6]" H18;
-IO_LOC "seg7dig[7]" D20;
-IO_LOC "seg7sel[0]" C19;
-IO_LOC "seg7sel[1]" B22;
-IO_LOC "seg7sel[2]" C20;
-IO_LOC "seg7sel[3]" C21;
-
-// Switches
-IO_LOC "sw[0]" AB20;
-IO_LOC "sw[1]" AB19;
-IO_LOC "sw[2]" AB18;
-IO_LOC "sw[3]" AB17;
+IO_LOC "clk" 35;
+//IO_LOC "rst_n" 77;
+IO_LOC "leds[0]" 79;
+IO_LOC "leds[1]" 80;
+IO_LOC "leds[2]" 81;
+IO_LOC "leds[3]" 82;
+IO_LOC "leds[4]" 83;
+IO_LOC "leds[5]" 84;
+IO_LOC "leds[6]" 85;
+IO_LOC "leds[7]" 86; \ No newline at end of file
diff --git a/examples/gowin/demo.v b/examples/gowin/demo.v
index 6ea108384..485fec97f 100644
--- a/examples/gowin/demo.v
+++ b/examples/gowin/demo.v
@@ -1,9 +1,7 @@
module demo (
input clk,
- input [3:0] sw,
output [15:0] leds,
- output [7:0] seg7dig,
- output [3:0] seg7sel
+ output unused
);
localparam PRESCALE = 20;
reg [PRESCALE+3:0] counter = 0;
diff --git a/examples/gowin/device.cfg b/examples/gowin/device.cfg
new file mode 100644
index 000000000..f6ab82159
--- /dev/null
+++ b/examples/gowin/device.cfg
@@ -0,0 +1,16 @@
+set JTAG regular_io = false
+set SSPI regular_io = false
+set MSPI regular_io = false
+set READY regular_io = false
+set DONE regular_io = false
+set RECONFIG_N regular_io = false
+set MODE regular_io = false
+set CRC_check = true
+set compress = false
+set encryption = false
+set security_bit_enable = true
+set bsram_init_fuse_print = true
+set download_speed = 250/100
+set spi_flash_address = 0x00FFF000
+set format = txt
+set background_programming = false
diff --git a/examples/gowin/pnr.cfg b/examples/gowin/pnr.cfg
new file mode 100644
index 000000000..a1b43cc3b
--- /dev/null
+++ b/examples/gowin/pnr.cfg
@@ -0,0 +1,8 @@
+-sdf
+-oc
+-ibs
+-posp
+-o
+-warning_all
+-tt
+-timing
diff --git a/examples/gowin/run.sh b/examples/gowin/run.sh
index 33a7b5c37..cd260101e 100644
--- a/examples/gowin/run.sh
+++ b/examples/gowin/run.sh
@@ -1,8 +1,7 @@
#!/bin/bash
set -ex
yosys -p "synth_gowin -top demo -vout demo_syn.v" demo.v
-$GOWIN_HOME/bin/gowin -d demo_syn.v -cst demo.cst -sdc demo.sdc -p GW2A55-PBGA484-6 \
- -warning_all -out demo_out.v -rpt demo.rpt -tr demo_tr.html -bit demo.bit
+$GOWIN_HOME/bin/gowin -d demo_syn.v -cst demo.cst -sdc demo.sdc -p GW1NR-9-QFN88-6 -pn GW1NR-LV9QN88C6/I5 -cfg device.cfg -bit -tr -ph -timing -gpa -rpt -warning_all
# post place&route simulation (icarus verilog)
if false; then
diff --git a/examples/gowin/run.tcl b/examples/gowin/run.tcl
new file mode 100644
index 000000000..39da11cee
--- /dev/null
+++ b/examples/gowin/run.tcl
@@ -0,0 +1,9 @@
+# gw_sh run.tcl
+exec yosys -p "synth_gowin -top demo -vout demo_syn.v" demo.v
+add_file -cst demo.cst
+add_file -sdc demo.sdc
+add_file -vm demo_syn.v
+add_file -cfg device.cfg
+set_option -device GW1NR-9-QFN88-6
+set_option -pn GW1NR-LV9QN88C6/I5
+run_pnr -opt pnr.cfg