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生成文件类型,可以在生成下载文件选项中进行选择:

640.jpg


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

640.jpg


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

640.jpg


Xilinx Bit文件格式

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


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

640.jpg


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

  • 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


运行结果:

640.jpg


file命令开源地址:

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


640.jpg


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

目录
相关文章
【EDA】 Verdi 使用笔记
【EDA】 Verdi 使用笔记
5072 0
【EDA】 Verdi 使用笔记
|
6月前
|
Ubuntu Linux 开发者
Ubuntu 20.04 安装企业微信教程(小白必备:Linux 环境下企业微信安装全攻略)
本文参考http://qamqb.cn详解Ubuntu 20.04下通过Wine环境(推荐wine64或deepin-wine)安装企业微信的完整流程,涵盖系统更新、环境配置、deb包安装及中文字体修复,助你高效实现Linux办公。
|
Python Windows
ImportError: No module named ‘encodings’
ImportError: No module named ‘encodings’
2029 0
|
存储 异构计算
FPGA - 7系列 FPGA内部结构之CLB -01- CLB资源概述
本文节选UG474进行整理翻译,用于对CLB进行简单介绍,同时简单介绍了下针对逻辑资源设计的推荐流程。
1092 0
FPGA - 7系列 FPGA内部结构之CLB -01- CLB资源概述
|
存储 Unix Shell
技术好文:TCL脚本语言基础介绍
技术好文:TCL脚本语言基础介绍
1766 1
|
存储 芯片 SoC
ZYNQ程序固化
ZYNQ程序固化
|
芯片
stm32f407探索者开发板(二十)——独立看门狗实验
stm32f407探索者开发板(二十)——独立看门狗实验
1363 0
|
存储 Linux API
ZYNQ裸板:串口篇
使用 PS 的时候,通常会添加 UART 控制器,用于打印信息和调试代码。除此之外, PS 在和外部设备通信时,也会经常使用串口进行通信。先从UART控制器开始讲起吧,从简单的测试再到工程实例。
2370 0
ZYNQ裸板:串口篇
|
XML 人工智能 小程序
一文秒懂ChatGPT官方提示词最佳实践(上)
一文秒懂ChatGPT官方提示词最佳实践(上)