Top Banner
计计计计计计计计计 计3计 计计 计计计 计计计计计计 计计 计计计计计计计计计计计 “ 计计计计计计计”
42

计算机组成原理讲义 第3章 指令、指令系统和控制器部件

Jan 05, 2016

Download

Documents

nehru-hooper

计算机组成原理讲义 第3章 指令、指令系统和控制器部件. 诀窍 详细内容请参阅王诚主编 “计算机组成原理”. 本章主要教学内容. 教学内容: ⑴计算机的指令和指令系统(指令的功能、指令的格式及寻址方式)。 ⑵计算机控制器的功能、组成和设计与实现。 教学安排(围绕以下内容来进行): ⑴计算机指令的执行过程(步骤)(从空间和时间两方面考虑)。 ⑵控制器的设计原理。 指令与指令系统: ⑴指令是用户使用计算机与计算机本身运行的最小功能单位。 ⑵内容:指令的功能安排、指令的格式以及指令的寻址方式的选择。 控制器部件: - PowerPoint PPT Presentation
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: 计算机组成原理讲义 第3章  指令、指令系统和控制器部件

计算机组成原理讲义第 3 章 指令、指令系统和控制器部件

诀窍详细内容请参阅王诚主编

“计算机组成原理”

Page 2: 计算机组成原理讲义 第3章  指令、指令系统和控制器部件

本章主要教学内容 教学内容:

⑴ 计算机的指令和指令系统 ( 指令的功能、指令的格式及寻址方式 ) 。 ⑵ 计算机控制器的功能、组成和设计与实现。

教学安排(围绕以下内容来进行):⑴ 计算机指令的执行过程(步骤)(从空间和时间两方面考虑)。⑵ 控制器的设计原理。

指令与指令系统:⑴ 指令是用户使用计算机与计算机本身运行的最小功能单位。⑵ 内容:指令的功能安排、指令的格式以及指令的寻址方式的选择。

控制器部件:⑴ 功能:向整机的每个部件提供协同运行所需的控制信号。⑵ 组成:程序计数器( PC )、指令寄存器( IR )、指令执行的步骤标记线路、全部时序控制信号产生部件。

Page 3: 计算机组成原理讲义 第3章  指令、指令系统和控制器部件

第 3 章 指令、指令系统和控制器部件3.1 指令和指令系统概述3.2 寻址方式3.3 指令系统举例3.4 控制器的功能和组成与指令执行步骤3.5 组合逻辑的控制器部件3.6 8 位教学计算机的微程序控制器部件3.7 16 位教学计算机的微程序的控制器部件

Page 4: 计算机组成原理讲义 第3章  指令、指令系统和控制器部件

3.1 指令和指令系统概述 计算机系统的组成:硬件和软件。 计算机指令代码: ⑴ 计算机指令代码组成计算机能直接识别和运行的软件程序。 ⑵ 计算机指令代码是使用计算机与计算机本身运行的最小功

能单位。 计算机指令系统: ⑴ 一台计算机支持(或称使用)的全部指令构成其指令系统。 ⑵ 简单指令系统计算机( SISC )— > 复杂指令系统计 算机

( CISC )— > 简化指令系统计算机( RISC )。 设计指令系统的核心问题:选定指令的格式和功能。

接下页

Page 5: 计算机组成原理讲义 第3章  指令、指令系统和控制器部件

3.1 指令和指令系统概述(续) 指令系统的评价: ⑴ 完备性,常用指令齐全,编程方便; ⑵ 高效性,程序占用内存空间少,运行速度快; ⑶ 规整性,指令和数据规则统一简单,易学易用; ⑷ 兼容性,低档机程序能在高档机上直接运行。 指令的格式与功能:

⑴ 操作码用于指明本条指令的操作功能; ⑵ 操作数地址用于给出被操作的信息的地址。

操作码 | 操作数地址

Page 6: 计算机组成原理讲义 第3章  指令、指令系统和控制器部件

3.1 指令和指令系统概述(续)

⒈ 操作码的组织与编码(方案) ⑴ 定长的操作码的组织方案:在指令字的最高部分

分配固定的若干位(定长)表示操作码。 ⑵ 变长的操作码的组织方案:操作码位数根据指令

特点分配,并安排在指令字的最高位部分,但与地址字段不交叉。

⑶ 操作码字段与操作数地址字段有交叉方案:与⑵类似,操作码长度不固定,但操作码字段不再集中在指令字的最高位部分,且与地址的一些字段有所交叉。

Page 7: 计算机组成原理讲义 第3章  指令、指令系统和控制器部件

3.1 指令和指令系统概述(续)

⒉ 有关操作数地址的设计、安排 不同的指令使用不同数目、不同来源和不同用法的

操作数,应将其安排在指令字的适当位置,如: ⑴ 无操作数指令:不涉及操作数或使用约定操作数。 ⑵ 单操作数指令:只涉及一个操作数或约定操作数。 ⑶ 双操作数指令:涉及两个操作数,算逻运算指令。 ⑷ 多操作数指令:涉及多个操作数(大中计算机)。 在同一台计算机中并不要求所有指令都使用同一长

度,可以组合,也可以拆分。

Page 8: 计算机组成原理讲义 第3章  指令、指令系统和控制器部件

3.1 指令和指令系统概述(续)⒊ 指令的分类:按指令所完成的功能进行分类。如: ⑴ 算逻运算指令:给出运算结果及有关特征。 ⑵ 移位操作指令:算术、逻辑和循环移位。 ⑶ 数据传送指令:寄存器、内存、外设接口传数据。 ⑷转移指令和子程序调用与返回指令:改变执行次序。

①转移指令:有条件转移与无条件转移。 ②子程序调用与返回指令:转移后能返回。 ③子程序:自编和系统提供(访管指令与陷阱指令)。

⑸特权指令:仅用于操作系统或其它系统软件的指令。 ⑹其它指令:用于完成某些特定处理功能的指令。

Page 9: 计算机组成原理讲义 第3章  指令、指令系统和控制器部件

3.1 指令和指令系统概述(续)

⒋有关操作数的来源、去处 ⑴CPU 内部的通用寄存器:

给出用到的寄存器编号(寄存器名),其内容可能是数据,也可能是操作数的地址。

⑵外设(接口)中的寄存器:设备编号或设备入出端口地址、或设备映像地址(与内存统一编址的设备地址编号)。

⑶ 内存存储单元:由寻址方式解决(见 3.2 )。

Page 10: 计算机组成原理讲义 第3章  指令、指令系统和控制器部件

3.2 寻址方式 寻址方式:解决如何在指令中表示一个操作数的地址及如何用这种表示得到操作数或操作数的地址。

形式地址:表示在指令中的操作数地址称为形式地址。

物理地址:用形式地址结合某些规则计算出的操作数在存储器中的存储单元地址称为物理地址。

常用寻址方式如下:

Page 11: 计算机组成原理讲义 第3章  指令、指令系统和控制器部件

3.2 寻址方式(续)

⑴立即数寻址:操作数直接给出在指令中。⑵ 直接寻址:直接给出操作数在存储器中的地址。⑶ 寄存器寻址、寄存器间接寻址:利用寄存器寻址。 ①寄存器直接寻址:寄存器存放操作数地址。 ②寄存器间接寻址:寄存器存放操作数地址的地址。⑷ 变址寻址:指令中给出的数值(偏移量,补码)

与指定寄存器的内容相加之和作为操作数的地址。⑸相对寻址:指令中给出的数值(偏移量)与程序

计数器 PC 的内容相加之和作为操作数的地址。接下页

Page 12: 计算机组成原理讲义 第3章  指令、指令系统和控制器部件

3.2 寻址方式(续)

⑹基地址寻址:程序中所用地址与特定寄存器(基地址寄存器)内容相加之和作为操作数或指令的地址。基地址寄存器的值由系统程序指令设定。⑺间接寻址:在指令字的地址字段给出的是操作数

或指令地址的地址。⑻堆栈寻址:给出堆栈单元地址的特定寄存器被称为堆栈指针。堆栈寻址是指利用堆栈指针指明操作数的寻址方式。多为无操作数指令。

Page 13: 计算机组成原理讲义 第3章  指令、指令系统和控制器部件

3.3 指令系统举例

3.3.1 8 位教学计算机的指令系统3.3.3 NOVA 计算机指令系统介绍3.3.2 PDP-11 计算机指令系统介绍

Page 14: 计算机组成原理讲义 第3章  指令、指令系统和控制器部件

3.3.1 8 位教学计算机的指令系统

⒈确定 8 位机的指令系统的原则 ⑴尽可能小的指令集。 ⑵ 指令系统要有一定的完备程度和有较好的典型性。 ⑶ 适当的可扩充性。 ⑷ 指令操作码部分选用逐位扩展技术(逐位使用)。

Page 15: 计算机组成原理讲义 第3章  指令、指令系统和控制器部件

3.3.1 8 位教学计算机的指令系统

⒉8 位机指令系统说明与指令分类 ⑴ 指令长度:单字节指令、双字节指令、三字节指令。 ⑵ 操作数个数:双操作数指令、单操作数指令、无操作

数指令。 ⑶ 寻址方式:寄存器寻址、寄存器间址、立即数寻址、

直接寻址、相对寻址、堆栈寻址。 ⑷ 指令功能:算逻指令、读写内存指令、入 /出指令、转移指令、子程序调用 / 返回指令及传送、移位、置进位标志和清进位标志等指令。

⑸其它:用于编写监控程序的特殊指令。接下页

Page 16: 计算机组成原理讲义 第3章  指令、指令系统和控制器部件

3.3.1 8 位教学计算机的指令系统⑹指令说明: ①双操作数指令:支持 8 条,已实现 5 条, 4 个通用寄存器。 ②单操作数指令:支持 16 条,已实现 9条, 4 个通用寄存器。 ③INC 指令:单操作数, 4 个通用和 12 个专用寄存器。 ④取立即数指令:双操作数, 4 个通用和 12 个专用寄存器。 ⑤双字节指令: 8 位操作码,支持 16 条,已实现 5 条相对转移

指令,亦可实现正常 I/O 指令。 ⑥无操作数指令: 8 位操作码,支持 16 条,已实现 7 条。⑺指令分组: A 组指令、 B组指令、 C组指令、 D 组指

令, P.146 。⑻指令汇总表:表 3.1⑼16 个通用寄存器的使用: P.147

Page 17: 计算机组成原理讲义 第3章  指令、指令系统和控制器部件

3.3.1 8 位教学计算机的指令系统⒊8 位教学计算机的汇编语言程序设计中的有关概念 ⑴8 位教学计算机的机器语言 ⑵8 位教学计算机的汇编语言:①由监控程序提供的命令输入并运行汇编语言程序。②交叉汇编程序 ASEC : P.151

⒋8 位教学计算机的汇编语言程序设计举例 例 3.1 用次数控制在终端屏幕上输出十个数字符。 例 3.2 输入并显示数字符,遇非数字符结束输入。 例 3.3 计算 1至 10的累加和。 例 3.4 设计读写内存和子程序调用指令的程序。

Page 18: 计算机组成原理讲义 第3章  指令、指令系统和控制器部件

3.3.2 PDP-11 计算机指令系统介绍

⒈PDP-11 计算机的主要特点: ⑴采用单总线( UNIBUS )结构。 ⑵ 机器字长 16 位。 ⑶CPU 内有 8 个通用寄存器, R6 和 R7 用于 SP 和 PC 。 ⑷ 按字或按字节寻址。 ⑸操作码使用逐段扩展技术,长度不同。 ⑹采用统一寻址方式访问通用寄存器、主存及外设,没有专门的 I/O 指令。

⒉PDP-11 计算机的指令: ⑴ 双操作数指令; ⑵单操作数指令; ⑶ 无操作数指令: ⑷其它特殊指令。

Page 19: 计算机组成原理讲义 第3章  指令、指令系统和控制器部件

3.3.3 NOVA 计算机指令系统介绍

⒈NOVA ( DJS-130 )计算机指令系统特点: ⑴ 操作码字段与操作数地址字段有所交叉。 ⑵ 操作码分主操作码和辅助操作码,其一条指令的

功能往往相当于其它计算机几条指令的功能。⒉NOVA ( DJS-130 )计算机指令系统分类: ⑴ 算术逻辑运算指令: ⑵转移与访内指令: ⑶输入 /输出指令:

Page 20: 计算机组成原理讲义 第3章  指令、指令系统和控制器部件

3.4 控制器的功能和组成与指令执行步骤

3.4.1 控制器部件的功能和组成概述3.4.2 指令执行步骤概述

Page 21: 计算机组成原理讲义 第3章  指令、指令系统和控制器部件

3.4.1 控制器部件的功能和组成概述

⒈ 指令的执行阶段划分: ⑴读指令;⑵分析指令;⑶执行指令。⒉ 控制器的基本功能: ⑴ 向整机每个部件提供协同运行所需的控制信号。即根据当前正在执行的指令和它所处的执行步骤,形成并提供出在这一时刻整机各部件要用到的控制信号。

⑵保证按程序中排定的指令运行次序自动地连续执行指令序列。

Page 22: 计算机组成原理讲义 第3章  指令、指令系统和控制器部件

3.4.1 控制器部件的功能和组成概述(续)

⒊ 控制器的组成: ⑴ 程序计数器 (PC) :存放下一条要执行的指令地址。 ⑵ 指令寄存器 (IR) :保存被执行指令的主要信息。 ⑶ 指令执行步骤标记线路:标记每条指令的各执行

步骤的相对次序关系。 ⑷ 全部时序控制信号的产生部件:形成并提供出当前各部件本时刻要用到的控制信号。⒋控制器分类(按⑶⑷两项划分): ⑴ 微程序控制器:指令执行步骤由微指令控制。 ⑵ 组合逻辑控制器:指令执行步骤由硬布线控制。

Page 23: 计算机组成原理讲义 第3章  指令、指令系统和控制器部件

3.4.2 指令执行步骤概述

⒈预备知识: ⑴ 指令功能与指令格式的有关内容; ⑵ 运算器中的累加器的读写控制; ⑶ 内存储器的存储单元的读写控制; ⑷输入 /输出设备接口的寄存器的读写控制;⒉ 指令执行步骤 ⑴ 指令介绍: P.160

⑵ 执行步骤: P.161①读取指令; ③执行指令 ( 一到几个步骤 ) ;

②分析指令; ④检查有无中断请求。

Page 24: 计算机组成原理讲义 第3章  指令、指令系统和控制器部件

3.5 组合逻辑的控制器部件 基本原理:利用组合逻辑门线路直接提供控制计算机各功能部件协同运行所需的控制信号。

优缺点:⑴形成控制信号所必需的线路延迟时间少。

⑵形成时序控制信号的控制逻辑比较复杂。 与微程序控制器的比较: ⑴优缺点相互对立; ⑵基本功能相同,两者对硬件结构和指令执行步骤无

实质影响。

Page 25: 计算机组成原理讲义 第3章  指令、指令系统和控制器部件

3.5 组合逻辑的控制器部件(续)

3.5.1 组合逻辑控制器的组成和运行原理简介3.5.2 8 位机的组合逻辑控制器实例3.5.3 组合逻辑的控制器教学实验

Page 26: 计算机组成原理讲义 第3章  指令、指令系统和控制器部件

3.5.1 组合逻辑控制器的组成和运行原理简介

⒈ 组合逻辑控制器的组成: ⑴ 程序计数器( PC ):

保证指令连续运行。 ⑵ 指令寄存器( IR ):

寄存指令信息。 ⑶节拍发生器:

标记指令各执行步骤的相对次序关系。 ⑷ 时序控制信号的产生部件:

形成并提供计算机各部件当前要用到的控制信号。

Page 27: 计算机组成原理讲义 第3章  指令、指令系统和控制器部件

3.5.1 组合逻辑控制器的组成和运行原理简介

⒉ 组合逻辑控制器的运行原理: 从计算机的基本功能的层次考虑: ⑴ 计算机基本功能:自动连续地执行程序。 ⑵ 涉及到的部件:程序计数器( PC )。 从计算机执行一条指令的层次考虑: ⑴ 设计阶段: ①划分指令执行步骤,设计每步功能;

②确定各部件要求使用哪些控制信号; ③选用何种逻辑线路、采用何种方案。

⑵ 涉及到的部件: 指令寄存器( IR )、节拍发生及时序控制信号形成部件。

Page 28: 计算机组成原理讲义 第3章  指令、指令系统和控制器部件

3.5.2 8 位机的组合逻辑控制器实例

⒈8 位机的组合逻辑控制器的实际组成 ⑴TEC-3 特点:①8 位字长;② 16 个通用寄存器;③地址寄存器和地址寄存器为 16 位。

⑵TEC-3 组成(图 3.4 和图 3.5 ):①程序计数器( PC );②指令寄存器( IR );③节拍发生器;④时序控制信号形成部件。

Page 29: 计算机组成原理讲义 第3章  指令、指令系统和控制器部件

3.5.2 8 位机的组合逻辑控制器实例

⒉8 位机的指令执行步骤与节拍发生器设计 ⑴8 位机的指令执行步骤设计①步骤:读取指令;分析指令;执行指令;判中断请求。②说明:地址计算;进位位处理(设 C0 )。③TEC-3 指令分组: A,B,C,D 组(见 P.168 )。④指令执行步骤的划分和每个步骤所执行的处理功能:(图 3.6 )

⑵节拍发生器的逻辑表达式设计 ①节拍发生器的作用:用多位触发器的输出信号的不同组合状态来标

示每条指令的执行步骤。 ②应注意的几个问题:

a 、确定应使用的触发器的位数:依全部指令的节拍数而定。 b 、合理地为节拍状态分配编码:分配原则( P.171 )。

C 、写出每位触发器状态转换的逻辑表达式:方法( P.171 )。

Page 30: 计算机组成原理讲义 第3章  指令、指令系统和控制器部件

3.5.2 8 位机的组合逻辑控制器实例

⒊8 位机的时序控制信号形成部件设计 ⑴确定 TEC-3 机应选用的时序控制信号①各功能部件的实际需求: a 、运算器: b 、内存和 I/O 接口: c 、 CPU 内部总线: d 、特定寄存器:②控制器形成并提供的主要时序控制信号:见 P.17

⑵ 设计指令流程中各时序控制信号的状态值:见表 3.5①输入信号:②输出信号:

⑶写出时序信号的逻辑表达式:

Page 31: 计算机组成原理讲义 第3章  指令、指令系统和控制器部件

3.5.3 组合逻辑的控制器教学实验

⒈8 位机的组合逻辑的控制器教学实验概述⒉8 位机的组合逻辑控制器教学实验的必要说明

Page 32: 计算机组成原理讲义 第3章  指令、指令系统和控制器部件

3.6 8 位教学计算机的微程序控制器部件

3.6.1 微程序控制器的基本工作原理3.6.2 8 位机的微程序的控制器的实际组成3.6.3 8 位教学计算机的微程序设计3.6.4 微程序控制器部件的教学实验

Page 33: 计算机组成原理讲义 第3章  指令、指令系统和控制器部件

3.6.1 微程序控制器的基本工作原理⒈ 微程序控制器的组成 ⑴ 控制存储器( ROM 器件):

微程序定序器中的核心组成部分,用于存储按一定规则组织好的全部控制信号,由若干个存储单元(字)组成。

⑵ 存储单元(字)或称微指令(字):由执行一条指令的一个运行步骤用到的全部控制信号,以及主要用于指明下一个执行步骤的信号共同组成。

⑶ 微程序:每个存储单元(字)存放一条微指令,全部微指令组成一台计算机的微程序。

⒉工作原理: P.206

Page 34: 计算机组成原理讲义 第3章  指令、指令系统和控制器部件

3.6.1 微程序控制器的基本工作原理⒊ 微程序控制器对自身的控制 ⑴得到下一条微指令地址的有关技术 ①基本思想: P.206 ②决定下条微指令地址(下地址)的因素: P.206 ③得到下地址的方法: P.207 ⑵ 微程序定序器 Am2910芯片的组成与功能 ①Am2910芯片的内部组成:见图 3.9( P.207 ) ②Am2910引脚的定义:输入信号和输出信号。 ③Am2910 的功能与具体用法:见表

3.7 ( P.209 )

Page 35: 计算机组成原理讲义 第3章  指令、指令系统和控制器部件

3.6.2 8 位机的微程序控制器的实际组成

⒈ 控制存储器 μCM :⒉ 微指令寄存器 PLR :⒊ 微指令下地址形成部件: Am2910 器件及其配套电路。⒋见图 3.10

Page 36: 计算机组成原理讲义 第3章  指令、指令系统和控制器部件

3.6.3 8 位教学计算机的微程序设计⒈确定微指令格式:见图 3.12⒉确定微指令的地址分配: ⑴ 两种控制器实现的区别:

①提供控制信号的方式不同; ②处理指令执行步骤之间的衔接关系的方式不同。

⑵ 微指令的读取与执行时间安排:见图 3.13 ①将两段时间尽可能地重叠起来; ②设置微指令寄存器。

⑶为所有微指令合理分配微地址:见表 3.9⒊确定微指令各字段的编码值:见表 3.11

Page 37: 计算机组成原理讲义 第3章  指令、指令系统和控制器部件

3.6.4 微程序控制器部件的教学实验

Page 38: 计算机组成原理讲义 第3章  指令、指令系统和控制器部件

3.7 16 位教学计算机的微程序的控制器部件

3.7.1 TEC-2 教学计算机指令系统介绍3.7.2 TEC-2 教学计算机微程序控制器的设计与实现3.7.3 自行设计新指令的微程序

Page 39: 计算机组成原理讲义 第3章  指令、指令系统和控制器部件

3.7.1 TEC-2 教学计算机指令系统介绍

⒈ 教学计算机指令系统概述⒉ 教学计算机指令系统详述⒊汇编语言设计

Page 40: 计算机组成原理讲义 第3章  指令、指令系统和控制器部件

3.7.2 TEC-2 教学计算机微程序控制器的设计与实现

⒈基本组成部分⒉辅助组成部分⒊ 教学计算机的微程序设计 ⑴ 微指令格式 ⑵ 微程序清单 ⑶ 微程序分析

Page 41: 计算机组成原理讲义 第3章  指令、指令系统和控制器部件

3.7.3 自行设计新指令的微程序

Page 42: 计算机组成原理讲义 第3章  指令、指令系统和控制器部件

序号

⒈⒉⒊⒋⒌⒍⒎⒏⒐⒑⒒⒓⒔⒕⒖⒗⒘⒙⒚⒛⑴⑵⑶⑷⑸⑹⑺⑻⑼⑽⑾⑿⒀⒁⒂⒃⒄⒅⒆⒇①②③④⑤⑥⑦⑧⑨⑩