0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

Xilinx FPGA重構(gòu)技術(shù)介紹

FPGA開源工坊 ? 來源:胡狼FPGA ? 2023-02-12 10:33 ? 次閱讀

重構(gòu)技術(shù)介紹

重構(gòu)技術(shù)是一項非常實用的技術(shù),從比特屬性上來分類可以分成全部重構(gòu)和局部重構(gòu)。全部重構(gòu)即在重構(gòu)時將配置整個FPGA器件的比特文件重新加載一次,對FPGA進(jìn)行一次完整的編程配置;局部重構(gòu)與全部重構(gòu)有所不同,局部重構(gòu)時加載的比特文件只是一個部分比特,該部分比特對特定區(qū)域進(jìn)行重新配置。

針對Xilinx不同系列的器件,進(jìn)行重構(gòu)的方式會有所區(qū)別,對于非Zynq系列的器件,重構(gòu)的實現(xiàn)需要借助FPGA器件之外的處理器來實現(xiàn),重構(gòu)接口為SelectMAP,非Zynq系列器件的重構(gòu)框圖如圖1所示;Zynq系列的由于自身嵌入了ARM處理器,可以無需借助其他處理器而實現(xiàn)重構(gòu)的功能,Zynq系列器件的PS側(cè)可以通過PCAP接口對PL側(cè)完成重構(gòu),但是Zynq7000和UltraScale+Mpsoc在具體實現(xiàn)時所使用的庫函數(shù)會有區(qū)別,兩者的重構(gòu)實現(xiàn)不能互用。

f2222ea8-a97b-11ed-bfe3-dac502259ad0.png

圖1非Zynq系列器件的重構(gòu)框圖

本文檔主要針對的器件為UltraScale+Mpsoc系列,通過PCAP接口對PL側(cè)進(jìn)行重構(gòu),重構(gòu)框圖如下所示:

f2418546-a97b-11ed-bfe3-dac502259ad0.png

圖2UltraScale+Mpsoc系列重構(gòu)框圖

重構(gòu)步驟

建立工程

詳細(xì)操作在此不做詳述,具體可以參考《Vivado Design Suite Tutorial Embedded Processor Hardware Design》,為了驗證需要,硬件允許的情況下可以編寫一段閃燈程序。

建立BlockDesign

詳細(xì)操作在此不做詳述,具體可以參考《Vivado Design Suite Tutorial Embedded Processor Hardware Design》,建立BlockDesign后,加入一個Zynq Mpsoc IP核,需要指出的是,為了能實現(xiàn)重構(gòu),需要在此IP核中使能SD卡,DDR以及UART(方便調(diào)試),并根據(jù)硬件的實際情況對它們的參數(shù)進(jìn)行設(shè)置。根據(jù)需要添加其他IP。

編寫編譯代碼

完成前面的步驟之后就可以建立自己的用戶程序,主要是通過PS來實現(xiàn)對PL測邏輯的重構(gòu)

驗證調(diào)試

在進(jìn)行驗證調(diào)試前需要做好準(zhǔn)備工作,如前所述,PL側(cè)可以通過兩個實現(xiàn),生成兩個頻率不同的閃燈程序的bit文件,由于重構(gòu)時只能使用bin文件,所以需要將bit文件轉(zhuǎn)換成bin文件,在Vivado中的Tcl Console中使用write_cfgmem指令可以將bit轉(zhuǎn)換成bin文件,具體指令如下:

write_cfgmem -format BIN -interface SMAPx32 -disablebitswap -loadbit "up 0x0文件名.bit" "bin文件名"

生成好的bin文件需要拷貝到Memory中,通常都使用SD卡來存儲重構(gòu)的bin文件。

以上準(zhǔn)備工作就緒之后就可以Debug調(diào)試了,建議Debug調(diào)試時將啟動模式設(shè)置成Jtag模式。

演示Demo

本章節(jié)通過搭建演示環(huán)境和工程對重構(gòu)的實現(xiàn)進(jìn)行板級驗證。

演示環(huán)境

演示的軟件搭建包含兩個工程,一個用來采集和顯示攝像頭原圖,另外一個工程對攝像頭進(jìn)來的數(shù)據(jù)做了處理,將像素點中的一個顏色分量置為0,最終顯示的圖像前景色為綠色。

演示的硬件包含一塊5ev的板子,一塊圖像顯示的板子,一臺HDMI接口的顯示器,一臺電腦、一個攝像頭,一根fakra接口線、一個Xilinx下載器和一根串口線(非必須,具體的演示環(huán)境框圖如下:

f254f996-a97b-11ed-bfe3-dac502259ad0.png

圖4演示環(huán)境框圖

演示結(jié)果

在SDK中下載程序后,在line280行打上斷點,如圖5所示,手動控制程序的運行,每運行一次F8,重構(gòu)一次PL程序,可以看到顯示的圖像前景色會發(fā)生變化,具體運行結(jié)果如圖6、圖7所示,以作參考。

f286eaaa-a97b-11ed-bfe3-dac502259ad0.png

圖5調(diào)試斷點設(shè)置

f2dde1ac-a97b-11ed-bfe3-dac502259ad0.png

圖6Test1.bin運行結(jié)果截圖

f347d6ca-a97b-11ed-bfe3-dac502259ad0.png

圖7Test2.bin運行結(jié)果截圖






審核編輯:劉清

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • ARM處理器
    +關(guān)注

    關(guān)注

    6

    文章

    360

    瀏覽量

    41749
  • FPGA器件
    +關(guān)注

    關(guān)注

    1

    文章

    22

    瀏覽量

    11609
  • Zynq
    +關(guān)注

    關(guān)注

    10

    文章

    609

    瀏覽量

    47184
  • PCAP
    +關(guān)注

    關(guān)注

    0

    文章

    12

    瀏覽量

    12614

原文標(biāo)題:Xilinx FPGA全部重構(gòu)

文章出處:【微信號:FPGA開源工坊,微信公眾號:FPGA開源工坊】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    Xilinx FPGA管腳物理約束介紹

    引言:本文我們簡單介紹Xilinx FPGA管腳物理約束,包括位置(管腳)約束和電氣約束。
    發(fā)表于 07-25 10:13 ?4975次閱讀

    FPGA重構(gòu)設(shè)計的結(jié)構(gòu)基礎(chǔ)

    。  FPGA器件的結(jié)構(gòu)主要有兩種:一是基于反熔絲技術(shù),二是基于SRAM或FLASH編程。用反熔絲開關(guān)作基本元件,具有非易失性,編程完成后,FPGA的配置數(shù)據(jù)不再變化,無法重構(gòu)。而基于
    發(fā)表于 05-27 10:22

    FPGA重構(gòu)方式

    FPGA都可實現(xiàn)靜態(tài)重構(gòu)。后者則是指在系統(tǒng)實時運行中對FPGA芯片進(jìn)行動態(tài)配置(即在改變電路功能的同時仍然保持電路的工作狀態(tài)),使其全部或部分邏輯資源實現(xiàn)在系統(tǒng)的高速的功能變換和時分復(fù)用。動態(tài)
    發(fā)表于 05-27 10:22

    支持重構(gòu)FPGA器件

      近年來,隨著FPGA技術(shù)的發(fā)展,支持重構(gòu)FPGA器件新品迭現(xiàn)。Xilinx、Altera、Lattice的
    發(fā)表于 05-27 10:23

    【懸賞100塊】如何實現(xiàn)FPGA重構(gòu)計算(Android平臺)

    FPGA計算的計算任務(wù)的對應(yīng)比特流 對FPGA進(jìn)行重構(gòu)以及利用FPGA進(jìn)行計算。我的某一個最關(guān)鍵的問題是(當(dāng)然我還有好多問題沒有解決):我已經(jīng)根據(jù)
    發(fā)表于 05-20 20:03

    采用FPGA實現(xiàn)可重構(gòu)計算應(yīng)用

    重構(gòu)計算技術(shù)概述隨著20世紀(jì)80年代中期Xilinx公司推出其第一款現(xiàn)場可編程門陣列(FPGA)以來,另一種實現(xiàn)手段——可重構(gòu)計算
    發(fā)表于 07-29 06:26

    怎么實現(xiàn)基于FPGA重構(gòu)智能儀器的設(shè)計?

    重構(gòu)技術(shù)具有什么優(yōu)點?怎么實現(xiàn)基于FPGA重構(gòu)智能儀器的設(shè)計
    發(fā)表于 05-06 06:44

    Xilinx-FPGA-引腳功能詳細(xì)介紹

    FPGA學(xué)習(xí)資料教程之Xilinx-FPGA-引腳功能詳細(xì)介紹
    發(fā)表于 09-01 15:27 ?0次下載

    Virtex5 FPGA在ISE + Planahead上部分可重構(gòu)功能的流程和技術(shù)要點

    部分可重構(gòu)技術(shù)Xilinx FPGA的一項重要開發(fā)流程。本文結(jié)合Virtex5 FPGA,詳細(xì)講解在ISE + Planahead上完成部
    的頭像 發(fā)表于 07-04 02:17 ?3853次閱讀
    Virtex5 <b class='flag-5'>FPGA</b>在ISE + Planahead上部分可<b class='flag-5'>重構(gòu)</b>功能的流程和<b class='flag-5'>技術(shù)</b>要點

    基于CPLD的FPGA快速動態(tài)重構(gòu)設(shè)計

    隨著FPGA的廣泛應(yīng)用, 其實現(xiàn)的功能也越來越多, FPGA 的動態(tài)重構(gòu)設(shè)計就顯得愈發(fā)重要。在分析Xilinx Vertex II Pro系列FPG
    發(fā)表于 11-22 07:55 ?1138次閱讀
    基于CPLD的<b class='flag-5'>FPGA</b>快速動態(tài)<b class='flag-5'>重構(gòu)</b>設(shè)計

    如何在FPGA動態(tài)局部可重構(gòu)中進(jìn)行TBUF總線宏設(shè)計

    FPGA 動態(tài)局部可重構(gòu)技術(shù)中基于三態(tài)緩沖器( Tri2state Buffer ,TBUF) 總線宏結(jié)構(gòu)的基礎(chǔ)上,采用Xilinx ISE FPG
    發(fā)表于 12-14 14:27 ?3次下載
    如何在<b class='flag-5'>FPGA</b>動態(tài)局部可<b class='flag-5'>重構(gòu)</b>中進(jìn)行TBUF總線宏設(shè)計

    Xilinx FPGA的FMC介紹

    本文主要介紹Xilinx FPGA的FMC接口。
    的頭像 發(fā)表于 01-28 17:52 ?5907次閱讀

    FPGA動態(tài)可重構(gòu)技術(shù)是什么,局部動態(tài)可重構(gòu)的時序問題解決方案

    所謂FPGA動態(tài)可重構(gòu)技術(shù),就是要對基于SRAM編程技術(shù)FPGA實現(xiàn)全部或部分邏輯資源的動態(tài)功能變換。根據(jù)實現(xiàn)
    的頭像 發(fā)表于 07-05 15:41 ?3168次閱讀
    <b class='flag-5'>FPGA</b>動態(tài)可<b class='flag-5'>重構(gòu)</b><b class='flag-5'>技術(shù)</b>是什么,局部動態(tài)可<b class='flag-5'>重構(gòu)</b>的時序問題解決方案

    FPGA重構(gòu)技術(shù)——FPGA芯片

    FPGA芯片本身就具有可以反復(fù)擦寫的特性,允許FPGA開發(fā)者編寫不同的代碼進(jìn)行重復(fù)編程,而FPGA重構(gòu)技術(shù)正是在這個特性之上,采用分時復(fù)用
    的頭像 發(fā)表于 04-26 10:38 ?3298次閱讀

    關(guān)于FPGA重構(gòu)技術(shù)分析

    FPGA上的可重構(gòu)技術(shù)根據(jù)FPGA芯片內(nèi)部的不同結(jié)構(gòu)可以分為兩種,分別是動態(tài)可重構(gòu)和靜態(tài)可重構(gòu)。
    發(fā)表于 11-03 20:09 ?926次閱讀