第三章计算机原理与操作系统复习课程

上传人:yuzo****123 文档编号:142649577 上传时间:2020-08-22 格式:PPT 页数:179 大小:2.03MB
返回 下载 相关 举报
第三章计算机原理与操作系统复习课程_第1页
第1页 / 共179页
第三章计算机原理与操作系统复习课程_第2页
第2页 / 共179页
第三章计算机原理与操作系统复习课程_第3页
第3页 / 共179页
第三章计算机原理与操作系统复习课程_第4页
第4页 / 共179页
第三章计算机原理与操作系统复习课程_第5页
第5页 / 共179页
点击查看更多>>
资源描述

《第三章计算机原理与操作系统复习课程》由会员分享,可在线阅读,更多相关《第三章计算机原理与操作系统复习课程(179页珍藏版)》请在金锄头文库上搜索。

1、第三章:计算机主机的工作原理,CPU的组成及工作原理 存储器及存储器的工作原理 总线,3.1 CPU的组成及工作原理,CPU概念:中央处理器(CPU :Central Processing Unit)是整个计算机的核心。 传统的CPU组成:运算器、控制器。(在诺曼机的定义中) 现代的CPU的基本部分有:运算器、Cache和控制器。 CPU 是控制并执行指令的部件,该部件不仅要与计算机的其它功能部件进行信息交换,还要控制它们的操作。,CPU的基本功能: 1、能够进行算术运算和逻辑运算; 2、能对指令进行译码、寄存并执行指令所规定的操作; 3、具有与存储器和I/O接口进行数据通信的能力; 4、少量

2、数据的暂存; 5、能够提供系统所需的定时和控制信号; 6、能够响应输入输出设备发出的中断请求。,一条指令在微处理器中执行的过程如下: 1、程序计数器PC指出当前指令地址,并且把指令地址放到地址总线上,然后为取下一条指令做好准备。 2、由数据总线将指令从存储器中取出,送至寄存器,经指令译码,控制电路产生完成该指令的各种控制信号。 3、取出该指令所需的操作数地址和数据 4、完成该指令的操作。 5、检查有无其它控制信号,并作出相应处理。 6、提供指示处理器状态的标志信号、控制信号及定时信号等。,1、算术逻辑运算部件ALU,数据来源: 内部寄存器、外部数据总线(存储器) 主要功能: 1、执行各种算术运

3、算,给出相应的标志位; 2、执行各种逻辑运算,并进行逻辑测试。 通常,一个算术操作产生一个运算结果,而一个逻辑操作则产生一个判决。,完成算术逻辑操作的有关部件(运算器),为什么要设置暂存器和锁存器 1)暂存器 如果是一个操作数,用累加器就能解决,两个操作数就必须将别一个暂存到暂存器。 2)锁存器 ALU本身没有寄存功能,其结果会马上占用内部总线。如何将累加器的结果保存下来,又不再反馈到ALU的输入端,所以设置了锁存器。,标志寄存器F 又称为状态寄存器,用来保存算术或逻辑运算的状态,如运算结果进位标志(Carry)、溢出标志(Overflow) 、零标志(Zero) 、奇偶性标志(Parity)

4、 、符号标志(Sign)等等。,2、控制部件,控制部件的作用是控制程序的执行,是整个系统的指挥中心,必须具备如下基本功能: 指令控制:计算机的工作过程就是连续执行指令的过程。指令在存储器中是连续存放的,按照顺序一条条取出执行。控制器要根据指令所在的地址取出指令,分析指令。 操作控制:管理并产生由内存取出的每条指令的操作信号,把各种操作信号送往相应的部件,从而控制这些部件按指令的要求进行动作。,时序控制:对各种操作实施时间上的定时,称为时序控制。 数据加工:所谓数据加工,就是对数据进行算术运算和逻辑运算处理。,控制器内部主要由以下几个部分组成:,程序计数器PC(program counter):

5、用来存放下一条要执行的指令在存储器中的地址。 指令寄存器IR(instruction register):用来存放从存储器中取出的待执行的指令。 指令译码器ID(instruction decoder):对指令进行“翻译”,确定要进行什么样的操作。 控制电路:根据分析,发出控制信号,完成该指令的所有操作。,3、寄存器部件,寄存器是用来暂时保存运算和控制过程中的原始数据、中间结果、最终结果以及控制、状态信息的,分为通用寄存器和专用寄存器两大类。 通用寄存器和专用寄存器 1)通用寄存器 用来存放原始数据和运算结果,有的还可以作为变址寄存器、计数器、地址指针等。现代计算机中为了减少访问存储器的次数,

6、提高运算速度,往往设置大量的通用寄存器。通用寄存器一般可以由CPU直接访问。,2)专用寄存器 专门用来完成某一特殊功能寄存器。 它们是:指令寄存器(IR)、程序计数器(PC)、地址寄存器(AR)、缓冲寄存器(DR)、累加寄存器(AC)、状态条件寄存器(PSW)。,采用多寄存器结构的目的 1)可补偿采用单总线的速度损失 2)可实现取指令和执行指令的并行操作 3)可以保存中间结果 4)给编程带来灵活性,堆栈和堆栈指针 1)设置堆栈的目的 调用子程序和中断处理时,要保存现场信息,如中间结查、标志等。子程序或中断处理结束后要恢复现场信息,为此在内存中需要专门开辟一专用空间来保存上述信息,此谓堆栈。那为

7、什么要设这个堆栈呢:原因很简单:如果要存放一批数据,每一个数据都需要记住其所在的地址单元,比较麻烦。如果规定数据一定是一个接一个地存放,那么只要知道第一个数据所在的单元地址就可以了,2)堆栈的工作方式 堆栈就是这样一种数据结构。它是在内存中开辟一个存储区域,数据一个一个顺序地存入(也就是“压入push”)这个区域之中。有一个地址指针总指向最后一个压入堆栈的数据所在的数据单元,存放这个地址指针的寄存器就叫做堆栈指示器。开始放入数据的单元叫做“栈底”。数据一个一个地存入,这个过程叫做“压栈”。在压栈的过程中,每有一个数据压入堆栈,就放在和前一个单元相连的后面一个单元中,堆栈指示器中的地址自动加1。

8、读取这些数据时,按照堆栈指示器中的地址读取数据,堆栈指示器中的地址数自动减 1。这个过程叫做“弹出pop”。如此就实现了后进先出的原则。 栈:后进先出(Last-In/First-Out),CPU的工作流程 CPU的工作原理就像一个工厂对产品的加工过程:进入工厂的原料(程序指令),经过物资分配部门(控制单元)的调度分配,被送往生产线(逻辑运算单元),生产出成品(处理后的数据)后,再存储在仓库(存储单元)中,最后等着拿到市场上去卖(交由应用程序使用)。在这个过程中,我们注意到从控制单元开始,CPU就开始了正式的工作,中间的过程是通过逻辑运算单元来进行运算处理,交到存储单元代表工作的结束。,二、8

9、086CPU及其工作原理,1、80X86微处理器芯片的性能指标,字长 指令数 运算速度 访问内存储器空间 虚拟存储空间 多处理器系统 指令作业方式 芯片制造工艺,字长,决定了 CPU 表示数据的精度 提高了CPU 的相对运行速度 典型 CPU 字长,CPU 并行处理数据的位数, 与数据总线宽度有关。,8088 8bit 8086 16bit 80386 32bit Pentium 32bit,64bit,指令数,基本指令133条 扩展指令数千条,确定了CPU 能执行的功能。,功能不同指令助记符形式不同,不同寻址方式和不同寄存器的组合,运算速度,计算机完成操作的时间指标。,用指令执行时间测量(单

10、位s ) 用每秒执行指令数测量(单位MIPS)。 提高速度的方法,提高 CPU 主频 减少指令执行所需时钟周期数 增加数据线条数 取指令和执行指令时间重叠 双 CPU,访存空间,Z80CPU AB = 16 访存空间 = 216 = 64K 8086CPU AB = 20 访存空间 = 220 = 1M 80286CPU AB = 24 访存空间 = 224 = 16M 80386CPU AB = 32 访存空间 = 232 = 4G,CPU 能访问的内存储器单元容量, 与地址总线宽度有关。,虚拟存储空间,用硬件和软件的综合技术来 扩大用户可用存储空间。,主存储器是基础 高速缓存很重要 外存储

11、器是根本,多处理器系统,微处理器 协处理器。,微处理器完成系统的主要功能 协处理器完成系统的特殊功能,微处理器芯片 8086 浮点协处理协处理器芯片 8087 控制总线协处理器芯片 8288,指令作业方式,取指令与执行指令的时间分配。,取指令与执行指令分时进行 取指令与执行指令同时进行,传统 8 位 CPU 工作方式,80X86 CPU 工作方式,芯片制造工艺,工艺的改进带来更高的芯片集成度。,集成度从早期的每片数千个晶体管数量级 到近期的每片数百万个晶体管数量级。 线条宽度从微米级到纳米级 主频从数兆赫兹到数千兆赫兹。,8086/8088CPU 功能结构图,EU 控 制 器,标志寄存器,8位

12、队列总线,总 线 控 制 逻 辑,内部总线16位,20位地址总线,16位数据总线,执行部件EU,总线接口部件BIU,2、8086 CPU 内部结构,8086CPU从功能上可分为下面两个部分 执行部件 EU(Execution Unit) 8086 CPU 的核心,只负责执行指令,分析指令,暂存中间运算结果并保留结果的特征。 接口部件 BIU(Bus Interface Unit) 负责CPU与存储器、I/O接口之间的信息传送。,执行部件的组成,16 位运算器 ALU,8 位控制单元,16 位寄存器组,算术及逻辑运算 16 位偏移地址运算 (8086 特点),从BIU的指令队列中取指令 对指令进

13、行译码并产生不同的控制信号,16 位通用寄存器 AX, BX, CX, DX, BP, SP, SI, DI 16 位状态标志寄存器 Flag,执行单元EU由下列部件组成: 1. 16位算术逻辑单元(ALU):进行算术和逻辑运算。 2. 16位标志寄存器FLAGS:存放CPU运算的状态和控制标志。3. 数据暂存寄存器:暂存参加运算的数据 4. 通用寄存器:包括4个16位数据寄存器AX、BX、CX、DX和 4个16位指针与变址寄存器SP、BP与SI、DI。 5. EU控制电路:它是控制、定时与状态逻辑电路,接收从BIU中指令队列取来的指令,经过指令译码形成各种定时控制信号,对EU的各个部件实现特

14、定的定时操作。,指令队列 为先进先出结构 指令队列中只要有一条指令,EU就开始执行 指令队列只要未满,BIU自动执行取指操作,直到填满为止 当执行转移指令时,EU要求BIU从新的地址中重新取指。队列中原有指令被清除。新取得的第一条指令直接送EU执行,随后取得的指令填入队列,接口部件 BIU,指令队列的特点 经总线从代码段取指令,送 EU 译码,接口部件 BIU,取指 总线忙 执指 总线闲,取指、执指 重叠 取指、执指 总线忙,Z80CPU 的取指、执指(没有指令队列) 顺序执行指令 8086CPU 的取指、执指(有指令队列) 并行执行指令,接口部件 BIU,指令队列的优点,在一条指令的执行过程

15、中可以取出下一条(或多条)指令 在一条指令执行完成后,就可以立即执行下一条指令 减少CPU为取指令而等待的时间 提高CPU的利用率和整个运行速度,接口部件 BIU,16 位指令指针寄存器 IP,接口部件 BIU,指令指针寄存器 IP = 16 bit,注: IP 指向存储器单元的 偏移地址,16 位段寄存器 CS、DS、ES、SS,接口部件 BIU,8086CPU的AB = 20bit,REG = 16bit, 怎样用 16 位寄存器表示 20 位存储器实际地址。,将8086CPU能访问的 1M 存储器空间分为多段, 每段长为 64K个存储单元(段内偏移地址为16位)。,CS、DS、ES、SS

16、 为存放段地址的寄存器, 不同段的段地址放入所对应的段寄存器。,20位地址产生器,接口部件 BIU,输入 输出 公式,段寄存器中的 16 位段首地址(逻辑地址) 内总线中来的 16 位段内偏移地址(逻辑地址),20 位 实际地址(物理地址),实际地址 = 段首地址 * 16 + 段内偏移地址 实际地址 = 段首地址 4 + 段内偏移地址,物理地址:CPU与存储器进行数据交换时在地址总线上提供的20位地址信息称为物理地址。物理地址的形成过程如图3.3所示。当由IP提供或由EU根据指令所提供寻址方式计算出寻址单元的16位段内偏移地址后,把该偏移地址和段寄存器内容左移四位后(相当于乘以10H)得到的段基址(段内第一个存储单元的物理地址)同时送到BIU中的地址加法器,形成一个20位的物理地址,从而实现对存储单元的访问。由逻辑地址求物理地址的公式为: 物理地址=段地址10H+段内偏移

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 中学教育 > 教学课件 > 高中课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号