chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

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

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

3天內不再提示

Xilinx Vivado創(chuàng)建MicroBlaze工程運行Hello World C語言程序

C29F_xilinx_inc ? 來源:賽靈思 ? 作者:賽靈思 ? 2022-02-16 16:21 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

閱讀本文前,請先閱讀:

(1)【教程】Xilinx Vivado/Vitis 2020.1創(chuàng)建最簡單的MicroBlaze工程運行Hello World C語言程序(不使用外部DDR3內存),并固化到SPI Flash

https://blog.csdn.net/ZLK1214/article/details/111824576

(2)Xilinx 2020.1 MIG核讀寫DDR3內存,新建工程時配置MIG核的完整步驟

https://blog.csdn.net/ZLK1214/article/details/111349678

添加了DDR3內存以后,程序既可以運行在BRAM里面,也可以運行在DDR3內存里面。但如果運行在DDR3內存里面,固化起來會比較麻煩,需要借助SREC SPI Bootloader。

建立帶DDR3內存的MicroBlaze工程的方法很簡單:以不帶DDR3的工程(1)為基礎,只需要在Clocking Wizard和Processor System Reset之間插入一個MIG IP核就可以了。

poYBAGIMpkCARqygAAKR15cvwcw769.png

原本,Clocking Wizard輸出的時鐘是100MHz,是直接接到Processor System Reset上的。
修改后,兩者中間插入了一個MIG。Clocking Wizard的時鐘輸出變成了200MHz,給MIG提供時鐘。在MIG的內部由PLL倍頻到400MHz驅動外部DDR3內存,然后再分頻到100MHz從ui_clk引腳輸出出來,給Processor System Reset提供時鐘。
修改后,MicroBlaze的運行頻率沒有變,仍然是100MHz。

建立工程的時候一定要小心使用Vivado的自動連線的功能,操作不當的話很容易產生兩個Processor System Reset。

下面詳細說明一下工程的建立步驟。

首先在空白Block Design里面添加Clocking Wizard和MIG IP核:

poYBAGIMpkGAR328AABGZ1HHdO0264.png

修改Clocking Wizard的配置:

pYYBAGIMpkOAU62sAAEQHRPvHsY680.png

MIG的詳細配置請參考上面的文章(2),關鍵配置單獨挑出來說明一下:

poYBAGIMpkWACjr5AAIa-A20Ydk009.png

pYYBAGIMpkaAc_EBAACgta7GR24335.png

現在可以添加MicroBlaze核了,添加后點擊Run Block Automation,請注意時鐘的選擇:

pYYBAGIMpkiAe9bNAAINzfM07EA633.png

poYBAGIMpkqAFY2JAAFqNTj8Z-Y373.png

點擊Run Connection Automation,通過一個新建的AXI SmartConnect將MIG的S_AXI和MicroBlaze連接起來:

pYYBAGIMpk2AQK7LAAFIsfmJ1No020.png

自動連接剩余的接口

poYBAGIMplGAcAI9AAFbT5hAWDU717.png

pYYBAGIMplSAGFXkAAGkJ3l4nd4042.png

添加AXI Uartlite串口,用于printf打?。?/p>

pYYBAGIMplWAJaSOAAG6n8o5fIc509.png

Run Connection Automation,將Uartlite與MicroBlaze連在一起:

poYBAGIMpleAL18mAAD-3WnCWCA451.png

最終連線結果:

pYYBAGIMplqAAR57AAHvKU1DdII940.png

地址分配:

poYBAGIMplyAXOkKAAEWpxuS6kQ525.png

引腳配置:

pYYBAGIMpl2AYcRsAAEADikOE14680.png

綜合時會提示BANKBONE錯誤:

poYBAGIMpl-AUdDVAAFdeUMQX44786.png

[Place 30-575] Sub-optimal placement for a clock-capable IO pin and MMCM pair. If this sub optimal condition is acceptable for this design, you may use the CLOCK_DEDICATED_ROUTE constraint in the .xdc file to demote this message to a WARNING. However, the use of this override is highly discouraged. These examples can be used directly in the .xdc file to override this clock rule.

design_1_i/clk_wiz_0/inst/clkin1_ibufg (IBUF.O) is locked to IOB_X1Y26
design_1_i/clk_wiz_0/inst/mmcm_adv_inst (MMCME2_ADV.CLKIN1) is provisionally placed by clockplacer on MMCME2_ADV_X1Y1

The above error could possibly be related to other connected instances. Following is a list of
all the related clock rules and their respective instances.

Clock Rule: rule_mmcm_bufg
Status: PASS
Rule Description: An MMCM driving a BUFG must be placed on the same half side (top/bottom) of the device
design_1_i/clk_wiz_0/inst/mmcm_adv_inst (MMCME2_ADV.CLKFBOUT) is provisionally placed by clockplacer on MMCME2_ADV_X1Y1
and design_1_i/clk_wiz_0/inst/clkf_buf (BUFG.I) is provisionally placed by clockplacer on BUFGCTRL_X0Y31

將錯誤信息中提示的代碼加入xdc文件就可以屏蔽掉此錯誤:

pYYBAGIMpmCAfqu5AAFFEFvOfBo501.png

poYBAGIMpmKAQiV3AAKlWVadyVw422.png

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

    關注

    2

    文章

    285

    瀏覽量

    43683
  • MicroBlaze
    +關注

    關注

    3

    文章

    68

    瀏覽量

    22150
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    創(chuàng)建stm32f103c8工程后為什么終端沒有打印Hello RT_Thread?

    創(chuàng)建stm32f103c8工程后為什么終端沒有打印Hello RT_Thread!,程序好像也沒有下載進去
    發(fā)表于 09-26 08:24

    vivado仿真時GSR信號的影響

    利用vivado進行設計xilinx FPGA時,寫完設計代碼和仿真代碼后,點擊run simulation(啟動modelsim進行仿真)。
    的頭像 發(fā)表于 08-30 14:22 ?839次閱讀
    <b class='flag-5'>vivado</b>仿真時GSR信號的影響

    【M-K1HSE開發(fā)板免費體驗】M-K1HSE開發(fā)板構建HELLO WORLD頁面

    。 10)等待運行結束后工具界面如下: 11)真機界面效果詳見上傳的視頻。視頻同時發(fā)布在嗶哩嗶哩,鏈接為:。 M-K1HSE開發(fā)板成功構建HELLO WORLD頁面。
    發(fā)表于 07-15 04:31

    【Milk-V Duo S 開發(fā)板免費體驗】2 - 安裝編譯環(huán)境并測試Hello world!

    Hello, World! [root@milkv]~# ./helloworld Hello, World! 結論 至此已經配置應用程序
    發(fā)表于 07-07 21:18

    【潤開鴻HH-SCDAYU800A開發(fā)板試用體驗】Hello World

    \\\\\\\\toolchains Hello World 編寫第一個應用程序 :最簡單的Hello World 文件->新建項目,
    發(fā)表于 07-01 00:52

    Vivado HLS設計流程

    為了盡快把新產品推向市場,數字系統(tǒng)的設計者需要考慮如何加速設計開發(fā)的周期。設計加速主要可以從“設計的重用”和“抽象層級的提升”這兩個方面來考慮。Xilinx 推出的 Vivado HLS 工具可以
    的頭像 發(fā)表于 04-16 10:43 ?1178次閱讀
    <b class='flag-5'>Vivado</b> HLS設計流程

    C語言的歷史及程序介紹

    電子發(fā)燒友網站提供《C語言的歷史及程序介紹.pdf》資料免費下載
    發(fā)表于 04-09 16:10 ?0次下載

    創(chuàng)建stm32f103c8工程后為什么終端沒有打印Hello RT_Thread?

    創(chuàng)建stm32f103c8工程后為什么終端沒有打印Hello RT_Thread!,程序好像也沒有下載進去
    發(fā)表于 04-01 06:55

    如何在 樹莓派 上編寫和運行 C 語言程序

    在本教程中,我將討論C編程語言是什么,C編程的用途,以及如何在RaspberryPi上編寫和運行C程序
    的頭像 發(fā)表于 03-25 09:28 ?843次閱讀
    如何在 樹莓派 上編寫和<b class='flag-5'>運行</b> <b class='flag-5'>C</b> <b class='flag-5'>語言</b><b class='flag-5'>程序</b>?

    在mimxrt1170_evk調試hello_world出現硬件傳輸錯誤怎么解決?

    我按照視頻在 cm7 中調試hello_world示例,我的鏈接服務器正在運行, debug prove 的 FW 也是最新的。 但是我仍然收到這個錯誤。 16:status-poll 中的目標
    發(fā)表于 03-25 07:31

    EE-192:使用C語言在Blackfin處理器上創(chuàng)建中斷驅動系統(tǒng)

    電子發(fā)燒友網站提供《EE-192:使用C語言在Blackfin處理器上創(chuàng)建中斷驅動系統(tǒng).pdf》資料免費下載
    發(fā)表于 01-03 15:03 ?0次下載
    EE-192:使用<b class='flag-5'>C</b><b class='flag-5'>語言</b>在Blackfin處理器上<b class='flag-5'>創(chuàng)建</b>中斷驅動系統(tǒng)

    使用MCUXpresso for VS Code插件開發(fā)Zephyr的hello world

    本期來到Zephyr實戰(zhàn)經驗演練,小編帶著大家一起使用MCUXpresso for VS Code插件來開發(fā)一個屬于Zephyr的hello world。
    的頭像 發(fā)表于 01-03 09:21 ?1619次閱讀
    使用MCUXpresso for VS Code插件開發(fā)Zephyr的<b class='flag-5'>hello</b> <b class='flag-5'>world</b>

    Xilinx_Vivado_SDK的安裝教程

    首先是去官網下載安裝包:https://www.xilinx.com/support/download.html。 下載這個最大的、支持所有的 OS 如 Windows/Linux 的安裝包。 下載
    的頭像 發(fā)表于 11-16 09:53 ?6714次閱讀
    <b class='flag-5'>Xilinx_Vivado</b>_SDK的安裝教程

    C語言中的socket編程基礎

    Socket編程簡介 Socket是一種通信機制,允許程序之間進行通信。在C語言中,socket編程是網絡編程的基礎。通過使用socket,程序可以發(fā)送和接收數據,實現不同計算機之間的
    的頭像 發(fā)表于 11-01 16:51 ?1676次閱讀

    使用Vivado通過AXI Quad SPI實現XIP功能

    本博客提供了基于2023.2 Vivado的參考工程,展示如何使用Microblaze 地執(zhí)行(XIP)程序,并提供一個簡單的bootloader。
    的頭像 發(fā)表于 10-29 14:23 ?2381次閱讀
    使用<b class='flag-5'>Vivado</b>通過AXI Quad SPI實現XIP功能