FPGA是基于SRAM编程的,编程信息在系统掉电时会丢失,每次上电时,都需要从器件外部的FLASH或EEPROM中存储的编程数据重现写入部的SRAM中。FPGA在线加载需要有CPU的帮助,并且在加载前CPU已经启动并工作。FPGA的加载模式主要有以下几种:1).PS模式(PassiveSerialConfigurationMode),即被动串行加载模式。PS模式适合于逻辑规模小,对加载速度要求不高的FPGA加载场合。在此模式下,LK由FPGA外部时钟源或外部控制信号提供。另外,PS加载模式需要外部微控制器的支持。2).AS模式(ActiveSerialConfigurationMode),即主动串行加载模式。在AS模式下,FPGA主动从外部存储设备中读取逻辑信息来为自己进行配置,LK由FPGA部提供。3).PP模式(PassiveParallelConfigurationMode),即被动并行加载模式。此模式适合于逻辑规模较大,对加载速度要求较高的FPGA加载场合。PP模式下,LK信号由外部提供。4).BS模式(BoundaryScanConfigurationMode),即边界扫描加载模式。也就是我们通常所说的JTAG加载模式。所有的FPGA芯片都有三个或四个加载模式配置管脚,通过配置MESL[0..3]来选取不同的加载模式。首先来介绍下PS加载模式,各个厂商FPGA产品的PS加载端口定义存在一些差异,下面就对目前主流的三个FPGA厂商Altera,Xilinx,Lattice的PS加载方式进行一一介绍。Altera公司的FPGA产品PS加载接口如下图所示。1).CONFIG_DONE:加载完成指示输出信号,I/O接口,高有效,实际使用过4.,使其默认状态为高电平,表示芯片已加载完毕,当FPGA正在加载时,会将其驱动为低电平。2).nSTATUS:芯片复位完成状态信号,I/O接口,低有效,为低时表示可以接收来自外部的加载数据。实际使用过4.,使其默认状态为高,表示不接收加载数据。3).nCE:芯片使能管脚,输入信号,低有效,表示芯片被使能。当nCE为高电平时,芯片为去使能状态,禁止对芯片进行任何操作。对于单FPGA芯片单板,nCE直接接GND即可,而对于多FPGA芯片单板,第一片芯片的nCE接GND,下一芯片的nCE接上一芯片的nCEO。4).nCEO:使能输出信号,当芯片加载完成时,该管脚输出为低电平,未加载完成时输出为高电平。对于单FPGA芯片单板,nCEO悬空,对于多FPGA芯片单板,nCEO接下一芯片的nCE。5).nCONFIG:启动加载输入信号,低电平时表示外部要求FPGA需要重新加载,复位FPGA芯片,清空芯片中现有数据。实际使用中该管脚通过4.,使其默认状态为高。中国通信人博客b_}qQ'N6).DCLK:加载数据参考时钟。PS模式下为输入,AS模式下为输出。中国通信人博客5J-q](~fO7).DATA0:加载数据输入,输入信号。中国通信人博客:alD,l:q,bw8).MSEL[0:3]:加载模式配置管脚。控制加载模式。0k+Dl)obs#b0(`Y!a!f'y0 上图为利用CPU扩展I/O端口对多片FPGA进行PS加载的硬件连接实例。CPU可以利用自己的I/O端口来对FPGA进行直接加载,不过,由于CPU的I/O端口有
FPGA的配置引脚说明书 来自淘豆网m.daumloan.com转载请标明出处.