From 706bcd6ff92d0b52efa0e173b7f5e15002042c6c Mon Sep 17 00:00:00 2001 From: Your Name Date: Sat, 18 Jul 2020 13:05:42 -0400 Subject: [PATCH] upd --- Lattice_Icestorm/code/test1/blink.v | 17 + Lattice_Icestorm/code/test1/build.sh | 16 + Lattice_Icestorm/code/test1/icestick.pcf | 25 + Lattice_Icestorm/code/test1/txtbin/blink.bin | Bin 0 -> 32220 bytes Lattice_Icestorm/code/test1/txtbin/blink.blif | 236 + Lattice_Icestorm/code/test1/txtbin/blink.txt | 4390 +++++++++++++++++ 6 files changed, 4684 insertions(+) create mode 100644 Lattice_Icestorm/code/test1/blink.v create mode 100755 Lattice_Icestorm/code/test1/build.sh create mode 100644 Lattice_Icestorm/code/test1/icestick.pcf create mode 100644 Lattice_Icestorm/code/test1/txtbin/blink.bin create mode 100644 Lattice_Icestorm/code/test1/txtbin/blink.blif create mode 100644 Lattice_Icestorm/code/test1/txtbin/blink.txt diff --git a/Lattice_Icestorm/code/test1/blink.v b/Lattice_Icestorm/code/test1/blink.v new file mode 100644 index 0000000..231de77 --- /dev/null +++ b/Lattice_Icestorm/code/test1/blink.v @@ -0,0 +1,17 @@ +`default_nettype none + +// define a Blink module +module Blink(input CLK_IN, output GLED5, output RLED1, output RLED2, output RLED3, output RLED4); + + // define a 24-bit counter to divide the clock down from 12MHz + localparam WIDTH = 24; + reg [WIDTH-1:0] counter; + + // run counter from 12MHz clock + always @(posedge CLK_IN) + counter <= counter + 1; + + // wire up the red LEDs to the counter MSB + assign RLED1 = counter[WIDTH-1]; + +endmodule diff --git a/Lattice_Icestorm/code/test1/build.sh b/Lattice_Icestorm/code/test1/build.sh new file mode 100755 index 0000000..334111e --- /dev/null +++ b/Lattice_Icestorm/code/test1/build.sh @@ -0,0 +1,16 @@ +#!/bin/bash +#adapted from https://github.com/leedowthwaite/HelloIce +#changes: separate folder for dev files +#simplified bash script + +MAIN=$1 +mkdir txtbin +echo Using yosys to synthesize design + yosys -p "synth_ice40 -blif txtbin/$MAIN.blif" $MAIN.v $@ +echo Place and route with arachne-pnr + arachne-pnr -d 1k -p icestick.pcf txtbin/$MAIN.blif -o txtbin/$MAIN.txt +echo Converting ASCII output to bitstream + icepack txtbin/$MAIN.txt txtbin/$MAIN.bin +echo Sending bitstream to device + iceprog ${ICEPROG_ARGS} $MAIN.bin + diff --git a/Lattice_Icestorm/code/test1/icestick.pcf b/Lattice_Icestorm/code/test1/icestick.pcf new file mode 100644 index 0000000..f9e2fdd --- /dev/null +++ b/Lattice_Icestorm/code/test1/icestick.pcf @@ -0,0 +1,25 @@ +set_io CLK_IN 21 +set_io J3_10 44 +set_io J3_9 45 +set_io J3_8 47 +set_io J3_7 48 +set_io J3_6 56 +set_io J3_5 60 +set_io J3_4 61 +set_io J3_3 62 +set_io GLED5 95 +set_io RLED4 96 +set_io RLED3 97 +set_io RLED2 98 +set_io RLED1 99 +set_io IR_TX 105 +set_io IR_RX 106 +set_io IR_SD 107 +set_io J1_3 112 +set_io J1_4 113 +set_io J1_5 114 +set_io J1_6 115 +set_io J1_7 116 +set_io J1_8 117 +set_io J1_9 118 +set_io J1_10 119 \ No newline at end of file diff --git a/Lattice_Icestorm/code/test1/txtbin/blink.bin b/Lattice_Icestorm/code/test1/txtbin/blink.bin new file mode 100644 index 0000000000000000000000000000000000000000..b6678e09bb2991fc8452d1bf2f531832eff69618 GIT binary patch literal 32220 zcmeHPJ8l~>5S`U3hJpx?wogF>K7f!eRoJIVuHX{{K7c`}4H z0_XsacD0Ua?JPwum)Z}X3Yi)X-^{#u;;v{xk3^3*KesnuD0%gr#8vX?nl@{qjFN<+ zeoPP5FAslY{zo4l%x=%8ASZ5cr^0O;N&6wU<^Q)!Km#NSaurSKR9&h z&mj=nX8^ivpVK}d%049Fkppz;K^~R{V*t7gMs26SveW4P!J$ik4r51H*%IJzNS4}S z4#RKqtL;2zZ3DXDWeHB#3&!*lb$#qc=fV5b>AJ)Fr%8CM89D>Fnh(8$hieN3cs6E#q<4x^7fAd6J+WY0j!yZwSbc{b2od+Cezpnx@*c z@xW#JLFqEcFAhg*{UX#jbO_Yr6SA4iu!3GAvKs^I%QrHIS z>A?&bh=GAD!TmrCeMXI7z{mjZ2aNP!5)8z^KsLesKn#6GjbOmY0PY8j^k5PU#K1t7 f;(j28KBGo3U}OOI14eo<2?k