FPGA配置

FPGA配置和FLASH相关

FPGA芯片是基于SRAM工艺的,不具备非易失特性,因此断电后将失去内部逻辑。在每次上电后,都需要从外部非易失存储器中导入配置比特流。硬件配置是FPGA是FPGA开发最关键的一步,只有将HDL代码下载到FPGA芯片中,才能进而调试并实现最终的功能。

   完成FPGA配置,需要类似单片机仿真器的下载电缆才能完成。

下载电缆是固定的JTAG电路,只要将其连接在PC上以及目标板上即可;只有目标板上的配置电路需要设计人员设计。

将配置数据(bit)从PC加载到Xilink FPGA芯片中的整个配置过程,可分为以下步骤:

初始化

通上电后,通过对PROG引脚置低电平,便可以对FPGA进行重新配置。初始化过程完成后,DONE信号将会变低。

清空配置存储器

在完成初始化后,器件会将INIT信号置低电平,同时开始清空配置寄存器,在清空完配置寄存器后,INIT信号将会重新被置为高电平。用户可以通过将PROG或者INIT信号(INIT为双向信号)置为低电平,从而达到延长清空配置寄存器的时间,以确保存储器被清空。

加载配置数据

配置存储器的清空完成后,器件对配置模式脚M[2:0]/M[1:0]进行采样,以确定用何种方式来加载配置数据。

CRC错误检查

器件在加载配置数据的同时,会根据一定的算法产生一个CRC值,这个值将会和配置文件内置的CRC值进行比较,如果两者不一致,则说明加载发生错误,INIT引脚将会被置低电平,加载过程被中断

扫描二维码关注公众号,回复: 5718584 查看本文章

START-UP

这个阶段是FPGA由配置状态过渡到用户状态的过程。在这个阶段完成后,FPGA便可以实现用户编程的功能。在此阶段,FPGA会进行一下操作:

(1)
将DONE信号置高电平,若DONE信号没有置高,则说明数据加载过程失败;

(2)
在配置过程中,器件的所有I/O引脚均为三态,此时全局三态信号GTS置低电平,这些I/O管脚将会从三态切换到用户设置的状态;

(3)
全局复位信号GSR置低电平,所有触发器进入工作状态;

(4)
全局写允许信号GWE置低电平,所有内部RAM有效。

整个过程需要8个时钟周期C0~C7.在默认的情况下,这些操作都和配置时钟CCLK同步。在DONE信号置高电平之前,GTS、GSR、GWE都保持高电平。如果选用JTAG配置电路,则所有操作都和JTAG电路的TCK保持同步。

Xilink FPGA配置电路之JTAG配置模式

这种模式是项目研发阶段必不可少的配置模式。IAG不需要额外的掉电非易失存储器,因此通过其配置的比特文件在FPGA断电后即丢失,每次上电后都需要重新配置,但是其效率非常高。JTAG配置利用FPGA芯片中的JTAG电路将.bit文件从PC传输到FPGA芯片中,从而使得FPGA开始工作,虽然该模式下载的程序在掉电后丢失,但下载速度快,是实际调试过程中在iMPACT操作中最频繁的过程。

iMPACT 软件能生成各种配置电路所对应的配置文件,并校验配置数据是否正确。

介绍下SPI和BPI配置模式。SPI和BPI都只有主模式。且BPI分主加(Master BPI-UP)和主减(Master BPI-DOWN)两种模式,前者从地址0开始递增加载,后者则是从最大地址开始递减加载。通常是主加。

SPI串行配置介绍。

特点:串行FLASH的特点是占用引脚比较少,作为系统的数据存储非常合适,一般都是采用串行外设接口(SPI总线接口),Xilink公司的新款FPGA都支持SPI接口。SPI总线通过4根信号线来完成主、从之间的通信,典型的SPI系统中常包含一个主设备及至少一个从设备,在FPGA应用场合中,FPGA芯片为主设备,SPI为从设备。

BPI配置电路

主要用于支持标准的并行NOR闪存以及字节位宽或字位宽的PROM芯片。在BPI模式下,FPGA从外部标准的NOR闪存或NAND闪存中,以字节宽度并行的获取配置数据。

配置接口时序由FPGA芯片控制,最常用的方法是由CCLK引脚输出控制时钟。地址总是在CCLK的下降沿递增(上电后,默认地址为1)。BPI UP 和BPI DOWN增加了BPI配置的灵活性,使其能够和其余嵌入式处理器或cpu共享内存。如果D[7:0]和D[15:8]全部使用,则其为16比特模式,如果只用了D[7:0],则为8比特模式。

下面介绍一下iMPACT如何生成对应FLASH的配置文件,只有将对应的配置文件写入到FLASH中,才能保证FPGA上电后自动加载逻辑并正常工作。
一般在一个项目画好原理图后,用什么FLASH已经确定,以我所涉及的一个项目为例,
在这里插入图片描述

M0,M1.M2 为010.是配置为BPI模式。

在这里插入图片描述

这是ug470_7Series_Config.pdf中的截图,第60页。

在这里插入图片描述
D[15:0] 全部使用,所以×16 BPI
下图是IMPACT产生BPI 对应的配置文件.mcs,将此文件烧写到FPGA的flash中即可实现上电自动加载数据。
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qq_39921762/article/details/88909778
今日推荐