FPGA配置方式
AS模式:主动模式
烧到FPGA的配置芯片里保存的,FPGA器件每次上电时,作为控制器从配置器件EPCS(Erasable programmable configurable serial串行存储器)主动发出读取数据信号,从而把EPCS的数据读入FPGA中,实现对FPGA的编程,该方法适用于不需要经常升级的场合;
PS模式:被动模式
EPCS作为控制器件,把FPGA当做存储器,把数据写人到FPGA中,实现对FPGA的编程。可以采用微控制器(单片机、ARM等)或者CPLD,该模式可以实现对FPGA在线可编程,升级方便;
JTAG模式:
直接烧到FPGA里面的,由于是SRAM,断电后要重烧,适用于调试。
JTAG接口有4个必需的信号TDI, TDO, TMS和TCK以及1个可选信号TRST构成,其中:
TDI:用于测试数据的输入;
TDO:用于测试数据的输出;
TMS:模式控制管脚,决定JTAG电路内部的TAP状态机的跳变;
TCK:测试时钟,其他信号线都必须与之同步;
TRST:可选,如果JTAG电路不用,可以讲其连到GND。
AS模式
AS配置器件是一种非易失性、基于flash存储器的存储器,用户可以使用altera的ByteBlaster II加载电缆、altera的“altera programming unit”或者第三方的编程器来对配置芯片进行编程。它与FPGA的接口为以下简单的4个信号线:
DCLK:
串行时钟输入,是在配置模式下FPGA内部的振荡器(oscillator)产生的,在配置完成后,该振荡器将被关掉。工作时钟在20MHz左右,而fast AS方式下(stratix II和cyclone II支持该种配置方式),DCLK时钟工作在40MHz左右,在altera的主动串行配置芯片中,只有EPCS16和EPCS64的DCLK可以支持到40MHz,EPCS1和EPCS4只能支持20MHz。
ASDI:AS控制信号输入;
nCS:片选信号;
DATA:串行数据输出。
PS(被动串行)
则由外部计算机或控制器控制配置过程,是使用最多的一种配置方式。。所有altera FPGA都支持这种配置模式。通过altera 的下载电缆、加强型配置器件(EPC16,EPC8,EPC4)等配置器件或智能主机(如微处理器和CPLD)来完成,在PS配置期间,配置数据从外部储存部件(这些存储器可以是altera配置器件或单板上的其他flash器件),通过DATA0引脚送入FPGA。配置数据在DCLK上升沿锁存,1个时钟周期传送1位数据。
与FPGA的信号接口:
. DCLK(配置时钟);
. DATA0(配置数据);
. nCONFIG(配置命令);
. nSTATUS(状态信号);
. CONF_DONE(配置完成指示)。