首先,FPGA的下载配置指的是将电脑上的配置数据传输到FPGA或其附属存储器中。这个过程可以通过下载线缆,如JTAG接口,实现数据的烧录。简单来说,就是将FPGA的配置数据从电脑上转移到FPGA本身或者像FLASH这样的存储芯片中。
而启动配置则发生在FPGA上电之后,此时需要将存储在FPGA内部或外部存储器中的配置数据加载到FPGA的RAM中,使其能够开始执行预定的逻辑功能。
为了区分这两种配置方式,我们可以进一步探讨它们各自的特点和应用场景。
在FPGA的下载配置中,最常见的方式是基于JTAG的配置。这种配置方式非常灵活,不仅可以直接将配置数据加载到FPGA上以供即时使用,还可以通过FPGA将数据烧录到外部存储器中,如FLASH芯片。这样一来,每次FPGA上电时,都能够从外部存储器中自动加载配置数据,确保了系统的稳定性和可靠性。
以下是一些FPGA配置的图像示例,展示了配置过程的具体细节:  
FPGA的启动配置方式主要有JTAG、AS(主动序列)和PS(被动序列)三种。在AS配置方式中,FPGA扮演着主动角色,控制和引导外部存储器的配置过程。相反,PS配置方式则是由外部控制器,如PC或其他微控制器,来控制配置过程。
在正常工作状态下,FPGA的配置数据存储在其内部的RAM中,这意味着每次上电时都需要重新下载配置数据。在实验或调试阶段,我们通常使用计算机或控制器通过PS方式进行配置。然而,在实际应用中,FPGA需要主动引导配置操作,从外围的专用存储芯片中获取配置数据,确保系统能够稳定运行。
FPGA上电后的配置过程是这样的:上电后,FPGA内部的控制器首先启动,确定当前的配置模式。如果是AS配置,FPGA将通过外部接口(比如SPI接口)与配置芯片通信,将数据加载到内部的RAM中,配置完成后即可开始正式运行。值得一提的是,JTAG配置具有最高优先级,一旦启动JTAG下载,FPGA将立即停止当前的工作,转而运行新的配置数据。
通过这样的配置过程,FPGA能够灵活地适应各种应用场景,确保电子系统的可靠性和高效性。
我们所说的FPGA配置电路,一方面要完成从PC上把bit文件下载到FPGA或存储器的任务,另一方面则要完成FPGA上电启动时加载配置数据的任务。
为了避免混淆,这里对FPGA的下载配置和启动配置做一点区分。FPGA器件的下载配置,是指将PC上的FPGA配置数据流通过下载线缆烧录到FPGA或者FLASH存储器中;而FPGA器件的启动配置,则是指将配置数据流从PC或者FLASH存储器中加载到FPGA内,使其运行起来。
FPGA器件的下载配置,最常见的是基于JTAG的配置方式,这种方式既可以直接将PC上的配置数据流加载到FPGA上在线运行,也可以通过FPGA器件本身间接地将数据烧录到FLASH等外部配置芯片中。
FPGA器件的启动配置主要有JTAG方式、AS和PS配置方式;AS配置方式由FPGA器件引导配置过程,它控制着外部存储器件及其初始化过程,FPGA器件处于主动地位,配置器件处于从属地位。PS配置方式则由PC或者其他控制器控制配置过程。FPGA在正常工作时,它的配置数据存储在RAM中,加电时须重新下载。在实验系统中,通常用计算机或控制器进行调试,因此可以使用PS配置方式。在使用系统中,必须由FPGA主动引导配置操作过程,这时FPGA将主动从外围专用存储芯片中获得配置数据。
FPGA上电初始的配置过程:FPGA在上电后,内部的控制器首先工作,确认当前的配置模式,如果是AS配置方式,则通过和外部配置芯片的接口(例如,SPI接口)将配置芯片的数据加载到FPGA的RAM中,配置完成后开始正式运行。需要注意的是,JTAG在线配置的优先级是最高的,无论此时FPGA中在运行什么逻辑,只要JTAG下载启动,则FPGA便停下当前的工作,开始运行JTAG下载的新的配置数据。
审核编辑:汤梓红