FPGA的PS方式配置及专用配置器件EPC2的应用

本文作者:admin       点击: 2007-10-09 00:00
前言:
引言:

现场可编程门阵列FPGA (Field Programmable Gate Array)是一种高密度可编程逻辑器件, 其逻辑功能是通过把设计生成的数据文件配置进芯片内部的静态配置数据存储器(SRAM)来实现的, 具有可重复编程性, 可以灵活实现各种逻辑功能。由于SRAM 的易失性, 每次系统上电时必须重新配置数据, 即ICR (In-Circuit Reconfigurability)。只有在数据配置正确的情况下,系统才能正常工作。
以Altera的Acex1K器件为例,结合本人的课题:光波导阵列电光扫描器驱动电源设计中FPGA的配置情况,介绍Acex1K器件的配置方式和专用配置器件EPC2的下载方式并对Acex1K完成配置过程。
1 Acex1K器件的配置
1.1  Acex1K系列器件介绍
Acex1K是一种在系统可编程片上系统(SOPC)芯片,该系列器件的特点是高性价比,高密度高性能,低功耗能满足各种性能的要求, 该器件基于SRAM,结合查找表(LUT)和嵌入式阵列块(EAB)提供了高密度结构,可提供10,000 到100,000可用门, 实现RAM,ROM,双口RAM和FIFO等功能。增强型嵌入式阵列可以实现诸于有效存储或者具体逻辑函数的大型功能;每个嵌入式阵列块EAB增加到16位宽的可实现双端口RAM位增加到49,152个。其引脚多电压系统兼容, 5V, 3V,2.5V也可以驱动这些引脚。双向I/O引脚执行速度最高可达250MHz,与PCI接口完全兼容。因此,Acex1k器件可以用来实现许多复杂逻辑功能,数字信号处理,高性能通信系统中的多位数据控制和传输,ACEX1K现以得到广泛应用。
1.2  配置方式介绍
Altera公司的Acex1K系列FPGA可以使用PS方式进行配置。也可以使用专用配置器件EPC2进行配置。使用被动串行(PS)方式时,计算机将配置数据以串行(比特流)方式送给FPGA,在配置时钟驱动下完成配置。若使用EPC2时,需要首先使用下载电缆将计算机生成的FPGA配置文件烧入EPC2配置器件中,然后由EPC2配置器件控制配置时序对FPGA进行配置,一次烧写即可重复使用,编程完后可以脱离计算机工作。在此详细介绍使用ByteBlasterMV下载电缆对Acex1K的PS方式配置和对专用器件EPC2进行编程并PS配置FPGA的过程。
1.3  ByteBlasterMV下载电缆
本文使用的下载电缆是Altera 公司为其可编程逻辑器件开发的ByteBlasterMV电缆。下图是下载电缆的原理图:
ByteblasterMV有PS(被动串行)和JTAG两种编程模式。
PS方式工作过程:当Nconfig产生下降沿脉冲时启动配置过程,在DCLK上升沿,将数据移入目标芯片。在配置过程中,系统需要实时监测,一旦出现错误,nSTATUS将被拉低,系统识别到这个信号后,立即重新启动配置过程。配置数据全部正确地移入目标芯片内部后,CONF-DONE信号跳变为高,此后,DCLK必须提供几个周期的时钟(具体周期数与DCLK的频率有关),确保目标芯片被正确初始化,进入用户工作模式。
JTAG工作方式:JTAG(Joint Test Action Group�联合测试行动小组)是一种国际标准测试协议(IEEE 1149.1兼容),主要用于芯片内部测试和编程。标准的JTAG接口是4线:TMS、TCK、TDI、TDO。

2 专用配置器件EPC2的应用

2.1  专用配置器件EPC2
EPC2适用于Altera公司的多数FPGA器件配置,用途广泛.它具有Flash配置存储器,可用来配置5.0V、3.3V、2.5V器件。通过内置的IEEE Std. 1149. 1 JTAG接口EPC2可以在5.0V和3.3V电压下进行在系统编程(ISP)。 系统编程后,调入JTAG配置指令初始化ACEX 1K器件。EPC2的ISP能力使ACEX 1K器件的初始和更新更容易。当用EPC2配置ACEX 1K器件时,在配置器件的内部发生带电复位延迟,最大值为200ms。Altera公司的QuartusⅡ和MAX+PLUSⅡ软件均支持配置器件的编程,设计中软件自动为每一个配置器件产生POF文件。EPC2LC20器件管脚如上图分布:

2.2   EPC2的工作过程
EPC2的nCS和OE引脚控制DATA输出引脚的三态缓冲器,使能地址计数器和EPC2的振荡器。nCS引脚控制配置器件的输出。当OE引脚接低电平时,不论nCS为何状态,地址计数器复位,DATA引脚输出为高阻状态。当OE引脚接高电平时,如果nCS保持高电平,则计数器停止计数,DATA引脚保持高阻状态;如果nCS接低电平,则计数器和DATA引脚正常工作。EPC2允许用户将nINIT-CONF引脚与PLD器件的nCONFIG引脚相连来初始化PLD器件的配置。EPC2的DATA引脚与ACEX 1K系列器件的DATA0或DATA引脚相连。存储在EPC2器件中的数据在其内部时钟的控制下顺序输出到DATA脚,然后在控制信号的控制下输出到FPGA器件的DATA0或DATA引脚。

2.3硬件电路设计
当用被动串行PS方式配置时,拨码开关断开,由PC通过ByteblasterMV下载电缆对FPGA进行PS方式的配置。
当连接JTAG口时候,下载电路对EPC2芯片下载程序,这时上电后程序自动的从EPC2加载到FPGA芯片中去,从而完成在系统编程。在进行系统升级时也可以在EPC2中加入相应的升级程序,同时用户也可以自己编写接口程序。使用专用器件配置时,拨码开关接通,由EPC2加载FPGA。

3 编程
Altera的MAX+PLUSII或QuartusII开发工具可以生成多种配置或编译文件,用于不同配置方法的配置系统,而对于不同系列的目标器件配置数据的大小也不同,配置文件的大小一般由*.rbf文件决定。Altera提供的软件工具不自动生成*.rbf文件,须按照下面的步骤生成:①在MAX+PLUSII编译状态,选择文件菜单的变换SRAM目标文件命令;②在变换SRAM目标文件对话框,指定要转换的文件并且选择输出文件格式为*.rbf(Sequential),然后确定。双击编程文件名,*.Pof是编程文件,*.Sof是配置文件。

结束语

本文详细介绍了使用ByteBlasterMV下载电缆对Altera公司的Acex1K器件的配置过程。测试过程中利用计算机采用PS方式对电路进行调试,完后采用专用配置器件EPC2进行配置,配置器件加载数据快速(几十个毫秒)、可靠、便于系统升级。证实了下载电缆对专用配置器件EPC2的编程配置的可行性和实用性。