"); //-->
本文分享自天翼云开发者社区《CPU的指令周期》,作者:冯****怡
指令周期(Instruction Cycle)
CPU中会有 存器、指令寄存器、控制器等多类单元。指令集,就是CPU中用来计算和控制计算机系统的一套指令的集合,而每一种新型的CPU在设计时就规定了一系列与其他硬件电路相配合的指令系统。
如果我们仔细看一看,可以发现,计算机每执行一条指令的过程,可以分解成这样几个步骤。
1.Fetch(取得指令),也就是从 PC 寄存器里找到对应的指令地址,根据指令地址从内存里把具体的指令,加载到指令寄存器中,然后把 PC 寄存器自增,好在未来执行下一条指令。
2.Decode(指令译码),也就是根据指令寄存器里面的指令,解析成要进行什么样的操作,是 R、I、J 中的哪一种指令,具体要操作哪些寄存器、数据或者内存地址。
3.Execute(执行指令),也就是实际运行对应的 R、I、J 这些特定的指令,进行算术逻辑操作、数据传输或者直接的地址跳转。
4.重复进行 1~3 的步骤。这样的步骤,其实就是一个永不停歇的“Fetch - Decode - Execute”的循环,我们把这个循环称之为指令周期(Instruction Cycle)。

指令周期(Instruction Cycle)在这个循环过程中,不同部分其实是由计算机中的不同组件完成的。
在取指令的阶段,我们的指令是放在存储器里的,实际上,通过 PC 寄存器和指令寄存器取出指令的过程,是由控制器(Control Unit)操作的。指令的解码过程,也是由控制器进行的。一旦到了执行指令阶段,无论是进行算术操作、逻辑操作的 R 型指令,还是进行数据传输、条件分支的 I 型指令,都是由算术逻辑单元(ALU)操作的,也就是由运算器处理的。

除了 Instruction Cycle 这个指令周期,在 CPU 里面我们还会提到另外两个常见的 Cycle。一个叫 Machine Cycle,机器周期或者 CPU 周期。CPU 内部的操作速度很快,但是访问内存的速度却要慢很多。每一条指令都需要从内存里面加载而来,所以我们一般把从内存里面读取一条指令的最短时间,称为 CPU 周期。
还有一个是我们之前提过的 Clock Cycle,也就是时钟周期以及我们机器的主频。一个 CPU 周期,通常会由几个时钟周期累积起来。一个 CPU 周期的时间,就是这几个 Clock Cycle 的总和。
对于一个指令周期来说,我们取出一条指令,然后执行它,至少需要两个 CPU 周期。取出指令至少需要一个 CPU 周期,执行至少也需要一个 CPU 周期,复杂的指令则需要更多的 CPU 周期。

所以,我们说一个指令周期,包含多个 CPU 周期,而一个 CPU 周期包含多个时钟周期。
专栏文章内容及配图由作者撰写发布,仅供工程师学习之用,如有侵权或者其他违规问题,请联系本站处理。 联系我们
相关推荐
企业用户的GPU虚拟化必要性,丝毫不亚于曾经的CPU虚拟化
RTOS和CPU指令设计—uc/os—||| 的启示
封装技术简介
骏龙科技文章:使用CPU+FLASH+MAX II CPLD远程配置Cyclone FPGA实现方案及代码
硬件工程师手册
感悟设计—让你的软件飞起来
Q1服务器CPU均价大涨27% 英特尔被曝出售原本将报废的芯片
SiFive获新一轮融资,全力进军数据中心CPU IP市场
MCS-51CPU和存储器
中国自研 “澜闪” 超算 纯CPU架构算力达1.54艾级
教你如何降低CPU散热风扇噪声
Arm遭遇监管危机:FTC针对其技术授权启动反垄断调查
多功能CPU监控器X5045
大嘴业话——英伟达宣布进军CPU市场
IC卡座与CPU连接的电路
CPU正面临严重短缺
2026,CPU 会成为存储后下一个价格暴涨的芯片吗?
IAR通过Jlink烧录 Fatal error: Failed to get CPU status after 4 retries
AI 数据中心加速迭代,催生全新电子硬件回收经济
构建智能:RISC‑V CPU在智能体AI基础设施中的崛起
嵌入式CPU的演变和发展
康佳T2588E彩电CPU保护电路原理图
Arm CEO:AI智能体将推动CPU核心数升至 512
分享2个JLinK调试中遇到的问题
主板电容器的作用与签别
Motorola 68K系列CPU选择参考文档
Intel 收购 NVDIA 意欲何为
51单片机工程应用实例—单片机的总线扩展
多微机控制的中高速VVVF电梯