计算机体系结构 第二章 指令系统
- 格式:pdf
- 大小:764.36 KB
- 文档页数:26


第 二 章
2.13 在一台单流水线多操作部件的处理机上执行下面的程序,每条指令的取指令、指令译码需要一个时钟周期,MOVE、ADD和MUL操作分别需要2个、3个和4个时钟周期,每个操作都在第一个时钟周期从通用寄存器中读操作数,在最后一个时钟周期把运算结果写到通用寄存器中。
k: MOVE R1,R0 ;R1← (R0)
k+1: MUL R0,R2,R1 ;R0← (R2)×(R1)
k+2: ADD R0,R2,R3 ;R0← (R2)+(R3)
(1)就程序本身而言,可能有哪几种数据相关?
(2)在程序实际执行过程中,哪几种数据相关会引起流水线停顿?
(3)画出指令执行过程的流水线时空图,并计算完成这3条指令共需要多少个时钟周期?
解:(1)就程序本身而言,可能有三种数据相关。若3条指令顺序流动,则k指令对R1寄存器的写与k+1指令对R1寄存器的读形成的“先写后读”相关。若3条指令异步流动,则k指令对R0寄存器的读与k+1指令对R0寄存器的写形成的“先读后写”相关,k+2指令对R0寄存器的写与k+1指令对R0寄存器的写形成的“写—写”相关。
(2)在程序实际执行过程中,二种数据相关会引起流水线停顿。一是“先写后读”相关,k指令对R1的写在程序执行开始后的第四个时钟;k+1指令对R1的读对指令本身是第三个时钟,但k+1指令比k指令晚一个时钟进入流水线,则在程序执行开始后的第四个时钟要读R1。不能在同一时钟周期内读写同一寄存器,因此k+1指令应推迟一个时钟进入流水线,产生了流水线停顿。二是“写—写”相关,k+1指令对R0的写对指令本身是第六个时钟,而要求该指令进入流水线应在程序执行开始后的第三个时钟,所以对R0的写是在程序执行开始后的第八个时钟。k+2指令对R0的写对指令本身是第五个时钟,而k+2指令比k+1指令晚一个时钟进入流水线,则在程序执行开始后的第四个时钟,所以对R0的写是在程序执行开始后的第八个时钟。不能在同一时钟周期内写写同一寄存器,因此k+2指令应推迟一个时钟进入流水线,产生了流水线停顿。另外,可分析“先读后写”相关不会产生流水线的停顿。
第二章 计算机指令集结构设计
名词解释
1. 堆栈型机器——CPU中存储操作数的单元是堆栈的机器。
2. 累加型机器——CPU中存储操作数的单元是累加器的机器。
3. 通用寄存器型机器——CPU中存储操作数的单元是通用寄存器的机器。
4. CISC——复杂指令集计算机。
5. RISC——精简指令集计算机。
@
2.2 堆栈型机器、累加器型机器和通用寄存器型机器各有什么优缺点
指令集结构类型 优点 缺点
堆栈型 是一种表示计算的简单模型;指令短小。 堆栈不能被随机访问,从而很难生成有效代码。同时,由于堆栈是瓶颈,所以很难被高效地实现。
累加器型 > 减小了机器的内部状态;指令短小。 由于累加器是唯一的暂存器,这种机器的存储器通信开销最大。
寄存器型 是代码生成最一般的模型。 所有操作数均需命名,且显式表示,因而指令比较长。
2.3 常见的三种通用寄存器型机器的优缺点各有哪些
指令集结构类型 ~
优 点 缺 点
寄存器-寄存器型(0,3) 简单,指令字长固定,是一种简单的代码生成模型,各种指令的执行时钟周期数相近。 和指令中含有对存储器操作数访问的结构相比,指令条数多,因而其目标代码较大。
寄存器-存储器型(1,2) 可以直接对存储器操作数进行访问,容易对指令进行编码,且其目标代码较小。 指令中的操作数类型不同。在一条指令中同时对一个寄存器操作数和存储器操作数进行编码,将限制指令所能够表示的寄存器个数。由于指令的操作数可以存储在不同类型的存储器单元,所以每条指令的执行时钟周期数也不尽相同。
>
存储器-存储器型(3,3) 是一种最紧密的编码方式,无需“浪费”寄存器保存变量。 指令字长多种多样。每条指令的执行时钟周期数也大不一样,对存储器的频繁访问将导致存储器访问瓶颈问题。
指令集结构设计所涉及的内容有哪些
教学设计表
学科 授课年级 学校 教师姓名
章节名称 第二章第一节 计算机系统 计划学时 1
学习内容分析 在这个活动中,主要讲了计算机的基本组成、软硬件常识,这些知识中的部分内容在小学阶段已经有所涉及,比如:计算机的基本组成,但仔细钻研教材后就会发现,这两个阶段的教学要求是明显不同的,小学阶段的要求只是能够说出计算机输入、处理、输出设备的名称就可以了,但到了初中阶段这部分要求会明显提升。
学习者分析 学生在小学阶段已经学过信息技术这门课,但是学生间的知识差异较大。有些学生的基础非常好,已经经过较为系统的学习,而还有些学生则可能基本没学过。所以作为开篇的第一节课,担负着非常重要的任务。对于基础比较好的学生要让他们的知识“升级”,而对于“零起点”的学生,要让他们树立起学好信息技术的信心并激发学习兴趣。
教学目标 课程标准:增强学生的信息意识,了解信息技术的发展变化及其对工作和社会的影响。
知识与技能:
1.掌握计算机的基本组成、软硬件常识和正确使用计算机的规范。
2.知道计算机软件与硬件的关系,理解计算机硬件功能及性能指标,尝试设计装机方案。
过程与方法:
能够运用软、硬件知识组装计算机
情感态度与价值观:
1.让学生树立正确使用计算机的规范,培养学生采集信息、应用信息的兴趣。
2.使学生初步意识到学习信息技术学科知识的重要性,逐步提高他们的信息素养
教学重点及解决措施 教学重点:
掌握计算机的基本软、硬件组成
解决措施:利用主机部件,进行实物演示。
教学难点及解决措施 教学难点:利用各部件组装计算机
解决措施:利用课件,进行装机演示
教学设计思路 首先利用同学们关心的话题引入新课,提示学习目标,利用实物示范教学法讲授主机箱里同学们平时认为非常神秘的部件,利用任务驱动法,自主探究,小组活动法,完成对计算机硬件的学习,利用提问的方法引出对软件的学习,为巩固新知,设计生动有趣的课件让同学亲自组装电脑来完成教学。
第1章 计算机系统结构的基本概念
解释下列术语
层次机构:按照计算机语言从低级到高级的次序,把计算机系统按功能划分成多级层次结构,每一层以一种不同的语言为特征。这些层次依次为:微程序机器级,传统机器语言机器级,汇编语言机器级,高级语言机器级,应用语言机器级等。
虚拟机:用软件实现的机器。
翻译:先用转换程序把高一级机器上的程序转换为低一级机器上等效的程序,然后再在这低一级机器上运行,实现程序的功能。
解释:对于高一级机器上的程序中的每一条语句或指令,都是转去执行低一级机器上的一段等效程序。执行完后,再去高一级机器取下一条语句或指令,再进行解释执行,如此反复,直到解释执行完整个程序。
计算机系统结构:传统机器程序员所看到的计算机属性,即概念性结构与功能特性。
在计算机技术中,把这种本来存在的事物或属性,但从某种角度看又好像不存在的概念称为透明性。
计算机组成:计算机系统结构的逻辑实现,包含物理机器级中的数据流和控制流的组成以及逻辑设计等。
计算机实现:计算机组成的物理实现,包括处理机、主存等部件的物理结构,器件的集成度和速度,模块、插件、底板的划分与连接,信号传输,电源、冷却及整机装配技术等。
系统加速比:对系统中某部分进行改进时,改进后系统性能提高的倍数。
Amdahl定律:当对一个系统中的某个部件进行改进后,所能获得的整个系统性能的提高,受限于该部件的执行时间占总执行时间的百分比。
程序的局部性原理:程序执行时所访问的存储器地址不是随机分布的,而是相对地簇聚。包括时间局部性和空间局部性。
CPI:每条指令执行的平均时钟周期数。
测试程序套件:由各种不同的真实应用程序构成的一组测试程序,用来测试计算机在各个方面的处理性能。
存储程序计算机:冯·诺依曼结构计算机。其基本点是指令驱动。程序预先存放在计算机存储器中,机器一旦启动,就能按照程序指定的逻辑顺序执行这些程序,自动完成由程序所描述的处理工作。