《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 嵌入式技術(shù) > 解決方案 > Cortex-M處理器性能考慮

Cortex-M處理器性能考慮

2017-04-19
作者:Joseph Yiu
來源:ARM
關(guān)鍵詞: Cortex-M ARM

5.1 通用數(shù)據(jù)處理能力

       在通用微控制器市場(chǎng),benchmark數(shù)據(jù)經(jīng)常用來衡量微控制器的性能,表7是Cortex-M處理器常用benchmark測(cè)試的性能數(shù)據(jù):

A]B}AQ8JHX]PJ(_WVM)ETIE.png

表 7: Cortex-M處理器常用benchmakr的性能分?jǐn)?shù)

(來源:CoreMark.org 網(wǎng)站 and ARM 網(wǎng)站)

關(guān)于Dhrystone需要注意的是用來測(cè)試的Dhrystone是由官方源程序在沒有啟用inline and 和multi-file compilation編譯選項(xiàng)的情況編譯出來的(官方分?jǐn)?shù))。但是,很多微控制器廠商引用的是完全優(yōu)化編譯的Dhrystone測(cè)試出來的數(shù)據(jù)。

但是,benchmark工具的性能測(cè)試數(shù)據(jù)可能無法準(zhǔn)確反應(yīng)你的應(yīng)用能達(dá)到的性能。例如,單周期I/O接口和DSP應(yīng)用中使用SIMD,或者Cortex-M4/M7中使用FPU的加速效果并沒有在這些測(cè)試數(shù)據(jù)中體現(xiàn)出來。

通常,Cortex-M3 和 Cortex-M4由于以下原因提供了更高的數(shù)據(jù)處理性能:

· 更豐富的指令集

· 哈佛總線架構(gòu)

· 寫緩存(單周期寫操作)

· 跳轉(zhuǎn)目標(biāo)的預(yù)測(cè)取指

Cortex-M33也是基于哈佛總線的架構(gòu),有豐富的指令集。但是不像Cortex-M3 和 Cortex-M4,Cortex-M33處理器流水線是重新設(shè)計(jì)的高效流水線,支持有限的指令雙發(fā)射(可以在一個(gè)時(shí)鐘周期中執(zhí)行最多兩條指令)。

Cortex-M7支持更高的性能,這是因?yàn)镸7擁有雙發(fā)射六級(jí)流水線并支持分支預(yù)測(cè)。而且,通過支持指令和數(shù)據(jù)Cache,和即便使用慢速內(nèi)存(例如,嵌入式Flash)也能避免性能損失的緊耦合內(nèi)存,來實(shí)現(xiàn)更高的系統(tǒng)級(jí)性能。

但是,某些I/O操作密集的任務(wù)在Cortex-M0+上運(yùn)行更快,這是因?yàn)椋?/p>

· 更短的流水線(跳轉(zhuǎn)只需要兩個(gè)周期)

· 單周期I/O端口

當(dāng)然也有設(shè)備相關(guān)的因素。例如,系統(tǒng)級(jí)設(shè)計(jì),內(nèi)存的速度也會(huì)影響到系統(tǒng)的性能。

你自己的應(yīng)用程序經(jīng)常是你需要的最好的benchmark。CoreMark分?jǐn)?shù)是另外一個(gè)處理器兩倍的處理器并不意味著執(zhí)行你的應(yīng)用也快一倍。對(duì)I/O密集操作的應(yīng)用來說,設(shè)備相關(guān)的系統(tǒng)級(jí)架構(gòu)對(duì)性能有巨大的影響。

5.2 中斷延遲

       性能相關(guān)的另外一個(gè)指標(biāo)是中斷延遲。這通常用從中斷請(qǐng)求到中斷服務(wù)程序第一條指令執(zhí)行的時(shí)鐘周期數(shù)來衡量。表8列出了Cortex-M處理器在零等待內(nèi)存系統(tǒng)條件下的中斷延遲比較。

262PQR58)CGJYXJ06G}PYMP.png

表 8: 零等待內(nèi)存系統(tǒng)條件下的中斷延遲比較

事實(shí)上,真正的中斷延遲受到內(nèi)存系統(tǒng)等待狀態(tài)的影響。例如,許多運(yùn)行頻率超過100Mhz的微控制器搭配的是非常慢的Flash存儲(chǔ)器(例如30到50MHz)。雖然使用了Flash訪問加速硬件來提高性能,中斷延遲仍然受到Flash存儲(chǔ)系統(tǒng)等待狀態(tài)的影響。所以完全有可能運(yùn)行在零等待內(nèi)存系統(tǒng)Cortex-M0/M0+系統(tǒng)比Cortex-M3/M4/M7有更短的中斷延遲。

當(dāng)評(píng)估性能的時(shí)候,不要忘記把中斷處理程序的執(zhí)行時(shí)間考慮在內(nèi)。某些8位或者16位處理器架構(gòu)可能中斷延遲很短,但是會(huì)花費(fèi)數(shù)倍的時(shí)鐘周期完成中斷處理。非常短的中斷響應(yīng)時(shí)間和很短的中斷處理時(shí)間才是實(shí)際有效的。


本站內(nèi)容除特別聲明的原創(chuàng)文章之外,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,并不代表本網(wǎng)站贊同其觀點(diǎn)。轉(zhuǎn)載的所有的文章、圖片、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無法一一聯(lián)系確認(rèn)版權(quán)者。如涉及作品內(nèi)容、版權(quán)和其它問題,請(qǐng)及時(shí)通過電子郵件或電話通知我們,以便迅速采取適當(dāng)措施,避免給雙方造成不必要的經(jīng)濟(jì)損失。聯(lián)系電話:010-82306118;郵箱:aet@chinaaet.com。