如何在Altera Quartus中生成.rbf文件?

时间:2015-03-01 22:28:23

标签: fpga intel-fpga quartus

什么是.rbf文件以及如何从Windows上的Quartus输出文件.sof生成它们?

3 个答案:

答案 0 :(得分:4)

使用Quartus II GUI转到File =>转换编程文件,然后可以选择.rbf作为输出文件,.sof可以作为输入文件。

可以从GUI保存转换设置,以便在命令行中使用,例如

> quartus_cpf -c convert_sof_to_rbf.cof

答案 1 :(得分:4)

RBF 是" 原始二进制文件"。它表示原始数据,例如,可以加载到闪存中,以便在上电时初始化FPGA。

SOF 是" SRAM对象文件"。它包含直接初始化FPGA所需的数据。

虽然您可以从Quartus(File -> Convert Programming Files...)输出RBF,但我怀疑您的问题是您正在寻找直接将SOF转换为RBF的方法。这可以使用Altera" NIOS II Command Shell"来完成,它可以从开始菜单中的Quartus文件夹运行。

请注意,虽然您需要安装Quartus才能执行此操作,但您不需要为订阅付费,因为即使Quartus没有有效的许可证,NIOS II Command Shell也能正常工作。 / p>

这是一个两步过程...

第一步

cd到包含您的SOF的目录,然后输入:

sof2flash --offset=0 --input="./your_file.sof" --output="./your_file.flash"

这会将SOF文件转换为FLASH文件,该文件是所需RBF的ASCII表示。

第二步

现在输入:

nios2-elf-objcopy -I srec -O binary "./your_file.flash" "./your_file.rbf"

您现在可以根据需要获得RBF文件。

答案 2 :(得分:0)

另一个免费的替代GUI:

要在Windows的命令行中使用,必须首先启动Altera嵌入式命令外壳程序(在Linux系统上同样的想法)。在我的计算机上,要启动的文件是:

# on Windows
C:\intelFPGA\17.1\embedded\Embedded_Command_Shell.bat

# on Linux
/opt/altera/17.1/embedded/Embedded_Command_Shell.sh

然后,您可以使用Quartus命令行程序。

直接将 sof 转换为 rbf

quartus_cpf -c my_input_file.sof my_output_file.rbf

您还可以添加选项来压缩比特流,例如:

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