在Xilinx新一代的FPGA中增加了SPI和BPI配置模式,好處是成本低、設(shè)計者選擇余地大及配置方便等優(yōu)點。例如,Spartan-3E器件支持多種Vendor(生產(chǎn)商)提供的SPI和BPIFlash產(chǎn)品。對于SPI Flash器件可以通過Xilinx的Cable-Ⅲ(JTAG)或Cable-IV電纜直接配置;對于BPI Flash器件,則需要利用FPGA中所創(chuàng)建的MicroBlaze或PicoBlaze內(nèi)核并運行該內(nèi)核(引擎),然后通過Xilinx的Cable-Ⅲ(JTAG)Cable-IV電纜配置。
以下采用Spartan-3E器件的SPI和BPI Flash配置為例,詳細(xì)地說明配置電路社設(shè)計要求。
(1) SPI Flash設(shè)計
Spartan-3E器件支持大多數(shù)主流Vendor的SPI Flash器件作為配置芯片,由于不同Vendor所提供的SPI Flash具有不同的命令和格式,因此需要通過Spartan-3E器件的VS2、VS1及VS0來選擇。具體選擇何種模式,請參考Xilinx的器件手冊。SPI Flash器件與FPGA的連接和配置原理圖如圖1所示,圖2和圖3所示為兩種最常用的選擇方式。注意,圖1中的6芯插頭僅用于配置SPI Flash器件,不能配置FPGA,F(xiàn)PGA的配置請參考圖2和圖3。
圖1 SPI Flash器件與FPGA的連接和配置原理
圖2 STMicro的SPI Flash與Spartan-3的連接
圖3 Atmel的SPI Flash與Spartan-3E的連接示意
利用JTAG電纜配置SPI Flash器件配置時需注意如下問題:
由于FPGA與SPI Flash器件存在MOSI、DIN、CSO_B和CCLK共4根連線,所以配置時,F(xiàn)PGA會干擾配置過程。為了保證這4個信號腳保持高阻(HI-Z),需要將 PROG_B接地(建議在PROG_B與地之間接一個10 μF電容和跳線器)。
采用Xilinx的工具(iMPACT)和軟件(XSPI)配置時,一定要選擇STMicro公司和Atmel公司的SPI Flash器件。對于其他Vendor所提供的SPI Flash器件,可以采用離線方式(off-board programmlng)編程或選擇與STMicro或Atme1接近的器件。
Spartan-3E器件支持大多數(shù)主流Vendor的并行NOR Fash器件作為配置芯片。在BPI配置模式中,通過模式引腳(M2、M1和MO)的選擇,可實現(xiàn)地址遞增(Up)和地址遞減(Down)配置,因此在一片NOR Fash中至少可以存放兩個不同的設(shè)計文件。在Spartan-3A/3AN/3A DSP器件中增加了多重配置功能,可以選擇更多的配置文件。
Xilinx的設(shè)計工具可支持多數(shù)Vendor的BPI Flash在線編程,如圖4所示。需要注意的是,進行BPI Flash的在線編程時,需要首先運行帶有MicroBlaze或PicoBlaze內(nèi)核的配置引擎,在ISE9.Ii以上的配置工具(iMPACT)中是自動完成的。
圖4 采用其所長Byte-wide Peripheral interface(BPI)Flash作為配置器件的連接示意
來源:ks999次