| PROJ = rgb | |
| PIN_DEF = rgb.pcf | |
| DEVICE = up5k | |
| ARACHNE = arachne-pnr | |
| ARACHNE_ARGS = | |
| ICEPACK = icepack | |
| ICETIME = icetime | |
| ICEPROG = iceprog | |
| all: $(PROJ).bin | |
| %.blif: %.v | |
| yosys -p 'synth_ice40 -top top -blif $@' $< | |
| %.asc: $(PIN_DEF) %.blif | |
| $(ARACHNE) $(ARACHNE_ARGS) -d $(subst up,,$(subst hx,,$(subst lp,,$(DEVICE)))) -o $@ -p $^ | |
| %.bin: %.asc | |
| $(ICEPACK) $< $@ | |
| %.rpt: %.asc | |
| $(ICETIME) -d $(DEVICE) -mtr $@ $< | |
| prog: $(PROJ).bin | |
| $(ICEPROG) -S $< | |
| sudo-prog: $(PROJ).bin | |
| @echo 'Executing prog as root!!!' | |
| sudo $(ICEPROG) -S $< | |
| clean: | |
| rm -f $(PROJ).blif $(PROJ).asc $(PROJ).rpt $(PROJ).bin | |
| .SECONDARY: | |
| .PHONY: all prog clean |