CPU体系架构 #
2.1 CPU体系架构有哪些? #
我们常见的
CPU架构有哪些呢?
如果我们熟悉Linux,那么这个问题肯定不难回答!
我们查看内核目录下的arch子目录,就可以看到Linux所支持的处理器架构,基本属于我们常见的类型了。
# ls ./arch
alpha arc arm arm64 c6x h8300 hexagon ia64 Kconfig m68k microblaze mips nds32 nios2 openrisc parisc powerpc riscv s390 sh sparc um unicore32 x86 xtensa
准确来说,CPU处理器架构主要有以下几种类型:
- CISC(复杂指令集计算机):
CISC架构的CPU设计理念是尽可能减少程序指令的数量,以降低CPU和内存之间的通信频率。这种架构的一个显著特点是拥有大量的寄存器和复杂的指令集。Intel的x86架构就是一个典型的CISC架构 - RISC(精简指令集计算机):
RISC架构的CPU设计理念是通过简化指令集来提高CPU的运行效率。这种架构的一个显著特点是拥有较少的寄存器和简单的指令集。ARM架构就是一个典型的RISC架构 - MISC(中间指令集计算机):
MISC架构的CPU设计理念是在CISC和RISC之间寻找一个平衡点,既不过于复杂也不过于简单。这种架构的一个显著特点是指令集的复杂度介于CISC和RISC之间 - VLIW(超长指令字计算机):
VLIW架构的CPU设计理念是通过增大指令长度来提高并行执行的可能性。这种架构的一个显著特点是指令长度远大于其他架构的CPU - EPIC(显式并行指令计算):
EPIC架构的CPU设计理念是通过显式标记并行指令来提高CPU的运行效率。这种架构的一个显著特点是指令集中包含了并行执行的信息。Intel的Itanium架构就是一个典型的EPIC架构 - 超标量架构:超标量架构的
CPU设计理念是通过在一个时钟周期内执行多条指令来提高CPU的运行效率。这种架构的一个显著特点是CPU内部包含了多个执行单元,可以同时执行多条指令 - 超线程技术:超线程技术是
Intel公司为其部分CPU所采用的一种使单一处理器像多个逻辑处理器那样并行处理多个线程的技术 - 多核心架构:多核心架构的
CPU设计理念是在一个CPU芯片内集成多个处理器核心,以提高并行处理能力。这种架构的一个显著特点是CPU内部包含了多个独立的处理器核心,每个核心可以独立执行指令
这里就有一个疑问,我们什么时候说RISC架构,什么时候说ARM架构,这两个有什么区别呢?
以
ARM和RISC为例:
ARM架构和RISC架构的主要区别在于ARM实际上是RISC的一个具体实现,而RISC则是一个更广泛的处理器设计理念。换句话说,ARM是RISC的一个子集。
同理,X86架构是CISC的一个子集。
2.2 常见的问题 #
Q1:你所熟知的处理器架构有哪些?
我们常见的处理器架构有ARM、X86、mips架构等;
Q2:STM32属于什么架构的?
STM32是ST公司开发的32位微控制器集成电路,基于 ARM 的 Cortex-M 系列内核。因此,STM32 属于 ARM 架构的微控制器。
Q3:RISC和CISC的区别是什么?
RISC:精简指令集架构,通过简化指令集,使得大多数的操作都能够在一个指令周期内完成,提高CPU运行效率CISC:复杂指令集架构,指令集丰富,能够完成一些较为复杂的任务,并且可以降低CPU和内存之间的通信频率,提高性能。
