在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

PYNQ經典項目分享:可重配置IO

FPGA之家 ? 來源:FPGA之家 ? 2023-04-03 10:46 ? 次閱讀

PYNQ-PRIO是一個介紹如何利用FPGA部分可重配置特性和PYNQ框架提供的方便的API,對FPGA分時復用,提高FPGA靈活性的項目。可重配置是指在一個FPGA工程中,劃分了靜態邏輯部分和動態邏輯部分,靜態邏輯部分是指在運行過程中邏輯不變的部分,動態邏輯部分是指在運行過程中可以根據需要下載特定比特流文件實現不同邏輯的部分,在工作時,修改某一動態邏輯部分不會對靜態邏輯部分和其他動態邏輯部分造成影響,實現了FPGA的功能上的分時復用。

5fc651bc-d1c4-11ed-bfe3-dac502259ad0.png

上圖為工程項目示意圖。通過軟硬件劃分,在PS端中負責Linux通信,PL端例化了6個PR(Partitial Reconfiguration)塊。每個塊中有GPIO、uart和IIC等幾種不同的RM(Reconfiguration Module),它們通過各自的partitial bitstream下載。動態邏輯部分和靜態邏輯部分使用分離器保證它們互不影響,并在動態邏輯部分下載完成后對下載好的部分進行復位。

此項目中在PYNQ框架下有兩種驅動這些IP的方式:一是直接使用PYNQ提供的API操作overlay里面的IP,二是將這些IP通過DTS(Device Tress Source)注冊到linux sysfs中,然后調用linux提供的驅動。

快速開始

運行下面這條命令即可快速安裝:

sudo -H pip3 install git+https://github.com/Siudya/PYNQ-PRIO.git

項目演示

1 、 使用pynq API的方法:

打開~/prio/uart.ipynb,前面一段代碼是UART的驅動程序和必要的功能代碼,不是本文重點請讀者自己研讀。

6004e648-d1c4-11ed-bfe3-dac502259ad0.png

接下來就是下載bit文件。首先下載靜態邏輯bit文件,靜態bit文件中的PR部分是默認的RM。然后下載PR的bit文件。注意,下載一個PR的bit文件后要立刻例化一個驅動實例,這是因為每個PR的bit文件所對應的hwh文件中其他PR部分都使用默認RM,但是下載一個PR的bit文件并不會影響其他PR和靜態邏輯。

602747b0-d1c4-11ed-bfe3-dac502259ad0.png

然后可以測試一下兩個UART的狀態,在這里我們并沒有開啟中斷。

604069a2-d1c4-11ed-bfe3-dac502259ad0.png

下一步我們測試兩個串口的收發。用杜邦線將uart1的TX(Arduino的Pin 9)和uart3的RX(Arduino的Pin 34),uart1的RX(Arduino的Pin 8)和uart3的TX(Arduino的Pin 35)連接起來,運行這段代碼,可以看到信息被正確地收發了。

605b12b6-d1c4-11ed-bfe3-dac502259ad0.png

接下來我們試試含中斷的收發。首先仍然是例化實例,不過在這里我們要從overlay.interrupts_pins中讀取每個uart的中斷引腳,然后初始化uart實例。

6070b54e-d1c4-11ed-bfe3-dac502259ad0.png

利用asyncio庫和中斷,我們可以實現異步收發。

2 、使用linux sysfs API的方法:

打開~/prio_linux/uart_linux.pynb

6081f020-d1c4-11ed-bfe3-dac502259ad0.png

首先和上面使用pynq的API的方法一樣,首先下載靜態邏輯的bit文件,再下載PR的bit文件。但是不同的是同時注冊了對應的dtbo到linux系統中。dtbo由dtso編譯而來,dtso是描述設備樹的文件,關于它的編寫參閱以下鏈接:

https://www.raspberrypi.org/documentation/configuration/device-tree.md

6099b854-d1c4-11ed-bfe3-dac502259ad0.png

注冊完成后可以直接在/dev下看到這兩個uart模塊。然后可以使用linux自帶的serial庫調用它們。

這個項目中我們利用了FPGA的部分可重構的特性,實現了運行中的部分邏輯的動態轉換。另外我們可以看到利用PYNQ提供的API,可以輕松注冊設備到Linux系統,方便了其他程序對我們自定義IP的使用。

審核編輯 :李倩

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • FPGA
    +關注

    關注

    1630

    文章

    21798

    瀏覽量

    606052
  • API
    API
    +關注

    關注

    2

    文章

    1511

    瀏覽量

    62401
  • PYNQ
    +關注

    關注

    4

    文章

    62

    瀏覽量

    2926

原文標題:PYNQ經典項目分享| 可重配置IO

文章出處:【微信號:zhuyandz,微信公眾號:FPGA之家】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    賽靈思發布ISE12.2強化部分重配置FPGA技術

    ISE12.2設計套件強化了其部分重配置技術設計流程,并通過智能時鐘門控技術降低24% 的 BRAM 功耗。賽靈思部分重配置技術,是目前唯一經行業驗證的
    發表于 07-31 12:39 ?531次閱讀

    如何利用FPGA部分重配置特性實現PYNQ-PRIO經典案例

    項目中在PYNQ框架下有兩種驅動這些IP的方式:一是直接使用PYNQ提供的API操作overlay里面的IP,二是將這些IP通過DTS(Device Tress Source)注冊到linux sysfs中,然后調用linux
    的頭像 發表于 09-28 10:21 ?3726次閱讀
    如何利用FPGA部分<b class='flag-5'>可</b><b class='flag-5'>重配置</b>特性實現<b class='flag-5'>PYNQ</b>-PRIO<b class='flag-5'>經典</b>案例

    PYNQ項目——Pynq開發板啟動實驗

    作者:Mculover666 今天剛剛到手一塊PYNQ-Z2,確認過眼神,是我想要的板子,話不多說,開干。 ? ? PYNQ項目是一個支持Xilinx Zynq器件的開源軟件框架,目的在于借助
    的頭像 發表于 12-23 10:58 ?3871次閱讀

    基于PYNQ-Z2開發板的PYNQ開源項目

    基本相同。 ? ? 我們將利用PYNQ-Z2開發板對PYNQ項目進行介紹。PYNQ-Z2板是PYNQ開源框架的硬件平臺,有豐富的組件:
    的頭像 發表于 01-02 09:02 ?6599次閱讀
    基于<b class='flag-5'>PYNQ</b>-Z2開發板的<b class='flag-5'>PYNQ</b>開源<b class='flag-5'>項目</b>

    總線重配置的多處理器架構

    本文提出了一種全新的總線重配置的多處理器架構。該架構結合了多核與重配置處理器的優勢,具有并行性高、計算能力強、結構復雜度低并且應用領域廣泛靈活的特點。對
    發表于 06-13 14:11 ?11次下載

    重配置系統中的聯合負載控制及其終端選擇算法

    該文基于現有端到端重配置系統架構,提出了一種改進的動態門限聯合負載控制方法,以適應不同負載條件下對負載均衡的要求,達到資源的有效利用。同時,結合終端的重配
    發表于 11-19 16:41 ?13次下載

    重配置PLL使用手冊

    本文檔主要是以Altera公司的Stratix II系列的FPGA器件為例,介紹了其內嵌的增強型重配置PLL在不同的輸入時鐘頻率之間的動態適應,其目的是通過提供PLL的重配置功能,使得不需要對
    發表于 11-02 15:17 ?27次下載

    軟件無線電平臺重配置接口的實現

    實現了一種用于上位機和FPGA處理板之間通信的重配置接口,詳細介紹了該接口的包格式設計和FPGA邏輯設計。仿真結果表明,該重配置接口能根據信令,實現準實時在線參數
    發表于 11-22 15:15 ?12次下載

    FPGA的全局動態重配置技術

    FPGA的全局動態重配置技術主要是指對運行中的FPGA器件的全部邏輯資源實現在系統的功能變換,從而實現硬件的時分復用。提出了一種基于System ACE的全局動態重配置設計方法,
    發表于 01-04 17:06 ?54次下載

    基于SRAM的重配置電路

    基于SRAM的重配置PLD(可編程邏輯器件)的出現,為系統設計者動態改變運行電路中PLD的邏輯功能創造了條件。PLD使用SRAM單元來保存字的配置數據決
    發表于 06-20 11:05 ?999次閱讀
    基于SRAM的<b class='flag-5'>可</b><b class='flag-5'>重配置</b>電路

    打造完全重配置運動控制系統

    打造完全重配置運動控制系統 ,NI LabVIEW。
    發表于 03-21 16:19 ?0次下載

    一種基于憶阻器的重配置邏輯電路_張波

    一種基于憶阻器的重配置邏輯電路_張波
    發表于 01-08 10:18 ?4次下載

    賽靈思重配置加速堆棧方案,旨在快速開發和部署加速平臺

    賽靈思公司(Xilinx)宣布,在2016全球超算大會(SC 16)上宣布推出一套全新的技術——賽靈思重配置加速堆棧方案,旨在幫助全球最大的云端服務供應商們快速開發和部署加速平臺。專門針對云級
    發表于 07-31 09:08 ?902次閱讀

    基于SRAM的重配置電路PLD

    關鍵詞:PLD , SRAM , 重配置電路 由于SRAM的重配置PLD(可編程邏輯器件)的出現,為系統設計者動態改變運行電路中PLD的邏輯功能創造了條件。PLD使用SRAM單元來
    發表于 02-23 14:30 ?1001次閱讀
    基于SRAM的<b class='flag-5'>可</b><b class='flag-5'>重配置</b>電路PLD

    易靈思內部重配置實現遠程更新

    除通過外部多功能IO來選擇之外,易靈思通過內部重配置實現遠程更新操作也非常簡單。
    的頭像 發表于 05-30 09:24 ?1773次閱讀
    易靈思內部<b class='flag-5'>重配置</b>實現遠程更新
    主站蜘蛛池模板: 国产精品yy9299在线观看 | 天天玩天天干 | 四虎影视永久在线精品免费播放 | 欧美一区二区三区高清视频 | 色多多在线观看播放 | 男人一级片 | 永久免费在线播放 | 狠狠夜夜| 婷婷丁香九月 | 在线免费观看视频黄 | 亚洲二区在线观看 | 久久精品人人做人人看 | 久久综合97色综合网 | 色手机在线 | 免费一级欧美在线观看视频片 | 亚洲免费成人 | 日本黄色大片在线观看 | 日本丝瓜着色视频 | 最新在线网址 | 6080伦理久久精品亚洲 | 毛片免费观看 | 天堂成人网 | 国产网站在线免费观看 | 久久噜国产精品拍拍拍拍 | 最好免费高清视频观看韩国 | 一级毛片aaa片免费观看 | 欧美videosex性欧美成人 | 萌白酱香蕉白丝护士服喷浆 | 高清一级做a爱免费视 | 伊人男人天堂 | 91精品福利视频 | 丁香五月缴情在线 | 日韩一级精品视频在线观看 | 天堂资源8中文最新版在线 天堂资源地址在线 | 91美女在线播放 | 日本一区免费观看 | 成人av在线播放 | 国产精品久久久久久久成人午夜 | 精品久久看 | 乱码一区二区三区完整视频 | 网友偷自拍原创区 |