专栏首页电子电路开发学习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文件中的数据部分,上一篇文章介绍了MCS文件格式,本文简单介绍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下,我们可以在GitCygwin64 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

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

Bit文件格式相关文档

本文分享自微信公众号 - 电子电路开发学习(mcu149),作者:wcc149

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2021-07-26

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Xilinx MCS(HEX)文件格式详解

    HEX 文件是指以hex为后缀,采用Intel-HEX编码规则的文件,可以直接使用文本编辑工具打开。通常用来对微控制器或ROM进行编程,本质上都是对存储器编程,...

    单片机点灯小能手
  • Xilinx FPGA bit 文件加密

    当你的项目终于做完了,到了发布的关键节点,为了防止自己的心血被别人利用,最好对产品进行bit加密。

    瓜大三哥
  • Xilinx FPGA bit 文件加密

    大侠好,欢迎来到FPGA技术江湖,江湖偌大,相见即是缘分。大侠可以关注FPGA技术江湖,在“闯荡江湖”、"行侠仗义"栏里获取其他感兴趣的资源,或者一起煮酒言欢。...

    FPGA技术江湖
  • 基于Xilinx Zynq系列的PS端裸机与FreeRTOS案例开发(1.1工程编译、程序加载与固化法)

    本次案例用到的是创龙科技的TLZ7x-EasyEVM-S开发板,它是一款基于Xilinx Zynq-7000系列XC7Z010/XC7Z020高性能低功耗处理器...

    创龙Tronlong123
  • 基于Xilinx Zynq系列的PS端裸机与FreeRTOS案例开发(1.2工程编译、程序加载与固化法)

    本次案例用到的是创龙科技的TLZ7x-EasyEVM-S开发板,它是一款基于Xilinx Zynq-7000系列XC7Z010/XC7Z020高性能低功耗处理器...

    创龙Tronlong123
  • 【重磅干货】手把手教你动态编辑Xilinx FPGA内LUT内容

    FPGA是实现高性能计算与网络的重要工具,得益于其高度的并行性与用户可编程的特性,FPGA得到了越来越广泛的应用。FPGA由CLB(Configurable L...

    网络交换FPGA
  • 嵌入式硬件开发学习教程——Xilinx Vivado HLS案例 (流程说明)

    本文主要介绍HLS案例的使用说明,适用开发环境:Windows 7/10 64bit、Xilinx Vivado 2017.4、Xilinx Vivado HL...

    创龙Tronlong123
  • 【Vivado】那些事儿-汇总篇

    【Vivado那些事】Xilinx FPGA普通IO能不能直接接入PLL作为时钟输入

    碎碎思
  • HEX文件格式详解

    如图,其中第一行020000040002f8中,可以看做是0x02 0x00 0x00 0x04 0x02 0x02 0xf8,其前四个字节和最后一个字节有特殊...

    杨源鑫
  • ELF文件格式的详解

    ELF的英文全称是The Executable and Linking Format,最初是由UNIX系统实验室开发、发布的ABI(Application Bi...

    bigmagic
  • Java Class文件格式详解

    Java编写的程序可以运行在许多平台上,平台无关性的基础是虚拟字节码和字节码存储格式,Java虚拟机不和Java语言强绑定,它只和Class文件打...

    心平气和
  • PE文件格式详解,第一讲,DOS头文件格式

               PE文件格式详解,第一讲,DOS头文件格式 今天讲解PE文件格式的DOS头文件格式 首先我们要理解,什么是文件格式,我们常说的EXE可执行...

    IBinary
  • PE文件格式详解,第二讲,NT头文件格式,以及文件头格式

            PE文件格式详解,第二讲,NT头文件格式,以及文件头格式 PS:本篇博客默认你已经有了汇编基础,所以会使用32位汇编编写最小PE进行讲解 今天...

    IBinary
  • 从多图对比看Vivado与ISE开发流程的差异

    对 Vivado 和它的前一代设计套件,ISE 做一个组件功能上的平行比较和总结是很有用的。其目的是让那些具有在 ISE 下工作经验 (但是不具有 Vivado...

    碎碎思
  • Xilinx FPGA程序升级

    Xilixn FPGA提供了一种在线升级的方式,可以通过ICAP指令实现。ICAP(Internal Configuration Access Port) 指的...

    瓜大三哥
  • IC技术圈期刊 2021年第3期

    IC技术圈期刊内容涵盖FPGA、前端、验证、后端、自动化、模拟、求职、管理等IC技术领域,欢迎阅读,欢迎投稿。

    碎碎思
  • 100G以太网光口的FPGA测试实例

    软件环境为VIVADO2019.1,不建议采用VIVADO 2018.2,原因在于2018.2中的该IP核没有AXI总线,只有LBUS总线,LBUS总线使用起来...

    网络交换FPGA
  • FPGA 之 SOPC 系列(九)SOPC 补充:altera与xilinx对比

    今天给大侠带来今天带来FPGA 之 SOPC 系列第九篇,同时也是最后一篇,SOPC 补充:altera与xilinx对比,希望对各位大侠的学习有参考价值,话不...

    FPGA技术江湖
  • 基于原语的千兆以太网RGMII接口设计

    RGMII是GMII的简化版本,发送端信号:TXD[3:0]、 TX_CLK、TX_EN,接收端信号:RX_DV、RXD[3:0]、RX_CLK,当Clock=...

    碎碎思

扫码关注云+社区

领取腾讯云代金券