一、下载比特文件和下载mcs文件到板子上的区别:
下载bit文件掉电后需要重新烧写程序
下载mcs文件掉电后不需要重新烧写(固化)
二、下载bit文件步骤
step1:先生成Generate Bitstream:
step2:open Target=》Auto Connect
这一步是连接设备如果报错请看博客
step3:上一步成功链接板子 就开始下载你刚刚生成的bit流文件:即点击Program Device
成功烧写就可以验证功能了
如果这里没法烧写程序 先检查自己FPGA芯片选的型号和板子上面是否一致: 先点左上角的再查看芯片型号:
三、下载mcs文件到
step1:前期准备:1找到自己板子原理图 里面flash模块 看flash芯片名称 找到datasheet
如:下图flash芯片是:N25Q064A
芯片供电是3.3v
在数据手册上找:重点找下图的信息:
(1)flash容量:64Mb;(这里注意MB和Mb的转换MB=Mb/8)64Mb=8MB:后面会用到
(2)spi接口
(3)2/4通道
(4)时钟频率108M
step2:找到了上面的信息就可以在vivado做一些配置了:
(1)Generate Memory Configuration File:
①:flash 容量:注意这里是MB不是Mb
②:在工程的文件路径下 加上/top.mcs
如:我的工程路径:D:/gongzuo/weihao/
这个地方可以写D:/gongzuo/weihao/top.mcs或者图中在.runs下加/top.mcs的都可以
③这里接口是看flash支持的是什么:有spi、bpi等等
因为我这里flash支持spi X1 X2 X4
但是这里有个地方需要注意:就是这里选择X2或者X4等等 需要 和bit文件相对应 也就是说 如果选择了X2 但是你的bit流文件设置的是X4的 在最后点击ok的时候会报错;
这里有两种方法供给大家选择配置bit流:推荐使用方法一
方法一:(简单)只需要在我们xdc文件下 添加下面这句话
set_property BITSTREAM.CONFIG.SPI_BUSWIDTH 4 [current_design]
这个地方是4说明生成的是X4的bit流文件 在下面这个③的位置也需要选择对应的SPIx4
这样 再点击ok就不会报错了
方法二:在setting里面设置bit流文件的spi 宽度
⑤:全选
step3:完成以上之后
A;这里是Mb 如果是我用的这个flash就写64Mb;
B:这里选flash的芯片型号
有两个一样的时候 注意看 后面给他的供电可能一个是1.8v一个是3.3v 选择和你原理图对应的
成功固化之后你会出现这个
这里芯片旁边显示programmed 说明板子上已经有了程序
如果发现重新上电后这里芯片旁边显示 no programmed 不用担心 关掉 Hardware Manager 重新打开 发现还是no programmed
没事不用担心 还有方法
在xdc文件添加下面这几句:
set_property BITSTREAM.CONFIG.SPI_BUSWIDTH 4 [current_design]
set_property BITSTREAM.CONFIG.CONFIGRATE 12 [current_design]
set_property CONFIG_MODE SPIx4 [current_design]
set_property BITSTREAM.GENERAL.COMPRESS TRUE [current_design]
set_property BITSTREAM.CONFIG.UNUSEDPIN PULLNONE [current_design]
应该就可以解决了 出现这个的原因目前我也不清楚 可能是速率不能太高
如果有知道的朋友欢迎批评指正!!!