前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >使用ISE iMPACT实现一键bit转mcs,bit文件下载,mcs文件下载

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

作者头像
单片机点灯小能手
发布2021-08-06 11:21:55
1.8K0
发布2021-08-06 11:21:55
举报

目录

  • 命令行实现一键bit转mcs
  • 命令行实现一键bit文件下载
  • 命令行实现一键mcs文件下载

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

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

iMPACT图像界面

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

帮助文档

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

准备工作

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

代码语言:javascript
复制
your_path:\Xilinx\14.7\ISE_DS\ISE\bin\nt64\impact.exe

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

impact版本

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

一、iMPACT命令行实现bit转mcs

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

代码语言:javascript
复制
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。

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

代码语言:javascript
复制
impact -batch ./bit_to_mcs.cmd

终端执行

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

代码语言:javascript
复制
impact.exe -batch bit_to_mcs.cmd
echo "bit to mcs convert complete!"
pause

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

bit转mcs

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

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

代码语言:javascript
复制
setmode -bscan
setcable -p auto
adddevice -p 1 -file top.bit
program -p 1
quit

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

新建run_program_bit.cmd

代码语言:javascript
复制
impact.exe -batch program_bit.cmd
echo "bit file program success!"
pause

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

下载bit文件

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

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

代码语言:javascript
复制
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文件,内容如下:

代码语言:javascript
复制
impact.exe -batch program_mcs.cmd
echo "mcs file program success!"
pause

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

mcs文件下载

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

帮助文档

关注以下公众号【电子电路开发学习】,后台回复【脚本文件】,获取以上脚本文件下载链接。

脚本文件

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2021-07-27,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 电子电路开发学习 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 准备工作
  • 一、iMPACT命令行实现bit转mcs
  • 二、iMPACT命令行实现bit文件下载
  • 三、iMPACT命令行实现mcs文件下载
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档