新聞中心

        EEPW首頁 > 網絡與存儲 > 設計應用 > 基于SPI FLASH的FPGA多重配置

        基于SPI FLASH的FPGA多重配置

        作者: 時間:2014-02-12 來源:摘自《電子發燒友》 收藏

          重載模塊首先要調用核。原語在Xilinx的編譯軟件ISE中調用,調用路徑為Edit→LanguageTemplates,VHDL/Verilog→Device Primitive Instantia-tion→→Config/BSCAN Components→In-ternal Config Access Por(t _VIRTEX5)。

        本文引用地址:http://www.104case.com/article/221428.htm

          ICAP_VIRTEX5調用接口如下:

          ICAP核支持X8,X16,X32三種數據帶寬模式。在整個重配置的過程中并沒有用到ICAP核的輸出,因此在重載模塊的狀態機控制程序中不關注BUSY,O信號的值,可以不對它們賦值。用戶程序在使用接口時只需對CE,CLK,I,WRITE4個信號不斷賦值來發送命令。

          在調用了ICAP核接口之后,通過Verilog編碼的方式實現狀態機。通過狀態機發送指令給ICAP核,ICAP核在接收到這些指令后會根據指定的地址自動加載配置文件。

          指令的作用是對芯片進行復位操作,該復位操作對FPGA內部的應用程序進行復位,復位過程中除專用配置管腳和JTAG管腳,其他輸入/輸出管腳均為高阻態。完成復位操作后,將默認的加載地址用熱啟動地址(Warm Boot Start Address,WB-STAR)中的新地址替換。

          在發送指令之前,需要對ICAP核進行預配置。重載控制模塊在收到觸發信號后,第一個時鐘周期將ICAP核的WRITE信號和CE信號置高,第二個周期將WRITE信號置底,CE信號置高,第三個周期將WRITE信號置底,CE信號也置底。接著在下面的8個時鐘周期里,將指令隊列中的控制命令逐個發出。狀態機指令流程如圖3所示。

        狀態機指令流程圖

          在狀態機發送IPROG指令的過程中,為了保證ICAP核接收到正確的指令,每一個發送出去的命令和數據必須遵循SelectMAP數據順序。SelectMAP數據順序是將每個指令都按字節劃分,劃分后每個字節的數據都按比特位翻轉。如果為“X32”模式,則劃分為4個字節,每個字節進行位翻轉。圖4以“X16”為例說明Se-lectMAP數據順序。

        Se-lectMAP數據順序

        fpga相關文章:fpga是什么


        存儲器相關文章:存儲器原理




        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 高雄县| 普陀区| 英德市| 阿勒泰市| 灵川县| 额尔古纳市| 巴林右旗| 高密市| 华阴市| 安吉县| 滨州市| 云安县| 改则县| 兴海县| 平遥县| 黄大仙区| 闽清县| 定陶县| 洪泽县| 唐海县| 乌鲁木齐县| 丰镇市| 米泉市| 成都市| 永新县| 巴楚县| 揭东县| 河曲县| 泸州市| 元氏县| 漳浦县| 泸西县| 扎兰屯市| 越西县| 定兴县| 金坛市| 禹州市| 水富县| 祥云县| 兰州市| 尖扎县|