1. ARM7、ARM9、ARM11、ARM-Cortex的關(guān)系 ARM7:ARMv4架構(gòu),ARM9:ARMv5架構(gòu),ARM11:ARMv6架構(gòu),ARM-Cortex系列:ARMv7架構(gòu)ARM7沒(méi)有MMU(內(nèi)存管理單元),只能叫做MCU(微控制器),不能運(yùn)行諸如Linux、WinCE等這些現(xiàn)代的多用戶多進(jìn)程操作系統(tǒng),因?yàn)檫\(yùn)行這些系統(tǒng)需要MMU,才能給每個(gè)用戶進(jìn)程分配進(jìn)程自己獨(dú)立的地址空間。ucOS、ucLinux這些精簡(jiǎn)實(shí)時(shí)的RTOS不需要MMU,當(dāng)然可以在ARM7上運(yùn)行。ARM9、ARM11,是嵌入式CPU(處理器),帶有MMU,可以運(yùn)行諸如Linux等多用戶多進(jìn)程的操作系統(tǒng),應(yīng)用場(chǎng)合也不同于ARM7。到了ARMv7架構(gòu)的時(shí)候開始以Cortex來(lái)命名,并分成Cortex-A、Cortex-R、Cortex-M三個(gè)系列。三大系列分工明確:“A”系列面向尖端的基于虛擬內(nèi)存的操作系統(tǒng)和用戶應(yīng)用;“R”系列針對(duì)實(shí)時(shí)系統(tǒng);“M”系列對(duì)微控制器。簡(jiǎn)單的說(shuō)Cortex-A系列是用于移動(dòng)領(lǐng)域的CPU,Cortex-R和Cortex-M系列是用于實(shí)時(shí)控制領(lǐng)域的MCU。所以看上去ARM7跟Cortex-M很像,因?yàn)樗麄兌际荕CU,但確是不同代不同架構(gòu)的MCU(Cortex-M比ARM7高了三代?。?,所以性能也有很大的差距。此外,Cortex-M系列還細(xì)分為M0、M3、M4和超低功耗的M0+,用戶依據(jù)成本、性能、功耗等因素來(lái)選擇芯片。想必樓主現(xiàn)在肯定知道了ARM7、Cortex-M的區(qū)別,不過(guò)還是花了點(diǎn)時(shí)間整理在此,可以幫助后來(lái)的初學(xué)者搞明白這些基本的概念性問(wèn)題
2. ARM7,ARM9,cortex-m3,cortex-m4,cortex-a8的區(qū)別
arm系列從arm11開始,以后的就命名為cortex,并且性能上大幅度提升。
從cortex開始,分為三個(gè)系列,a系列,r系列,m系列。
m系列與arm7相似,不能跑操作系統(tǒng)(只能跑ucos2),偏向于控制方面,說(shuō)白了就是一個(gè)高級(jí)的單片機(jī)。
a系列主要應(yīng)用在人機(jī)互動(dòng)要求較高的場(chǎng)合,比如pda,手機(jī),平板電腦等。a系列類似于cpu,與arm9和arm11相對(duì)應(yīng),都是可以跑草錯(cuò)系統(tǒng)的。linux等。
r系列,是實(shí)時(shí)控制。主要應(yīng)用在對(duì)實(shí)時(shí)性要求高的場(chǎng)合。
arm7和m3,m4是同一類型。這三個(gè)里面,arm7是最早的arm產(chǎn)品。m3是cortexm系列的過(guò)渡品,其低端市場(chǎng)被cortexm0的高端替代,其高端市場(chǎng)又被cortexm4的低端取代?,F(xiàn)在m系列,是m4內(nèi)核的。典型的芯片是st公司和飛思卡爾公司的。
arm9和cortexa8是一個(gè)類型的,都是跑操作系統(tǒng)的,現(xiàn)在的高端手機(jī),三星,htc等智能手機(jī),就是用的cortexa8,cortexa9內(nèi)核的芯片作為cpu。
(1)ARM7,ARM9屬于v4T或v5E架構(gòu)
(2)ARM11屬于v6架構(gòu)
(3)Contex屬于v7架構(gòu)
ARM7,ARM9的區(qū)別在于是否有MMU(存儲(chǔ)器管理單元)或MPU(存儲(chǔ)器保護(hù)單元)
架構(gòu)上v5E相比v4T則是在于v5E新加入的增強(qiáng)型DSP(數(shù)字信號(hào)處理)指令,v4T則是Thumb指令集的加入,v6架構(gòu)則是開始支持SIMD以及Thumb2的問(wèn)世.
評(píng)論