1.1眼看他起高楼,眼看他宴宾客,眼看他楼塌了——CPU 众生相
1.“处理器核”是指处理器内部最核心的部分,是真正的处理器内核;而“处理器”往往是一个完整的SoC,包含了处理器核和其他的设备或者存储器。
1.1.1 ISA——CPU 的灵魂
2.指令集,顾名思义是一组指令的集合,而指令是指处理器进行操作的最小单元(譬如加
减乘除操作或者读
/
写存储器数据)。
3.处理器的具体硬件实现方案称为微架构(Microarchitecture)。虽然不同的微架构实现可能造成性能与成本的差异,但是,软件无须做任何修改便可以完全运行在任何一款遵循同一指令集架构实现的处理器上。
4.该抽象层构成处理器底层硬件与运行于其上的软件之间的桥梁与接口,如图1-1
5.指令集架构不仅仅是一组指令的集合,它还要定义任何软件程序员需要了解的硬件信息,包括支持的数据类型、存储器(Memory)、寄存器状态、寻址模式和存储器模型等。
1.1.2 CISC 与 RISC
6.指令集架构主要分为复杂指令集(Complex Instruction Set Computer,CISC)和精简指令集(Reduced Instruction Set Computer,RISC)。
• CISC 不仅包含了处理器常用的指令,还包含了许多不常用的特殊指令。其指令数目比较多,所以称为复杂指令集。• RISC 只包含处理器常用的指令,而对于不常用的操作,则通过执行多条常用指令的方式来达到同样的效果。由于其指令数目比较精简,所以称为精简指令集。
1.1.3 32 位与 64 位架构
7.通俗来讲, 处理器架构的位数是指通用寄存器的宽度,其决定了寻址范围的大小、数据运算能力的强弱。
• 通用寄存器的宽度,即指令集架构的位数越多越好,因为这样可以带来更大的寻址范围和更强的运算能力。• 指令编码的长度越短越好,因为这样可以更加节省代码的存储空间。