ARM公司是一家知識(shí)產(chǎn)權(quán)(IP)供應(yīng)商,它與一般的半導(dǎo)體公司最大的不同就是它不制造芯片并且不向終端用戶(hù)出售芯片,而是通過(guò)轉(zhuǎn)讓設(shè)計(jì)方案,由合作伙伴生產(chǎn)出各具特色的芯片。ARM公司利用這種雙贏的伙伴關(guān)系迅速成為了全球性RISC微處理器標(biāo)準(zhǔn)的締造者。這種模式也給用戶(hù)帶來(lái)了巨大的好處,因?yàn)橛脩?hù)只需要掌握一種ARM內(nèi)核結(jié)構(gòu)及其開(kāi)發(fā)手段,就能夠使用多家公司相同ARM內(nèi)核的芯片。
ARM處理器在性能,成本與功耗之間的平衡,是ARM處理器的亮點(diǎn)。在智能家居、物聯(lián)網(wǎng)、平板電腦、多媒體數(shù)字、汽車(chē)電子、醫(yī)療電子等領(lǐng)域ARM處理器具有統(tǒng)治地位。
指令集、架構(gòu)與處理器
ARM體系結(jié)構(gòu)是一種硬件規(guī)范,主要用來(lái)約定指令集、芯片內(nèi)部體系結(jié)構(gòu)(如MMU、Cache)等。
指令集是處理器使用的指令編碼方式,ARM指令集的命名方式為ARMv+version,目前是ARMv1~ARMv9,數(shù)字越大表示指令集越先進(jìn)。
下面列舉一些指令集應(yīng)用到具體處理器的例子。
ARMv4和ARMv4T指令集主要在ARM7TDMI、ARM920T和StrongARM這些處理器中使用。
ARMv5指令集主要在ARM926EJ-S、ARM946E-S和XScale這些處理器中使用。
ARMv6指令集主要在ARM1136J-S、ARM1176JZ-S和ARM1156T2-S這些處理器中使用。
ARMv6-M指令集主要在Cortex-M0和Cortex-M1這些處理器中使用。
ARMv7-A指令集主要在Cortex-A5、Cortex-A7、Cortex-A8、Cortex-A9、Cortex-A12和Cortex-A15這些處理器中使用。
ARMv7-R指令集主要在Cortex-R4、Cortex-R5和Cortex-R7這些處理器中使用。
ARMv7-M指令集主要在Cortex-M3和Cortex-M4這些處理器中使用。
架構(gòu)主要是指某一個(gè)處理器所使用的具體指令集。在大部分場(chǎng)合,架構(gòu)等于指令集。比如說(shuō)i.MX 6ULL處理器是基于ARMv7-A架構(gòu)的,也就是說(shuō)i.MX 6ULL處理器使用的是ARMv7-A指令集。
基于ARMv7-A的處理器內(nèi)部結(jié)構(gòu)
ARMv7-A采用的是32位結(jié)構(gòu),因此其核心寄存器也是32位寬。
基于ARMv7-A實(shí)現(xiàn)的處理器內(nèi)部結(jié)構(gòu)描述如下:
處理器核心:有單核和多核之分,對(duì)稱(chēng)多核應(yīng)用比較廣泛,通常每個(gè)核心會(huì)包含L1 I-Cache、L1 D-Cache,可選的浮點(diǎn)單元,可選的NEON,MMU等。
系統(tǒng)總線(xiàn):處理器核心通過(guò)系統(tǒng)總線(xiàn)與外設(shè)控制器進(jìn)行數(shù)據(jù)交互。
時(shí)鐘系統(tǒng);
電源管理系統(tǒng);
復(fù)位系統(tǒng);
調(diào)試系統(tǒng)。
基于ARMv7-A指令集實(shí)現(xiàn)的Cortex-A5處理器的結(jié)構(gòu)示意圖如下所示:
審核編輯:劉清
-
電源管理
+關(guān)注
關(guān)注
115文章
6155瀏覽量
144238 -
ARM處理器
+關(guān)注
關(guān)注
6文章
360瀏覽量
41666 -
ARM芯片
+關(guān)注
關(guān)注
1文章
125瀏覽量
21442 -
中斷控制器
+關(guān)注
關(guān)注
0文章
59瀏覽量
9442 -
Cortex-A5
+關(guān)注
關(guān)注
0文章
19瀏覽量
11057
原文標(biāo)題:ARMv7-A 那些事 - 1.概述
文章出處:【微信號(hào):嵌入式那些事,微信公眾號(hào):嵌入式那些事】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論