mirror of https://github.com/YosysHQ/picorv32.git
23 lines
800 B
Makefile
23 lines
800 B
Makefile
|
|
||
|
TOOLCHAIN_PREFIX = /opt/riscv32ic/bin/riscv32-unknown-elf-
|
||
|
|
||
|
run: testbench.vvp firmware.hex
|
||
|
vvp -N testbench.vvp
|
||
|
|
||
|
firmware.hex: firmware.S firmware.c firmware.lds
|
||
|
$(TOOLCHAIN_PREFIX)gcc -Os -ffreestanding -nostdlib -o firmware.elf firmware.S firmware.c \
|
||
|
--std=gnu99 -Wl,-Bstatic,-T,firmware.lds,-Map,firmware.map,--strip-debug -lgcc
|
||
|
$(TOOLCHAIN_PREFIX)objcopy -O binary firmware.elf firmware.bin
|
||
|
python3 ../../firmware/makehex.py firmware.bin 4096 > firmware.hex
|
||
|
|
||
|
picorv32_presyn.v: picorv32_presyn.ys picorv32_regs.txt ../../picorv32.v
|
||
|
yosys -v0 picorv32_presyn.ys
|
||
|
|
||
|
testbench.vvp: testbench.v picorv32_presyn.v
|
||
|
iverilog -o testbench.vvp testbench.v picorv32_presyn.v
|
||
|
|
||
|
clean:
|
||
|
rm -f firmware.bin firmware.elf firmware.hex firmware.map
|
||
|
rm -f picorv32_presyn.v testbench.vvp testbench.vcd
|
||
|
|