Linux 下烧录方法
openFPGAloader
在Ubuntu系统下我们建议使用openFPGALoader烧写,其他发行版尚未验证。以下为具体步骤
安装openFPGALoader
参考:https://trabucayre.github.io/openFPGALoader/guide/install.html
直接在linux命令行执行下面命令即可
# preprocess
sudo apt-get install libftdi1-2 libftdi1-dev libhidapi-hidraw0 libhidapi-dev libudev-dev zlib1g-dev cmake pkg-config make g++
# compile
git clone https://github.com/trabucayre/openFPGALoader.git
cd openFPGALoader
mkdir build
cd build
cmake ../
#build
cmake --build . -j$(nproc)
# install
sudo make install
烧录方法
检测板卡
$ sudo ./openFPGALoader --detect # 对于这行命令应当在你上一步执行make install的目录下执行
# 下面是正常执行后显示的log
Jtag frequency : requested 6.00MHz -> real 6.00MHz
index 0:
idcode 0x100481b
manufacturer Gowin
family GW1N
model GW1N(R)-9C
irlength 8
下载码流
$ sudo ./openFPGALoader -b tangnano9k -f ../../nano9k_lcd/impl/pnr/Tang_nano_9K_LCD.fs
# 其中的 -b 表示目标板型号,具体可以参考下面表格
# -f 表示下载到 flash,不加的话会下载到 sram 中
# 最后的是需要烧录的文件,应该找到对应目录下的 .fs 文件
# 下面是成功执行后的log
write to flash
Jtag frequency : requested 6.00MHz -> real 6.00MHz
Parse file Parse ../../nano9k_lcd/impl/pnr/Tang_nano_9K_LCD.fs:
Done
DONE
Jtag frequency : requested 2.50MHz -> real 2.00MHz
erase SRAM Done
erase Flash Done
write Flash: [==================================================] 100.00%
Done
CRC check: Success
其中-b表示目标板型,可以使用以下取值:
Board name | FPGA | Memory | Flash |
---|---|---|---|
tangnano | GW1N-1 QN48 | OK | Internal Flash |
tangnano1k | GW1NZ-1 QN48 | OK | Internal Flash |
tangnano4k | GW1NSR-4C QN48 | OK | Internal Flash |
tangnano9k | GW1NR-9C QN88P | OK | Internal Flash |
tangnano20k | GW2AR-18C QN88 | OK | External Flash |
tangprimer20k | GW2A-18C BGA256 | OK | External Flash |