本文來源電子發(fā)燒友社區(qū),作者:xiaopeng, 帖子地址:https://bbs.elecfans.com/jishu_2289640_1_1.html
提起MCU性能測試,最著名的就是CoreMark和Dhrystone。
CoreMark以每秒迭代次數(shù)作為性能評價(jià),而Dhrystone的DMIPS與Dhrystone標(biāo)準(zhǔn)相關(guān)。
本文討論CoreMark,先來看看MCU廠家如何宣傳自家產(chǎn)品性能。
CoreMark是衡量嵌入式系統(tǒng)中微控制器性能的基準(zhǔn)。通過包含列表處理(查找和排序)、矩陣處理(常見的矩陣操作)、狀態(tài)機(jī)(確定輸入流是否包含有效數(shù)字)和CRC(循環(huán)冗余校驗(yàn))等算法的測試給出性能評價(jià)。
本文將演示如何將CoreMark移植到中科昊芯勇士DSP開發(fā)板上。
移植之前想要準(zhǔn)備好一個基礎(chǔ)工程,包括功能:①串口打印; ②定時器功能
因?yàn)樵谏弦黄幸呀?jīng)把串口調(diào)通了,本次就基于上一篇的工程進(jìn)行移植。
**CoreMark源碼下載
CoreMark源代碼是免費(fèi)開源的,可以自己在其官網(wǎng)上進(jìn)行自由下載:CoreMark官網(wǎng)
**將源代碼添加到準(zhǔn)備好的串口工程
**添加頭文件路徑
因?yàn)槲覀冃陆薈oreMark文件夾,所以需要將其加入的頭文件包含路徑中。
**添加硬件初始化代碼
CoreMark源代碼里面portable_init函數(shù)實(shí)在main函數(shù)里進(jìn)行調(diào)用的,portable_init是用來做一些初始化工作的,所以我們可以把硬件相關(guān)的初始代碼直接添加到這行函數(shù)的開始。
**修改計(jì)時相關(guān)的代碼
start_time/ stop_time/ get_time這幾個函數(shù),是coremark程序運(yùn)行時計(jì)算程序運(yùn)行時間所用。這里使用cputimer0進(jìn)行計(jì)時,cputimer0配置為1ms的中斷間隔。cputimer0中斷函數(shù)中更新Tick的值,每進(jìn)一次中斷加1。所以還需要修改cputimer0的中斷處理函數(shù)。
修改后代碼如下:
**設(shè)置迭代次數(shù)
**設(shè)置打印信息
**調(diào)整優(yōu)化等級
貌似我調(diào)不調(diào)不影響結(jié)果
**printf重定向
CoreMark源代碼里使用宏ee_printf進(jìn)行數(shù)據(jù)打印,因此我對該宏進(jìn)行了重新定義:
**將數(shù)組stack_memblock變成全局變量【重要】
CoreMark源代碼中,數(shù)組tack_memblock是在main函數(shù)中進(jìn)行定義的,大小是2k。但是由于勇士027芯片的stack定義的大小也是2k,所以不改成全局變量,會導(dǎo)致棧溢出,程序無法運(yùn)行。
**編譯下載運(yùn)行
我大概與其它mcu做了一下對比,這個分?jǐn)?shù)大概比Cortex-M3強(qiáng)點(diǎn),比cortex-M4弱點(diǎn),算是一款入門級的dsp芯片,當(dāng)然這個跑分還與很多因素有關(guān)系,這里僅供參考。
提起MCU性能測試,最著名的就是CoreMark和Dhrystone。
CoreMark以每秒迭代次數(shù)作為性能評價(jià),而Dhrystone的DMIPS與Dhrystone標(biāo)準(zhǔn)相關(guān)。
本文討論CoreMark,先來看看MCU廠家如何宣傳自家產(chǎn)品性能。

CoreMark是衡量嵌入式系統(tǒng)中微控制器性能的基準(zhǔn)。通過包含列表處理(查找和排序)、矩陣處理(常見的矩陣操作)、狀態(tài)機(jī)(確定輸入流是否包含有效數(shù)字)和CRC(循環(huán)冗余校驗(yàn))等算法的測試給出性能評價(jià)。
本文將演示如何將CoreMark移植到中科昊芯勇士DSP開發(fā)板上。
移植之前想要準(zhǔn)備好一個基礎(chǔ)工程,包括功能:①串口打印; ②定時器功能
因?yàn)樵谏弦黄幸呀?jīng)把串口調(diào)通了,本次就基于上一篇的工程進(jìn)行移植。
**CoreMark源碼下載
CoreMark源代碼是免費(fèi)開源的,可以自己在其官網(wǎng)上進(jìn)行自由下載:CoreMark官網(wǎng)
**將源代碼添加到準(zhǔn)備好的串口工程

**添加頭文件路徑
因?yàn)槲覀冃陆薈oreMark文件夾,所以需要將其加入的頭文件包含路徑中。

**添加硬件初始化代碼
CoreMark源代碼里面portable_init函數(shù)實(shí)在main函數(shù)里進(jìn)行調(diào)用的,portable_init是用來做一些初始化工作的,所以我們可以把硬件相關(guān)的初始代碼直接添加到這行函數(shù)的開始。

**修改計(jì)時相關(guān)的代碼
start_time/ stop_time/ get_time這幾個函數(shù),是coremark程序運(yùn)行時計(jì)算程序運(yùn)行時間所用。這里使用cputimer0進(jìn)行計(jì)時,cputimer0配置為1ms的中斷間隔。cputimer0中斷函數(shù)中更新Tick的值,每進(jìn)一次中斷加1。所以還需要修改cputimer0的中斷處理函數(shù)。
修改后代碼如下:




**設(shè)置迭代次數(shù)

**設(shè)置打印信息

**調(diào)整優(yōu)化等級
貌似我調(diào)不調(diào)不影響結(jié)果
**printf重定向
CoreMark源代碼里使用宏ee_printf進(jìn)行數(shù)據(jù)打印,因此我對該宏進(jìn)行了重新定義:

**將數(shù)組stack_memblock變成全局變量【重要】
CoreMark源代碼中,數(shù)組tack_memblock是在main函數(shù)中進(jìn)行定義的,大小是2k。但是由于勇士027芯片的stack定義的大小也是2k,所以不改成全局變量,會導(dǎo)致棧溢出,程序無法運(yùn)行。
**編譯下載運(yùn)行

我大概與其它mcu做了一下對比,這個分?jǐn)?shù)大概比Cortex-M3強(qiáng)點(diǎn),比cortex-M4弱點(diǎn),算是一款入門級的dsp芯片,當(dāng)然這個跑分還與很多因素有關(guān)系,這里僅供參考。
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。
舉報(bào)投訴
-
中科昊芯
+關(guān)注
關(guān)注
5文章
83瀏覽量
5488 -
開發(fā)板試用
+關(guān)注
關(guān)注
3文章
301瀏覽量
2352
發(fā)布評論請先 登錄
相關(guān)推薦
熱點(diǎn)推薦
有獎丨米爾 瑞芯微RK3506開發(fā)板免費(fèi)試用
米爾與瑞芯微合作發(fā)布的新品基于瑞芯微RK3506應(yīng)用處理器的MYD-YR3506開發(fā)板免費(fèi)試用名額來啦~~米爾提供了3塊價(jià)值299元的MYD-YR3506

有獎丨米爾 瑞芯微RK3562開發(fā)板免費(fèi)試用新增名額!
米爾與瑞芯微合作發(fā)布的新品基于瑞芯微RK3562應(yīng)用處理器的MYD-YR3562開發(fā)板免費(fèi)試用名額增加

【RA4L1-SENSOR】+ RA4L1-SENSOR開發(fā)版之CoreMark跑分測試
;瑞薩RA4L1 開發(fā)板 coremark跑分測試:\\\\r\\\\n\\\\r\\\\n\");
coremark_main();
發(fā)表于 06-09 11:05
基于RK處理器,創(chuàng)龍TL3562-MiniEVM開發(fā)板試用體驗(yàn)
數(shù)量: 10塊 ? 更多熱點(diǎn)文章閱讀 基于平頭哥TH1520芯片,潤開鴻HH-SCDAYU800A開發(fā)板免費(fèi)試用 RISC-V開發(fā)板深度評測!頂級開發(fā)板免費(fèi)

性能強(qiáng)悍!合眾HZ-RK3568開發(fā)板試用體驗(yàn)
月19日 ? 評測數(shù)量: 10塊 ? 更多熱點(diǎn)文章閱讀 基于平頭哥TH1520芯片,潤開鴻HH-SCDAYU800A開發(fā)板免費(fèi)試用 RISC-V開發(fā)板深度評測!頂級開發(fā)板免費(fèi)

中科昊芯Core_DSC280025C開發(fā)板免費(fèi)試用
Core_DSC280025C核心板使用了昊芯HXS320F28025C RISC-V ? DSP芯片,該芯片集成了吳芯自主研發(fā)的H28x內(nèi)

中科昊芯DSP產(chǎn)品及公司信息
庫和驅(qū)動庫,幫助用戶降低遷移成本,縮短開發(fā)周期。同時,公司還推出了多種開發(fā)板和核心板,如Core_DSC28027和Start_DSC280
發(fā)表于 04-07 09:16
有獎丨米爾 瑞芯微YR3562開發(fā)板免費(fèi)試用
米爾與瑞芯微合作發(fā)布的新品基于瑞芯微RK3562應(yīng)用處理器的MYD-YR3562開發(fā)板免費(fèi)試用活動來啦~~米爾提供了3塊價(jià)值599元的MYD-YR3562

【正點(diǎn)原子STM32H7R3開發(fā)套件試用體驗(yàn)】CoreMark跑分測試
一個,自定義了一個,改一下coremark定義main函數(shù),放在自定義函數(shù)中調(diào)用:
主函數(shù):
下載代碼,運(yùn)行,查看串口輸出:
實(shí)際跑分遠(yuǎn)
發(fā)表于 12-28 23:13
【敏矽微ME32G070開發(fā)板免費(fèi)體驗(yàn)】使用coremark測試敏矽微ME32G070 跑分
收到敏矽微ME32G070分開發(fā)板有3天了,一直想知道這個MCU的性能怎樣?就像平時買新電腦后,就會用魯大師來測個分?jǐn)?shù),今天我就使用coremark來測試下敏矽微ME32G070這款MCU的分?jǐn)?shù)能力
發(fā)表于 12-19 12:09
【RA-Eco-RA4E2-64PIN-V1.0開發(fā)板試用】CoreMark測試RA4E2 單片機(jī)CPU性能分?jǐn)?shù)
CoreMark是一個專門用來測試CPU性能的程序。類似電腦上面的魯大師測試電腦跑分多少。
本期測評就是來講解CoreMark移植到瑞薩R
發(fā)表于 12-14 12:05
追加名額丨米爾瑞芯微RK3576開發(fā)板有獎試用
米爾與瑞芯微合作發(fā)布的新品基于瑞芯微RK3576應(yīng)用處理器的MYD-LR3576開發(fā)板免費(fèi)試用活動加碼啦~~米爾追加了2塊價(jià)值849元的MYD-LR3576

有獎丨米爾 瑞芯微RK3576開發(fā)板免費(fèi)試用
米爾與瑞芯微合作發(fā)布的新品基于瑞芯微RK3576應(yīng)用處理器的MYD-LR3576開發(fā)板免費(fèi)試用活動來啦~~米爾提供了7塊價(jià)值849元的MYD-LR3576

【龍芯2K0300蜂鳥板試用】+5.CoreMark跑分
CC=loongarch64-linux-gnu-gcc link
接下來將編譯的庫傳遞到開發(fā)板,傳遞這里直接使用scp遠(yuǎn)程上傳就行,添加可執(zhí)行權(quán)限,運(yùn)行
發(fā)表于 08-18 22:06
評論