自学内容网 自学内容网

第五章-(二)指令执行过程与数据通路

1.指令周期

CPU从主存中取出并执行一条指令的时间称为指令周期。每个指令周期内的机器周期数可以不等,每个机器周期内的时钟周期(节拍、T周期)数可以不等。

  • 取指令是访问,速度是很慢的。
  • 相对于取指令,对指令译码是一个很快的事。 
  • 主频为3.0GHz表示每秒完成3.0G次时钟周期,有3.0G次节拍
  • (取指令)->(取有效周期):说明需要一个转换,将形式地址转换为有效地址

辨析
指令周期:CPU从主存中取出并执行一条指令的时间。
机器周期(CPU周期):常把一条指令的执行过程划分为若干个阶段(如取指、译码、执行等),每一阶段完成一个基本操作。 完成一个基本操作(如取指、存储器读、存储器写)所需要的时间称为机器周期,每个机器周期内的节拍数可以不等。注意这里取指时间不等于取指周期,一个指令的取指周期可能包括两次取指(当指令字长等于存储字长的2倍时),只有当指令字长等于存储字长时,取指周期等于机器周期
时钟周期(节拍、T周期):时钟周期是计算机中最小的时间单位,在一个时钟周期内,CPU仅完成一个最基本的动作。工作脉冲是控制器的最小时间单位,起定时触发作用,一个时钟周期有一个工作脉冲。
存储器的访问时间:存储器进行一次读或写操作所需的时间称为存储器的访问时间(或读/写时间)。
存取(存储)周期:存储器进行两次独立的存储器操作(连续两次读或写操作)所需的最小间隔时间。
存储器进行一次“读”或“写”操作所需的时间称为存储器的访问时间(或读写时间),而连续启动两次独立的“读”或“写”操作(如连续的两次“读”操作)所需的最短时间,称为存取周期(或存储周期)。←百度百科

一个完整的指令周期可能包括取指周期、间址周期、执行周期、中断周期。

取指周期是从主存中取出指令字。

执行周期操作在不同指令中不同。

间址周期是取操作数的有效地址,可能包括多次间址(如二次间接寻址),也可能没有间址周期。

中断周期是将程序断点存入堆栈中,进栈操作先修改栈顶指针,后存入数据,指令可能没有中断。

数据流是根据指令要求依次访问的数据序列。

空指令只包含取指周期一个周期,取指结束也就是表示周期结束。

1.1指令周期流程

 CPU为了区分当前是哪个阶段,就采用了四个触发器

1.2其他补充

 辨析(其他维度的总结):

2.指令执行方案 

指令执行方案:

单指令周期:对所有指令都选用相同的执行时间来完成。指令周期取决于执行时间最长的指令的执行时间。指令之间串行执行,即下一条指令只能在前一条指令执行结束后才能启动。
多指令周期:指令之间仍串行执行,但不再要求所有指令占用相同的执行时间。
流水线方案:指令之间可以并行执行的方案。

3.数据通路 

数据在功能部件之间传送的路径称为数据通路,包括数据通路上流经的部件,如ALU、通用寄存器、PSW、异常和中断处理逻辑。

数据通路的基本结构:

  1. CPU内部单总线方式。所有寄存器的输入输出端都连接到一条公共通路上,这种结构简单,但是数据的传输存在较多的冲突现象,因此性能相对较低。
  2. CPU内部多总线方式。所有寄存器的输入输出端都连接到多条公共通路上,可以同时在一个时钟内传输多个数据,以提高效率。
  3. 专用数据通路方式(不采用CPU内部总线方式)。 根据指令执行过程中的数据和地址流动方向,安排线路,避免使用共享的总线,性能高,但是硬件量大。

内部总线是指同一部件,如CPU内部连接各寄存器及运算部件之间的总线;系统总线是指同一台计算机系统的各部件,如CPU、主存、通道和各类I/O接口间互相连接的总线。

4.做题小结  

自己之后要整理这块知识

  1. 转移指令时,需要判断转移是否成功,若失败下一条指令的地址仍为PC自增后的地址。 
  2. 指令总是根据PC从主存中读出。
  3. 取指操作是自动进行的,控制器不需要得到相应的内容。
  4. 不同长度的指令,其取指操作可能是不同的。例如:双字指令、三字指令、单字指令的取指操作不同。
  5. 指令字长与机器字长没有联系。指令字长与操作码字段长度、地址码字段长度及地址码个数决定。
  6. 为了硬件设计方便,指令字长通常取字节或存储字长的整数倍,但不是必须和存储字长一样大。
  7. 冯诺依曼计算机根据指令周期的不同阶段来区分从存储器取出的是指令还是数据,取指周期取出的是指令,执行周期取出的是数据。
  8. 在单总线的CPU中,ALU的一个输入端与总线相连,另一个输入端通过一个寄存器与总线相连。ALU的输出端也不能直接与内部总线相连,否则其输出又会通过总线反馈到输入端,影响运算结果,因此输出端需通过一个暂存器(用来暂存结果的寄存器)与总线相连。
  9. 单总线数据通路一个时钟周期内只允许一次操作,所以不可能一个时钟周期内完成一个指令。
  10. 单周期CPU一个时钟周期内完成一个指令,但这个时钟周期很长。多周期CPU采用多指令周期执行方案,不同指令的时钟周期数可以不同,多周期CPU不能在一个时钟周期内完成一个指令,因为它的指令周期被划分了不同阶段,但它的时钟周期要比前者小很多,它的综合效率更高。
  11. 数据通路由控制部件控制,控制部件根据每条指令功能的不同生成对数据通路的控制信号。因此数据通路不包括控制部件。

原文地址:https://blog.csdn.net/2203_75970230/article/details/142472293

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!