TOP = top
DEVICE = GW2AR-18

all: $(TOP).fs

$(TOP).json: $(TOP).v counter.v
	yosys -p "read_verilog $(TOP).v counter.v; synth_gowin -top $(TOP) -json $(TOP).json"

$(TOP).asc: $(TOP).json tangnano20k.cst
	nextpnr-gowin --json $(TOP).json --device $(DEVICE) --cst tangnano20k.cst --write $(TOP).asc

$(TOP).fs: $(TOP).asc
	gowin_pack $(TOP).asc $(TOP).fs

prog: $(TOP).fs
	openFPGALoader -b tangnano20k $(TOP).fs

clean:
	rm -f $(TOP).json $(TOP).asc $(TOP).fs

.PHONY: all prog clean
