19 lines
949 B
Bash
Executable File
19 lines
949 B
Bash
Executable File
#!/usr/bin/env bash
|
|
PROJECT_NAME=SOC
|
|
DB_DIR=/usr/share/nextpnr/prjxray-db
|
|
CHIPDB_DIR=/usr/share/nextpnr/xilinx-chipdb
|
|
PART=xc7a35tcsg324-1
|
|
VERILOGS=$1
|
|
BOARD_FREQ=100
|
|
CPU_FREQ=100
|
|
|
|
set -ex
|
|
yosys -DARTY -DBOARD_FREQ=$BOARD_FREQ -DCPU_FREQ=$CPU_FREQ -p "scratchpad -set xilinx_dsp.multonly 1" -p "synth_xilinx -nowidelut -flatten -abc9 -arch xc7 -top SOC; write_json ${PROJECT_NAME}.json" ${VERILOGS}
|
|
nextpnr-xilinx --chipdb ${CHIPDB_DIR}/xc7a35t.bin --xdc BOARDS/arty.xdc --json ${PROJECT_NAME}.json --write ${PROJECT_NAME}_routed.json --fasm ${PROJECT_NAME}.fasm
|
|
fasm2frames --part ${PART} --db-root ${DB_DIR}/artix7 ${PROJECT_NAME}.fasm > ${PROJECT_NAME}.frames
|
|
xc7frames2bit --part_file ${DB_DIR}/artix7/${PART}/part.yaml --part_name ${PART} --frm_file ${PROJECT_NAME}.frames --output_file ${PROJECT_NAME}.bit
|
|
#To send to SRAM:
|
|
openFPGALoader --board arty ${PROJECT_NAME}.bit
|
|
#To send to FLASH:
|
|
#openFPGALoader --board arty -f ${PROJECT_NAME}.bit
|