可编程逻辑
我们所说的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下载的新的配置数据。
审核编辑:汤梓红
全部0条评论
快来发表一下你的评论吧 !