计算机系统知识总结——指令系统

一个处理器支持的指令和指令的字节级编码称为其指令集体系结构(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有共享存储器分布存储器两种形式

  • 多处理机

多台处理机组成的系统,每台处理机有属于自己的控制部件,可执行独立的程序,共享一个主存储器和所有外部设备。

相关推荐
AI科技星42 分钟前
为什么变化的电磁场才产生引力场?—— 统一场论揭示的时空动力学本质
数据结构·人工智能·经验分享·算法·计算机视觉
asdzx672 小时前
如何使用 C# 将 RTF 转换为 PDF
经验分享
低调电报3 小时前
在WPS可以显示图片,word中不能显示的原因及解决
经验分享·word·wps
孤廖4 小时前
终极薅羊毛指南:CLI工具免费调用MiniMax-M2/GLM-4.6/Kimi-K2-Thinking全流程
人工智能·经验分享·chatgpt·ai作画·云计算·无人机·文心一言
Croa-vo5 小时前
TikTok 数据工程师三轮 VO 超详细面经:技术深挖 + 建模推导 + 压力测试全记录
javascript·数据结构·经验分享·算法·面试
草莓熊Lotso7 小时前
《算法闯关指南:动态规划算法--斐波拉契数列模型》--01.第N个泰波拉契数,02.三步问题
开发语言·c++·经验分享·笔记·其他·算法·动态规划
老朱佩琪!9 小时前
投递简历经验分享
经验分享
智者知已应修善业17 小时前
【51单片机普通延时奇偶灯切换】2023-4-4
c语言·经验分享·笔记·嵌入式硬件·51单片机
海边夕阳200621 小时前
【每天一个AI小知识】:什么是循环神经网络?
人工智能·经验分享·rnn·深度学习·神经网络·机器学习