非對稱(chēng)雙核MCU基礎知識及核間通信
為弱計算操作提供額外的處理能力:M0的整體性能約是M4的72%,但對于弱計算操作(如:加減乘與邏輯運算,移位,以及簡(jiǎn)單的數據傳送),并沒(méi)有太多劣勢。弱計算操作在程序中往往占一半以上的比例,尤其體現在驅動(dòng)程序及一些通信協(xié)議棧上。合理地分配一部分弱計算操作任務(wù)給M0,可以有效提升整體的處理能力。這樣,完成相同的任務(wù)只需更低的主頻,而降低功耗,或者反過(guò)來(lái),能夠在有限的主頻下完成需求更大的任務(wù)。
例如:在高精密工業(yè)運動(dòng)控制中,對于電機的控制往往需要運算量很大的算法,同時(shí)又要處理如CAN、工業(yè)以太網(wǎng),以及各種現場(chǎng)總線(xiàn)的通信。我們可以讓M4來(lái)運行電機控制算法,而通信協(xié)議棧與驅動(dòng)程序則由M0來(lái)完成。同樣的例子也適用于嵌入式音頻——由M4執行音頻編解碼與音效處理算法,而M0則負責音頻總線(xiàn)、USB等事務(wù)。
本文小結
通過(guò)以上的介紹可以看出,相比傳統的使用多顆MCU的方案,非對稱(chēng)雙核MCU在性能、成本、功耗、生產(chǎn)等諸多環(huán)節都有明顯的優(yōu)勢。核間通信稍顯復雜,但作為基礎設施可由底層系統軟件來(lái)實(shí)現。在具體開(kāi)發(fā)時(shí),應根據實(shí)際問(wèn)題合理分配任務(wù),并且在初始化流程、內核鑒別以及調試上,需注意一些操作細節。
評論