第二章 计算机结构

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

2.地址寄存器(AR) 地址寄存器用来保存当前CPU所访问的数据或是指令的内存单元的地址。由 于在内存和CPU之间存在着操作速度上的差别,所以必须使用地址寄存器来保持 地址信息,直到内存的读/写操作完成为止 。
: 30020H 30021H 30022H 12H 34H ABH CDH EFH :
钱付兰
安徽大学
2.2.3

指令系统的设计的要求

Biblioteka Baidu


完备性--完备性要求指令系统丰富、功能齐全、使 用方便。 有效性--利用该指令系统所编写的程序能够高效率 地运行。 规整性--包括指令系统的对称性、匀齐性、指令格 式和数据格式的一致性。 兼容性--至少要能做到“向上兼容”,在低档机器 上运行的软件可以在高档机器上运行。

操作码 定长操作码,变长指令码 变长操作码,定长指令码 地址码 零地址指令 一地址指令 二地址指令 三地址指令
钱付兰
安徽大学
2.2.5

寻址方式
寻址方式 指令寻址方式 顺序寻址方式 跳跃寻址方式 数据寻址方式(即操作数寻址) 隐含寻址
钱付兰
安徽大学
第二章 计算机结构
Company 计算机导论 Logo
@
2.0
现代电子计算机的基本结构(冯氏计算机):
导言
外存 储器
输入 设备
内存 储器
输出 设备
运算器
控制器
注:
数据信号 控制信号
CPU
钱付兰
安徽大学
2.0
本章的主要内容是对计算机整个的体系结构
导言
包括中央处理器(CPU : Central processing unit):指令系统、指令的执行、 指令的执行的安排(如流水线技术)
钱付兰
安徽大学
2.1.1
控制器
控制器的作用 控制器是协调并控制计算机的各个部件执行程序的指令序列。根据当前程序 计数器寄存器的值,从RAM 中相应的地址取出指令,并将它们放到指令寄存 器中;然后对指令进行译码,并根据译码的结果发送信号给数据总线(Data Bus),从RAM 中取出操作数,并发出适当的控制信号,控制运算器进行数 据的处理。
钱付兰
安徽大学
2.3.1
非访存指令的指令周期
CLA是一条非访内指令, 它需要两个CPU 周期, 其中取指令阶段需要一 个CPU周期,执行指令 阶段需要一个CPU周期。
钱付兰
安徽大学
2.3.1
非访存指令的指令周期
钱付兰
安徽大学
2.3.1
非访存指令的指令周期
1取指令阶段 (1)程序计数器PC的内容30(八进制)被装入地址寄存器AR; (2)程序计数器内容加1,变成31,为取下一条指令做好准备; (3)地址寄存器的内容被放到地址总线上; (4)所选存储器单元30的内容经过数据总线,传送到数据缓冲寄存器DR; (5)缓冲寄存器的内容传送到指令寄存器IR; (6)指令寄存器中的操作码被译码或测试; (7)CPU识别出是指令CLA,至此,取指令阶段即告结束。 2执行指令阶段 (1)控制器送一控制信号给算术逻辑运算单元ALU; (2)ALU响应该控制信号,将累加寄存器AC的内容全部清零,从而执行 了CLA指令。
钱付兰
安徽大学
2.1.1

中央处理器
按设计和实现的途径可分为三类: 硬连线控制器(Hardwired Controller) 微程序控制器(Microprogrammed Controller) 门阵列控制器
钱付兰
安徽大学
2.1.2
运算器
运算器由算术逻辑单元(ALU : Arithmetic-Logical Unit)、累加寄存器、数据 缓冲寄存器和状态条件寄存器等组成。它是数据加工处理部件。
钱付兰
安徽大学
2.3.1
非访存指令的指令周期
钱付兰
安徽大学
2.3.2
直接访存指令的指令周期
钱付兰
安徽大学
2.3.2
直接访存指令的指令周期
钱付兰
安徽大学
2.3.2
直接访存指令的指令周期
钱付兰
安徽大学
2.3.3
间接访存指令的指令周期
钱付兰
安徽大学
2.3.3
间接访存指令的指令周期
钱付兰
安徽大学
2.3.3
间接访存指令的指令周期
注意 在这个操作 之后,累加器中 仍然保留和数7, 而存储器42号单 元中原先的内容 被冲掉 。
钱付兰
安徽大学
2.3.4
程序控制指令的指令周期
钱付兰
安徽大学
2.3.4
程序控制指令的指令周期
钱付兰
安徽大学
2.4
流水线技术
流水技术的特点: (1)一条流水线由流水段组成,流水段的数目称为流水线的深度; (2)每个流水段有专门的功能部件对指令进行某种加工; (3)各流水段所需时间是一样的,这样才能同步符合流水节拍; (4)流水线工作阶段可分为建立、满载和排空三个阶段; (5)在理想情况下,当流水线充满后,每隔Δt时间即一个流水节 拍将会有一个结果流出流水线。
钱付兰
安徽大学
2.3
指令执行
计算机所以能自动地工作,是因为CPU能从存放程序的内存里取出一条指 令并执行这条指令;紧接着又是取指令,执行指令……,如此周而复始, 构成了一个封闭的循环。除非遇到停机指令,否则这个循环将一直继续下 去。
钱付兰
安徽大学
2.3

指令执行


指令周期 取出并执行一条指令的时间 机器周期 也称为CPU周期,通常用内存中读取一个指令字的 最短时间来规定CPU周期。 时钟周期 通常称为节拍脉冲或T周期。一个CPU周期包含若 干个时钟周期。
CISC 采用微程序设计方法实现指令的控制器 减轻编程的工作量,缩短程序代码 由于大量的复杂指令、可变的指令长度、多种的寻 址方式,大大增加了解码的难度,代码难以优化, 执行效率低
钱付兰
安徽大学
2.2.2

CISC和RISC
RISC IBM370CISC系统占总指令数仅20%的简单指令在程序调用 中占了80%,而占指令数80%的复杂指令却只有20%的机 会用到 RISC具有以下的特点: 指令系统简化,由一些基本的、必要的指令构成; 除LOAD/STORE指令外,所有指令只与寄存器打交道, 都在一个时钟周期内执行完毕; 绝大部分采用硬联线控制,不用或少用微程序实现; 使用较多的通用寄存器,没有专用寄存器; 采用优化编译技术,生成高效的目标代码程序。
钱付兰 安徽大学
2.1.3
寄存器
5.累加寄存器(AC) 累加寄存器AC通常简称为累加器,它是一个通用寄存器。其功能是:当运 算器的算术逻辑单元ALU执行算术或逻辑运算时,为ALU提供一个工作区。累 加寄存器暂时存放ALU运算的结果信息。显然,运算器中至少要有一个累加寄 存器。 6.状态条件寄存器(PSW: Program Status Word) 状态条件寄存器保存由算术指令和逻辑指令运行或测试的结果建立的各 种条件码内容,如运算结果进位标志(C),运算结果溢出标志(V),运算结果 为零标 志(Z),运算结果为负标志(N)等等。这些标志位通常分别由 1位触发器 保存。 除此之外,状态条件寄存器还保存中断和系统工作状态等信息,以便使 CPU和系统能及时了解机器运行状态和程序运行状态。因此,状态条件寄存 器是一个由各种状态条件标志拼凑而成的寄存器。
钱付兰
安徽大学
2.2.2
CISC和RISC
机器指令分为两种: CISC Complex Instruction Set Computer,复杂指令集计算机 RISC Reduced Instruction Set Computer,精简指令集计算机
钱付兰
安徽大学
2.2.2

CISC和RISC
钱付兰
安徽大学
2.1.4
CPU的结构图
钱付兰
安徽大学
2.2
指令系统
对于机器语言程序来说,计算机的所有功能都体现在它所提供的指令里。 对于用户来说,计算机完成的所有功能,都是通过执行一条一条的指令来 实现的。
钱付兰
安徽大学
2.2.1

指令系统的概念
指令是指示计算机执行某种操作的命令。从计算机组 成的层次结构来说,计算机的指令有三种: 微指令: 微程序级的命令,属于硬件部分 宏指令: 由若干条机器指令组成的软件指令,属于软件 机器指令: 介于微指令与宏指令之间,通常简称为指令
控制器的组成 控制器由程序计数器PC、指令寄存器IR、指令译码器、时序产生器和操作控 制器组成,它是发布命令的“决策机构”,即完成协调和指挥整个计算机系 统的操作。它的主要功能有: (1)从内存中取出一条指令,并指出下一条指令在内存中的位置; (2)对指令进行译码或测试,并产生相应的操作控制信号,以便启动规定的动 作; (3)指挥并控制CPU、内存和输入/输出设备之间数据流动的方向。
钱付兰
安徽大学
2.1.3
寄存器
1.数据缓冲寄存器(DR) 数据缓冲寄存器用来暂时存放由内存储器读出的一条指令或一个数据字; 反之,当向内存存入一条指令或一个数据字时,也暂时将它们存放在数据缓冲 寄存器中。 缓冲寄存器的作用是 : (1)作为CPU和内存、外部设备之间信息传送的中转站; (2)补偿CPU和内存、外围设备之间在操作速度上的差别; (3)在单累加器结构的运算器中,数据缓冲寄存器还可兼作为操作数寄存器。
钱付兰
安徽大学
2.2.4

指令格式
指令格式 指令字就是表示一条指令的二进制代码,通常简称 指令;指令格式,则是指令字用二进制代码表示的 结构形式 一条指令通常由操作码、地址码字段构成 操作码字段指定指令的功能特性 地址码字段指定操作数的地址
钱付兰
安徽大学
2.2.4

指令格式
存放在内存中 的数值
内存地址
钱付兰 安徽大学
30023H 30024H
2.1.3
寄存器
3.指令寄存器(IR) 指令寄存器用来保存当前正在执行的一条指令。当执行一条指令时,先 把它从内存取到缓冲寄存器中,然后再传送至指令寄存器。指令划分为操作 码和地址码字段,由二进制数字组成。为了执行任何给定的指令,必须对操 作码进行翻译,以便识别所要求的操作。 指令译码器就是做这项工作的。指 令寄存器中操作码字段的输出就是指令译码器的输入。操作码一经译码后, 即可向操作控制器发出具体操作的特定信号。 4.程序计数器(PC) 为了保证程序能够连续地执行下去,CPU必须具有某些手段来确定下一 条指令的地址。而程序计数器正是起到这种作用,又称为指令计数器。在程 序开始执行前,必须将它的起始地址送入PC,即程序的第一条指令所在的内 存单元地址送入PC中。因此PC的内容即是从内存提取的第一条指令的地址。 当执行指令时,CPU将自动修改PC的内容,以便使其保持的总是将要执行的 下一条指令的地址。由于大多数指令都是按顺序来执行的,所以修改的过程 通常只是简单的对PC加1。 但是,当遇到转移指令如JMP指令时,那么后继指令的地址(即PC的内 容)必须从指令寄存器中的跳转指令地址字段取得。在这种情况下,下一条从 内存取出的指令将由转移指令来规定,而不是像通常一样按顺序来取得。
2.2.5

寻址方式
数据寻址方式(即操作数寻址) 立即寻址
钱付兰
安徽大学
2.2.5

寻址方式
数据寻址方式(即操作数寻址) 直接寻址
钱付兰
安徽大学
2.2.5

寻址方式
数据寻址方式(即操作数寻址) 间接寻址
钱付兰
安徽大学
2.2.5

寻址方式
数据寻址方式(即操作数寻址) 寄存器寻址方式 相对寻址 变址和基值寻址方式
相对控制器而言,运算器接受控制器的命令而进行动作 ,即运算器所进 行的全部操作都是由控制器发出的控制信号来指挥的,所以它是执行部 件。 运算器有两个主要功能: (1)执行所有的算术运算; (2)执行所有的逻辑运算,并进行逻辑测试,如零值测试或两个值的比较。
钱付兰
安徽大学
2.1.3
寄存器
所谓寄存器(register),它是CPU内部用来存放数据的一些小型存储区域, 用来暂时存放参与运算的数据、运算结果或者其他信息。 因其放置在CPU内部,存取速度方面比从内存存取要快,但是容量比内存也 要小的多。 根据用户对寄存器是否可见(主要体现在可编程可访问上)将寄存器分为两 类: 用户可见的寄存器 用户不可见的寄存器 数据寄存器、地址寄存器 程序计数器、指令寄存器、状态条件寄存器
存储系统:外存储器和内存储器
外围设备:鼠标、键盘、显示器等 输入输出方式:CPU与外围设备信息交流的方式
多处理器:并行体系结构的介绍
钱付兰
安徽大学
2.1
中央处理器
微处理器将运算器、控制器和部分寄存器集成在一个芯片上,通常称之为中 央处理部件。


主要功能: 顺序控制 操作控制 时间同步 数据处理 主要部件: 控制器 运算器 寄存器组
相关文档
最新文档