基于SPI FLASH的FPGA多重配置

    2014-02-12 21:16 來源:電子信息網 作者:蒲公英

    現代硬件設計規模逐漸增大,單個程序功能越來越復雜,當把多個功能復雜的程序集成到一個FPGA上實現時,由于各個程序的數據通路及所占用的資源可能沖突,使得FPGA控制模塊的結構臃腫,影響了整個系統工作效率。

    通過FPGA的多重配置可以有效地精簡控制結構的設計,同時可以用邏輯資源較少的FPGA器件實現需要很大資源才能實現的程序。以Virtex5系列開發板和配置存儲器SPI FLASH為基礎,從硬件電路和軟件設計兩個方面對多重配置進行分析,給出了多重配置實現的具體步驟,對實現復雜硬件設計工程有一定的參考價值。

    現代硬件程序設計規模越來越大,功能越來越復雜,當多個應用程序同時在一個硬件平臺上實現時,各個程序的資源使用和數據通路可能會沖突,這增加了控制電路設計的復雜程度,給開發人員增加了工作量和開發難度。通過多重配置,可以將多個應用程序根據需要分時加載到FPGA中,不僅精簡了電路設計,而且使系統更加靈活。FPGA多重配置的特點可以讓特定條件下的用戶選擇片上資源不多的FPGA去實現需要很多資源FPGA才能實現的功能,這大大降低了開發費用,同時提高了FPGA的利用率。

    Xilinx公司Virtex5系列的FPGA具有多重配置的特性,允許用戶在不掉電重啟的情況下,根據不同時刻的需求,可以從FLASH中貯存的多個比特文件選擇加載其中的一個,實現系統功能的變換。

    1總體設計

    當FPGA完成上電自動加載初始化的比特流后,可以通過觸發FPGA內部的多重啟動事件使得FPGA從外部配置存儲器(SPI FLASH)指定的地址自動下載一個新的比特流來重新配置。FPGA的多重配置可以通過多種方式來實現。本文采用的是基于ICAP核的狀態機編碼方式。通過調用Xilinx自帶的ICAP核,編寫狀態機按照一定的指令流程對ICAP核進行不斷的配置,可以控制FPGA重新配置。這種方式可以在源代碼中加很多注釋,讓后來的開發者很清楚地明白ICAP核指令流順序,以及多重配置地址計算方法,是一種簡單實用的實現方法。

    1.1硬件電路

    多重配置的硬件主要包括FPGA板卡和貯存配置文件的FLASH芯片。FPGA選用XILINX公司Virtex-5系列中的ML507,該產品針對FPGA多重配置增加了專用的內部加載邏輯。FLASH芯片選用XILINX公司的SPI FLASH芯片M25P32,該芯片存貯空間為32 Mb,存貯文件的數量與文件大小以及所使用的FPGA芯片有關。實現多重配置首先要將FPGA和外部配置存儲器連接為從SPI FLASH加載配置文件的模式。配置電路硬件連接框圖如圖1所示。

    1


    在FPGA配置模式中,M2,M1,M0為0,0,1,這種配置模式對應邊界掃描加上拉,FPGA在這種模式下所有的I/O只在配置期間有效。在配置完成后,不用的I/O將被浮空[5].M2,M1,M0三個選擇開關對應于ML507開發板上的SW3開關中的4,5,6位,在FPGA上電之前將上述開關撥為0,0,1狀態。

    1 2 3 4 5 > 
    FPGA Flash SPI

    相關閱讀

    暫無數據

    一周熱門

    亚洲综合色区在线观看| 亚洲av永久无码精品网址| 色噜噜亚洲精品中文字幕| 亚洲大码熟女在线观看| 亚洲一卡一卡二新区无人区| 亚洲日本va在线观看| 精品久久亚洲中文无码| 国产成人精品日本亚洲网址| 亚洲国产成a人v在线观看 | 国产亚洲精品线观看动态图| 国产精品亚洲美女久久久 | 久久久久久久亚洲精品| 久久精品国产精品亚洲艾草网美妙| 亚洲日韩人妻第一页| 浮力影院亚洲国产第一页| 日韩亚洲变态另类中文| 亚洲精品国产字幕久久不卡| 亚洲va无码va在线va天堂| 亚洲一区二区三区高清| 亚洲综合色丁香麻豆| 亚洲人6666成人观看| 亚洲综合欧美色五月俺也去| 亚洲狠狠色丁香婷婷综合| 最新亚洲人成无码网站| 亚洲国产综合人成综合网站| 国产亚洲情侣一区二区无码AV| 国产AV无码专区亚洲AWWW| 亚洲欧洲无码AV电影在线观看 | 国产亚洲精品xxx| 亚洲AV无码专区电影在线观看| 亚洲乱亚洲乱淫久久| 亚洲精品456在线播放| va天堂va亚洲va影视中文字幕| 亚洲色欲色欱wwW在线| 亚洲av无码偷拍在线观看| 国产午夜亚洲精品不卡免下载| 久久精品国产精品亚洲| 久久久久亚洲av无码专区蜜芽| 亚洲最大中文字幕| 亚洲熟妇无码AV不卡在线播放| 亚洲av午夜精品一区二区三区|