如今,ARM是32位MCU架構(gòu)中增長最快的部分,有專門為不同嵌入式處理器準(zhǔn)備的lO種左右的Cortex授權(quán)。一般公XARM陣營的優(yōu)勢是可利用的豐富的生態(tài)環(huán)境。
不過,MIPS科技公司這幾年也在尋求突破。Microchipx MlPS架構(gòu)的積極擁躉者之一,最近,Microchip的Edendur Kristjansson~ARM公司聲稱的32位單片機(jī)(MCU)應(yīng)用的可移植性產(chǎn)生了疑問。
32位單片機(jī)的應(yīng)用可移植性:現(xiàn)實還是神話?
Erlendur首先介紹了事情的原委:2008年11月,ARM公司宣布推出Cortex微控制器軟件接口標(biāo)準(zhǔn)(Microcontroller Software InterfaceStandard,CMSIS)。ARM聲稱,對于新器件的軟件開發(fā)項目或?qū)F(xiàn)有軟件在不同芯片廠商的基于Cortex-M的單片機(jī)之間移植時,這項標(biāo)準(zhǔn)可降低軟件設(shè)計成本。這聽起來很不錯,但事實確實如此嗎?
Erlendur分析道,根據(jù)ARM所言,CMSIS是“適用于Cortex-M處理器系列的與廠商無關(guān)的硬件抽象層。CMSIS為不同芯片廠商和中間件提供商的處理器提供了簡單一致的軟件接口,這簡化了軟件重用,縮短了開發(fā)人員對于新單片機(jī)(MCU)的學(xué)習(xí)過程以及新器件的上市時間。CMSIS的問世使芯片廠商可將資源集中在突出其產(chǎn)品的外設(shè)功能上,無需在對單片機(jī)進(jìn)行編程時保持各自不兼容的標(biāo)準(zhǔn)。”
可移植性的可能性探討
我們已了解各個單片機(jī)制造商都能提供什么,現(xiàn)在可以看一下抽象層能為設(shè)計人員做些什么(如果有的話)。首先,我們來看CMSIS聲稱所能提供的功能,同時應(yīng)記住前文所述的系統(tǒng)架構(gòu)、外設(shè)和固件庫。
CMSIS版本1.3
1.內(nèi)核外設(shè)訪問層:包含用于訪問內(nèi)核寄存器和外設(shè)的名稱定義、地址定義和輔助函數(shù)。它還定義了一個用于RTOs內(nèi)核的器件無關(guān)接口。……