很多人說STM32性能太弱,那你了解這個性能是如何得出來的嗎?
1寫在前面
我們經(jīng)常聽見某手機發(fā)布會,安兔兔跑分多少多少,其實這個跑分就是體現(xiàn)手機性能的一個指標。
我們使用STM32開發(fā)產(chǎn)品,選擇MCU時,一般會綜合考慮MCU各方面性能。
對于MCU來說,一個重要指標是功耗,還有一個重要指標就是性能。
當我們進入ST官方微控制器網(wǎng)頁,就會發(fā)現(xiàn)ST將MCU劃分為不同層次,如下圖:
https://www.st.com/en/microcontrollers.html
從上面層次關系,大致可以了解ST各MCU的功耗和性能。
2
STM32 CoreMark跑分
STM32家族的32位微控制器基于ARM Cortex-M處理器設計,為用戶提供新的自由度。
產(chǎn)品集高性能、實時性、數(shù)字信號處理、低功耗、低壓運行、互聯(lián)性于一體,保持充分的集成化和易用性。
根據(jù)性能劃分,STM32各系列MCU劃分為如下圖幾大類產(chǎn)品。具體可以參看官網(wǎng)信息。
https://www.st.com/en/microcontrollers/stm32-32-bit-arm-cortex-mcus.html
在嵌入式處理器領域最為知名和常見測試CPU性能的就是:Dhrystone 和 CoreMark。
1.CoreMark是用來衡量嵌入式系統(tǒng)中中心處理單元(CPU,或叫做微控制器MCU)性能的標準。
2.DMIPS:Dhrystone Million Instructions executed Per Second。用來計算同一秒內(nèi)系統(tǒng)的處理能力,它的單位以百萬來計算,也就是(MIPS)。主要用于測整數(shù)計算能力。
3
CoreMark跑分如何得來?
CoreMark是用來衡量CPU性能的標準。該標準于2009年由EEMBC組織的Shay Gla-On提出,并且試圖將其發(fā)展成為工業(yè)標準,從而代替陳舊的Dhrystone標準。
與Dhrystone一樣,CoreMark小巧,便攜,易于理解,免費,并且顯示單個數(shù)字基準分數(shù)。與Dhrystone不同,CoreMark具有特定的運行和報告規(guī)則,旨在避免Dhrystone的問題。
CoreMark跑分是通過運行C語言代碼得出來的分數(shù)。主要包含如下的運算法則:列舉(尋找并排序),數(shù)學矩陣操作(普通矩陣運算)和狀態(tài)機(用來確定輸入流中是否包含有效數(shù)字),最后還包括CRC(循環(huán)冗余校驗)。
也就是說CoreMark是使用一套用C語言編輯的測試代碼,我們通過運行這套代碼就能測試你MCU的性能。
4
CoreMark測試代碼
這里我們可以參考CoreMark官網(wǎng)信息,地址:
https://www.eembc.org/coremark/index.php
這里包含CoreMark相關說明、源代碼下載、移植說明等。源代碼位于Github,地址:
https://github.com/eembc/coremark
源碼docs目錄下包含與源碼相關的很多說明,感興趣可以下載來測試一下你MCU跑分多少。
其實,這里也有多種型號STM32的CoreMark跑分和測試結(jié)果:
STM32有些板子出廠就自帶CoreMark測試程序,比如我這邊手上有一個塊STM32F429I-Discovery的板子,就自帶性能測試代碼。
移植的過程,我這里就不教大家了,網(wǎng)上很多,也可以參看自帶說明文檔移植。
-
微控制器
+關注
關注
48文章
7489瀏覽量
151047 -
mcu
+關注
關注
146文章
16992瀏覽量
350310 -
STM32
+關注
關注
2266文章
10871瀏覽量
354801
發(fā)布評論請先 登錄
相關推薦
評論