计算机组成原理—指令系统、CPU

打印 上一主题 下一主题

主题 670|帖子 670|积分 2010

计算机组成原理—中央处理器(2)

五、指令系统

1.机器指令

1.1一般形式

指令由操作码和地址码构成

  • 操作码
用来指明指令要完成的操作。操作码长度可固定,可改变


  • 地址码
用来指出指令的源操作数的地址
四地址指令:
OPA1A2A3A4操作码第一地址第二地址结果地址下一条指令地址需要4次访存
三地址指令:
OPA1A2A3操作码第一地址第二地址结果地址因为PC地址自动+1所以不需要A4,需要4次访存
二地址指令:
OPA1A2操作码第一地址第二地址可将结果暂时存放到A1/A2,所以不需要A3
若结果不进入ACC(累加器)则需访存4次;反之访存3次
一地址指令
OPA1操作码操作码其中一个操作数可在ACC中所以不需要A2
若结果进入ACC则需访存2次
零地址指令
无地址码,如,空操作,停机等
1.2指令字长(8的整数倍)


  • 固定:等于存储字长
  • 可变:按字节的整数倍变
2.操作数类型和操作类型

2.1操作数类型

地址,数字,字符,逻辑数据(逻辑运算)
2.2操作类型

数据传送(交换源:参与操作;目的:参与+结果),算术逻辑操作,移位,转移(包括有条件,无条件...)
3.寻址方式

3.1指令寻址

分为顺序和跳跃两种,比较简单,见下图即可

3.2数据寻址

确定操作数的地址

  • 立即寻址:操作数本身就是操作数,也叫做立即数。不需要访存
  • 直接寻址:指令中的地址就是真实的地址。有效地址由地址直接给出,需要一次访存,A的位数决定了该指令操作数的寻址范围
  • 隐含寻址:不需要明显给出操作数地址,一般ACC采用
  • 间接寻址:有效地址由形式地址间接提供,一次间接,两次访存
  • 寄存器寻址:有效地址为寄存器编号,不需要访存
  • 寄存器间接寻址:有效地址在寄存器中,数据还是存在存储器中
  • 基址寻址
  • 变址寻址
  • 相对寻址:A是相对于当前指令的偏移量
  • 堆栈寻址:栈顶是低地址。
在进行设计时注意进位问题
六、CPU的结构和功能

1.CPU的结构

1.1CPU的功能


  • 控制器功能:取指令,分析指令,执行指令,控制程序的输入和运算结果的输出,对总线的管理和异常、特殊情况的处理
  • 运算器的功能:实现算术逻辑运算
CPU有指令控制,时间控制,操作控制,处理中断和数据加工等功能
1.2CPU结构框图

控制指令:PC,IR
操作、时间控制:CU,时序电路
数据加工:ALU寄存器
处理中断:中断系统

1.3        CPU的寄存器


  • 用户可见寄存器:通用寄存器,数据寄存器,地址寄存器,条件码寄存器
  • 控制和状态寄存器:
不同系统的规定不同
2.指令周期

2.1基本概念

CPU取出并执行一条指令所需的全部时间称为指令周期一般的,指令周期 = 取值周期 + 执行周期

在其上的基础上,我们在加入取地址的周期和中断的周期,我们就得到了下图的一个指令周期的流程图

2.2指令周期数据流


  • 取值周期


  • 间址周期


  • 执行周期:不同的指令操作不同
  • 中断周期

3.指令流水


  • 总结:如何提高机器速度
1.提高访存速度:高速芯片,Cache,多体并行
2.提高I/O和主机的传送速度:中断,DMA,通道,多总线,I/O处理机
3.提高运算器速度:高速芯片,改进算法,快速进位链
4.提高整机处理能力:告诉器件,改进系统结构,开发系统的并行性
3.1指令流水原理

将每一个指令周期按照不同的指令分成若干段,实现并行操作

FI:取指FO:取操作数DI:译码EI:执行指令CO:计算操作数个数WO:存储结果3.2影响指令流水性能的因素


  • 结构相关(访存冲突)
同一时间对存储器既要访问,又要取指=>暂停后再进行操作;设两个独立的存储器存放操作数和指令

  • 数据相关
出现先读后写(当现代的数需要上一步的结果)=>后推法:将读指令推至写指令后;采用定向技术(旁路技术)

  • 控制相关
主要由转移指令引起,使提前做的浪费=>提早预判转移的发生,提早转移
3.3流水线性能

n条指令,m级流水,每一小段时间为t

  • 吞吐率:单位时间内流水线所完成指令或输出结果的数量
最大吞吐率:Tpmax = 1 / t
时间吞吐率:Tp = n / m*t+(n-1)t = Tpmax / 1+(m-1)/n
第一条指令用时m*t,其余每一个t就有一条指令结束

  • 加速比:m段流水线速度与其非流水线速度的比值
Sp = (n * m * t) /m*t+(n-1)t

  • 效率:各功能段的利用率
E = mnt / (mt+(n-1)t)m = Sp / m = Tp*t

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

杀鸡焉用牛刀

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表