本帖最后由 中国龙芯CDX 于 2023-12-27 08:43 编辑
任何一款ARM芯片都由两大部分组成:ARM内核,外设。
ARM内核
ARM内核:包括了寄存器组、指令集、总线、存储器映射规则、中断逻辑和调试组件等。内核是由ARM公司设计并以销售方式授权给个芯片厂商使用的(ARM公司本身不做芯片)。比如为高速度设计的Cortex A8、A9都是ARMv7a 架构;Cortex M3、M4是ARMv7m架构;前者是处理器(就是内核),后者是指令集的架构(也简称架构)。
外设部分包括计时器、A/D转换器、存储器、i2c、UART、SPI、ROM...等等,则完全由各芯片厂商自己设计并与ARM内核衔接配套。不同的芯片厂商就有不同的外设,因此构成了数量和规格庞大的ARM芯片产业。
ARM指令集架构
指令集的设计是处理器结构中最重要的一个部分,用ARM的术语称之为ISA(Instruction Set Architecture)。
指令集可以说是cpu设计的灵魂,是打开CPU这个潘多拉魔盒的咒语,要想使用cpu,我们只能通过这些指令来操作cpu。
对于32位的cpu,这些指令就是一个个32位的01的序列,不同的值就代表了不同的机器指令,cpu的硬件能完美的解析并执行这些指令,比如寻址、运算、异常处理等等。
当我们用手机玩着王者荣耀的时候,要知道我们的每发的一招,其实最终都是被翻译成了一系列机器指令。
从1985年ARMv1架构诞生起,到2011年,ARM架构已经发展到了第八代ARMv8。
Cortex-A32/35/53/57/72/73/77/78采用的都是ARMv8架构,这是ARM公司的首款支持64位指令集的处理器架构。
ARM11之前的处理器和指令集架构
ARM11芯片之前,每一个芯片对应的架构关系如下:
|