以前的设计大多是将配置数据存放在FPGA组成的系统上,本文提出将配置数据存放在使用者自己携带的外部存储器(如可加密的U盘)中。使用前将U盘接入FPGA组成的系统,系统上电时由单片机控制读出配置数据,再传送给FPGA进行配置。这样做优点很多:修改、升级简便,现场保密性强,安全性高;可多人分时使用同一硬件系统,同一硬件系统插入不同的配置U盘就可以实现不同的功能,可以方便地存储大容量配置数据或多个配置数据文件等;同时,符合计算机和嵌入式系统的热点USB OTG(On The Go,移动USB)技术趋势,是具有创新的设计。
以Mercury、APEX 20K(2.5V)、ACEX 1K和FLEX10K系列FPGA为例,配置方式有:被动串行PS(PasiveSerial)、被动并行同步PPS(Passive Parallel Synchronous)、被动并行异步PPA(Passive Parallel Asyn-chronous)和JTAG(Jont Test Action Group)等。具体配置方式由方式选择引脚MSEL1和MSELO的逻辑电平组合决定。
基于SRAM LUT(查找表)结构的FPGA采用在线可重配置方式ICR。以配置方式PS为例,可通过下载电缆南计算机直接对FPGA器件进行配置。这种方法在设计调试时非常方便,但在现场应用巾是很不现实的。上电后自动加载对FPGA器件进行配置是实际必须的,有许多方法,例如专用配置芯片(如EPC4)配置、单片机控制配置、MAX3000A控制F1ash存储器配置、PCI总线配置、Internet配置、PSD(Programmable System Devices可编程器件)配置等。