在学习FPGA的过程中免不了有需要把程序固化在板子的FLASH中的时候,vivado在2020.2版本中已经不采用SDK固化了,需要使用VITIS来固化,笔者在学习使用VITSI固化的过程十分坎坷,希望我能帮助大家非常简单的固化成功
VIVADO的flash固化
环境准备:vivado 2020.2, vitis 2020.2
1、调用IP创建块设计(Create Block Design)
名字随便写就好
点击+号搜索ZYNQ,选择ZYNQ。
双击打开ZYNQ模块,并选择配置QSPI 和 串口0 如果需要固化到SD卡里还得配置SD0
这里选选择Bank1的电平为1.8V
设置DDR3的型号,根据自己板子上的DDR3的型号来,我这里选择的MT41J256M16 RE-125.
把这两个端口用线连起来
选择create output products
右键创建的块选择Create HDL wrapper...
2、把你的代码例化进生成的wapper
注意将你的Block Design置于顶层(例化代码一定要正确)
然后生成bit流文件烧录进板子看能否运行(一定要能正确运行才是对的),这里我上板测试过了直接导出硬件(File -> Export ->Export Hardware)
选择包括bit流文件
3、进行vitis的配置
打开vitis,可以直接打开也可以通过vivado打开(Tools-> Launch Vitis IDE)
打开vitis后新建工程选择第二个,选择刚才导出的XSA文件
一路next到这,随便取个名字
到这选择ZYNQ FSBL
选择Build Project,建完后继续在这个界面选择Create Boot Image。
选择Creat Image
4、连接板子,固化程序
把板子下载方式选择JTAG,然后连接电脑,选择Program Flash,下载程序
下载好了后再换成FLASH启动模式再上电,程序就固化好了