五月天青色头像情侣网名,国产亚洲av片在线观看18女人,黑人巨茎大战俄罗斯美女,扒下她的小内裤打屁股

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

Zynq UltraScale四核調(diào)試

2023-07-25 12:34 作者:海鷗之道  | 我要投稿

硬件型號:MZU07C

APU:?A53四核

RPU:R5兩核

這節(jié)分享A53四核調(diào)試經(jīng)驗,首先聊下兩核運行,官方資料或者廠商都會給雙核例程,功能是core0開啟tcp通信接收網(wǎng)絡(luò)調(diào)試助手的數(shù)據(jù),將數(shù)據(jù)存到共享內(nèi)存空間,然后開啟軟件中斷通知給core1,core1接收到中斷指令后讀取共享內(nèi)存數(shù)據(jù),完成雙核APU數(shù)據(jù)通信。

實現(xiàn)這部分功能的資料滿天飛,這里不再贅述,主要分享軟件中斷的兩個函數(shù),因為介紹這兩個函數(shù)的資料不多:

這個是軟件中斷初始化函數(shù),參數(shù)注釋:

1、Cpu0_Intr_Hanedler表示中斷處理函數(shù),就是中斷來臨時,會調(diào)用這個回調(diào)函數(shù)處理信息。

2、CORE1_TO_CORE0_INTR_ID: 這個定義為0x02,當(dāng)時剛看這個時候有點懵,c例程定義的CORE0_TO_CORE1_INTR_ID、CORE1_TO_CORE0_INTR_ID,云里霧里,實際上就是中斷號,軟件中斷有16個,對應(yīng)著0~15,這里就是core0定義成2而已,其實完全可以core0定義成1,core1定義成2,這樣對于初學(xué)者更好理解。

3、最后一個參數(shù)0,代表著APU號, 用core0,這里就是0,core1這里就是1。

在一個就是中斷產(chǎn)生函數(shù),參數(shù)&Intc 不多說固定用就行了。

CORE0_TO_CORE1_INTR_ID, XSCUGIC_SPI_CPU1_MASK,這兩個參數(shù)表示目標(biāo)core的中斷號和CPU\APU號,可以右擊XSCUGIC_SPI_CPU1_MASK找到定義:

好了,雙核到此為止,雙核程序應(yīng)該可以跑起來了,如果還有沒跑起來的,歡迎私信討論。

下面分享下,在加一個核時出現(xiàn)的問題:

操作如下:

1、添加一個應(yīng)用,選擇core2,helloworld例程:

2、編譯,運行調(diào)試

此時,發(fā)現(xiàn)FPGA程序可以正常燒入,

core2提示有問題:

報錯信息提示coretex-A53#2沒有供電,心細(xì)的話,我們在運行core0的時候,在debug界面也會有如下提示:

說名A53后面兩個核都沒有供電,屬于硬件問題,解決辦法在vivado中,將A53后面兩個核供電打開,因為默認(rèn)情況下,考慮低功耗,都是將后面兩個核關(guān)掉的,操作如下:

1、在vivado中找到Block Properties,選中Properties,最大化

2、找到CONFIG,搜索框輸入power:

將PSU_ACPU2_POWER_ON和PSU_ACPU3_POWER_ON由原來的0改成1即可打開供電

3、重新生成.xsa文件,替換掉SDK工程中的.xsa,編譯運行,就沒有問題了,在添加core3工程,運行都正常。


然后將core1中的代碼全部考到core2中,稍作修改:

初始化軟件中斷:

軟件中斷向core0中發(fā)送:

software_intr.c中添加:

然后編譯運行:

可以看出,三個核的運行信息,第四個核沒改程序,運行完helloworld就退出了~


Zynq UltraScale四核調(diào)試的評論 (共 條)

分享到微博請遵守國家法律
河津市| 普安县| 辽宁省| 忻州市| 黄石市| 松滋市| 桐乡市| 忻州市| 邵东县| 仲巴县| 洪洞县| 永丰县| 五大连池市| 阜新市| 睢宁县| 故城县| 康保县| 西乌珠穆沁旗| 武汉市| 格尔木市| 隆尧县| 库伦旗| 延吉市| 瓦房店市| 涟水县| 同仁县| 石屏县| 余庆县| 夹江县| 修武县| 吉安县| 宁津县| 正蓝旗| 离岛区| 巴塘县| 弋阳县| 子长县| 株洲市| 安吉县| 闵行区| 新安县|