blob: ecba897fe000e5eed131e82fe6a828b64807263d (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
|
# Project setup
PROJ = mictoled
DEVICE = 8k
FILES = $(PROJ).v
.PHONY: $(PROJ) clean burn sim
$(PROJ):
# synthesize using Yosys
yosys -p "synth_ice40 -top $(PROJ) -json $(PROJ).json" $(FILES)
# Place and route using nextpnr
nextpnr-ice40 -r --hx8k --json $(PROJ).json --package cb132 --asc $(PROJ).asc --opt-timing --pcf iceFUN.pcf
# Convert to bitstream using IcePack
icepack $(PROJ).asc $(PROJ).bin
burn:
iceFUNprog $(PROJ).bin
sim:
iverilog -o $(PROJ)_tb $(PROJ)_tb.v $(PROJ).v
vvp $(PROJ)_tb
wave:
gtkwave $(PROJ)_tb.vcd wave.gtkw
clean:
rm -f *.asc *.bin *blif *.vcd $(PROG).json $(PROJ)_tb
|