在主动配置中,FPGA器件本身控制着配置操作的整个过程。这种方式下,FPGA在上电时会自动从外部存储器读取配置数据,然后完成内部逻辑的初始化。这种方法的优点在于能够快速启动,并且在整个过程中,FPGA不需要外部设备的干预。
与主动配置不同,被动配置则是由外部设备,如计算机或控制器,来控制整个配置过程。当FPGA上电后,控制设备会将存储在外部EEPROM或FLASH中的数据传输到FPGA内部。配置完成后,FPGA的I/O端口和寄存器会被初始化,随后进入用户模式,开始执行预定的功能。这种配置方式在复杂系统中尤为常见,因为它允许设计者根据需要动态地更新FPGA的逻辑。
选定配置方式后,设计者需要设置FPGA上的MSEL引脚,以确定所采用的配置模式。这个引脚的设定值将直接影响FPGA的配置过程。
以下是一些常用的FPGA配置方式:
1. PS配置(Passive Serial Configuration):这是一种简单的串行配置方式,配置数据以串行形式从外部存储器传输到FPGA。它的优点在于接口简单,但传输速度相对较慢。
2. AS配置(Active Serial Configuration):与PS配置不同,AS配置中FPGA主动从外部存储器读取数据,这种方式的传输速度通常更快。
3. PPS配置(Passive Parallel Synchronous Configuration):在PPS配置中,配置数据通过并行接口同步传输。这种配置方式适用于需要更高数据传输速率的应用。
4. FPP配置(Fast Passive Parallel Configuration):FPP配置提供了更快的并行数据传输,适用于对速度要求极高的场合。
5. PPA配置(Passive Parallel Asynchronous Configuration):PPA配置采用异步并行传输方式,允许在数据传输过程中有更灵活的时钟控制。
6. PSA配置(Passive Serial Asynchronous Configuration):这种配置方式结合了串行和异步的特点,适用于某些特殊的通信协议。
7. JTAG配置(Joint Test Action Group Configuration):JTAG是一种用于测试和调试的配置方式,它通过一个四线的接口实现与FPGA的通信。JTAG不仅用于配置,还可以用于芯片内部的测试和诊断。
了解这些配置方式有助于设计者在设计FPGA系统时做出明智的选择。每种配置方式都有其独特的优势和局限性,选择合适的配置方式可以优化系统的性能和可靠性。随着技术的发展,FPGA的配置方式也在不断进步,为电子系统的设计带来了更多的可能性。
广义的来说,FPGA的配置包括直接使用下载电缆对FPGA器件进行编程、对外部EEPROM和FLASH进行编程、使用MPU对FPGA器件进行编程、外部EEPROM和FLASH对器件进行编程等。
FPGA器件配置方式分三大类:主动配置、被动配置和JTAG配置。
主动配置:由FPGA器件引导配置操作过程。
被动配置:由计算机或控制器控制配置过程。上电后,控制器件或主控器把存储在外部存储器中的数据送入FPGA器件内,配置完成之后将对器件I/O和寄存器进行初始化。初始化完成后,进入用户模式,开始正常工作。
一旦设计者选定了FPGA系统的配置方式,需要将器件上的MSEL引脚设定为固定值,以指示当前所采用的配置方式。
常用的配置方式有:
PS配置(Passive Serial Configuration):被动串行配置
AS配置(Active Serial Configuration):主动串行配置
PPS配置(Passive Parallel Synchronous Configuration):被动并行同步配置
FPP配置(Fast Passive Parallel Configuration):快速被动并行配置
PPA配置(Passive Parallel Asynchronous Configuration):被动并行异步配置
PSA配置(Passive Serial Asynchronous Configuration):被动串行异步配置
JTAG配置(Joint Test Action Group Configuration)