ARM產(chǎn)品越來越豐富,命名也越來越多。很多朋友提問: ARM內(nèi)核和架構(gòu)都是什么意思?內(nèi)核和架構(gòu)的關(guān)系是什么?比如ARMv7架構(gòu),這個架構(gòu)指的是什么?
1. ARM內(nèi)核:從ARM7、ARM9到Cortex-A7、A8、A9、A12、A15再到Cortex-A53、A57等,總之不同版本 ARM 有不同的想法。比如為高速度設(shè)計的Cortex A8、A9都是ARMv7a 架構(gòu);Cortex M3、M4是ARMv7m架構(gòu);前者是內(nèi)核,后者是指令集的架構(gòu)。
2. ARM的架構(gòu)都是基于RISC指令集而架構(gòu)的,而其內(nèi)核只是實現(xiàn)這一指令集的硬件架構(gòu)的基礎(chǔ),Thumb-2指令集架構(gòu)(ISA)的子集,包含所有基本的16位 和32位Thumb-2指令、 哈佛處理器架構(gòu),在加載/存儲數(shù)據(jù)的同時能夠執(zhí)行指令取指,帶分支預(yù)測的三級流水線等。
3. 好比你蓋房子,剛開始因為水平低流行蓋平房,這就是一種架構(gòu)(V5T),然后這種平房架構(gòu)你可以設(shè)計出一款獨立衛(wèi)生間的款式, 這叫ARM7內(nèi)核。 然后其他人(芯片設(shè)計公司)想蓋房子的就買你這個圖紙去蓋,接著過一段時間,有人覺得光獨立衛(wèi)生間還不夠啊, 我還想有個小院子! 好吧,那ARM就滿足你們的要求,出個帶小院子的款式(ARM9)。
又過了很久, 這種平房的架構(gòu)就隨著大伙的需求一直改啊改啊,后來經(jīng)過ARM研究發(fā)現(xiàn): 現(xiàn)在大伙蓋房子的能力duang duang直升啊(包括工藝、設(shè)計能力、時鐘主頻),只蓋這種平房施展不開啊! 好吧,ARM為了不讓這幫設(shè)計的人閑著,就推出一種二三層樓房的樣式, 這因為跟平房設(shè)計結(jié)構(gòu)完全不一樣嘛, 那就叫一種新的架構(gòu)(ARMv6),同樣這種樓房樣式ARM也為大家準(zhǔn)備了帶游泳池的和帶車庫的款式(ARM11),好吧繼續(xù)改啊改啊, 改到后來大家已經(jīng)開始有能力蓋十層以上的大樓了。 ARM一如既往地出了新的款式(ARMv7架構(gòu)), 這時ARM覺得以前名字都太土鱉了, 什么ARM5、 ARM6、 ARM7—又難聽又難記, 我要取個看起來牛逼的名字, 咱至少也算個能設(shè)計摩天大樓的主兒了, 于是后面的內(nèi)核都叫Cortex。
改名只是一部分, 隨著這個架構(gòu)出來后, ARM發(fā)現(xiàn)以前用咱們圖紙蓋出的樓也就做個民宅, 民宅圖個啥? 實惠嘛(功耗低)。 現(xiàn)在不一樣了,現(xiàn)在咱的圖紙蓋得樓不僅可以做民宅,還可以做軍事基地、 還可以做高檔寫字樓, 以前這些高級功能的樓房可是只有小英(英特爾)才能設(shè)計出來的啊!為了滿足這些不同的需求, ARM把這個架構(gòu)設(shè)計出來的款式分成3個系列(M系列、R系列、A系列)。
M系列是為民宅設(shè)計的, 因為老百姓圖實惠嘛, 這種設(shè)計就設(shè)計個十層左右(功耗低); R系列是為軍事基地設(shè)計的, 這種樓設(shè)計的也不高— 十層左右吧, 但是關(guān)鍵是要對特殊情況要有快速反應(yīng)的能力(中斷快); 最后A系列是給商業(yè)大佬用的, 那當(dāng)然是要高端大氣上檔次, 就是要性能高,各種LED燈燈光秀啊都給我上。