FPGA有两种运行模式,即下载模式和烧写模式。下载模式是在上电的情况下通过JTAG接口直接把程序(Altera平台下是.sof文件,SRAM Object File)下载到FPGA中。因为FPGA是基于SRAM结构的,因此断电后刚刚下载的程序就丢掉了,上电后必须重新下载才可以运行该程序。烧写模式是通过Blaster电缆把编译生成的目标文件(Altera平台下是.pof文件,Programming Object File)烧写到配置芯片中。配置芯片通常是和FPGA配套使用的专用Flash,EPCS后面的数字代表位宽。一旦程序烧到配置芯片中后,在板子上电的时候FPGA就自动从配置芯片下载程序,之后会有一个自动的全局复位(根据约束的上电电平)。
根据上面的说法,.sof文件的大小和FPGA的型号有关,而.pof文件的大小和配置芯片的型号有关。
通俗一点讲
1.FPGA本身并不储存程序,而是放到EPCS中,上电后在读入执行。
2.一般因为EPCS都是有寿命的,经常写会短命。所以等程序写好,调试完成才写入EPCS中的。
所以,经常使用的就是JTAG模式
1 4 16 是版本号,不同的fpga芯片配不同的epcs
一.下载模式
FPGA器件有三类配置下载方式:主动配置方式(AS)和被动配置方式(PS)和最常用的(JTAG)配置方式。
AS模式(acTIve serial configuraTIon mode):FPGA器件每次上电时作为控制器,由FPGA器件引导配置 *** 作过程,它控制着外部存储器和初始化过程,从配置器件EPCS主动发出读取数据信号,从而把EPCS的数据读入FPGA中,实现对FPGA的编程配置数据通过DATA0引脚送入 FPGA,配置数据被同步在DCLK输入上,1个时钟周期传送1位数据。
PS模式(passive serial configuraTIon mode):则由外部计算机或控制器控制配置过程。通过加强型配置器件(EPC16,EPC8,EPC4)等配置器件来完成,EPCS作为控制器件,把FPGA当作存储器,把数据写人到FPGA中,实现对FPGA的编程。该模式可以实现对FPGA在线可编程。在下载配置的时候对于Cyclone II的器件,如EP2C8,在JTAG下载方式对应.sof,AS下载方式对应.pof。
JTAG:JTAG是直接烧到FPGA里面的,由于是SRAM,断电后要重烧;AS是烧到FPGA的配置芯片里保存的,每次上电就写到FPGA里。
一般情况下,Cyclone II开发板上应该有两种下载模式,AS和JTAG。AS就是下载.pof文件到EPCS中。而JTAG就是下载.sof文件到FPGA中的RAM中。
二.烧写步骤
(1)打开软件—》tools—》Programmer,d出对话框。点击hardware setup,再点击Add hardware选择添加你的烧写工具。
(2)回到对话框,Delete窗口中的文件,点击Add files添加你的新文件(.sof格式),在program/configure中打钩。
(3)点击 Start按钮,下载开始。成功后,Progress显示100%。搞定!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)