STM32G4是F3系列的升級版本,適用于電機(jī)控制和數(shù)字電源應(yīng)用。
STM32G4微控制器系列是史上第一款包含五個模數(shù)轉(zhuǎn)換器、七個數(shù)模轉(zhuǎn)換器、六個運(yùn)算放大器和七個比較器的產(chǎn)品,同時還集成了USB-C供電控制器,184 皮秒的高分辨率定時器,具有靈活數(shù)據(jù)速率的CAN接口以及可加速某些三角函數(shù)的數(shù)學(xué)單元。
在計(jì)算吞吐量方面,STM32G4與STM32F4的算力接近。STM32G4作為“混合信號”微控制器領(lǐng)域的新秀,可為數(shù)字和模擬應(yīng)用提供新穎和優(yōu)化的功能。其Cortex-M4 內(nèi)核主頻達(dá)到170 MHz,DMIPS 為213 ,CoreMark跑分高達(dá)550分;產(chǎn)品架構(gòu)上有很多優(yōu)化改進(jìn),以提升設(shè)計(jì)開發(fā)過程中的便捷性和開發(fā)能力。
STM32G4的新架構(gòu)借鑒了STM32F3的通用DNA,但同時也增加了創(chuàng)新和優(yōu)化功能,以滿足各種市場的特殊需求。例如,數(shù)學(xué)加速器的加入,在電機(jī)控制 FOC 算法的應(yīng)用場景下,性能出色;而 CAN FD 極大地支持工業(yè)場景下數(shù)字電源的應(yīng)用。通過在裸片上集成更多的模擬和數(shù)字組件,STM32G4可以為服務(wù)器中心創(chuàng)建更密集、功能更強(qiáng)大的電源,對于注重性價比的消費(fèi)類產(chǎn)品,亦可提供適合的數(shù)字電源。STM32G4 還為開發(fā)者指明了一條面向未來的設(shè)計(jì)路徑,例如,車用碳化硅(SiC)器件或氮化鎵(GaN)晶體管的興起,要求更精確的計(jì)時器以適應(yīng)其更高的開關(guān)頻率,STM32G4 憑借其12通道高分辨率計(jì)時器,能夠驅(qū)動這類組件的設(shè)計(jì),從而開發(fā)設(shè)計(jì)更前沿更高端的未來電子產(chǎn)品。
STM32G4是第一款具有兩個數(shù)學(xué)加速器的STM32,一個用于三角計(jì)算(坐標(biāo)旋轉(zhuǎn)數(shù)字計(jì)算器或CORDIC),另一個用于數(shù)字濾波功能(濾波數(shù)學(xué)加速器或FMAC)。CORDIC 加速器為三角函數(shù)提供硬件加速,這些三角函數(shù)通常出現(xiàn)在電機(jī)控制、計(jì)量、信號處理及其他應(yīng)用中。另一方面,F(xiàn)MAC支持在信號處理中實(shí)現(xiàn)兩個主要的初級濾波器:有限脈沖響應(yīng)(FIR)和無限脈沖響應(yīng)(IIR)數(shù)字濾波器。
▲ STM32G474E-EVAL板
在無刷直流電動機(jī)(BLDC / PMSM)中,相電流在兩個坐標(biāo)系(α軸和β軸)中創(chuàng)建定子的參考系。FOC矢量計(jì)算可精確控制電動機(jī)的旋轉(zhuǎn),這是硬件中三角函數(shù)能力顯著提高的原因。同樣,工程師可以將時域饋入IIR和FIR濾波器,以進(jìn)一步放大、降低或消除頻率,從而獲得一個新的時域信號,該信號的噪聲更小或者沒有,可混疊或漂移,最終應(yīng)用程序可以在更高質(zhì)量的數(shù)據(jù)下工作。這兩個加速器帶來的性能提升非常顯著。CORDIC加速器的正弦運(yùn)算速度比ARM軟件庫快5倍,它的存在還大幅減輕了Cortex-M4內(nèi)核的負(fù)擔(dān),在數(shù)學(xué)加速器計(jì)算新角度時,系統(tǒng)可以執(zhí)行其他任務(wù)。同理,當(dāng)開發(fā)者采用電機(jī)控制庫來進(jìn)行FOC算法控制BLDC電機(jī)時,相比以往不帶新型數(shù)學(xué)加速器的其他STM32產(chǎn)品,G4的性能提高了約12%。這意味著開發(fā)人員在降低工作頻率和功耗時,對性能沒有負(fù)面影響。
一個高分辨率計(jì)時器和
三個高級電機(jī)控制計(jì)時器
STM32G4系列具有很高的標(biāo)志性意義,它是第一個包含分辨率低于200皮秒計(jì)時器的ST MCU體系結(jié)構(gòu),最顯著的好處是G4能夠驅(qū)動LLC諧振拓?fù)渲械母呔入娫?。由于有七個時基,開發(fā)人員可以結(jié)合使用,從而獲得非常精細(xì)的調(diào)制,該計(jì)時器還提供了高度靈活的脈寬調(diào)制(PWM)。高分辨率計(jì)時器因具備事件處理程序,可幫助工程師更輕松地配置和調(diào)用計(jì)時器或使用它生成中斷。
▲ NUCLEO-G474RE板
STM32G4系列集成了三個16位高級電機(jī)控制計(jì)時器,可支持PWM模式以更好地控制電源開關(guān),并具有功率級保護(hù)系統(tǒng),在發(fā)生故障時可以禁用PWM輸出。計(jì)時器還具有用于正交編碼器和霍爾傳感器的不同模式,以自動調(diào)整計(jì)數(shù)方向,從而允許計(jì)時器在使用轉(zhuǎn)速計(jì)時檢測轉(zhuǎn)子的位置或其速度。因此,開發(fā)人員可以使用計(jì)時器讀取角度或方向,以簡化代碼并提高應(yīng)用程序的精度。
STM32G47x MCU還具有雙存儲區(qū)閃存形式的關(guān)鍵功能。很簡單,MCU將閃存分為兩個具有可讀寫(RWW)功能的物理存儲體。結(jié)果,可以下載,安裝然后運(yùn)行新固件而不會受到任何干擾。系統(tǒng)在一個存儲區(qū)上運(yùn)行,而另一存儲區(qū)則接收新固件。然后,系統(tǒng)可以交換存儲區(qū)并無縫切換到第二個區(qū)以運(yùn)行新代碼。開發(fā)人員甚至可以通過使用STM32G4上可用的新安全功能(如安全存儲區(qū))來保護(hù)下載操作:安全存儲區(qū)可以存儲密鑰或執(zhí)行軟件例程的部分代碼,在重置后僅運(yùn)行一次,之后對用戶代碼不可見。
STM32G4還借鑒了其他STM32產(chǎn)品的諸多創(chuàng)新。與STM32F3一樣,開發(fā)人員可以將一些可用的SRAM用作核心耦合存儲器(CCM),ST將這項(xiàng)技術(shù)稱為“例程增強(qiáng)器”,程序員可以將一段代碼放入內(nèi)核的SRAM中,以加快關(guān)鍵例程的執(zhí)行速度并保持其確定性。STM32G4可使用其指令總線來調(diào)用代碼,同時用數(shù)據(jù)總線來檢索信息,代碼可以在可用的最高時鐘頻率下運(yùn)行,并等待狀態(tài)為零,從而達(dá)到優(yōu)化性能的效果。開發(fā)人員將CCM-SRAM用于實(shí)時或計(jì)算密集型應(yīng)用程序,可以避免例程和數(shù)據(jù)必須共享同一總線時發(fā)生的瓶頸。
開發(fā)者從CCM-SRAM中受益是非常直接的,只需要為CCM-SRAM定義內(nèi)存地址區(qū)域,并使用特殊的屬性標(biāo)記代碼段即可告訴編譯器將其移至耦合的核心內(nèi)存。接下來,程序員在啟動時通過修改啟動文件將代碼加載到CCM-SRAM中,如有必要,將初始化變量復(fù)制到主函數(shù)中,然后調(diào)用有問題的代碼。因此,僅需幾行代碼就可以顯著優(yōu)化應(yīng)用程序。
STM32G4除了其眾多的模擬外設(shè)之外,還集成了優(yōu)化功能來進(jìn)行信號處理。例如,模數(shù)轉(zhuǎn)換器在硬件中包括增益和失調(diào)補(bǔ)償,可以減輕CPU負(fù)載并獲得更好的性能。同樣,系統(tǒng)還可以自動并最多連續(xù)八次處理硬件中的異常事件。當(dāng)系統(tǒng)對超出其看門狗窗口的信號進(jìn)行采樣時,通常會設(shè)計(jì)一個例程對信號進(jìn)行重新采樣,以評估該信號只是故障還是系統(tǒng)性問題。由于STM32G4的高度硬件集成,開發(fā)人員可以更有效地管理異常事件處理。此外,數(shù)據(jù)表中還列出了的大量外設(shè),同時也隱藏了眾多硬件優(yōu)化功能。