Xilinx Bit文件格式详解

文章目录

Xilinx Bit文件如何生成

Xilinx Bit文件格式

参考资料


Xilinx FPGA支持多种程序文件格式,如.bit/.bin/.rbt/.isc,最常用的为.bit格式,一般用于调试时下载到FPGA片内RAM,掉电会丢失,量产时将.bit文件转换为.mcs格式文件,固化到外部Flash内。

比如在一些特定情况下,我们只有一个.bit文件,我们如何获取到以下信息呢?

  • Bit文件所对应的FPGA芯片信息,如型号,封装等
  • Bit文件所对应的FPGA工程的顶层设计名称
  • Bit文件所生成的时间,日期信息
  • 用户指定的ID号码(8位十六进制数)

相比于mcs文件,bit文件包括的信息更多,mcs文件只包含bit文件中的数据部分,本文简单介绍Xilinx bit文件的基本构成。

Xilinx Bit文件如何生成

Xilinx ISE开发环境,支持多种程序文件文件生成,.bit/.bin/.rbt/.isc,其中.bin格式文件不能下载到FPGA内部,也不能用来转换为mcs。

ISE生成文件类型,可以在生成下载文件选项中进行选择:

配置生成的程序文件

 选择所需要的程序文件格式:

ISE支持生成的程序文件

 还可以在Bit文件中指定用户代码,可以作为版本号或识别码。

指定用户代码

Xilinx Bit文件格式

bit文件是二进制编码的文件,不能使用文本工具打开,可以使用二进制编辑工具查看。

使用Binary Viewer打开一个bit文件:demo.bit

demo

 我们好像发现了一些信息:

  • top.ncd,表示生成当前bit文件的顶层设计名称为:top
  • 6Slx9ftg256,bit文件所对应的FPGA型号:Spartan-6系列XC6SLX9,FTG256封装。
  • 2021/07/25 14:22:26,bit文件生成的时间:2021-07-25 14:22:26
  • 0x12345678,指定的用户ID

更简单的一种方式,我们可以使用file命令直接查看文件信息,file命令支持Xilinx系列Bit文件解析。

如果是Linux系统,我们可以直接使用file命令查看文件信息,Windows下,我们可以在Git或Cygwin64 Terminal等终端工具中使用file命令:

whik@WangChaoLaptop MINGW64 /d/MyFile
$ file ./demo.bit
demo.bit: Xilinx BIT data - from top.ncd;HW_TIMEOUT=FALSE;UserID=0x12345678 - for 6slx9ftg256 - built 2021/07/25(14:22:26) - data length 0x5327c

运行结果:

file命令执行结果

 file命令开源地址:

https://github.com/file/file/blob/master/magic/Magdir/xilinx

file命令

 

master/magic/Magdir/xilinx文件简单介绍了Bit文件的格式。

参考资料

  • www.fpga-faq.com/FAQ_Pages/0026_Tell_me_about_bit_files.htm
  • www.pldtool.com/pdf/fmt_xilinxbit.pdf
  • www.xilinx.com/support/documentation/application_notes/xapp138.pdf
  • www.xilinx.com/support/documentation/application_notes/xapp139.pdf
  • www.xilinx.com/support/documentation/application_notes/xapp151.pdf
  • 2
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值