Altera FPGA开发过程中sof、pof、jic文件的区别

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/tq384998430/article/details/84951569

1、sof文件

sof文件是编译(分析、综合、布线、生成、时序)过程中生成的一个文件,如下图红圈过程中所示,

生成的sof文件是可以直接通过JTAG口下载到FPGA的SRAM中去并直接执行。所以sof文件可以“看成”是raw binary文件,当然还是有区别的,就相当于HEX文件和BIN文件的区别一样,HEX文件和BIN文件可以互相转换。

2、pof文件

pof文件和sof文件一样也是在Assemble过程中生成的,但是pof文件是不能直接下载到FPGA的SRAM中去的,而是通过ASP端口直接下载到FPGA的配置芯片中去的。配置芯片一般是串行FLASH芯片,在上电的时候FPGA会主动的从配置芯片中读取数据并烧写内部的SRAM数据然后执行程序。

3、jic文件

jic文件不是在编译过程中生成的,而是需要使用Quartus II软件的“Convert Programing File”功能将sof文件转换得到的。得到的jic文件,通过JTAG口可以将jic文件通过FPGA作为桥接芯片下载到配置芯片中去。如下图:

可以看出来jic文件的性质和pof文件的性质是一样的,都是固化在配置芯片中的,但是下载方式是不一样的,pof文件是直接通过ASP端口直接下载到配置芯片中去的,而jic文件需要通过FPGA作为桥接再下载到配置芯片中去,两种方法各有各的好处,使用jic文件省了一个ASP端口,使用pof文件不需要转换直接就能下载。

猜你喜欢

转载自blog.csdn.net/tq384998430/article/details/84951569