计算机组成原理 第七章(CPU的工作过程)—第二节(指令周期)

 写在前面:

  1. 本系列笔记主要以《计算机组成原理(唐朔飞)》为参考,大部分内容出于此书,笔者的工作主要是挑其重点展示,另外配合下方视频链接的教程展开思路,在笔记中一些比较难懂的地方加以自己的一点点理解(重点基本都会有标注,没有任何标注的难懂文字应该是笔者因为强迫症而加进来的,可选择性地忽略)。
  2. 视频链接:计算机组成原理(哈工大刘宏伟)135讲(全)高清_哔哩哔哩_bilibili

一、指令周期概述

1、指令周期的基本概念

        CPU每取出并执行一条指令所需的全部时间称为指令周期,也即CPU完成一条指令的时间,如下图所示。图中的取指阶段完成取指令和分析指令的操作,又称取指周期;执行阶段完成执行指令的操作,又称执行周期。在大多数情况下,CPU就是按“取指一执行-再取指-再执行…”的顺序自动工作的。

2、指令周期的长度

        指令周期常常用若干机器周期来表示,机器周期又叫CPU周期,一个机器周期又包括若干个时钟周期(也称为节拍、T周日或CPU时钟周期,它是CPU操作的最基本单位)。

        由于各种指令操作功能不同,因此各种指令的指令周期是不相同的。另外,每个指令周期内机器周期数可以不等,每个机器周期内的节拍数也可以不等。

3、具有间接寻址的指令周期

        当遇到间接寻址的指令时,由于指令字中只给出操作数有效地址的地址,因此,为了取出操作数,需先访问一次存储器,取出有效地址,然后再访问存储器,取出操作数,这样,间接寻址的指令周期就包括取指周期、间址周期和执行周期3个阶段,其中间址周期用于取操作数的有效地址,因此间址周期介于取指周期和执行周期之间。

4、带有中断周期的指令周期

        当CPU采用中断方式实现主机与I/O设备交换信息时,CPU在每条指令执行阶段结束前都要发中断查询信号,以检测是否有某个I/O设备提出中断请求,如果有请求,CPU则要进入中断响应阶段,又称中断周期,在此阶段,CPU必须将程序断点保存到存储器中,这样,一个完整的指令周期应包括取指、间址、执行和中断4个子周期

5、指令周期流程

        取指、间址、执行和中断4个周期都有CPU访存操作,只是访存的目的不同,取指周期是为了取指令,间址周期是为了取有效地址,执行周期是为了取操作数(当指令为访存指令时),中断周期是为了保存程序断点,这4个周期又可称为CPU的工作周期,为了区别它们,在CPU内可设置4个标志触发器

二、指令周期的数据流

1、取值周期的数据流

        PC中存放现行指令的地址,该地址送到MAR并送至地址总线,然后由控制部件CU向存储器发读命令,使对应MAR所指单元的内容(指令)经数据总线送至MDR,再送至IR,并且CU控制PC内容加1,形成下一条指令的地址

2、间址周期的数据流

        一旦取指周期结束,CU便检查IR中的内容,以确定其是否有间址操作如果需要间址操作则MDR中指示形式地址的右N位记作Ad(MDR)将被送到MAR又送至地址总线此后CU向存储器发读命令以获取有效地址并存至MDR

3、执行周期的数据流

        由于不同的指令在执行周期的操作不同,因此执行周期的数据流是多种多样的,可能涉及CPU内部寄存器间的数据传送、对存储器(或I/O)进行读写操作或对ALU的操作。

4、中断周期的数据流

        CPU进入中断周期要完成一系列操作,其中PC当前的内容必须保存起来,以待执行完中断服务程序后可以准确返回到该程序的间断处。

        由CU把用于保存程序断点的存储器特殊地址(如栈指针的内容)送往MAR,并送到地址总线上,然后由CU向存储器发写命令,并将PC的内容(程序断点)送到MDR,最终使程序断点经数据总线存入存储器。此外,CU还需将中断服务程序的入口地址送至PC,为下一个指令周期的取指周期做好准备

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Zevalin爱灰灰

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值