ARM 的几个重要特点

  1. ARM 采用RISC指令集
    ARM: Acorn RISC Machine; //Acorn: 公司的名字
    它支持的指令比较简单,所以功耗小、价格便宜,特别合适移动设备。
    RISC 和CISC的区别:
    举例子,乘加运算,比如: y=a*b + c;
    在CISC里面,有专门的乘加指令,一条指令就可以搞定;
    而在RISC,有可能需要2条指令才能搞定(举个例子而已,RISC也可能有乘加指令):
    1.// T = a*b
    2.// y = T+c
    而CISC为了实现乘加指令,会设计专门的电路,所以比RISC的电路会复杂一些,从而可能会耗电多一些;

  2. ARM 采用统一编址体系结构
    什么是统一编址?这是相对独立编址而言的。
    统一编址和独立编址的details,可以详细参考如下link.
    统一编址:Memory-mapped I/O (MMIO)
    独立编址:port-mapped I/O (PMIO) (which is also called isolated I/O)
    https://en.wikipedia.org/wiki/Memory-mapped_I/O
    统一编址简单的讲,就是内存和I/O使用相同的地址空间
    Memory-mapped I/O uses the same address space to address both memory and I/O devices. The memory and registers of the I/O devices are mapped to (associated with) address values.
    参考如下例子,16bit的地址总线对应内存的地址分配给了RAM/ROM/GPIO/Sound controller/Video controller, 内存和外设共享相同的地址空间。
    这种方式的缺点就是I/O占用了部分地址空间,导致可以分配给内存的空间减少。比如16bit的地址总线,最大可分配的内存空间为2^16=64K, 由于I/O占用了部分空间,可以分配给内存的空间就会小于64K.
    ARM 的几个重要特点_第1张图片
    独立编址:isolated I/O, 简单的讲就是,内存和I/O使用不同的地址空间,这里不再详细描述。

  3. ARM 采用哈佛架构
    提到哈佛架构,这个得对比冯诺依曼架构
    ( von Neumann architecture and a Harvard architecture)
    3.1 哈佛架构
    The Harvard architecture is a computer architecture with physically separate storage and signal pathways for instructions and data.
    就是指令(代码段)和数据(数据段)分开存储。
    https://en.wikipedia.org/wiki/Harvard_architecture
    ARM 的几个重要特点_第2张图片
    3.2 冯诺依曼架构
    Under pure von Neumann architecture the CPU can be either reading an instruction or reading/writing data from/to the memory. Both cannot occur at the same time since the instructions and data use the same bus system. In a computer using the Harvard architecture, the CPU can both read an instruction and perform a data memory access at the same time,[1] even without a cache.
    指令(代码段)和数据(数据段)共享一个总线,指令和数据不能够同时操作。
    https://en.wikipedia.org/wiki/Von_Neumann_architecture

你可能感兴趣的:(arm)