MCU引入異構內核·,攜手Linux變身MPU

導讀 集微網報道 從2007年的第一顆STM32F103開始,十二年的發展讓STM32家族成爲了新世紀最成功的MCU系列。引入多核、擴充外設,STM32的自我升級一直沒有停步。如今,引入異構內核即將成爲STM32發展史上又一個重要節點,新MPU將在MCU的基礎上破殼而出。
STM32家族的最新成員就是整合了Cortex-A和Cortex-M兩種不一樣核心的STM32MP1微處理器系列。linux

Cortex-M是ARM處理器中的專用MCU內核,Cortex-A則是應用處理器內核,如今手機中的蘋果A系列、高通驍龍、華爲麒麟處理器等都是基於Cortex-A架構的。將Cortex-A引入到MCU當中,也就是將異構計算引入到MCU當中。安全

「MPU實際上是很是複雜的,要通過長期思考+驗證,到最後成熟和上市,這塊產品花了整整五年的時間。」意法半導體微控制器事業部STM32微處理器產品市場經理Sylvain RAYNAUD這樣表示。架構

MCU引入異構內核·,攜手Linux變身MPUMCU引入異構內核·,攜手Linux變身MPUide

意法半導體微控制器事業部STM32微處理器產品市場經理Sylvain RAYNAUD工具

STM32MP1系列微處理器集成兩顆主頻650MHz的Arm Cortex-A7應用處理器內核和一顆運行頻率209MHz的高性能Arm Cortex-M4微控制器內核。同時,STM32MP1還嵌入了GPU,以支持人機顯示界面。性能

MCU引入異構內核·,攜手Linux變身MPUMCU引入異構內核·,攜手Linux變身MPU開發工具

這三核分工明確,A7內核運行Linux,配合GPU負責顯示功能,M4內核則執行傳統的控制功能。三核之間經過特有的IPCC機制進行通訊並配有加密措施,「它們以mailbox的方式溝通,而後溝通數據會保存在SRAM 裏面。」 Sylvain RAYNAUD解釋。優化

爲防止MPU系統出現性能瓶頸和帶寬問題,STM32MP1支持經濟實惠的DDR SDRAM存儲器,包括DDR三、DDR3L、LPDDR二、533MHz的32/16位LPDDR3。此外,STM32MP1還支持各類閃存產品:eMMC、SD卡、SLC NAND、SPI NAND和Quad-SPI NOR閃存。網站

從架構上來講,STM32MP1既具備靈活性又能實現能效最佳化。在全速運行模式下,雙核Cortex-A7 +3D GPU是徹底打開的,其處理器速度爲2470DMIPS,Cortex-M4部分的處理速度則有260DMIPS。在低功耗模式下,Cortex-A7進入待機模式,只有Cortex-M4運行,功耗是正常模式的1/4。若是要進入徹底待機模式,功耗只有前一個模式的1/2500。加密

從待機模式回到全速運行,STM32MP1的表現很優異。其只需1s就能回到Linux界面,3s則能回到3D圖形應用界面。

還有一點很關鍵,STM32MP1配備的豐富外設均可以經過在線的方式決定分配給A7仍是M4使用。這些外設就包括了USB2.0、千兆以太網GMAC、CAN FD,以及多個標準IC、UART和SPI接口,還有一系列模擬外設。

由於複雜度提高,ST還爲STM32MP1設計了專用電源管理IC(PMIC) STPMIC1。其集成了4個DC / DC降壓轉換器、6個LDO穩壓器、1個DC / DC升壓轉換器,以及USB VBUS和通用功率開關,能爲STM32MP1和電路板上的其它組件提供所需的電壓軌。

引入新內核,拓展了STM32的應用空間。Sylvain RAYNAUD就總結道:「對於之前使用微處理器+MCU應用的客戶,STM32MP1一顆單芯片就能夠實現這個功能;而客戶以前使用的是MPU,那麼能夠用STM32MP1作MCU應用。」

攜手Linux,背靠成熟生態
引入Cortex-A7內核,也就爲開發者引入了Linux系統。爲了加快項目開發速度,ST發佈了一款主流開源Linux發行版OpenSTLinux Distribution。 OpenSTLinux已經過了 Linux Foundation、Yoctoproject 、Linaro等Linux社區的審批。該發行版包含在應用處理器內核上運行軟件所需的所有基本組件。

MCU引入異構內核·,攜手Linux變身MPUMCU引入異構內核·,攜手Linux變身MPU

「在支持整個Linux開發源的時候,咱們全面兼容開源軟件的標準,包括Linux的Foundation和Yocto Project。」Sylvain RAYNAUD說,「由於Linux開源代碼很是多,客戶也很差選擇。爲此,ST在Yocto創建一個Project,讓客戶能夠穩定簡易使用這個開發包。」

同時,STM32MP1還預裝了安全操做系統OP-TEE。「若是客戶本身去尋找安全應用還須要付費,ST已經幫客戶解決了這個問題,讓其使用免費的加密OS。」 Sylvain RAYNAUD解釋了緣由。

在Cortex-A7端,有OpenSTLinux可使用,在Cortex-M4端,則可使用之前的STM32Cube工具。據Sylvain RAYNAUD介紹,STM32Cube裏有不少支持客戶的參考代碼、驅動,包括不少作外設訪問用的API,還有各類中間件。全部這些都是有ST品質保證的軟件開發包,配合很是友好的商業條款,讓客戶使用很是便捷。

在硬件開發工具方面,ST提供了三套開發板:全功能板、探索板(只有基本外設)和第三方原形板/生產級板。這三套板子都在STM32的天貓旗艦店有售。

爲了支持用戶開發,ST還在全球範圍內佈置了超級第三方平臺,主要支持GUI,加密和培訓這部分。此外,ST還創建了一個專門的wiki網站,用來支持STM32MP1的客戶作Linux相關開發。

MCU引入異構內核·,攜手Linux變身MPUMCU引入異構內核·,攜手Linux變身MPU

STM32MP1誕生時間雖不長,已經造成了一個完備的產品系列。目前,STM32MP1已有三條產品線:15七、15三、151。其中,151配備了Cortex-A7+Cortex M4;153在此基礎上增長了CAN FD和雙核Cortex A7;157是目前系列中性能最高的,有雙核Arm Cortex-A7+Cortex-M4+3D GPU,另支持DSI和CAN FD。

採用異構架構,是STM32應對大量增長的人機交互需求的舉措。而對於將來的產品規劃,Sylvain RAYNAUD表示:「該系列將來將並行發展兩個方向:高性能、安全、功能和成本功耗優化。那些潛在的應用場景,如工業、消費電子、醫療保健和智能家居,STM32MP1均可以完美支持。」
https://www.linuxprobe.com

相關文章
相關標籤/搜索