五月天青色头像情侣网名,国产亚洲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)試的評論 (共 條)

分享到微博請遵守國家法律
绥化市| 邛崃市| 永善县| 平利县| 谢通门县| 长沙县| 长乐市| 青海省| 永靖县| 山西省| 阿拉善盟| 化隆| 临沭县| 米易县| 蕲春县| 肥东县| 新巴尔虎右旗| 水城县| 壶关县| 特克斯县| 环江| 梅州市| 读书| 长寿区| 蚌埠市| 海安县| 西贡区| 桑植县| 铁岭县| 廉江市| 五大连池市| 工布江达县| 台南市| 廉江市| 巢湖市| 贵州省| 合山市| 库伦旗| 会昌县| 勃利县| 巴林左旗|