使用ISE iMPACT实现一键bit转mcs,bit文件下载,mcs文件下载

简介: 使用ISE iMPACT实现一键bit转mcs,bit文件下载,mcs文件下载

Xilinx FPGA支持bit和mcs格式程序文件,bit文件通常用于调试,会下载到片上RAM,掉电数据丢失,mcs文件会下载到外挂的SPI Flash,掉电数据不丢失,启动时,FPGA芯片先读取SPI Flash数据,然后将数据转移至RAM中运行。


bit文件可以转换为mcs文件,通常使用ISE自带的iMPACT软件实现,选择存储大小、指定存储路径、文件名、指定bit文件等系列操作:

640.jpg


iMPACT还支持运行脚本文件,关于命令参数的介绍,可以查看iMPACT自带的帮助文档。

640.jpg


下面我们介绍如何使用命令行脚本,一键bit转换mcs,一键bit文件下载,一键mcs文件下载


准备工作

1.把iMPACT添加到环境变量,impact.exe文件路径为:

your_path:\Xilinx\14.7\ISE_DS\ISE\bin\nt64\impact.exe


命令行输入:impact -v,查看是否添加成功:

640.jpg

2.新建文件夹flash,把需要转换的bit文件放进去,比如top.bit


一、iMPACT命令行实现bit转mcs

flash文件夹下新建bit_to_mcs.cmd文件,内容如下:

setMode -pff
setSubmode -pffspi
addDesign -version 0 -name "0"
addPromDevice -p 1 -size 2048
addDeviceChain -index 0
addDevice -p 1 -file ./top.bit
generate -format mcs -fillvalue FF -output ./top.mcs
quit


表示将当前目录下的top.bit文件转换为top.mcs文件,2048表示存储器大小为2048KB,我这里使用的是M25P16,容量大小16Mbit=2048KByte。

可以在终端输入命令执行这个脚本文件:

impact -batch ./bit_to_mcs.cmd

640.jpg


当然也可以再写一个文件执行这个脚本,新建run_bit_to_mcs.cmd文件,内容如下:

impact.exe -batch bit_to_mcs.cmd
echo "bit to mcs convert complete!"
pause


这样以后就只需要双击这个run_bit_to_mcs.cmd文件就一键实现bit转mcs了。

640.gif


二、iMPACT命令行实现bit文件下载

我们还可以实现一键下载bit文件的功能,新建program_bit.cmd文件,内容如下:

setmode -bscan
setcable -p auto
adddevice -p 1 -file top.bit
program -p 1
quit


表示将当前目录下的top.bit文件下载到FPGA内部RAM。


新建run_program_bit.cmd

impact.exe -batch program_bit.cmd
echo "bit file program success!"
pause


这样只要双击这个run_program_bit.cmd文件就可以实现一键下载bit文件了。

640.jpg


三、iMPACT命令行实现mcs文件下载

同理,我们还可以实现一键下载mcs文件的功能,新建program_mcs.cmd文件,内容如下:

setMode -bscan
setCable -p auto
addDevice -p 1 -file "./top.bit"
attachflash -position 1 -spi "M25P16" 
assignfiletoattachedflash -position 1 -file "./top.mcs"
Program -p 1 -dataWidth 1 -spionly -e -v -loadfpga
quit


指定存储器型号为M25P16,bit文件为当前目录下的top.bit,mcs文件为当前目录下的top.mcs,数据位宽为1


新建run_program_mcs.cmd文件,内容如下:

impact.exe -batch program_mcs.cmd
echo "mcs file program success!"
pause


这样以后只需要双击这个run_program_mcs.cmd文件就可以实现mcs文件下载了。

640.jpg


关于以上脚本文件各参数的说明,可以查看iMPACT官方帮助文档

640.jpg


目录
相关文章
|
6月前
luatos bit库
luatos bit库
28 0
|
Linux 开发工具 git
Xilinx Bit文件格式详解
Xilinx Bit文件格式详解
872 0
Xilinx Bit文件格式详解
|
1月前
|
Shell 网络安全 PHP
thewall-文件包含-CAP_DAC_READ_SEARCH
thewall-文件包含-CAP_DAC_READ_SEARCH
18 2
|
6月前
|
存储 数据库
PACS(Picture Archiving and Communications System)图像存储与传输系统源码
PACS(Picture Archiving and Communications System)图像存储与传输系统源码
79 0
|
存储 算法 数据格式
Xilinx MCS(HEX)文件格式详解
Xilinx MCS(HEX)文件格式详解
787 0
Xilinx MCS(HEX)文件格式详解
|
网络协议 机器人 物联网
案例分享:Qt modbus485调试工具(读写Byte、Int、DInt、Real、DReal)(当前v1.3.0)
案例分享:Qt modbus485调试工具(读写Byte、Int、DInt、Real、DReal)(当前v1.3.0)
案例分享:Qt modbus485调试工具(读写Byte、Int、DInt、Real、DReal)(当前v1.3.0)
|
芯片 SoC 传感器
带你读《小创客趣玩micro bit开发板编程》之一:什么是 microt:bit
本书从 micro:bit介绍、micro:bit开发方式、Makecode图形化编程和创意编程案例实践4个维度带领大家逐步理解和学习 micro:bit的使用方法。
1000BASE-T/SX/LX/EX/ZX代表哪种SFP光模块?
今天给大家介绍常见的SFP光模块1000BASE-SX、1000BASE-LX、1000BASE-EX、1000BASE-ZX、1000BASE-T这五种传输介质标准代表是哪种光模块呢?1000BASE-LX、1000BASE-LH和1000BASE-LX/LH SFP光模块它们又有哪些区别?现由专业光模块制造商-易天光通信在本文中详细为你解答。
2666 0