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

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

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

3天內不再提示

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

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

掃碼添加小助手

加入工程師交流群

在Vitis里面創(chuàng)建了一個LwIP工程,調試的時候發(fā)現(xiàn),在BRAM里面運行正常,但如果改到DDR3內存里面運行,啟動時就會卡死在sleep函數(shù)上。

于是建立了一個Hello World工程來檢查,代碼如下:

#include
#include
#include "platform.h"

int main()
{
int i = 0;

init_platform();

xil_printf("Hello World\r\n");
xil_printf("Successfully ran Hello World application\r\n");

while (1)
{
xil_printf("i=%d\r\n", i);
i++;
sleep(1);
}

cleanup_platform();
return 0;
}

用xil_prinf串口打印函數(shù),編譯后.text的大小為4944。將xil_printf全部替換為printf(替換后所有的\r可以省去),編譯后.text的大小為70964。

沒有使能Instruction and Data Cache時,需要在MicroBlaze里面勾選Enable Peripheral AXI Instruction Interface,才能將程序放入DDR3內存中執(zhí)行:

pYYBAGGYSaKAVAs1AAD0gzlf86Y149.png

poYBAGIMpxmALRTUAAAzYFhpVkU743.png

Code Sections就是程序代碼的放置位置。

pYYBAGIMpxqAZL0BAAELhozcV0c459.png

如果使能了Cache(勾選了Use Instruction and Data Caches),就可以不用勾選Enable Peripheral AXI Instruction Interface(勾不勾選,對sleep函數(shù)沒有影響)。

poYBAGIMpxyAD9_YAAE8j9hq3YM319.png

測試后發(fā)現(xiàn):

程序運行在DDR3中,開了cache,用printf:sleep無法使用
程序運行在DDR3中,開了cache,用xil_printf:sleep可以使用
程序運行在DDR3中,不開cache,用printf:sleep無法使用
程序運行在DDR3中,不開cache,用xil_printf:sleep無法使用

但是如果仔細看的話,會發(fā)現(xiàn)有些情況下sleep并不是完全卡死,而是過了好幾分鐘才返回,串口打印出下一個i的值。這說明sleep并不是無法使用,而是執(zhí)行起來非常慢。
sleep函數(shù)內部是用匯編語句實現(xiàn)的,可能是放到DDR3里面執(zhí)行的話,取指有一定的問題。放到BRAM里面則可以正常運行。

所以,如果程序很大,非要放到DDR3里面運行的話,那就最好不要使用sleep函數(shù)??梢宰约盒薷膕leep函數(shù)的代碼,或者干脆自己重定義另外一個延時函數(shù)。

審核編輯:符乾江

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

    關注

    73

    文章

    2205

    瀏覽量

    131803
  • MicroBlaze
    +關注

    關注

    3

    文章

    68

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    技術探討|直線電機模組卡死原因與處理方案

    直線電機模組因其高速度、高精度和高響應特性,在自動化設備中應用廣泛。然而,運行中可能出現(xiàn)的“卡死”故障會嚴重影響生產效率和設備壽命。卡死通常表現(xiàn)為模組無法啟動、運動阻力劇增或運行中突然停止。系統(tǒng)性
    的頭像 發(fā)表于 04-07 15:55 ?76次閱讀
    技術探討|直線電機模組<b class='flag-5'>卡死</b>原因與處理方案

    如何使用AMD Vitis硬件在環(huán)功能運行Vitis子系統(tǒng)設計

    到目前為止,本文關于 AMD Versal AIE 驗證和 AMD Vitis 新的驗證功能的研究,所有內容都基于仿真完成。
    的頭像 發(fā)表于 04-02 10:29 ?6971次閱讀
    如何使用AMD <b class='flag-5'>Vitis</b>硬件在環(huán)功能運行<b class='flag-5'>Vitis</b>子系統(tǒng)設計

    同系列性能更強!面向高性能 AI 應用,AXU2CGB-I 有何亮點?

    Cortex-A53 + 雙 Cortex-R5 處理器與強大的 FPGA 可編程邏輯資源,為高端應用提供堅實算力基礎。 ? 板卡支持? Xilinx Vitis-AI DPU ,適配 V
    的頭像 發(fā)表于 11-12 16:56 ?1524次閱讀
    同系列性能更強!面向高性能 AI 應用,AXU2CGB-I 有何亮點?

    e203 如何和FPGA通信?

    求教e203 如何和FPGA通信
    發(fā)表于 11-07 06:15

    AMD Vitis AI 5.1測試版發(fā)布

    AMD Vitis AI 5.1全新發(fā)布——新增了對 AMD Versal AI Edge 系列神經網絡處理單元 (NPU) 的支持。Vitis AI 包含優(yōu)化的 NPU IP、模型編譯工具和部署 API,可在嵌入式平臺上實現(xiàn)可擴展的高性能推理。
    的頭像 發(fā)表于 10-31 12:46 ?962次閱讀

    E203提高CPU時鐘頻率方法

    本文將分享我們團隊提高E203主頻的辦法。 查閱芯來科技官方出版的《手把手教你設計CPU——RISC-V處理器篇》教材,我們發(fā)現(xiàn),原本設計的E203主時鐘域應該是100MHZ
    發(fā)表于 10-29 06:19

    在移植的時候發(fā)現(xiàn)卡死,為什么?

    請教大佬,我是按照網上的教程來移植的,板子是野火的霸天虎,但是到最后驗證的時候出問題了,發(fā)現(xiàn)board.c文件中的代碼可以運行,但就是運行不到主函數(shù),而是卡死在以下兩個函數(shù)中 以下是我的主
    發(fā)表于 09-29 06:28

    線程中調用rt_thread_mdelay()函數(shù)卡死的原因?怎么解決?

    在線程中調用rt_thread_mdelay()函數(shù)程序卡死。搞了兩天也不知道問題出在哪,怎么解決。 int main(void) { interrupt_config
    發(fā)表于 09-11 08:11

    MicroBlaze處理器嵌入式設計用戶指南

    *本指南內容涵蓋了在嵌入式設計中使用 MicroBlaze 處理器、含存儲器 IP 的設計、IP integrator 中的復位和時鐘拓撲結構。獲取完整版《 MicroBlaze 處理器嵌入式設計用戶指南》,請至文末掃描二維碼
    的頭像 發(fā)表于 07-28 10:43 ?1234次閱讀

    使用AMD Vitis Unified IDE創(chuàng)建HLS組件

    這篇文章在開發(fā)者分享|AMD Vitis HLS 系列 1 - AMD Vivado IP 流程(Vitis 傳統(tǒng) IDE) 的基礎上撰寫,但使用的是 AMD Vitis Unified IDE,而不是之前傳統(tǒng)版本的
    的頭像 發(fā)表于 06-20 10:06 ?2510次閱讀
    使用AMD <b class='flag-5'>Vitis</b> Unified IDE創(chuàng)建HLS組件

    STM32G473進行雙bank升級的時候,進行FLASH的批量擦除回卡死是怎么回事?

    ,也有更新4次、6次卡死的。我嘗試在進行擦除之前關中斷 __disable_irq();發(fā)現(xiàn)測試連續(xù)30次升級都沒卡死,但沒有找到根本原因。注:調用擦除bank的函數(shù)執(zhí)行在CAN接收中斷
    發(fā)表于 06-18 08:04

    如何使用AMD Vitis HLS創(chuàng)建HLS IP

    本文逐步演示了如何使用 AMD Vitis HLS 來創(chuàng)建一個 HLS IP,通過 AXI4 接口從存儲器讀取數(shù)據、執(zhí)行簡單的數(shù)學運算,然后將數(shù)據寫回存儲器。接著會在 AMD Vivado Design Suite 設計中使用此 HLS IP,并使用嵌入式 Vitis
    的頭像 發(fā)表于 06-13 09:50 ?2209次閱讀
    如何使用AMD <b class='flag-5'>Vitis</b> HLS創(chuàng)建HLS IP

    STM32G473 flash擦除時程序卡死,為什么?

    ,也有更新4次、6次卡死的。我嘗試在進行擦除之前關中斷 __disable_irq();發(fā)現(xiàn)測試連續(xù)30次升級都沒卡死,但沒有找到根本原因。注:調用擦除bank的函數(shù)執(zhí)行在CAN接收中斷
    發(fā)表于 06-12 08:05

    STM32G473 flash擦除時程序卡死的原因?

    ,也有更新4次、6次卡死的。我嘗試在進行擦除之前關中斷 __disable_irq();發(fā)現(xiàn)測試連續(xù)30次升級都沒卡死,但沒有找到根本原因。注:調用擦除bank的函數(shù)執(zhí)行在CAN接收中斷
    發(fā)表于 06-09 07:23

    國際亮相中國建2025數(shù)字生態(tài)大會

    此前,5月13日至14日,中國建2025數(shù)字生態(tài)大會在雄安會展中心隆重召開。大會以“數(shù)智賦能新生態(tài),轉型共贏創(chuàng)未來”為主題,由中國學會指導、中國建成員單位中華輝承辦。中
    的頭像 發(fā)表于 05-20 15:55 ?930次閱讀
    中<b class='flag-5'>軟</b>國際亮相中國<b class='flag-5'>核</b>建2025數(shù)字生態(tài)大會