注意:开始固化程序成功后,必须要断电重启
这里下载的程序是.sof文件格式,开发板断电后程序将会丢失。如果我们想要程序断电不丢失的话,就必须将程序保存在开发板的片外Flash中,Flash的引脚是和FPGA固定的引脚相连接,FPGA会在上电后自动读取Flash中存储的程序,这个过程不需要我们编写驱动代码和人为干预,只需要通过JTAG下载jic文件即可。需要注意的是,jic文件不是软件自动生成的,而是需要我们手动的将sof文件转换成jic文件。首先在Quartsu软件的菜单栏【File】→【Convert Programming Files…】,操作界面如图 1和图 2所示。
图
1 Quartus
软件界面

图 2 sof 文件转换jic文件窗口
首先修改“programming file type”为【JTAG Indirect ConfigurationFile (.jic)】;
然后修改“Configuration device”为【EPCS16】(具体看板子上的FLASH芯片);然后选中窗口中的“Flash Loader”点击右边的【Add Device..】按钮出现如图
3所示界面。

图
3
器件选择界面
选择开发板器件(具体型号看你开发板上的芯片)点击【OK】按钮。然后选中“SOF Data”,点击右边的按钮【Add file….】如图 4和图 5所示界面。

图 4 添加sof操作页面
图 5 添加Sof文件
找到“output_files”下面的“flow_led.sof”文件点击【Open】即可。最后完成所有设 置界面如图 6所示。

图
6
最终完成设置
点击【Generate】按钮出现如图 7所示:
图 7 转换成功
点击【OK】,这时.jic文件就已经生成了,关闭“Convert Programming File”页面。点 击菜单栏【Tools】下的【Programmer】(如果下载界面关闭了的话),选中.sof文件,点击 左侧按钮【Delete】删去之前添加的sof文件,如图8所示。

图 8 删除sof文件
点击左边的【Add File..】找到“output_files”文件下的“output_file.jic”,如图 9和图 10所示。

图 9 添加jic文件
图 10 打开JIC文件界面
添加完成后发现【start】不能点击,需要在【Program/Configure】方框下面点击打勾。
如图 11所示。

图 11 程序下载界面
点击【Start】,开始固化程序,当下载进度显示100%之后,即可固化成功。我们把开发
板电源关闭,然后再一次打开开发板电源(
必须要断电重启
)。如果需要擦除Flash中的程序的话,可以通过勾选【Erase】下面的方框来擦除程序。需要
注意的是,如果已经勾选了【Program/Configure】方框,是无法勾选【Erase】方框的,所以先取消勾选【Program/Configure】,然后再勾选【Erase】,如图 12和图 13
所示。

图 12 取消勾选【Program/Configure】
图 13 勾选【Erase】
当点击勾选【Erase】方框后,【Program/Configure】下面第一个方框也会自动勾选,这
个时候点击【Start】即可开始擦除程序。