查看: 160|回复: 0

[教程] 【转】Xilinx FPGA配置电路

[复制链接]

582

主题

3

好友

1万

积分

翰林

Rank: 7Rank: 7Rank: 7

  • TA的每日心情
    擦汗
    2014-2-12 10:49
  • 签到天数: 150 天

    连续签到: 1 天

    [LV.7]常住居民III

    发表于 2017-7-26 09:52:25 |显示全部楼层
    FPGA配置电路模式有主模式、从模式和JTAG模式。
    【1】主模式
    在主模式下,FPGA上电后,自动将配置数据从相应的外存储器读入到SRAM中,实现内部结构映射。主模式根据比特流的位宽又可以分为:串行模式(单比特流) 和并行模式( 字节宽度比特流) 两大类。如:主串行模式、主SPI Flash 串行模式、内部主SPIFlash串行模式、主BPI 并行模式以及主并行模式,如下图:
    a85e1421hc428d6b1fb04&690.png


    【2】从模式
    在从模式下,FPGA作为从属器件,由相应的控制电路或微处理器提供配置所需的时序,实现配置数据的下载。从模式也根据比特流的位宽不同分为串、并模式两类,具体包括:从串行模式、JTAG模式和从并行模式三大类。(此处的JTAG模式与下面要说的JTAG模式有所不同)如下图:

    a85e1421hc428da3a5d95&690.png



    【3】JTAG模式
    在JTAG模式中,PC和FPGA通信的时钟为JTAG接口的TCLK,数据直接从TDI进入FPGA,完成相应功能的配置。
    主串模式是最常用的配置模式
    在FPGA主串配置模式下,会发现两种不同的连接方式:
    一种是FPGA在前,PROM在后。即JTAG接口的DTI连接至FPGA的DTI,FPGA的DTO连接至PROM的DTI,PROM的DTO连接至JTAG接口的DTO。
    另一种是PROM在前,FPGA在后。即JTAG接口的DTI连接至PROM的DTI,PROM的DTO连接至FPGA的DTI,FPGA的DTO连接至JTAG接口的DTO。
    这两种连接方式都是正确的,都可以。但是,由于PC机配置JTAG链的时候需要和第一级JTAG设备同步,如果FPGA放在第一级,那么其配置速度较高,导致对PROM配置可能会不稳定,所以推荐的配置是将PROM作为JTAG链的第一级JTAG设备,即上述第二种方式。在Xilinx的PROM芯片XCF01/2/4S手册中给出的主串模式下(Configuringin Master Serial Mode)的连接图也是第二种方式,如下图:

    a85e1421hc428e454cd5a&690.jpg


    那FPGA在前的情况如下图:
    a85e1421hc428e78fec47&690.png


    主串配置电路的关键点
    主串配置最关键的3点就是JTAG链的完整性、电源电压的设置以及CCLK信号的考虑。只要这3步任何一个环节出现问题,都不能正确配置PROM芯片。
    (1)JTAG链的完整性
    FPGA和PROM芯片都有自身的JTAG接口电路,所谓的JTAG链完整性指的是将JTAG连接器、FPGA、PROM的TMS、TCK连在一起,并且保证从JTAG连接器TDI到其TDO之间,形成JTAG连接器的“TDI→(TDI~TDO) → (TDI~TDO) → JTAG连接器TDO”的闭合回路,其中(TDI~TDO)为FPGA或者PROM芯片自身的一对输入、输出管脚。可以根据需要调换FPGA和PROM的位置,使任一个成为链首芯片。
    (2) 电源适配性(参见The 3.3V Configurationof Spartan-3 FPGAs)
    如下图所示,由于FPGA和PROM要完成数据通信,二者的接口电平必须一致,即FPGA相应分组的管脚电压Vcco_2(Bank2电压,针对Spartan-3E系列)必须和PROMVcco的输入电压大小一致,且理想值为2.5V,这是由于FPGA的PROG_B和DONE管脚由2.5V的Vccaux供电。此外,由于JTAG连接器的电压也由2.5V的Vccaux提供,因此PROM的VCCJ也必须为2.5V。因此,如果接口电压和参考电压不同,在配置阶段需要将相应分组的管脚电压和参考电压设置为一致;在配置完成后,再将其切换到用户所需的工作电压。当然,FPGA和PROM也可以自适应3.3V的I/O电平以及JTAG电平,但需要进行一定的改动,即添加几个外部限流电阻,如图所示。在主串模式下,XCFxxS系列PROM的核电压必须为3.3V,XCFxxP系列PROM的核电压必须为1.8V。
    a85e1421hc428e9c7a6ab&690.png

    (即PROM的VCCJ和VCCO没有接2.5V,而是和PROM内核电压管脚VCCINT同时接3.3V电压。这时需要在连接至FPGA的TMS、TCK和TDI上串联一个限流电阻)
    PROM芯片XCF01/2/4S的三种电压定义如下:
    VCCINT:内核电压
    VCCJ:JTAG管脚电压
    VCCO:输出管脚电压
    (3)CCLK的信号完整性
    CCLK信号是JTAG配置数据传输的时钟信号,其信号完整性非常关键。FPGA配置电路刚开始以最低时钟工作,如果没有特别指定,将逐渐提高频率。CCLK信号是由FPGA内部产生的,对于不同的芯片和电平,其最大值如下图所示:
    a85e1421hc428eddcccbb&690.png



    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    关闭

    站长推荐上一条 /5 下一条

    手机版|爱板网 |网站地图  

    GMT+8, 2017-9-20 04:41 , Processed in 0.107170 second(s), 11 queries , Memcache On.

    苏公网安备 32059002001056号

    Powered by Discuz!

    回顶部