什么是.rbf文件以及如何从Windows上的Quartus输出文件.sof生成它们?
答案 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