当前位置:   article > 正文

Xilinx 7系列FPGA架构之器件配置(三)_xilinx配置芯片

xilinx配置芯片

引言:本文我们继续介绍7系列FPGA器件配置,主要介绍几种常见的配置方案。

1.串行配置模式

在串行配置模式下,FPGA通过每个CCLK周期加载一个配置位进行配置。CCLK是主串行模式下的输出,是从串行模式下的输入。图1显示了基本的7系列FPGA串行配置接口。

图片

图1、7系列FPGA串行配置接口

1.1 从串行配置模式

从串行配置通常用于串行菊花链中的器件,或从外部微处理器或CPLD配置单个器件时(见图2)。除了CCLK的方向外,设计注意事项与主串行配置类似。CCLK必须由外部时钟源驱动。

图片

图2、从串行模式配置举例

  1. 7系列FPGA VCCO_0和Xilinx电缆VREF必须具有相同的电压;

  2. DONE引脚为开路漏极输出;

  3. INIT_B引脚是一个双向开放式漏极引脚,需要一个外部上拉电阻器;

  4. 对于串行配置,必须为CCLK设置位流启动时钟设置;

  5. CCLK信号完整性至关重要,可能需要匹配端接;

  6. VCCBATT是存储在SRAM中的AES密钥的电源。使用时,应将其连接至电池电源。

1.2 主串行配置模式

主串行配置模式与从串行配置模式相同,只是FPGA生成CCLK。也就是说,CCLK是主串行模式下的输出。对于7系列FPGA,主SPI模式是串行Flash器件低引脚数配置的主要配置模式。

1.3 时钟串行配置数据

图3显示了如何在从串行和主串行模式下将配置数据传输到7系列FPGA中。

图片

图3、串行配置时钟顺序

  1. Bit0为第一个字节最高位。例如,如果第一个字节是0xAA(10101010)、位0=1、位1=0、位2=1,等等;

  2. 对于主配置模式,CCLK仅在INIT_B变高后输出驱动,到DONE变高后短暂驱动。否则,CCLK处于高Z状态;

  3. CCLK可在从机串行模式下自由运行。

2.主SPI配置模式

7系列FPGA主SPI配置模式允许使用低引脚数、行业标准SPI闪存器件进行位流存储。FPGA支持直接连接到SPI闪存器件的实际标准四线接口,用于读取存储的配置文件位流。

7系列FPGA主SPI配置模式(图4)可以选择支持x2和x4快速输出读取操作的SPI设备进行读取。这些输出模式按比例比标准1位SPI接口快。此外,下降沿时钟模式可用于更好地利用整个时钟周期,并允许更高的配置速度。

图片

图4、7系列FPGA SPI配置接口

图5显示了具有x1或x2数据宽度的SPI配置的连接。这些连接是相同的,因为x2模式使用D00_MOSI引脚作为双用途数据输入/输出引脚。菊花链配置模式仅在SPI x1模式下可用。

图片

图5、7系列FPGA SPI x1/x2配置接口

图6显示了具有x4数据宽度的SPI配置的连接。

图片

图6、7系列FPGA SPI x4配置接口

  1. DONE引脚为开路漏极输出;

  2. INIT_B引脚是一个双向开放式漏极引脚。需要一个外部上拉电阻;

  3. 必须为用于SPI配置的CCLK设置位流启动时钟设置;

  4. CCLK信号完整性至关重要,可能需要端接;

  5. 对于菊花链SPI x1配置模式,DOUT应连接到下游FPGA的DIN。x2或x4 SPI模式不支持菊花链;

  6. 从Flash到FPGA的数据路径应考虑一个串联电阻器,以最小化过冲;

  7. 7系列FPGA VCCO_0电源必须与用于SPI设备I/O的VCC兼容;

  8. 数据从CCLK下降沿上的SPI时钟输出,并在上的FPGA上时钟输入;

  9. 通过ConfigRate选项调整CCLK频率。或者,ExtMasterCclk_en选项可以将CCLK切换到来自EMCCLK引脚的源,以使用外部时钟源;

  10. VCCBATT是存储在SRAM中的AES密钥的电源。它应该是连接的使用时连接到电池电源。

3.主BPI配置模式

7系列FPGA主BPI配置模式(图7)支持使用行业标准的并行NOR(BPI)闪存设备进行比特流存储。FPGA支持直接连接到BPI闪存的地址、数据和控制信号,以提取存储的位流。

图片

图7、7系列FPGA主BPI 配置接口

这种模式配置接口FPGA需要连接的信号较多,硬件布线稍复杂些。由于采用并行总线进行配置数据传输,具有较高的配置速度。如果项目对配置时间具有较高要求,并行配置模式可以大大缩短上电配置时间。如果对配置速度无要求,经常采用串行配置方式,简化硬件设计。图8给出了主BPI配置模式读操作举例。

图片

图8、7系列FPGA主BPI配置接口-异步读操作举例

  1. 7系列FPGA VCCO_0电源输入和Xilinx电缆VREF必须连接到相同的电压;

  2. 7系列FPGA组电压VCCO_14提供:A[15:00]、FCS_B、D[15:00]、EMCCLK、PUDC_B和CSO_B信号。气缸组电压VCCO_15提供:A[28:16]、FWE_B、FOE_B、ADV_B、RS0和RS1信号;

  3. 对于BPI模式,M[2:0]=010;

  4. 图8显示了x16 BPI接口。对于x8 BPI接口,仅使用D[07:00];

  5. 向数据引脚发送位流遵循与SelectMAP模式相同的位交换规则。参见第83页的并行总线位顺序;

  6. CCLK输出不用于在异步读取模式下连接到闪存,但用于在配置期间对闪存读取数据进行采样。所有定时均参考CCLK;

  7. RS[1:0]引脚未按图2-17所示连接。这些输出引脚是可选的,可用于多引导配置;

  8. DONE引脚为开路漏极输出;

  9. 有关特定闪存信号连接的详细信息,请参考BPI闪存供应商数据表。为防止地址错位,用户应密切注意所用字节/字模式的闪存系列地址LSB。并非所有闪存系列都使用A01作为地址LSB;

  10. 所示JTAG连接用于简单的单设备JTAG扫描链。当JTAG扫描链上有多个设备时,使用适当的IEEE Std 1149.1菊花链技术连接JTAG信号。TCK信号完整性对于JTAG的运行至关重要。路由、终止并在必要时适当缓冲TCK信号,以确保JTAG扫描链中设备的信号完整性;

  11. 显示FPGA模式(M[2:0])引脚设置为主BPI模式(010)。建议使用户能够将FPGA模式引脚更改为JTAG模式(101)的板级选项的实现,以便在设计期间为FPGA启用基于JTAG的调试功能。这不是必需的,但JTAG模式设置可确保调试期间不会受到主BPI配置的干扰;

  12. 在本示例示意图中,FPGA PUDC_B引脚与接地相连,从而在配置期间实现内部上拉,包括非专用配置I/O。PUDC_B也可以在配置期间将非专用配置I/O设置为3状态;

  13. VCCBATT是存储在SRAM中的AES密钥的电源。使用时,应将其连接至电池电源;

  14. 此示例示意图支持单比特流配置。因此,在本示例示意图中,FPGA RS[1:0]引脚未连接;

  15. 有关VCCINT电源电压,请参见相应的7系列FPGA数据表。

4.SelectMAP配置模式

SelectMAP配置接口(图9)为7系列FPGA配置逻辑提供8位、16位或32位双向数据总线接口,可用于配置和回读。数据总线的回读和读取方向仅适用于从属SelectMAP模式。

CCLK是主选择映射模式下的输出,是从选择映射模式下的输入。可以通过SelectMAP总线配置一个或多个7系列设备。

图片

图9、7系列FPGA SelectMAP配置接口

图10显示了从配置模式SelectMAP配置举例。

图片

图10、从配置模式SelectMAP配置举例

  1. 参考XAPP583,使用微处理器通过从串行或从SelectMAP模式配置7系列FPGA,了解一种可能实现的讨论;

  2. 处理器或CPLD I/O需要支持与连接的FPGA引脚兼容的电压。7系列FPGA VCCO_0电源输入和Xilinx电缆VREF必须具有相同的电压;

  3. DONE引脚为开路漏极输出;

  4. INIT_B引脚是一个双向开放式漏极引脚,需要一个外部上拉电阻;

  5. 对于SelectMAP配置,必须为CCLK设置位流启动时钟设置;

  6. 如果只配置一个FPGA,并且不需要回读,则CSI_B和RDWR_B信号可以连接到地;

  7. CCLK信号完整性至关重要,可能需要端接。建议通过模拟来确定适当的终止,因为它取决于应用程序;

  8. VCCBATT是存储在SRAM中的AES密钥的电源。使用时,应将其连接至电池电源;

  9. 对于从SelectMAP配置,数据总线宽度可以是x8、x16或x32。从属SelectMAP x16和x32总线宽度不支持AES加密的比特流。



延伸阅读:Xilinx 7系列FPGA架构之器件配置(一)
                  Xilinx 7系列FPGA架构之器件配置(二)

图片

欢迎关注FPGA技术实战公众号,持续更新原创!

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/盐析白兔/article/detail/687743
推荐阅读
相关标签
  

闽ICP备14008679号