STM32學(xué)習(xí)008_ARM產(chǎn)品淺析
ARM是英國(guó)Acorn有限公司設(shè)計(jì)的基于RSIC的一款微處理器,全稱(chēng)為Acorn RISC Machine,ARM處理器本身是32位設(shè)計(jì),但也配備16位指令集,一般來(lái)講比等價(jià)32位代碼節(jié)省達(dá)35%,卻能保留32位系統(tǒng)的所有優(yōu)勢(shì)。
ARM處理器的三大特點(diǎn)是:耗電少功能強(qiáng)、16位/32位雙指令集和合作伙伴眾多。
1、體積小、低功耗、低成本、高性能;
2、支持Thumb(16位)/ARM(32位)雙指令集,能很好的兼容8位/16位器件;
3、大量使用寄存器,指令執(zhí)行速度更快;
4、大多數(shù)數(shù)據(jù)操作都在寄存器中完成;
5、尋址方式靈活簡(jiǎn)單,執(zhí)行效率高;
6、指令長(zhǎng)度固定。
ARM處理器共有37個(gè)寄存器,被分為若干個(gè)組(BANK),這些寄存器包括:
1 31個(gè)通用寄存器,包括程序計(jì)數(shù)器(PC指針),均為32位的寄存器。
2 6個(gè)狀態(tài)寄存器,用以標(biāo)識(shí)CPU的工作狀態(tài)及程序的運(yùn)行狀態(tài),均為32位,只使用了其中的一部分。
指令結(jié)構(gòu)
ARM微處理器的在較新的體系結(jié)構(gòu)中支持兩種指令集:ARM指令集和Thumb指令集。其中,ARM指令為32位的長(zhǎng)度,Thumb指令為16位長(zhǎng)度。Thumb指令集為ARM指令集的功能子集,但與等價(jià)的ARM代碼相比較,可節(jié)省30%~40%以上的存儲(chǔ)空間,同時(shí)具備32位代碼的所有優(yōu)點(diǎn)。
體系結(jié)構(gòu)擴(kuò)充
當(dāng)前ARM體系結(jié)構(gòu)的擴(kuò)充包括:
·Thumb 16位指令集,為了改善代碼密度;
·DSP DSP應(yīng)用的算術(shù)運(yùn)算指令集;
·Jazeller 允許直接執(zhí)行Java字節(jié)碼。
ARM處理器系列提供的解決方案有:
·無(wú)線(xiàn)、消費(fèi)類(lèi)電子和圖像應(yīng)用的開(kāi)放平臺(tái);
·存儲(chǔ)、自動(dòng)化、工業(yè)和網(wǎng)絡(luò)應(yīng)用的嵌入式實(shí)時(shí)系統(tǒng);
·智能卡和SIM卡的安全應(yīng)用。
產(chǎn)品問(wèn)世以來(lái),受到了電子界的廣泛好評(píng),但是對(duì)于arm芯片的產(chǎn)品系列的種類(lèi)繁多,不免會(huì)混淆,簡(jiǎn)單概括下:
ARM分為ARM7,ARM9,ARM10(應(yīng)用的較少),ARM11,Cortex_M3,Cortex_M4,生產(chǎn)廠(chǎng)家主要以ST公司,PHILP,,,為主,市場(chǎng)應(yīng)用ST居多,在ST公司生產(chǎn)的Cortex系列中,M0 ,M3,M4性能依次上升,性?xún)r(jià)比依次升高,它們的關(guān)系如下圖所示:
最下層的是基于M0核,(ST的F0系列定位于此),中間的是M3核(ST的F1,F(xiàn)3定位于此),上層的是M4核
(ST的F2,F(xiàn)4定位于此);