學點不一樣的技術:FPGA可重構技術——FPGA晶片
FPGA可重構技術就是透過上位機控制在FPGA執行過程中載入不同的Bitstream檔案,FPGA晶片根據檔案內的不同邏輯將內部的資源全部或部分進行重新配置以達到多種功能任務動態切換的目標,從而提高了使用FPGA進行開發的靈活度。 加我VX:atstudy-js 回覆“測試”,進入 自動化測試學習交流群~~
FPGA上的可重構技術根據FPGA晶片內部的不同結構可以分為兩種,分別是動態可重構和靜態可重構。如果FPGA晶片是常規的SRAM結構,那麼它只能做到靜態可重構,重構過程必須首先傳送中斷指令停止正在執行的程式,之後再把全新的Bitstream檔案載入到FPGA上。而如果FPGA晶片是特殊結構,那麼它就可以進行動態可重構,重構過程可以在FPGA執行時期進行,動態可重構不但可以在系統執行時期隨時改變模組引數,甚至可以在系統執行時期在FPGA內部的可重構區域動態重構電路邏輯。
FPGA的動態可重構又可以分為動態全域性可重構和動態區域性可重構。動態全域性可重構是指上位機給FPGA晶片載入一個全新的配置檔案,而這個配置檔案包含了新的任務需求所要涉及的整片FPGA內所有資源,從而實現FPGA重新配置,上一個任務實現的所有邏輯電路將全部消除。在重構操作執行前,首先在外掛儲存器中載入多個不同任務需求的配置檔案,同時每個配置檔案中都包含該任務所需要涉及的FPGA晶片全部邏輯資源。正是因為每一個配置檔案都包含了整塊FPGA晶片的所有資源,所以動態全域性可重構只能從外掛儲存器中選擇將一個配置檔案載入到FPGA晶片中。當這個配置檔案對應的任務結束後,再選擇另一個新的配置檔案載入到FPGA晶片中,透過不同配置檔案的分時載入實現系統功能任務的切換。
這種動態全域性可重構的實現方式比較容易,只需要在配置檔案中寫入該功能任務所包含的FPGA全部資源,但是這種實現方式因為包含全部資源而導致檔案較大,配置的時間也就相應變長。尤其是在兩個功能任務對應的邏輯電路相差不大的配置檔案先後進行重構時,本可以只改變相差部分的邏輯電路,卻要對FPGA晶片內部的全部資源重新進行改變。
相比於動態全域性可重構,動態區域性可重構具有更大的靈活性。它只需要針對兩個功能需求之間不同的部分邏輯功能生成配置檔案,並載入到FPGA中指定的可重構區域進行重新配置,而在FPGA中指定的靜態區域中的邏輯電路並不需要發生改變。
假設一個系統要先後切換兩個功能,而這兩個功能需要使用4個配置檔案。其中的功能1需要使用配置檔案1、配置檔案2和配置檔案3,功能2需要使用配置檔案1和配置檔案4。
由於配置檔案1在功能1和功能2中都需要,因此首先向FPGA的靜態區域載入兩個功能都需要的配置檔案1,然後在可重構區域載入配置檔案2和配置檔案3。功能1執行結束後切換成功能2,由於配置檔案1在功能2中仍然需要,因此在動態區域性可重構中只需要將之前載入到FPGA可重構區域的配置檔案2和配置檔案3對應的邏輯電路消除,重新載入配置檔案4生成對應的邏輯電路就可以完成功能2的執行。
在兩個功能切換的過程中配置檔案1所在的靜態區域並沒有發生改變。
動態區域性可重構因為只重構部分割槽域,所以配置檔案中的重構內容也相應變小,重構時間也隨之縮短。但是動態區域性可重構的難點在於靜態區域和可重構區域的大小劃分是否可以滿足系統功能要求、分別處在兩個區域的模組之間如何進行通訊以及如何在可重構區域進行合理的佈局佈線。因此使用動態區域性可重構的實現過程相對複雜。
最後:
可以我的個人V:atstudy-js,可以免費領取一份10G軟體測試工程師面試寶典文件資料。以及相對應的影片學習教程免費分享!,其中包括了有基礎知識、Linux必備、Mysql資料庫、抓包工具、介面測試工具、測試進階-Python程式設計、Web自動化測試、APP自動化測試、介面自動化測試、測試高階持續整合、測試架構開發測試框架、效能測試等。
這些測試資料,對於做【軟體測試】的朋友來說應該是最全面最完整的備戰倉庫,這個倉庫也陪伴我走過了最艱難的路程,希望也能幫助到你!
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31407649/viewspace-2886563/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- FPGA中的影像平移技術FPGA
- FPGA與MCU/模擬技術整合提速FPGA
- FPGA數字訊號處理(22)FSK調製技術FPGA
- TechWorld2021技術嘉年華,解鎖“不一樣”的技術盛會
- 重學hadoop技術Hadoop
- 京東重構技術版圖
- 重構技術交流提綱
- 怎樣學習一個新的架構技術架構
- 疫情期間技術人員不一樣的工作模式模式
- 技術架構的關注點架構
- FPGA數字訊號處理(十三)鎖相環位同步技術的實現FPGA
- 認為值得重點關注的技術
- 怎樣新學一門技術
- 得物技術登入元件重構元件
- FPGA數字訊號處理(23)FSK解調技術(包絡檢波法)FPGA
- 新品釋出|可重構技術伺服器網路卡來了!伺服器
- 快速技術成長:提煉和總結專案中的技術重難點
- 2019TechWorld技術嘉年華,“我們不一樣”
- 技術站點
- 開發Webview的技術,小的技術知識點WebView
- 遊戲技術美術之<技術&美術>知識構成遊戲
- 怎樣快速學會一門技術
- 指尖前端重構(React)技術調研分析前端React
- sap許可權管理技術架構分析架構
- 10大重點推薦的區塊鏈技術區塊鏈
- Java相關技術點及技術內容Java
- UIUC陳德銘教授:「萬能晶片」FPGA與深度學習UI晶片FPGA深度學習
- SAP索引重組技術索引
- FPGA可綜合風格程式碼FPGA
- FPGAFPGA
- 高度整合的可程式設計邏輯器件fpga晶片處理能力與作用程式設計FPGA晶片
- 怎樣快速學習一門新技術
- java技術點整理Java
- 一點技術思考
- Linux叢集技術的熱點-虛擬技術(轉)Linux
- WEB 架構技術Web架構
- 區塊鏈技術中隱私計算的技術特點區塊鏈
- 異構計算,GPU、FPGA、ASIC晶片將三分天下GPUFPGA晶片