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