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

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

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

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

在Vitis中通過(guò)PSU DDR執(zhí)行MicroBlaze應(yīng)用

XILINX開(kāi)發(fā)者社區(qū) ? 來(lái)源:XILINX開(kāi)發(fā)者社區(qū) ? 2023-06-21 09:39 ? 次閱讀

MicroBlaze CPU 是可修改的拖入式預(yù)設(shè) 32 位/64 位 RISC 微處理器配置系列。

MicroBlaze 處理器能滿(mǎn)足眾多多樣化的應(yīng)用程序的不同需求,惠及工業(yè)、醫(yī)療、汽車(chē)、消費(fèi)品和通信市場(chǎng)。MicroBlaze 使用哈佛 (Harvard) 架構(gòu),此架構(gòu)的 PL 內(nèi)通常包含雙 LMB BRAM。但在本篇博文中,我們將探討如何在 Zynq UltraScale ZCU104 開(kāi)發(fā)板上通過(guò) PSU DDR 執(zhí)行 MicroBlaze 應(yīng)用。

退出復(fù)位時(shí),MicroBlaze 將從 MicroBlaze 配置中的 C_BASE_VECTORS 參數(shù)內(nèi)指定的存儲(chǔ)器地址提取其指令。在本例中,此 C_BASE_VECTORS 將設(shè)置為 PSU DDR 內(nèi)的某個(gè)區(qū)域。

但根據(jù)采用的啟動(dòng)流程,這樣可能導(dǎo)致潛在問(wèn)題,即 PSU DDR 可能無(wú)法先于 PL 完成配置。這可能導(dǎo)致 MicroBlaze 掛起。為避免此現(xiàn)象,我們可以使用 MicroBlaze 上的“Reset Mode”(復(fù)位模式)信號(hào)

1412a14e-0f63-11ee-962d-dac502259ad0.png

在上表中,可以看到各種 reset_mode 配置。最適合我們的用例的配置為“01”,其中 MicroBlaze 將保持處于復(fù)位狀態(tài),直至我們準(zhǔn)備就緒為止。我們將在 PSU 上通過(guò) EMIO 來(lái)使用 GPIO 對(duì) MicroBlaze 進(jìn)行解復(fù)位。

創(chuàng)建硬件:

Vivado IP integrator 塊設(shè)計(jì)如下所示:

145174fa-0f63-11ee-962d-dac502259ad0.png

用戶(hù)可以根據(jù)自己認(rèn)為合適的方式來(lái)自定義設(shè)計(jì)。

關(guān)鍵組件配置如下所述。

MicroBlaze 配置:

在 Vivado IP integrator 中使用“Block Automation”(塊自動(dòng)化設(shè)置)工具來(lái)對(duì) MicroBlaze 進(jìn)行初始配置,如下所示。此處移除了本地存儲(chǔ)器,改為使用 64K 高速緩存:

1478265e-0f63-11ee-962d-dac502259ad0.png

要啟用 reset_mode 和 wakeup 管腳,用戶(hù)需在 MicroBlaze 配置中選中“Enable Discrete Ports”以啟用離散端口

14a24de4-0f63-11ee-962d-dac502259ad0.png

在 Zynq UltraScale PS 配置中,啟用兩個(gè)從端口;一個(gè)用于存儲(chǔ)器,另一個(gè)用于外設(shè):

14c8d8c4-0f63-11ee-962d-dac502259ad0.png

通過(guò) EMIO 啟用 GPIO,這樣就可以控制 MicroBlaze 的 wakeup 管腳:

14f8d74a-0f63-11ee-962d-dac502259ad0.png

我們還可訪(fǎng)問(wèn)已從 MicroBlaze 啟用的所有 Zynq UltraScale IP。為此,請(qǐng)啟用“Address Fragmentation”(地址分段):

152aa040-0f63-11ee-962d-dac502259ad0.png

在上文中我們討論了復(fù)位模式。接下來(lái),MicroBlaze 將保持復(fù)位狀態(tài),直至我們準(zhǔn)備就緒為止。

要使 MicroBlaze 保持復(fù)位,可以使用 IP 目錄中的“Constant IP”:

1543be90-0f63-11ee-962d-dac502259ad0.png

最后,連接 GPIO 和 Constant IP:

156681fa-0f63-11ee-962d-dac502259ad0.png

MicroBlaze 地址映射如下所示:

159a5a5c-0f63-11ee-962d-dac502259ad0.png

用戶(hù)可以右鍵單擊地址段,在地址映射中添加或排除地址段。

此操作適用于硬件配置。我們可以使用“Generate the Output Products”(生成輸出文件)、“Create the HDL wrapper”(創(chuàng)建 HDL 封裝文件)和“Generate the Bitstream”(生成比特流),然后導(dǎo)出硬件。

這將生成 XSA 以供在 Vitis 中用于生成我們的軟件。

創(chuàng)建軟件:

Vitis IDE 可用于生成 MicroBlaze 應(yīng)用。Vitis 還將自動(dòng)創(chuàng)建啟動(dòng)鏡像,包括 FSBL 和 PMUFW。

但由于我們想要從 FSBL 控制 GPIO EMIO,因此我們選擇不使用工具來(lái)生成啟動(dòng)鏡像。

15a6f41a-0f63-11ee-962d-dac502259ad0.png

生成 MicroBlaze Hello World 應(yīng)用:

15cc5bb0-0f63-11ee-962d-dac502259ad0.png

15fc27c8-0f63-11ee-962d-dac502259ad0.png

我們可以添加新工程應(yīng)用,如下所示。例如,對(duì)于 Zynq FSBL:

16135362-0f63-11ee-962d-dac502259ad0.png

163bfede-0f63-11ee-962d-dac502259ad0.png

注釋?zhuān)篎SBL 不支持 64 位到 32 位交接。因此,由于 MicroBlaze 為 32 位,我們也應(yīng)將 FSBL 設(shè)置為 32 位。

16842ff6-0f63-11ee-962d-dac502259ad0.png

16971b5c-0f63-11ee-962d-dac502259ad0.png

針對(duì) PMUFW 重復(fù)上述操作:

16c6ba4c-0f63-11ee-962d-dac502259ad0.png

16eabad2-0f63-11ee-962d-dac502259ad0.png

可看到所有應(yīng)用工程如下所示:

16fde09e-0f63-11ee-962d-dac502259ad0.png

由于我們已將 PS UART 添加到 MicroBlaze 地址映射中,因此可在 BSP 中將其用于 STDIN/OUT。

1729e64e-0f63-11ee-962d-dac502259ad0.png

1766d3a6-0f63-11ee-962d-dac502259ad0.png

此處可以看到 MicroBlaze Hello World 連接器

177cc01c-0f63-11ee-962d-dac502259ad0.png

其布局位置為 DDR 基址 (0x00000000) 處。用戶(hù)創(chuàng)建啟動(dòng)鏡像時(shí),需牢記此地址,以免應(yīng)用程序發(fā)生重疊。

通過(guò) SD 卡進(jìn)行編程

首先,更新 FSBL。

我們可以使用 Xil_Out32 API 來(lái)切換 GPIO。

將 xil_io 頭文件添加到 xfsbl_handoff.c 文件:

17a22474-0f63-11ee-962d-dac502259ad0.png

將此添加到 XFsbl_HandoffExit 函數(shù)

17c41b42-0f63-11ee-962d-dac502259ad0.png

同時(shí)啟用 FSBL 調(diào)試信息:

17df4e26-0f63-11ee-962d-dac502259ad0.png

創(chuàng)建啟動(dòng)鏡像:

180f8ea6-0f63-11ee-962d-dac502259ad0.png

移除 FSBL 和 PMUFW,并使用正確的鏡像類(lèi)型重新添加。

請(qǐng)確保分區(qū)鏡像順序正確(使用上下控件來(lái)調(diào)整其順序)。

18417a74-0f63-11ee-962d-dac502259ad0.png

185667d6-0f63-11ee-962d-dac502259ad0.png

注釋?zhuān)河捎诖颂幑蚕硐嗤?UART,用戶(hù)可以在 Hello World 應(yīng)用中布局延遲。

通過(guò) JTAG 進(jìn)行編程:

188467e4-0f63-11ee-962d-dac502259ad0.png

18af2024-0f63-11ee-962d-dac502259ad0.png

這樣可看到如下輸出:

18cba316-0f63-11ee-962d-dac502259ad0.png

審核編輯:湯梓紅

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

    關(guān)注

    68

    文章

    11011

    瀏覽量

    215212
  • Xilinx
    +關(guān)注

    關(guān)注

    73

    文章

    2179

    瀏覽量

    123918
  • 微處理器
    +關(guān)注

    關(guān)注

    11

    文章

    2358

    瀏覽量

    83619
  • RISC
    +關(guān)注

    關(guān)注

    6

    文章

    477

    瀏覽量

    84532
  • Vitis
    +關(guān)注

    關(guān)注

    0

    文章

    147

    瀏覽量

    7773

原文標(biāo)題:開(kāi)發(fā)者分享|在Vitis中通過(guò) PSU DDR 執(zhí)行 MicroBlaze 應(yīng)用

文章出處:【微信號(hào):gh_2d1c7e2d540e,微信公眾號(hào):XILINX開(kāi)發(fā)者社區(qū)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    MicroBlaze串口設(shè)計(jì)

    本系統(tǒng),Basys3的MicroBlaze模塊調(diào)用基于A(yíng)XI協(xié)議的UART IP核,通過(guò)AXI總線(xiàn)實(shí)現(xiàn)MicroBlaze-UART之間的通信,完成串口打印。
    發(fā)表于 08-02 09:32 ?1844次閱讀
    <b class='flag-5'>MicroBlaze</b>串口設(shè)計(jì)

    Vitis2023.2使用之—— updata to Vitis Unified IDE

    的工程。 首先在更新之前需要將舊版工程更新到vitis2023.2的classic Vitis IDE,否則在執(zhí)行更新命令是會(huì)產(chǎn)生警告,這個(gè)警告也會(huì)導(dǎo)致后續(xù)更新失敗。如下: 更新到vitis
    發(fā)表于 03-24 17:14

    vivado下外部邏輯和MicroBlaze交換數(shù)據(jù)

    的方式是外部邏輯通過(guò)AXI4將數(shù)據(jù)寫(xiě)到DDR3,然后microblaze將數(shù)據(jù)從DDR3讀出
    發(fā)表于 03-21 14:01

    DDR3 SDRAM的簡(jiǎn)單代碼如何編寫(xiě)

    使用microblaze處理器。我必須通過(guò)DDR3內(nèi)存發(fā)送一些固定值,如8位數(shù)據(jù)(X'FF'),即我將該數(shù)據(jù)寫(xiě)入Genesys2 DDR3內(nèi)存并從內(nèi)存
    發(fā)表于 05-05 15:29

    使用Vitis EBAZ4205(ZYNQ)礦機(jī)上實(shí)現(xiàn)"Hello World!"

    ZYNQ 設(shè)置串口引腳為 24, 25 。另外一個(gè)就是需要設(shè)置 ZYNQ 的DDR3,EBAZ4205 上用的DDR3 芯片型號(hào)是 EM6GD16EWKG-12H ,
    發(fā)表于 03-06 22:59

    請(qǐng)問(wèn)如何通過(guò)MicroBlaze訪(fǎng)問(wèn)BRAM?

    嗨,大家好,我正在研究Vivado 2014.4,Xilinx KC705。我需要通過(guò)Microblaze讀取存儲(chǔ)BRAM(coe文件)的數(shù)據(jù)進(jìn)行計(jì)算。我是微博閱讀部分的新手。有人
    發(fā)表于 05-20 08:38

    【正點(diǎn)原子FPGA連載】第一章MicroBlaze簡(jiǎn)介--摘自【正點(diǎn)原子】達(dá)芬奇之Microblaze 開(kāi)發(fā)指南

    使用Xilix提供的Vitis統(tǒng)一軟件平臺(tái)。Vivado我們可以Block Design搭建Mi
    發(fā)表于 10-16 16:28

    使用Vitis HLS創(chuàng)建屬于自己的IP相關(guān)資料分享

    。HLS 采用 C 和 C++ 描述并將它們轉(zhuǎn)換為自定義硬件 IP,完成后我們就可以 Vivado 項(xiàng)目中使用該IP。Vitis HLS創(chuàng)建一個(gè)新的 HLS 項(xiàng)目:通過(guò)從Linux 終端鍵入
    發(fā)表于 09-09 16:45

    PYNQMicroBlaze程序文件的加載過(guò)程

    PYNQ的base overlay 添加了MicroBlaze通過(guò)MicroBlaze 來(lái)配置PMOD 和ardonio 接口并驅(qū)動(dòng)外
    發(fā)表于 03-16 09:15 ?2361次閱讀

    怎么Vitis設(shè)定Kernel的頻率?

    Vitis中選擇平臺(tái)時(shí)可以看到默認(rèn)的時(shí)鐘頻率是300Mhz和500Mhz. Vitis Application Acceleration Development Flow 我們看到
    的頭像 發(fā)表于 06-12 14:19 ?3.7w次閱讀

    Xilinx Vitis 2020.1運(yùn)行C程序時(shí)提示找不到microblaze_0

    Xilinx Vitis 2020.1里面運(yùn)行C程序時(shí)提示找不到microblaze_0
    的頭像 發(fā)表于 02-16 16:21 ?3984次閱讀
    Xilinx <b class='flag-5'>Vitis</b> 2020.1運(yùn)行C程序時(shí)提示找不到<b class='flag-5'>microblaze</b>_0

    Xilinx Vitis 2020.1里面MicroBlaze軟核的sleep函數(shù)卡死的問(wèn)題

    Vitis里面創(chuàng)建了一個(gè)LwIP工程,調(diào)試的時(shí)候發(fā)現(xiàn),BRAM里面運(yùn)行正常,但如果改到DDR3內(nèi)存里面運(yùn)行,啟動(dòng)時(shí)就會(huì)卡死sleep函
    的頭像 發(fā)表于 02-16 16:21 ?3446次閱讀
    Xilinx <b class='flag-5'>Vitis</b> 2020.1里面<b class='flag-5'>MicroBlaze</b>軟核的sleep函數(shù)卡死的問(wèn)題

    Vitis調(diào)試ARM可信固件和U-boot

    本篇博文中,我們將探討如何在 Vitis 調(diào)試 Zynq UltraScale 器件啟動(dòng)鏡像。這些啟動(dòng)鏡像包括 ARM 可信固件 (ATF) 和 U-boot。
    的頭像 發(fā)表于 08-02 10:14 ?4136次閱讀
    <b class='flag-5'>在</b><b class='flag-5'>Vitis</b><b class='flag-5'>中</b>調(diào)試ARM可信固件和U-boot

    Vitis通過(guò)PSU DDR執(zhí)行MicroBlaze應(yīng)用

    MicroBlaze? CPU 是可修改的拖入式預(yù)設(shè) 32 位/64 位 RISC 微處理器配置系列。
    的頭像 發(fā)表于 06-26 09:14 ?1341次閱讀
    <b class='flag-5'>在</b><b class='flag-5'>Vitis</b><b class='flag-5'>中</b><b class='flag-5'>通過(guò)</b><b class='flag-5'>PSU</b> <b class='flag-5'>DDR</b><b class='flag-5'>執(zhí)行</b><b class='flag-5'>MicroBlaze</b>應(yīng)用

    UCC25640XLED照明PSU的優(yōu)勢(shì)

    電子發(fā)燒友網(wǎng)站提供《UCC25640XLED照明PSU的優(yōu)勢(shì).pdf》資料免費(fèi)下載
    發(fā)表于 08-27 10:21 ?0次下載
    UCC25640X<b class='flag-5'>在</b>LED照明<b class='flag-5'>PSU</b><b class='flag-5'>中</b>的優(yōu)勢(shì)
    主站蜘蛛池模板: 国产在线视频欧美亚综合 | 午夜福利国产一级毛片 | 99久久精品久久久久久婷婷 | 黄色毛片大全 | 五月天婷婷综合网 | 一区二区三区国模大胆 | 久青草视频免费视频播放线路1 | 国产精品第9页 | 色视频在线观看网站 | 乱人伦小说短篇 | 黄色18网站 | 一 级 黄 中国色 片 | 七月色婷婷 | 国产成年女一区二区三区 | 羞羞答答xxdd影院欧美 | 丁香婷婷综合五月综合色啪 | 521色香蕉网在线观看免费 | 你懂的网址在线 | 欧美a性| 天天爱天天做久久天天狠狼 | 五月sese | 国产免费成人在线视频 | 久久www成人看片 | av成人在线播放 | 国产亚洲美女精品久久久久狼 | 午夜视频你懂的 | 亚洲国产精品嫩草影院 | 噜噜色噜噜| 久久久久久久国产精品影院 | 成人夜色视频网站在线观看 | 午夜爱爱网站 | 永久免费观看午夜视频在线 | 色播亚洲 | 都市激情亚洲综合 | 爱婷婷视频在线观看 | 婷婷激情小说网 | 黄色片啪啪 | 欧美日韩精品乱国产 | 深夜免费在线视频 | 特黄一级黄色片 | 永久精品免费影院在线观看网站 |