rbf文件是Quartus编译生成的fpga配置文件的二进制数据量格式的文件,主要用于使用外部主机通过PS方式配置FPGA。

在含ARM硬核的SoC FPGA中,可以使用HPS配置FPGA,配置时分为两种情况,一种是在HPS处于uboot启动阶段时通过u-boot配置,一种是Linux启动之后通过应用程序配置。这两种配置方式都需要用到rbf格式的配置文件,但是两种方式所需的rbf格式的配置文件却又存在着差异,其中,uboot阶段配置fpga需要使用未经压缩的rbf格式文件,而在Linux应用程序中配置fpga时,需要使用经过压缩了的rbf文件。默认情况下,Quartus软件不能自动生成rbf文件,需要在设置种开启生成rbf文件选项。另外,也可以直接通过命令行的方式,从quartus编译得到的sof文件转换得到rbf文件。图1为在Quartus中直接勾选生成rbf文件的选项。

需要注意的是,这种方式生成的rbf文件是经过压缩了的,可以支持Linux中使用应用程序直接配置FPGA,不支持uboot阶段配置fpga。

另外也可以通过脚本实现

使用sof文件直接转换得到未经压缩的rbf文件的命令格式为:

quartus_cpf -c my_input_file.sof my_output_file.rbf
使用sof文件直接转换得到经过压缩的rbf文件的命令格式为:

quartus_cpf -c -o bitstream_compression=on my_input_file.sof my_output_file.rbf

使用时,可以直接在SoC EDS软件中输入上述命令生成rbf文件,也可以将上述命令做成脚本,这里作者倾向于直接将上述命令做成脚本,然后双击生成rbf文件

打开记事本,将下列命令粘贴到记事本中,然后保存为bat格式。例如保存为“sof2rbf_dc.bat”文件

%QUARTUS_ROOTDIR%\\bin64\\quartus_cpf   -c   -o   bitstream_compression=on  AC501_SoC_GHRD.sof   soc_system_dc.rbf
pause

然后,将sof2rbf_dc.bat文件拷贝到工程中sof所在目录下,直接双击运行该bat文件,就能生成名为soc_system_dc.rbf的文件了,该文件是经过压缩的rbf文件。

同样的再打开记事本,将下列命令粘贴到记事本中,然后保存为bat格式。例如保存为“sof2rbf.bat”文件

%QUARTUS_ROOTDIR%\\bin64\\quartus_cpf   -c   AC501_SoC_GHRD.sof   soc_system.rbf
pause

然后,将sof2rbf.bat文件拷贝到工程中sof所在目录下,直接双击运行该bat文件,就能生成名为soc_system.rbf的文件了,该文件是未经压缩的rbf文件。

注意,上述命令内容中,AC501_SoC_GHRD.sof名字需要换成你工程中实际的sof文件的名字。

下图为分别使用sof2rbf.bat和sof2rbf_dc.bat脚本生成的rbf文件,可以看到,两者尺寸差距较大,soc_system.rbf为4146KB,而soc_system_dc.rbf仅为1270KB。

另外,图中还有一个名为AC501_SoC_GHRD.rbf的文件,该文件是勾选了Quartus的自动生成rbf选项后生成的rbf文件,可以看到,与使用命令方式生成的压缩后的rbf文件尺寸一致。

另外,AC501_SoC_GHRD.sof文件的尺寸比未经压缩的soc_system.rbf文件的尺寸大了440KB,那么这两者之间会有什么联系和区别呢,有兴趣的网友可以研究研究。

 

为Quartus工程生成rbf文件的方法的更多相关文章

  1. vs工程生成dll文件及其调用方法

    转载:https://blog.csdn.net/weixin_44536482/article/details/91519413 vs工程生成dll文件及其调用方法                  ...

  2. 调试SQLSERVER (一)生成dump文件的方法

    调试SQLSERVER (一)生成dump文件的方法 调试SQLSERVER (二)使用Windbg调试SQLSERVER的环境设置调试SQLSERVER (三)使用Windbg调试SQLSERVER ...

  3. Quartus工程中各文件类型的含义

    https://blog.csdn.net/jingliangliu/article/details/52245497 .jic           JTAG Indirect Configurati ...

  4. MDK5生成BIn文件的方法

    配置MDK5 生成bin文件的 第一步:方法打开option for Target 第二步:选择 user 第三步:找到After Build/Rebuild 第四步:勾选run,点击文件选择小图标选 ...

  5. Protel99se生成gerber文件的方法

    这几天工作中遇到制作 gerber 的问题,确实让我郁闷了一 番,为了方便大家,不要再受其苦,特将这一过程写成文档供有这方面需要的同仁们参考. 1 protel99se 打开要生成 gerber 的 ...

  6. Quartus 11生成pof文件在AS烧写之后,程序无法启动

    1. 首先配置成AS,生成.pof文件,选择上面的图标Device 2. 选择Device and Pin Options... 3. 进入配置界面,选择如下 4. 进入下载界面,烧写.pof文件,开 ...

  7. Keil如何生成bin文件【Keil生成Bin文件的方法】

    使用过Keil的同鞋都知道,现在Keil中默认可以输出.axf的调试文件和可以通过钩选输出的.hex可执行文件,没有bin(二进制)文件的输出选项.可是偏偏某些时候需要或者习惯性的使用.bin文件来进 ...

  8. 使用Visual Studio将C#生成DLL文件的方法

    1.命令方式 打开Visual Studio安装目录下的开发人员命令提示 译 File.cs 以产生 File.exe csc File.cs 编译 File.cs 以产生 File.dll csc ...

  9. Ubuntu ./configure 半途终止 导致没有生成makefile文件 解决方法

    在安装thrift的时候,解压包进入目录,执行命令: ./configure 之后,发现某些包没有安装,导致configure到一半的时候退出,接着make发现没有makefile文件.估计是我系统安 ...

随机推荐

  1. 迷你MVVM框架 avalonjs 学习教程18、一步步做一个todoMVC

    大凡出名的MVC,MVVM框架都有todo例子,我们也搞一下看看avalon是否这么便宜. 我们先从react的todo例子中扒一下HTML与CSS用用. <!doctype html> ...

  2. 文件和Variant的转换

    function FileToVariant(FileName: String): OleVariant; var   AStream: TFileStream;   MyBuffer: Pointe ...

  3. Ansible Playbook Conditionals

    通常,play的结果可能取决于变量的值,facts(有关远程系统的知识)或先前的任务结果. 在某些情况下,变量的值可能取决于其他变量. 此外,可以创建其他组,以根据主机是否与其他条件匹配来管理主机. ...

  4. intellij idea 的常见配置

    1.视图配置 配置好后如下图:   2.修改字体大小 3.编码修改 4.行号显示 5.控制台字体大小调整 File->Settings->Editor->Colors & F ...

  5. Realm For Android详细教程

    目录 1.Realm简介 2.环境配置 3.在Application中初始化Realm 4.创建实体 5.增删改查 6.异步操作 7.Demo地址(https://github.com/RaphetS ...

  6. ASP.NET中UrlEncode应该用Uri.EscapeDataString()(转)

    今天,茄子_2008反馈他博客中的“C++”标签失效.检查了一下代码,生成链接时用的是HttpUtility.UrlEncode(url),从链接地址获取标签时用的是HttpUtility.UrlDe ...

  7. 一个性能较好的JVM参数配置

    一个性能较好的web服务器jvm参数配置: -server//服务器模式-Xmx2g //JVM最大允许分配的堆内存,按需分配-Xms2g //JVM初始分配的堆内存,一般和Xmx配置成一样以避免每次 ...

  8. actionBar_Tab导航

    actionBar配合碎片使用  初始化actionBar要注意设置actionbar的导航模式 package com.qf.actionbar04_tab; import java.io.File ...

  9. IIS支持IPA、APK文件的下载

    IIS里MIME类型中默认是没有ipa,apk文件的,所以无法直接通过网络下载.   解决方法如下: 1.打开IIS信息服务管理器,选中自已的网站,在右边面板中找到MIME类型. 2.双击打开,点击右 ...

  10. 学习类App原型制作分享-Wokabulary

    Wokabulary是一款多功能词汇学习App,可以学习多国语言词汇.原型的引导页面采用的图片+文字+分页器,需要注意的是分页器选中位置要与页面顺序一致.其次是语言的选择页面,在前面给大家介绍过滚动区 ...