chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

基于極海APM32E103 MCU的CoreMark測試方法

Geehy極海半導(dǎo)體 ? 來源:21ic論壇極海半導(dǎo)體專區(qū) ? 2025-06-12 09:42 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

均轉(zhuǎn)載自21ic論壇極海半導(dǎo)體專區(qū)

CoreMark是專門用于測試處理器內(nèi)核性能的基準(zhǔn)測試程序,測試的內(nèi)容有:列表處理(查找和排序)、矩陣操作(常見的矩陣操作)、狀態(tài)機(確定輸入流是否包含有效數(shù)字)和CRC(循環(huán)冗余檢查),通過CoreMark跑分可以了解到MCU的算力。下面以APM32E103芯片和Keil為例,介紹一下如何在APM32上面運行CoraMark測試。CoreMark需要定時器用于計時,還需要用串口來打印輸出測試結(jié)果。

1、獲取相關(guān)代碼

在極海官網(wǎng)可以下載SDK:

https://www.geehy.com/uploads/tool/APM32E10x_SDK_V1.2.zip

打開 “APM32E10x_SDK_V1.1ExamplesUSARTUSART_PrintfProjectMDKUSART_Printf.uvprojx”,這個工程已經(jīng)有串口和滴答定時器的初始化,便于修改。

在CoreMark的GitHub下載庫:

https://github.com/eembc/coremark.git

*網(wǎng)速太慢的話可以在國內(nèi)Gitee下載:

https://gitee.com/ssri-mirrors/coremark.git

2、實現(xiàn)串口打印printf

先初始化串口,直接用SDK本來的代碼就行。

然后重定義fputc(),以便能通過printf()輸出信息到串口調(diào)試助手。

struct __FILE

{

int handle;

};

FILE __stdout;

int fputc(int ch, FILE *f)

{

while(USART_ReadStatusFlag(USART1, USART_FLAG_TXBE) == RESET);

USART_TxData(USART1, ch);

return ch;

}

3、實現(xiàn)計時函數(shù)GETMYTIME

使用滴答定時器或者普通定時器都可以,這里以滴答定時器為例,每隔10ms中斷一次。

SysTick_Config(SystemCoreClock / 100);

在中斷服務(wù)中需要一個全局變量進行10毫秒級計時。

void SysTick_Handler(void)

{

tick++;

}

4、添加CoreMark源代碼

將下載的CoreMark庫解壓到工程目錄下,在Keil工程中添加這幾個文件,其中 core_portme.c 在文件夾simple里面。

df7832de-42b7-11f0-b715-92fbcf53809c.png

還要在工程設(shè)置中添加相關(guān)頭文件的路徑

e041f844-42b7-11f0-b715-92fbcf53809c.png

把 core_main.c 中的 main(int argc, char *argv[]) 改為 coremark_main(int argc, char *argv[]) 以免編譯報錯。

MAIN_RETURN_TYPE

coremark_main(int argc, char *argv[])

在真正的int main()函數(shù)中調(diào)用 coremark_main 函數(shù)。

coremark_main(0,NULL); //正常開始運行測試算法

5、配置CoreMark

完成以上步驟后編譯會報兩個錯:

....coremark-maincore_main.c(383): error: #20: identifier "FLAGS_STR" is undefined

....coremark-mainsimplecore_portme.c(38): error: #20: identifier "ITERATIONS" is undefined

第1個錯誤是說沒定義 FLAGS_STR 這個字符串,這個是用來編譯優(yōu)化等級的,在 core_portme.h 添加這個字符串。

#define COMPILER_FLAGS "Level 0"

第2個錯誤是說沒定義 ITERATIONS 這個值,這個值決定了CoreMark算法執(zhí)行的次數(shù),對于性能越高的MCU這個值應(yīng)該越大,在core_portme.c中添加這個宏定義, 這里先設(shè)個1000,后面根據(jù)需要再調(diào)整。

#define ITERATIONS 1000

接下來要配置關(guān)于時間的代碼,還是core_portme.c這個文件,將之前中斷服務(wù)函數(shù)計數(shù)的變量賦給 *_t ,同時也要包含tick變量的聲明。

#define NSECS_PER_SEC CLOCKS_PER_SEC

#define CORETIMETYPE clock_t

#define GETMYTIME(_t) (*_t = tick )

注意 CLOCKS_PER_SEC 這個宏,它表示每秒的時鐘數(shù),也就是一秒內(nèi)tick計數(shù)的增加量,如果tick每隔10ms加一,那么CLOCKS_PER_SEC應(yīng)該等于100;如果tick每隔1ms加一,那么CLOCKS_PER_SEC應(yīng)該等于1000;

6、增加棧的大小

CoreMark運行時需要較大的??臻g,默認棧大小不夠,需要改大。

打開CMSIS欄中的啟動文件 startup_apm32e10x_hd.s ,把棧Stack_Size 增加到 2KB 。

Stack_Size EQU 0x00000800

7、下載程序并執(zhí)行

編譯并下載程序,等待10多秒后串口輸出測試結(jié)果。

有時優(yōu)化等級提高了,或者換了更強的MCU測試,會出現(xiàn)算法執(zhí)行時間小于10秒的提示:

e0513854-42b7-11f0-b715-92fbcf53809c.png

這時只需要把 ITERATIONS 改大就行了。

#define ITERATIONS 2000

把優(yōu)化等級提到最高,測得CoreMark 1.0跑分為139.958。

e065bcd4-42b7-11f0-b715-92fbcf53809c.png

以上就是用CoreMark庫對APM32E103進行性能測試的方法及步驟,對其他芯片的測試方法也是大同小異。

注:文章作者在原帖中提供了例程文件,有需要請至原文21ic論壇下載

原文地址:https://bbs.21ic.com/icview-3331250-1-1.html

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 處理器
    +關(guān)注

    關(guān)注

    68

    文章

    20144

    瀏覽量

    246696
  • mcu
    mcu
    +關(guān)注

    關(guān)注

    147

    文章

    18593

    瀏覽量

    386052
  • 測試
    +關(guān)注

    關(guān)注

    8

    文章

    6016

    瀏覽量

    130648
  • 定時器
    +關(guān)注

    關(guān)注

    23

    文章

    3360

    瀏覽量

    121667
  • 極海半導(dǎo)體
    +關(guān)注

    關(guān)注

    0

    文章

    195

    瀏覽量

    4825

原文標(biāo)題:APM32芯得 EP.56 | 基于APM32E103的CoreMark測試方法

文章出處:【微信號:geehysemi,微信公眾號:Geehy極海半導(dǎo)體】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    新品發(fā)布丨半導(dǎo)體推出工業(yè)級標(biāo)準(zhǔn)型APM32S103系列MCU

    半導(dǎo)體最新宣布推出,基于32位Arm Cortex-M3內(nèi)核的 工業(yè)級標(biāo)準(zhǔn)型 APM32S103系列MCU 。該系列新品作為APM32F103
    的頭像 發(fā)表于 12-16 18:24 ?2811次閱讀

    推出APM32A全系列車規(guī)級MCU

    ? 宣布推出具有高效CPU處理性能、增強型存儲空間、以及豐富連接功能的 APM32A 系列車規(guī)級MCU,以有效滿足汽車電子多樣化通信與車身控制應(yīng)用開發(fā)需求,可廣泛應(yīng)用于車身控制、安
    發(fā)表于 02-02 14:47 ?1494次閱讀
    <b class='flag-5'>極</b><b class='flag-5'>海</b>推出<b class='flag-5'>APM</b>32A全系列車規(guī)級<b class='flag-5'>MCU</b>

    推出APM32A系列車規(guī)級MCU芯片

    宣布推出具有高效CPU處理性能、增強型存儲空間、以及豐富連接功能的APM32A系列車規(guī)級MCU,以有效滿足汽車電子多樣化通信與車身控制應(yīng)用開發(fā)需求,可廣泛應(yīng)用于車身控制、安全系統(tǒng)、
    發(fā)表于 02-21 14:21

    APM32F103RCT7通過AEC-Q100車規(guī)認證

    APM32F103RCT7 MCU芯片經(jīng)過廣電計量等第三方權(quán)威機構(gòu)檢測,順利通過AEC-Q100車規(guī)認證。
    發(fā)表于 02-07 10:38 ?3024次閱讀
    <b class='flag-5'>極</b><b class='flag-5'>海</b><b class='flag-5'>APM32F103</b>RCT7通過AEC-Q100車規(guī)認證

    Flasher在線燒錄器全面支持APM32系列MCU

    半導(dǎo)體常務(wù)副總經(jīng)理王遠學(xué)表示:“非常有幸能與SEGGER達成合作,目前APM32系列MCU
    的頭像 發(fā)表于 09-08 11:10 ?2986次閱讀

    半導(dǎo)體APM32E103/F072系列MCU順利通過IEC 60730功能安全認證

    近日,半導(dǎo)體APM32E103/APM32F072系列MCU,順利通過IEC 60730功能安全認證,并提供符合B類標(biāo)準(zhǔn)的軟件安全庫,有
    發(fā)表于 09-29 14:17 ?1759次閱讀

    APM32F407xG移植coremark教程

    APM32F407xG移植coremark教程
    發(fā)表于 09-29 15:51 ?1次下載

    APM32E103xCxE數(shù)據(jù)手冊

    APM32E103xCxE數(shù)據(jù)手冊
    發(fā)表于 11-09 21:03 ?2次下載
    <b class='flag-5'>APM32E103</b>xCxE數(shù)據(jù)手冊

    APM32E103VET6_LSE_RTC不走時

    APM32E103VET6_LSE_RTC不走時
    發(fā)表于 11-09 21:03 ?2次下載
    <b class='flag-5'>APM32E103</b>VET6_LSE_RTC不走時

    APM32E103ZE EVAL 原理圖

    APM32E103ZE EVAL 原理圖
    發(fā)表于 11-09 21:04 ?0次下載
    <b class='flag-5'>APM32E103</b>ZE EVAL 原理圖

    喜報頻傳!APM32工業(yè)級/車規(guī)級MCU產(chǎn)品接連榮獲三項大獎

    半導(dǎo)體喜報頻傳接連榮獲三項大獎。半導(dǎo)體“工業(yè)級高安全MCU APM32F415”、 “工
    發(fā)表于 11-21 15:17 ?971次閱讀

    推出首款電機控制專用芯片APM32F035系列MCU

    宣布正式推出首款高性能、高可靠性、高性價比的電機控制專用芯片—APM32F035系列MCU,覆蓋多種電機應(yīng)用。
    的頭像 發(fā)表于 07-28 17:13 ?2453次閱讀
    <b class='flag-5'>極</b><b class='flag-5'>海</b>推出首款電機控制專用芯片<b class='flag-5'>APM</b>32F035系列<b class='flag-5'>MCU</b>

    基于半導(dǎo)體APM32F407系列MCU的伺服控制器應(yīng)用方案

    基于半導(dǎo)體APM32F407系列MCU的伺服控制器應(yīng)用方案
    的頭像 發(fā)表于 09-19 16:48 ?2009次閱讀
    基于<b class='flag-5'>極</b><b class='flag-5'>海</b>半導(dǎo)體<b class='flag-5'>APM</b>32F407系列<b class='flag-5'>MCU</b>的伺服控制器應(yīng)用方案

    APM32F072xBT7硬件兼容ST電動車應(yīng)用方案mcu

    APM32F072xBT7硬件兼容ST電動車應(yīng)用方案MCU 隨著電動車市場的不斷發(fā)展,對于電動車控制器的要求也越來越高。而作為電動車控制器的核心部件,
    的頭像 發(fā)表于 03-04 21:30 ?1252次閱讀

    APM32E030/F402系列MCU通過IEC 60730/60335功能安全認證

    近日,APM32E030系列基礎(chǔ)拓展型MCUAPM32F402系列高性能高性價比MCU通過
    的頭像 發(fā)表于 08-29 13:57 ?811次閱讀
    <b class='flag-5'>極</b><b class='flag-5'>海</b><b class='flag-5'>APM32E</b>030/F402系列<b class='flag-5'>MCU</b>通過IEC 60730/60335功能安全認證