1. 生成*.bit文件之前先RESET结果
首先,打开Vivado FII_RISCV_V2.01工程(这里以V2.01版本为例),如图1所示。
图1 FII_RISCV_V2.01工程
要生成相应的*.bit文件需要先synthesis和implementation。推荐在进行synthesis之前,先reset前一次的结果。Reset操作如图2-图4所示。
图2 选中上次的synthesis
图3 选中reset
图4 在弹出窗口中确定reset
2.生成*.bit文件
点击 Generate Bitstream生成*.bit文件,如图5所示。
图5 生成*.bit文件
成功生成*.bit文件会出现图6所示的窗口,选择Open Hardware Manager进行FPGA的烧录。
图6 成功生成*.bit文件
3. 烧录*.bit文件
在Hardware Manager界面下,有1,2两种方法open target,如图7所示。
图7 open target
点击Open Target,出现图8所示窗口,点击Auto Connect。
图8 Auto Connect
Auto Connect后,Hardware Manager窗口会出现PRX100-D芯片,xc7a100t,如图9所示。
图9 连接到PRX100-D芯片
如图10所示,点击xc7a100t,再点击Program Device。
图10 Program Device
如图11所示,在弹出的窗口里选择正确的*.bit文件。点击绿色框内,即可在图12所示界面下选择*.bit文件。选择完*.bit文件后,点击Program。
图11 选择正确的*.bit文件
图12 选择正确的*.bit文件
4. 生成*.mcs文件
在Vivado菜单上点击Tools > Generate Memory Configuration File,如图13所示。
图13 Tools > Generate Memory Configuration File
弹出如图14所示窗口后,根据以下步骤进行配置:
- 选择格式为MCS
- 选择Memory Part,mt25ql128(在绿色框内进行选择相应的FLASH)
- 对要生成的*.mcs文件进行命名
- 根据*.xdc文件的配置,选择SPIx1,SPIx2或SPIx4,这里将接口选为SPIx4,如果*.xdc文件中没有配置SPI,默认情况下选择SPIx1
- 选择Load bitstream files
- 在绿色框内选择生成的*.bit文件
- 选择Overwrite
- 点击OK
图14 生成*.mcs文件
成功生成*.mcs文件后,即会弹出图15的窗口,在绿色框内点击OK。
图15 成功生成*.mcs文件
5. 烧录*.mcs文件
*.mcs文件全称为Intel MCS-86 Hexadecimal Object,格式中具有 9 个字符(4 个字段)的前缀,用于定义记录的开始、字节数、加载地址和记录类型,以及一个 2 个字符的校验和后缀。
下图所示为JTAG通过FPGA间接烧录FLASH。当烧录完成后,FPGA在上电后再从FLASH中加载程序。
在烧录*.mcs文件之前,需要先添加FLASH,如图16所示。在Hardware Manager中点击xc7a100t,并点击Add Configuration Memory Device。
图16 添加配置内存器件
在图17中所示的弹出窗口中,输入mt25ql128.
图17 选择内存器件
在选择完内存器件后,会出现图18所示的弹出窗口,点击OK。或者可以在图19所示的Hardware Manager里,点击mt25ql128,点击Program Configuration Memory Device
图18 弹出窗口
图19 点击配置内存
在图20所示的弹出窗口中,可以通过以下的步骤烧录*.mcs文件:
- 选中之前生成的*.mcs文件,点中绿色框可以进行选择配置
- 必选Program,其他的选项都是可选的
- 点击OK
图20 选择*.mcs文件
至此,*.mcs文件烧录到FLASH的过程已经完成。PRX100-D开发板会空闲的状态(即FPGA 不工作状态),可以通过按FPGA板上的reset按键来激活FPGA(或者重新断电,再上电操作来启动FLASH中的FPGA程序)。
6. 软件编译环境和下板实验
之前有文章描述相关的步骤,见以下文章:
7. 硬件连接
7.1 两根USB-b公头连接线 + FII-PRX100-D开发板
如果有两根USB-b公头连接线,如图21所示,正常烧录的过程中可以烧录*.bit文件或是*.mcs文件。
图21
7.2 一根USB-b公头连接线 + FII-PRX100-D开发板
如果只有一根USB-b公头连接线,应该先将线连接CPU_JTAG,如图22所示,并烧录*.mcs文件。
图22
之后再将线连接到USB TO UART,如图23所示,完成软件下板实验。
图23