ST的H7 MCU設(shè)計考量:用雙核實現(xiàn)高性能與實時組合
不久前,意法半導(dǎo)體(ST)發(fā)布了高性能的微控制器(MCU)STM32H7。其突出特點之一是采用Arm Cortex-M系列中性能最高的480MHz Cortex-M7內(nèi)核,并增加一顆240MHz Cortex-M4內(nèi)核,實現(xiàn)了3224 CoreMark,可謂業(yè)界性能最高的Arm Cortex-M通用MCU。
本文引用地址:http://butianyuan.cn/article/201907/402697.htmST微控制器事業(yè)部STM32高性能產(chǎn)品線高級市場經(jīng)理Renaud BOUZEREAU專程來京,與ST中國區(qū)微控制器事業(yè)部市場及應(yīng)用總監(jiān)曹錦東先生,向媒體介紹了這款MCU的產(chǎn)品定義和設(shè)計考量。例如為何采用雙核架構(gòu),為何沒有采用友商的無閃存模式,新增的安全功能,如何保證高性能產(chǎn)品的投入產(chǎn)出平衡等。
圖 ST的H7系列2019年產(chǎn)品規(guī)劃(注:雙核產(chǎn)品如期發(fā)布)
1 為何通過雙核實現(xiàn)超高性能
無獨有偶,MCU的另一大玩家N公司早在兩年前也推出了基于M7單核的MCU,名為“跨界處理器”,特點是無內(nèi)置閃存,主頻可達1 GHz、600MHz等,CoreMark 3000左右,實現(xiàn)了MCU的架構(gòu)、MPU的應(yīng)用。那么,ST為何不把H7的單核主頻提高,而是采用了較為復(fù)雜的雙核策略?另外,雙核是否意味著客戶的軟件編程難度提高了?
圖 H7的雙核CoreMark超過3200分
Renaud BOUZEREAU解釋道,在內(nèi)核跑分上,需要從兩方面看。第一,主頻的提高會是影響Coremark跑分的一個非常重要的因素。但是,整個工程的執(zhí)行效率并不能僅僅看主頻,還要看芯片內(nèi)部的總線架構(gòu)、訪問Flash的位數(shù),以及其余外設(shè)資源和硬件加速器等。而內(nèi)置Flash執(zhí)行代碼的效率對比與外置QSPI Flash這種模式會高很多,也避免了很多總線沖突和內(nèi)存配置的問題。從嵌入式設(shè)計角度而言,外面增加元器件也會影響系統(tǒng)的穩(wěn)定性。
第二,在設(shè)計產(chǎn)品的時候,ST一直在考慮性能和穩(wěn)定性的平衡。越高的主頻,意味著產(chǎn)品會相對脆弱。ST研究過很多競爭對手的芯片,發(fā)現(xiàn)在高溫測試的時候,往往要降低主頻才能保證系統(tǒng)的穩(wěn)定性。所以ST在討論和研究后,認為480MHz的主頻會是一個很好的平衡點。
為了解決雙核編程的挑戰(zhàn),ST從兩方面入手。第一,從硬件角度而言,在STM32H7雙核產(chǎn)品里,內(nèi)置了硬件信號量的機制,硬件信號量可以將兩個核的運行狀態(tài)進行同步,例如有些外設(shè)通過M4處理的時候,通過硬件信號量通知M7內(nèi)核該外設(shè)暫時不能被訪問的。
其次,從軟件角度,ST現(xiàn)在的CubeMX及IDE(集成設(shè)計環(huán)境)都已經(jīng)支持雙核的開發(fā)。在雙核開發(fā)時,兩個工程都會擺在同一個界面上做調(diào)試,這樣對于開發(fā)者會比較簡單,包括第三方操作系統(tǒng),例如FreeRTOS,現(xiàn)在支持雙核的設(shè)計,兩個核之間的通訊會通過內(nèi)部有一個Mailbox的機制在進行通訊,將兩個核的信息進行同步。
除此之外,雙核還有獨特的“1+1>2”的優(yōu)勢。首先,通過靈活使用兩個內(nèi)核,開發(fā)人員可以輕松升級現(xiàn)有應(yīng)用,增加更先進復(fù)雜的圖形用戶界面。以電機控制為例,將以前在單核Cortex-M4 MCU上的舊代碼遷移到STM32H7 Cortex-M4上,同時在Cortex-M7上運行新GUI(圖形用戶界面)。另一個例子是通過降低主處理器的密集型工作負荷,例如,神經(jīng)網(wǎng)絡(luò)、校驗和、DSP過濾或音頻編解碼,提高應(yīng)用性能。
其次,雙核架構(gòu)還有助于簡化代碼開發(fā),并縮短項目開發(fā)周期,將用戶界面代碼與實時控制或通信功能的開發(fā)分開進行(如下圖)。
圖 H7雙核應(yīng)用案例之一,神經(jīng)網(wǎng)絡(luò)、圖形顯示等在M7上運行,實時控制、通信功能在M4上運行
2 內(nèi)置閃存、SRAM的考慮
友商N公司的高性能MCU/跨界處理器的主要特色之一是無閃存。但ST依然提供了豐富的閃存。ST稱,與無閃存處理器相比,H7 MCU在片上額外提供高達2MB閃存和1MB SRAM,更好地解決了存儲空間限制問題,并簡化了具有實時性能或AI處理要求的工業(yè)、消費和醫(yī)療智能產(chǎn)品設(shè)計。
那么,ST為何不做這種無閃存的產(chǎn)品呢?Renaud BOUZEREAU稱,據(jù)ST調(diào)查,現(xiàn)在市場上超過80%~90%的客戶希望的架構(gòu)是MCU內(nèi)置flash、內(nèi)置RAM的,并擁有更多先進的外設(shè),首先,這樣的架構(gòu)可以縮小他們的PCB(印制板)面積和設(shè)計成本。其次,內(nèi)置閃存非常安全,可防止外部盜取或篡改數(shù)據(jù)。
3 生產(chǎn)流程的安全保障
H7的另一新特色是保證生產(chǎn)流程的安全。據(jù)悉,H7 MCU配備預(yù)安裝密鑰和原生安全服務(wù),包括安全固件安裝(SFI)。SFI允許客戶在世界任何地方訂購標(biāo)準(zhǔn)產(chǎn)品,并將加密固件交付給外部編程公司,避免未加密的代碼泄密。此外,內(nèi)置安全啟動和安全固件更新(SB-SFU)支持功能,保護空中下載(OTA)升級和補丁的安全。
那么,為何要增加安全固件安裝(SFI)?這與其他的MCU安全芯片有什么區(qū)別嗎?
實際上,安全需要跟具體的應(yīng)用環(huán)境相關(guān),換句話,安全是一種服務(wù)。在生產(chǎn)流程安全方面,服務(wù)表現(xiàn)在假如我是一家設(shè)計公司,我把我的芯片通過其他加工廠去做燒錄。是我怎么確保我的代工廠按照我的要求把我的程序進行燒入芯片,這里是有不同的加密的軟件,通過智能卡/硬件安全模組(HSM)給了用戶,給了加工廠,這是個公鑰,這個程序是加過密的,這個程序是需要用公鑰去解密的,如果沒有這個智能卡解密的加密程序,即使外人拿到也不能進行燒錄和破解。第二個特點是每使用的時候會確認這個代碼是不是一開始開發(fā)的代碼,如果代碼有木馬程序,就不會啟動。
4 H7如何保證投資產(chǎn)出的平衡
STM32的產(chǎn)品線越來越豐富細化,例如H7兩年前是單核,現(xiàn)在又出了雙核產(chǎn)品。出爐這么多細分高端產(chǎn)品,會不會帶來制造成本的壓力?
Renaud BOUZEREAU解釋道,從芯片的制造而言,因為是基于同樣的平臺,例如現(xiàn)在的H7是屬于40nm平臺,在40nm平臺上,這是一次性投資的技術(shù),投入之后,ST在這個平臺上面去開發(fā)更多的產(chǎn)品來滿足用戶的需求,這相對于一次性技術(shù)投入,成本較小。
從另外角度來看,之所以會生產(chǎn)很多細分的產(chǎn)品,主要是為了應(yīng)對現(xiàn)在越來越細分化的市場需要。ST現(xiàn)在有上千個型號,每個型號的資源配置都是根據(jù)很多細分應(yīng)用來決定的。從性價比上來講,如果你只需要實現(xiàn)一個簡單的功能,而我們提供一個非常強大的MCU,價格肯定會比你預(yù)期的貴不少。所以ST會創(chuàng)造出不同的產(chǎn)品,來滿足各個細分市場的需求。
曹錦東先生補充道,高性能并不代表批量的減少,ST追求的是技術(shù)的迭代,因為當(dāng)12年前(2007年)ST發(fā)布STM32F1時,工藝是180nm,那個時候投資回報率(ROI)這個問題同樣是有——因為那時主要市場還是8位、16位MCU,但五年、十年后,32位MCU變成了巨大的市場。因此,技術(shù)會推動或者可以激發(fā)更多創(chuàng)新的應(yīng)用,幫助客戶把過去不敢想象的應(yīng)用,基于新的技術(shù)、新的產(chǎn)品去實現(xiàn)。
圖 STM32家族一覽表
評論