一个处理器支持的指令和指令的字节级编码称为其指令集体系结构(Instruction SetArchitecture,ISA)。不同的处理器族有不同的指令集体系结构。

按暂存机制分类,根据在 CPU 内部存储操作数的区别,可以把指令集体系分为3类:堆栈(Stack)、累加器(Accummulator)和寄存器组(asetofRegisters)。
CISC(Complex Instruction Set Computer,复杂指令集计算机)
基本思想是进一步增强原有指令 的功能,用更为复杂的新指令 取代原先由软件子程序完成的功能,实现软件功能的硬化,导致机器的指令系统越来越庞大、复杂。事实上,目前使用的绝大多数计算机都属于 CISC类型。

RISC(Reduced Instruction Set Computer,精简指令集计算机)
基本思想是通过减少指令总数 和简化指令功能 降低硬件设计的复杂度,使指令能单周期 执行,并通过优化编译 提高指令的执行速度,采用硬布线控制逻辑优化编译程序。RISC 在 20 世纪 70年代末开始兴起,导致机器的指令系统进一步精炼而简单。

CISC和RISC的对比
| 对比维度 | RISC(Reduced Instruction Set Computer) | CISC(Complex Instruction Set Computer) |
|---|---|---|
| 设计理念 | 精简指令集,强调简单、高效的指令 | 复杂指令集,强调单条指令完成更多功能 |
| 指令数量 | 指令数量少(通常几十到一百余条) | 指令数量多(可达数百甚至上千条) |
| 指令长度 | 固定长度(便于流水线处理) | 可变长度(更灵活但解码复杂) |
| 寻址方式 | 较少(通常仅几种,如寄存器直接寻址) | 丰富(支持多种寻址方式,如间接、基址、变址等) |
| 执行周期 | 大多数指令在一个时钟周期内完成 | 指令执行周期不固定,可能需多个周期 |
| 硬件复杂度 | 控制逻辑简单,大量使用硬布线 | 控制逻辑复杂,常使用微程序控制 |
| 编译器负担 | 编译器需优化代码以提高效率(软件更复杂) | 硬件承担更多工作,编译器相对简单 |
| 寄存器数量 | 通常较多(利于减少访存次数) | 相对较少 |
| 内存访问 | 仅通过专用的 Load/Store 指令访问内存 | 多数指令可直接操作内存 |
| 功耗与能效 | 通常更低功耗,适合移动/嵌入式设备 | 功耗较高,常见于桌面/服务器 |
| 典型架构 | ARM、RISC-V、MIPS、PowerPC | x86(Intel/AMD)、x86-64 |
| 代表应用场景 | 手机、嵌入式系统、IoT、高性能计算(如Apple M系列芯片) | PC、笔记本电脑、传统服务器 |
| 流水线效率 | 高(因指令规整,易于深度流水线和超标量执行) | 较低(因指令复杂,流水线易受阻塞) |
指令流水的处理
指令控制的方式
- 顺序方式
各指令(以及指令内部的微操作)之间顺序执行,执行完一条后才会执行下一条。控制简单、速度慢、利用率低。
- 重叠方式
重叠方式是指在解释第K条指令的操作完成之前就可以开始解释第 K+1 条指令,通常采用的是一次重叠,即在任何时候,指令分析部件和指令执行部件都只有相邻两条指令在重叠解释。速度有所提高、控制不算复杂,但是会出现冲突、转移、和相关等问题。

- 流水方式
流水(Pipelinimg)技术是把并行性或并发性嵌入到计算机系统里的一种形式,它把重复的顺序处理过程分解为若干子过程,每个子过程能在专用的独立模块上有效地并发工作。

流水线操作时间的计算:
(T_执行+T_去操作数+T_指令译码+T_取指令)+ MAX(T_执行, T_去操作数, T_指令译码, T_取指令)*(K_指令数-1)
其中,MAX(T_执行, T_去操作数, T_指令译码, T_取指令)成为操作周期
加速比:T_不使用流水线/T_使用流水线
流水线种类
流水线种类可以按以下几种标准进行划分:
- 流水线级别
部件 级、处理机 级、系统级的流水线
- 流水线功能
单功能 流水线、多功能流水线
- 流水线连接
静态 流水线、动态流水线。
- 流水线是否有反馈回路
线性 流水线、非线性流水线。
- 流水线流动顺序
同步 流水线、异步流水线,
- 流水线数据表示
标量 流水线、向量流水线。
RISC采用的流水技术有三种:超流水线、超标量、长指令字
吞吐率
吞吐率是指单位时间 内流水线处理机流出的结果数 。对指令而言,就是单位时间内执行的指令数 。如果流水线的子过程所用时间不一样,则吞吐率p应为最长子过程的倒数。

阵列处理机、并行处理机和多处理机
- 阵列处理机
将重复设置的多个处理单元(PU) 按一定的方式连成阵列,在**单个控制部件(CU)**的控制下,对分配给自己的数据进行处理,并行地完成一条指令所规定的操作。
- 并行处理机
SIMD、MIMD 是典型的并行计算机,SIMD有共享存储器 和分布存储器两种形式
- 多处理机
由多台处理机组成的系统,每台处理机有属于自己的控制部件,可执行独立的程序,共享一个主存储器和所有外部设备。