隨著嵌入式設(shè)備的智能化需求越來越高,對(duì)MCU的性能要求也越來越高。一方面可以通過提高M(jìn)CU的主頻來提升MCU的性能,但是這會(huì)使MCU的設(shè)計(jì)變得更復(fù)雜。另一方面可以通過多核的方式來提升MCU的性能,目前多核MCU已在市場(chǎng)上廣泛應(yīng)用。隨著多核MCU的出現(xiàn),多核調(diào)試變得越來越重要。
本文主要介紹如何在IAR Embedded Workbench for Arm中進(jìn)行多核調(diào)試。
多核的基本概念
同構(gòu)多核(Homogeneous)vs 異構(gòu)多核(Heterogeneous)
從硬件設(shè)計(jì)上,多核可以分為同構(gòu)多核和異構(gòu)多核:同構(gòu)多核指的是所有的核具用相同的架構(gòu),比如NXP的S32K3(Cortex-M7)和芯馳科技的E3(Cortex-R5)。異構(gòu)多核指的是核具用不同的架構(gòu),比如Infineon的Traveo T2G (Cortex-M0+ + Cortex-M4/Cortex-M7)和ST的STM32H7 (Cortex-M4 + Cortex-M7)。
對(duì)稱多處理(SMP)vs 非對(duì)稱多處理(AMP)
從軟件設(shè)計(jì)上,多核可以分為對(duì)稱多處理(SMP)和非對(duì)稱多處理(AMP):SMP指的是所有的核運(yùn)行同一套程序(一般通過CoreID來實(shí)現(xiàn)不同的核執(zhí)行不同的操作),AMP指的是不同的核運(yùn)行不同的程序。
注意:只有同構(gòu)多核才能實(shí)現(xiàn)SMP,同構(gòu)多核也可以實(shí)現(xiàn)AMP,異構(gòu)多核只能實(shí)現(xiàn)AMP:
在IAR Embedded Workbench for Arm中進(jìn)行多核調(diào)試
同構(gòu)多核SMP多核調(diào)試
對(duì)于同構(gòu)多核SMP多核調(diào)試,需要在Debugger > Multicore > Symmetric multicore > Number of cores中輸入對(duì)應(yīng)核的數(shù)量:
由于SMP中所有的核運(yùn)行同一套程序,調(diào)試的時(shí)候只會(huì)開啟一個(gè)IAR Embedded Workbench IDE??梢酝ㄟ^View > Cores可以打開對(duì)應(yīng)的Cores窗口來查看和操作對(duì)應(yīng)Core的狀態(tài):
同構(gòu)多核AMP多核調(diào)試
對(duì)于同構(gòu)多核AMP多核調(diào)試,如果只有一個(gè)Partner工程,可以在Debugger > Multicore > Asymmetric multicore > Simple中輸入對(duì)應(yīng)Partner工程的配置:
對(duì)于異構(gòu)多核AMP多核調(diào)試,如果有多個(gè)Partner工程,可以在Debugger > Multicore > Asymmetric multicore > Advanced中輸入對(duì)應(yīng)Partner工程的xml配置文件(一個(gè)Partner工程也可以使用這種方式):
其中xml文件中會(huì)描述所有核的相關(guān)配置信息(參考如下):
由于AMP中不同的核運(yùn)行不同的程序,調(diào)試時(shí)每個(gè)核都會(huì)開啟獨(dú)立的IAR Embedded Workbench IDE,可以通過View > Cores可以打開對(duì)應(yīng)的Cores窗口來查看和操作對(duì)應(yīng)Core的狀態(tài):
異構(gòu)多核AMP多核調(diào)試
對(duì)于異構(gòu)多核AMP多核調(diào)試,配置跟同構(gòu)多核AMP多核調(diào)試類似:
由于AMP中不同的核運(yùn)行不同的程序,調(diào)試時(shí)每個(gè)核都會(huì)開啟獨(dú)立的IAR Embedded Workbench IDE,可以通過View > Cores可以打開對(duì)應(yīng)的Cores窗口來查看和操作對(duì)應(yīng)Core的狀態(tài):
注意事項(xiàng)
1. 當(dāng)前IAR Embedded Workbench for Arm多核調(diào)試功能只支持I-jet和CMSIS-DAP
2. 如果多核MCU默認(rèn)開始工作時(shí)只使能Master,需要Master來使能其它的核,才能進(jìn)行多核調(diào)試??梢酝ㄟ^單獨(dú)調(diào)試其它的核來確認(rèn)對(duì)應(yīng)的核是可以調(diào)試的。
3. 對(duì)于同構(gòu)多核實(shí)現(xiàn)AMP,每個(gè)核需要指定具體的對(duì)應(yīng)CPU:
4. 多核調(diào)試時(shí),每個(gè)核可以單獨(dú)控制,也可以一起控制,通過Run/Step/Stop affect all cores 和Run/Step/Stop affect current core only選項(xiàng)來選擇:
總結(jié)
主要介紹了如何在IAR Embedded Workbench for Arm中進(jìn)行SMP和AMP多核調(diào)試。
審核編輯:湯梓紅
-
mcu
+關(guān)注
關(guān)注
146文章
17322瀏覽量
352651 -
ARM
+關(guān)注
關(guān)注
134文章
9167瀏覽量
369217 -
IAR
+關(guān)注
關(guān)注
5文章
354瀏覽量
36780 -
多核調(diào)試
+關(guān)注
關(guān)注
0文章
3瀏覽量
5676
原文標(biāo)題:在IAR Embedded Workbench for Arm中進(jìn)行多核調(diào)試
文章出處:【微信號(hào):IAR愛亞系統(tǒng),微信公眾號(hào):IAR愛亞系統(tǒng)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
在IAR Embedded Workbench中進(jìn)行ARM+RISC-V多核調(diào)試
![<b class='flag-5'>在</b><b class='flag-5'>IAR</b> <b class='flag-5'>Embedded</b> <b class='flag-5'>Workbench</b><b class='flag-5'>中進(jìn)行</b><b class='flag-5'>ARM</b>+RISC-V<b class='flag-5'>多核</b><b class='flag-5'>調(diào)試</b>](https://file1.elecfans.com/web2/M00/89/99/wKgaomSIOYKAEx5DAAAt5xYnxzg070.png)
在IAR Embedded Workbench中計(jì)算多個(gè)地址區(qū)間的Checksum
![<b class='flag-5'>在</b><b class='flag-5'>IAR</b> <b class='flag-5'>Embedded</b> <b class='flag-5'>Workbench</b>中計(jì)算多個(gè)地址區(qū)間的Checksum](https://file1.elecfans.com/web2/M00/BB/FB/wKgaomWXhwOAVRAjAAA2G_yWXNw981.png)
在IAR版本為Embedded Workbench 6.5 Kickstart 1.4 編繹報(bào)錯(cuò)怎么解決?
在 IAR Embedded Workbench中進(jìn)行ARM+RISC-V多核調(diào)試
IAR Systems發(fā)布 IAR Embedded Wor
IAR_embedded_Workbench用戶指南介紹
IAR Embedded Workbench?集成開發(fā)環(huán)境已全面支持航順芯片HK32MCU系列
YRDKRX62N 快速入門指南(IAR Embedded Workbench)
![YRDKRX62N 快速入門指南(<b class='flag-5'>IAR</b> <b class='flag-5'>Embedded</b> <b class='flag-5'>Workbench</b>)](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
YRDKRL78G13 快速入門指南(IAR Embedded Workbench) Rev.1.01
![YRDKRL78G13 快速入門指南(<b class='flag-5'>IAR</b> <b class='flag-5'>Embedded</b> <b class='flag-5'>Workbench</b>) Rev.1.01](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
IAR發(fā)布最新IAR Embedded Workbench for Arm v9.40版本
YRDKRX62N 快速入門指南(IAR Embedded Workbench)
![YRDKRX62N 快速入門指南(<b class='flag-5'>IAR</b> <b class='flag-5'>Embedded</b> <b class='flag-5'>Workbench</b>)](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
YRDKRL78G13 快速入門指南(IAR Embedded Workbench) Rev.1.01
![YRDKRL78G13 快速入門指南(<b class='flag-5'>IAR</b> <b class='flag-5'>Embedded</b> <b class='flag-5'>Workbench</b>) Rev.1.01](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
評(píng)論