计算机系统结构 第 2 章 指令集结构

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2014-3-8 9
2.1 指令系统结构的分类
• • • • • • 1. 指令系统分类的准则 ⑴ 在CPU中操作数的存放方法。 ⑵ 在每条指令中,显式指明的操作数个数。 ⑶ 操作数的寻址方式。 ⑷ 指令系统所提供的操作类型。 ⑸ 操作数的类型与大小。
2014-3-8
10
2.指令系统结构的分类
• • • • 按在CPU中操作数的存放方法可分为: ⑴ 堆栈型 ⑵ 累加器型 ⑶ 通用寄存器型
2014-3-8
21
4. 编址单位
• ⑴ 字编址:以访问一次设备所获得的信息量 为单位进行编址。 • ⑵ 字节编址:以字节为单位进行编址。 • ⑶ 位编址:按二进制位编址。
2014-3-8
22
按字节编址时需解决的问题
• ① 多字节数据的存放顺序 • 小端排序:将一个字中的低位字节存放在低地址 单元中。 • 大端排序:将一个字中的高位字节存放在低地址 单元中。 • 小端排序符合从右向左进位的硬件习惯;大端排 序符合程序员从左向右的编程习惯。
• 5. 按地址寻址方式(略,P47)
• 寻址方式的使用频度:
• R寻址->直接->变址->单字位移->自增->R间址->自减 • 高 -------------------------- 低
2014-3-8
26
2.2.2 按内容访问方式
• • • • • 1. 按内容访问方式 按照要访问的数据的内容访问内存。 2. 联想存储器(相联存储器、按内容访问存储器) 满足按内容访问方式的存储器。 联想存储器的主要特点:以并行方式在存储器中 查找所需信息的内容。 • 3. 按内容访问的方法 • 通过硬件将要访问的内容与存储单元的内容进行 比较,若相同,则进行访问。
2014-3-8
23
• ② 编址规定(略,组原介绍过) • 在按字节编址时,可能出现字节,半字、字、双 字混存的情况,会使读写控制复杂。 • 例:
XX00H XX08H
字节
半字 字
双- 单字 半-
XX10H XX18H
-字 -字
单字
字节 …
单-
2014-3-8
24
• 主存宽度:传送信息的最大位数/单位时间 • 解决程序访存越界的方法: • 规定每个数据都必须从一个存储字开始存放。
2014-3-8
18
2.2.1 按地址访问方式
• 1. 能被指令访问的存放操作数的部件 • 通用寄存器、存储器单元、堆栈以及控制寄 存器、设备寄存器等专用寄存器。 • 2. 计算机中的两种地址概念 • ⑴ 逻辑地址 • 程序员在编制程序时所使用的地址(逻辑空 间 )。 • ⑵ 物理地址 • 程序在主存内的实际物理地址。
2014-3-8 40
Intel8088 处理机指令系统使用频度和执行时间统计 (C 语言编译程序和 PROLOG 解释程序)
2014-3-8 -8
28
联想存储器的访问过程 ( 520 X 540 )
2014-3-8
29
用途
• 虚存中的快表 • Pentium的BTB (分支转移目标缓冲器)
2014-3-8
30
2.3
指令系统的两种设计风格
*优化指令系统设计的3个阶段: CISC:复杂指令系统 从CPU的执行时间入手, 60年代至70年代中期 加快程序的运行速度. RISC:精简指令系统 70年代后期至现在 VLIW: 80年代初期至现在 关键在软硬件的功能分配,系统的综合性能 时间与空间;执行、编译、编写时间。
2014-3-8 19
逻辑地址与物理地址的关系
• ⑴ 逻辑空间与物理空间一样大 • ⑵ 逻辑空间小,物理空间大 • ⑶ 逻辑空间大,物理空间小
2014-3-8
20
3. 编址方式
• • • • 编址方式:对各种存储设备进行编码的方法。 (1) 按各种部件分类编址。 (2) 统一编址。 (3) 隐式编址。
堆栈
B5500/6500 HP3000 Transputer PDP-8 MC 6800
堆栈
进栈或退栈
累加器
1
累加器
取/存累加器
寄存器集
IBM360/370 DEC VAX-11 RISC机
13
2/3
寄存器或存 储器
取/存寄存器 或存储器
2014-3-8
• 设A、B、C均保存在存储器单元中,且在运算过 程中不破坏A、B的值,则在三种不同类型的指令 系统中实现C=A+B的指令序列为:
2014-3-8 36
2.3.2 RISC设计风格
• 2.3.2.1 RISC的基本思想 • 1. RISC(精简指令系统计算机)的基本 思想: • 指令系统只由使用频率高的和必要的简 单指令构成。将不是最频繁使用的指令 (功能)由软件实现,以简化硬件,使 其执行得更快。提高流水线效率。
2014-3-8
2014-3-8 3
• • • •
• • • •
有三种类型的指令系统: CISC:复杂指令系统 RISC:精简指令系统 VLIW:超长指令字(严格讲,属于并行处理技 术) 指令系统设计包括: 指令的格式设计 指令系统的功能设计 指令系统的性能评价
2014-3-8 4
2.0 指令系统设计的基本概念
2014-3-8
6
2.0.2 指令系统的设计要求
• 1. 完备性(完整性):是指应该具备的基本 指令种类 • 2. 有效性: 指令的执行速度要快, 指令的使 用频度要高 • 3. 兼容性: 在同一系列机内,指令系统, 包括寻址方式和数据表示等保持基本不变; 可以适当增加指令、增加寻址方式,增加数 据表示等;但不能减少任何已有的……。
存储器-存储器 存储器-存储器 面向堆栈 指令操作类型 存储器-寄存器 存储器-寄存器 存储器-存储器 寄存器-寄存器 寄存器-寄存器 Cache 容量
2014-3-8
64KB
64KB
38
0
1975年,IBM公司率先组织力量开始研究指令 系统的合理性问题 1979年研制出世界上第一台采用RISC思想的计 算机IBM 801 1986年,IBM正式推出采用RISC体系结构的工 作站IBM RT PC CISC指令系统存在的问题: 1979年,美国加洲伯克利分校 David Patterson 提出:
2014-3-8
17
2.2 操作数访问方式
• • • • 操作数访问方式即操作数的寻址方式。 按访问操作数的手段,寻址方式可分为: ① 按地址访问方式 事先计算出需访问的操作数的地址。工作方式是串 行顺序的。 • ② 按内容访问方式 • 将给定的访问内容将与存储单元中的内容进行比较。 工作方式是并行的。
第 2 章
指令系统的设计
2014-3-8
1
张功萱修订
本章学习内容
• 指令结构的分类 • 寻址方式设计 • 指令格式的优化 • 实现RISC设计的技术手段
2014-3-8
2
• 在机器上直接运行的程序是由指令组成的。 • 指令系统是软件与硬件之间的一个主要分界面,也 是他们之间互相沟通的一座桥梁。 • 硬件设计人员采用各种手段实现指令系统,而软 件设计人员则使用这些指令系统编制系统软件和应 用软件,用这些软件来填补指令系统与人们习惯的 使用方式之间的语义差距。 • 指令系统设计必须由软件设计人员和硬件设计人员 共同来完成。 • 指令系统发展相当缓慢,需要用软件来填补的东西 也就越来越多。
• 2.0.1 指令系统的设计内容 • 指令系统:机器所具有的全部指令的集合。 • 指令系统设计的内容:确定指令的格式、 类型、功能及操作、操作数的类型及大小、 操作数的访问(寻址)方式。
2014-3-8
5
指令系统设计的基本思想
• 确定计算机系统中的一些基本操作(包括操 作系统和高级语言中的操作),应由硬件实 现还是由软件实现;某些复杂操作是由一条 专用的指令实现,还是由一串基本指令实现。
2014-3-8 31
CPU执行时间的改进策略
• Tcpu=In*CPI*Tc • 在器件工艺限制下, Tc值为一极限值。 • In的改进 增强指令的功能, 增加指令的复杂度 CISC • CPI的改进 简化指令系统, 减少指令的执行时间 • RISC
2014-3-8 32
• 总体上:
2014-3-8 39
(1) 20%与80%规律
在CISC中,大约20%的指令占据了80%的处理 机执行时间。 例如:8088处理机的指令种类大约100种 前11种(11%)指令的使用频度已经超过80% 前8种(8%)指令的运行时间已经超过80% 前20种(20%)指令:使用频度达到91.1% 运行时间达到97.72% 其余80%的指令:使用频度只有8.9% 2.28%的处理机运行时间
堆栈型 累加器型 寄存器-存储器型 (R-M) LOAD R1,A ADD R1,B 寄存器-寄存器型 (R-R) LOAD R1,A LOAD R2,B ADD R3,R1,R2 STORE C,R3
PUSH A LOAD A PUSH B ADD B ADD POP C
STORE C STORE C,R1
2014-3-8 7
• 4. 规整性: 对相似的操作数做出相同的规定. • 5. 对称性: 所有的寄存器同等对待, 操作码 的设置等都要对称 • 6. 可扩充性 • 7. 正交性: 互不相干原则 • 8. 利于编译,适应高级语言的发展。
2014-3-8
8
2.0.3 指令系统的设计步骤
• 1. 根据未来用途和应用范围,设计一 个初步指令系统; • 2. 用本指令系统编制编译程序; • 3. 模拟测试,研究操作码和寻址方式 的效能; • 4. 根据结果,将使用频率高的指令串 组合成一条指令; • 5. 重复1~4步骤,直到证明指令系统有 高的效能。
2014-3-8
11
• 对于一条有两个源操作数和一个目的操 作数的指令,指令中显式表示的操作数 的个数随CPU存取操作数方式的不同而 不同。
2014-3-8
12
三种不同的指令系统集结构
CPU中存储部 件形式 机器型号 每条ALU 指令需指 明的显式 操作数 0 结果存放目 的地 访问显式操 作数的过程
2014-3-8
34
(1)方法:用一条指令代替一串指令 增加新的指令 增强指令功能,设置功能复杂的指令 增加寻址方式 增加数据表示方式 (2)优化的途径: 面向目标代码 面向高级语言 面向操作系统
2014-3-8 35
2. CISC的主要特点
• (1) 指令系统复杂。 • ①指令数多,一般大于100条。 • ②寻址方式多,一般大于4种。 • ③指令格式多,一般大于4种。 • (2) 绝大多数指令需要多个机器时钟周期方可执行 完毕。 • (3) 各种指令都可访问存储器。 • (4) 采用微程序控制。 • (5) 有专用寄存器。 • (6) 难以用优化编译生成高效的目标代码程序。
2014-3-8
14
3. 通用寄存器型指令系统结构的分类
• ⑴ 寄存器-寄存器型 (R-R) • ⑵ 寄存器-存储器型 (R-M) 或 (R-S) • ⑶存储器-存储器型 (M-M)
2014-3-8
15
• ALU指令中操作数的个数和操作数个数的的所有 可能组合及相应的机器实例。
2014-3-8
16
37
2. 从CISC 到 RISC
• 70年代,指令系统已经非常复杂。
机 型 (生产年代) 指令种类 微程序容量 指令长度 采用的工艺 IBM370/168 (1973) 208 420K 16-48 ECL MSI VAX-11 (1978) 303 480K 16-456 TTL MSI iAPX 432 (1982) 222 64K 6-321 NMOS VLSI Dorado (1978) 270 136K 8-24 ECL MSI 面向堆栈 64KB


Tcpu(risc)->RISC(In*CPI) 小于 Tcpu(cisc)->CISC(In*CPI)
• RISC机器指令的平均周期数少
2014-3-8
33
2.3.1 CISC设计风格
• 1. CISC(复杂指令系统计算机)的基本思 想:
• 计算机性能的提高主要依靠增加指令复 杂性及其功能来获取。
XX00H XX08H XX10H 字节 半字 字
XX18H
双 字
• 这种方法避免了访存越界,但会浪费存储空间和 地址空间。
2014-3-8 25
• 折中方法:对数据按其信息量的整数边界编址。 即规定: • 双字数据存储单元的地址末尾为 000B • 单字数据存储单元的地址末尾为 00B • 半字数据存储单元的地址末尾为 0B • 字节数据可以任意存放。
相关文档
最新文档