FPGA配置启动详解系列(一)——配置文件详解
FPGA下载文件在实为装载数据到内部配置RAM中,然后初始化FPGA整个电路连线以及设置片内LUT的初始值,一个系统无论大小都会初始化整片FPGA,所以在同一款芯片中无论什么设计,下载文件大小都为固定值如下图所示,和MCU不一样,MCU会随着程序大小不一样产生二进制下载文件大小不一,两种下载含义也不一样,FPGA为配置电路版图,MCU为配置Flash。
AlteraFPGA包含多种下载格式文件,其中最常用的即为SOF文件和POF文件,但是无论什么格式的下载文件,最终下载到FPGA中的文件都为.rbf的原始二进制文件,cycloneIII的下载文件数据大小在不同芯片中的字节数如下图所示:
下面详细介绍ALTERA各种配置文件文件总类:
1.SRAM配置文件(SOF)
SOF文件为在线直接烧写FPGA配置区,采用可以采用JTAG和PS模式下载。Quartues自动默认生成。
2.Programmer文件(POF)
POF文件用于对ALTERA的配置芯片进行数据下载时候使用,Quartues自动生成。
3.原始二进制文件(RBF)
RBF文件是芯片配置的原始二进制文件和一些控制码,任何格式的配置文件最终下载到EPCS中的都为RBF文件。
4.原始编程数据文件(RPD)
RPD为包含cyclone系列芯片二进制位流数据和配置数据的二进制文件的合成文件,很少使用到,必须通过转换得到,不建议转成出RPD。
5.HEX文件
HEX文件不能直接对FPGA进行配置,只能通过第三方编程器对HEX进行解析后把数据区烧写到EPCS中。
6.JAM文件
JAM文件时用来存储器件变成信息的ASCII文本文件。
7.JBC文件
JBC文件时和JAM一样的二进制文件,未使用过。
以上文件除了SOF和POF文件软件自动生成,其余文件都有Quartues->File->Convert Programming Files进行转换生成。
例如下面是一个SOF直接转换到RBF文件的转换结果
可以看出RBF还比SOF大了一些,由于SOF是直接对内部配置RAM进行擦写的数据少了一些控制位,因此数据量比RBF更少。