DJ6第3章-基本组成与概念.ppt_第1页
DJ6第3章-基本组成与概念.ppt_第2页
DJ6第3章-基本组成与概念.ppt_第3页
DJ6第3章-基本组成与概念.ppt_第4页
DJ6第3章-基本组成与概念.ppt_第5页
已阅读5页,还剩36页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第三章 CPU子系统,本章主要讨论:,运算器 控制器 数据通路结构 与外部的连接,指令的执行过程,CPU组成,CPU工作原理,第一节 CPU概论,CPU的基本功能:,l 数据加工:,l 时间控制:,l 操作控制:,l 指令控制:,程序的顺序控制, 称为指令控制。,产生每条指令的操作信号, 并将各种操作信号送往相应的部件, 控制这些部件按指令的要求进行动作。,对各种操作实施时间上的定时, 称为时间控制。,所谓数据加工, 就是对数据进行算术运算和逻辑运算处理。,3.1.1 CPU的基本组成, 传统CPU的组成:, 现代的CPU的基本部分有:,运算部件 Cache 控制器,运算部件 控制器 (在诺曼机的定义中),1、运算部件, 应能完成数据输入(参与运算的数据), 应能对输入的数据进行运算(或加工), 应能输出运算(或加工)后的结果,因此运算器有以下构成:,输出逻辑,运算结果,(1) 输入逻辑 选择器或暂存器,(2) 算术逻运算部件 设置一个ALU, 完成基本的加减运算, 复杂运算由软件完成;, 设置一个ALU, 与相应时序电路配合, 硬件完成定点乘除法运算;, 设置一个ALU, 但将乘除法和浮点运算部件作为ALU的基本配置;, 配置多个运算部件,(3) 输出逻辑 通常完成: 直送、左右移位、字节交换等功能。,2、寄存器组,CPU内部需要若干寄存器来存放需要加工、运算的数据、中间结果、最终结果等。,(1) 寄存器的两种基本组成, 独立结构寄存器,由若干单独的寄存器构成, 小型RAM,每一个单元作为一个寄存器使用,(2) 寄存器的分类,按寄存器存放的信息的类型(或使用的方式)进行分类(七类):, 通用寄存器 一般是指可以通过程序访问的、具有多种用途的寄存器, 每一个通用寄存器有编号与之对应。 作用如: 存放数据(原始数据、中间结果、最终结果等), 也可以存放地址进行间接寻址、变址寻址等。 标识方法: 不同的CPU可能各不相同。 如: Intel8086的 AX、BX、CX、DX、DI等 PDP-11小型机的 R0、R1 、 R2等, 暂存器 暂存器不能通过程序访问, 也没有编号。 主要作用是存放指令执行过程中的中间信息。 比如: 从一个主存单元读数据存到另一个单元, 则有以下过程 单元暂存器单元; 为运算器两个输入端提供数据, 分两次将操作数送往两个不同的暂存器。, 指令寄存器 (IR) 存放从存贮单元中读出的指令。 一个指令寄存器存放一条指令, 也可以设置一个指令队列, 存放多条指令, 程序计数器 (PC、IC、IP) 用于跟踪程序的地址。 PC的初值为所要执行的程序的首地址。 如果一条指令占据1个单元, 则一条指令被读出以后, 则进行: PC+1 PC操作 ; 如果一条指令占据2个单元, 则一条指令被读出以后, 则进行: PC+2 PC操作; 依次类推。, 程序状态字寄存器(PSW) 用于记录现行程序的运行状态和指示程序的工作方式。主要由以下两个部分构成:, 特征位 进位位C: 指令执行后, 如果结果产生进位, 则将C置为1, 否则置0;, 溢出位V: 如果运算结果产生溢出, 则将V置为1, 否则置0; 零标志Z: 如果运算结果为0, 则将Z置为1, 否则置0; 正负标志N: 如果运算结果为负, 则将N置为1, 否则置0; 奇偶标志P: 如果运算结果中1的个数为奇数, 将P置为1, 否则置0; (Intel8086的规定与此相反) 以上标志位的状态是由指令执行的结果决定的。, 编程设定位 PSW的另一部分状态的设置是由编程来决定, 其典型的设置有:, 跟踪位T: 称为断点标志, 主要用于程序调试。 如果编程时, 将T置为1, 且在程序中安排一条测试指令, 当程序执行到该测试指令时, 程序将转入测试程序。 单步标志 TF 将单步标志置1, 则程序每执行一条指令, 就产生一次内部中断。其功能主要用于程序调试。, 中断允许标志或程序优先级字段: 中断允许标志I(或TI): 根据当前运行程序与外部中断的紧要程度, 处理器通过对该标志的设置, 决定是否响应中断请求。 为每一程序和中断请求设置优先级, 仅当中断请求的优先级高于正在执行的程序的优先级, 才响应中断请求。,(在微型计算机中, 一般采用前一种方式), 地址寄存器 MAR CPU访问存储器和访问I/O端口的地址首先存入MAR, 再有MAR送往外部地址总线。, 数据缓冲寄存器 MBR (或MDR) 用于暂存CPU与存储器和外设之间通信的数据。,可以看出, MAR、MBR是CPU联系存储器和外设之间的桥梁, 如下图所示:,3、微命令产生部件,“第一章 概论”中的描述: 计算机工作过程: 信息以电信号形式的流动 流动过程是受控的 受控的表现是: 流动方向 流动时机 流动时间 控制过程的实现: 电子开关器件,这从指令执行的角度, 指令执行过程:,取指阶段(取指),指令分析阶段(译码),指令执行阶段(执行),程序下一条指令,(可包含取操作数、运算、存结果、设置标志位等), 每一步操作都需要相应控制信号, 也需要相应的时序信号来控制操作的时间; 上述的控制信号(命令)即称为微命令; 因此需要有控制逻辑电路和时序电路来产生微命令和时序信号; 该控制逻辑电路和时序电路即为控制器的核心。,程序计数器,指令寄存器,时序产生器,操作控制器,指令译码器,根据以上描述, 控制器应由以下部件构成:,跟踪指令地址, 取指令控制,存放取出的指令,识别指令功能,产生微操作信号序列, 控制信息的流动过程,控制器的构成框图:,微操作信号序列形成部件,时序信号及控制,指令译码器,启停控制,指令寄存器,脉冲源,程序计数器,4、时序系统, 功能:,控制操作时间和操作时刻。,时序信号是产生微命令的依据之一。, 时序:,即时间控制电路, 也称为时序系统。,功能完成的时间、时刻的控制, 时钟振荡器提供基本的时序源,如下图所示:,振荡器,时钟脉冲,工作脉冲,时钟周期(节拍),产生电位型微命令, 控制操作时间段(时间控制),产生脉冲型微命令,控制定时操作(时机控制),分频器,启停控制逻辑(产生稳定脉冲,生成RESET信号),执行阶段的时间长度,.,操作的时机,时序控制例:,5、CPU内部的数据通路的结构,CPU内部由许多部件构成, 如运算器、微命令发生器、各种寄存器、时序控制逻辑等。 就数据信息的传送, 需要为数据的传送提供传送的通路(即通信线路)。,完成如: 寄存器中的数据怎样送往ALU; ALU的结果怎样送往寄存器; 寄存器之间的数据怎样传送等功能。,不同功能、性能的处理器, 其数据通路是不同的。,问题: 如何设计数据通路?,典型的数据通路结构:, 单总线通路 设置一组数据通信总线, 数据传送均通过该总线进行; 结构简单、但不能实现多组数据并发;, 多总线通路 设置多组数据通信总线, 可实现不同数据在不同的通路上传送; 结构复杂、但能实现多组数据并行传送;,不同结构即是在复杂性与性能之间的选择。,(1) 单组内总线、分立的寄存器结构,主要特点: 各寄存器有自己独立的输入口和输出口; 数据总线为单向, 运算器ALU只能通过移位器向总线发送数据, 而不能直接从总线接收数据; 寄存器可接收总线上的数据, 但不能直接向总线发送数据;, ALU通过选择器接收寄存器的数据。, 根据上述特点, 以下数据传送功能的完成:, 寄存器 运算器 寄存器 选择器 运算器, 运算器 寄存器 运算器 移位器 寄存器,(由选择控制信号),(由移位控制信号), 寄存器 寄存器 寄存器 ALU 移位器 寄存器,这是一种以ALU为中心的单总线结构, 需要的主要控制信号 寄存器开门信号 移位控制信号 寄存器打入脉冲,(2) 单组内总线、集成寄存器结构 与第一种方式的主要区别在于寄存器的结构。, CPU内部集成小型的存储器, 存储器的每一个单元作为一个寄存器使用(称为寄存器组)。, 一组双向数据总线连接ALU和寄存器组。, 暂存器取代了(独立寄存器结构中的)选择器, 结构图:,主要特点:, 数据总线为双向, 运算器ALU既能向总线发送数据, 也能直接从总线接收数据(由暂存器接收); 各寄存器可从总线接收和向总线发送数据;, 完成 R0 + R1 R2 , 步骤如下:, R0 内总线 暂存器C R1 内总线 暂存器D 执行加法 结果经移位器(直送) 内总线 内总线 R2,(3) 多组内总线结构,CPU内部设置多组总线, 用于传输不同类别的信息(地址信息、数据信息、指令信息等分别用不同的总线传送)。,如 Pentium处理器的内部结构:,3.1.2 时序控制方式,“时序控制方法”的提出:,计算机由若干不同功能、不同速度的部件和设备构成, 这些部件之间通信时, 怎样才能做到时间上同步?,所谓“时序控制方法”, 即根据不同的部件和设备, 采用不同的时间同步方式。也称为操作与时序信号之间的关系。,主要的时序控制方法有: 同步控制 异步控制 上述方式的变形,1、同步控制方式, 定义:, 特点:, 有明显时序时间划分;, 时钟周期时间固定;, 各步操作的衔接、各部件之间的数据传送受严格同步定时控制。,各项操作受统一时序控制。,由CPU或其它设备提供,例:,将数据总线内容打入指令寄存器,取数, 打入数据寄存器, 并进行加法操作,从此处开始,执行将结果存入存储单元的操作,认定结果已存入存储单元,执行一条加法指令:,假设需要三个工作周期:, 应用场合:,用于CPU内部、设备内部、系统总线操作, 时序关系简单, 时序划分规整, 控制不复杂;, 时间安排不合理(缺点)。, 控制逻辑易于集中, 便于管理。, 优缺点:, 采用同步控制的一些条件 发送、接收部件(或设备)传送时间确定; 各部件速度相近, 传送距离较近。 一次通信时间不太长,2、异步控制方式,各项操作按不同需要安排时间, 不受统一时序控制。, 定义:,例. 异步传送操作, 主设备:,申请并掌握总线权的设备。, 从设备:,响应主设备请求的设备。, 特点:,无统一时钟周期划分, 各操作间的衔接和部件之间的信息交换采用应答方式。, 操作流程:,主设备获得总线控制权,主设备询问从设备,主设备发送/接收数据,主设备释放总线控制权,Y,N,主设备输出端与总线连接,主设备输出端与总线断开, 操作流程:,也可以描述为(以读数据为例):,主设备发出RQ请求信号、地址以及读命令,从设备,(2),(RQ信号一直保持有效),从设备收到主设备命令,将数据放到数据总线上,主设备,发出应答信号ACK,(3) 主设备收到ACK后, 采样数据总线(读数据),将RQ信号变为无效,(4) 从设备检测到RQ信号无效, 停止驱动数据总线, 将ACK变为无效,从时序上看:,RQ,Data,ACK,主设备检测到ACK, 采样数据总线,地址/读命令,主设备将RQ变为无效,从设备停止驱动数据总线,将ACK变为无效, 时间安排紧凑、合理; 控制复杂。, 优缺点:, 应用场合:,用于异步总线操作(各挂接部件速度差异大、传送时间不确定、传送距离较远等)。,3 同步控制在实际应用中的变化,指令周期长度可变, 时钟周期长度不变。,可用计数器指示时钟周期数的变化。, 不同指令安排不同时钟周期数,既有一套时序系统, 但不同指令又有不同时序。,时序及控制电路非常复杂(一般不采用)。,总线周期长度可变, 时钟周期长度不变。,总线周期(4T),例. 一个总线周期包含4个时钟周期,时钟,T1,T3,T2,T4,送地址,读/写数据,结束,同步方式, 总线周期中插入延长周期,经总线传送一次数据所用的时间(送地址、读/写),总线周期(5T),扩展同步方式,送地址,读/写数据,结束,Intel8086系统的总线操作采用了与上述类似的方式。,比如在Intel 80286中, 一次总线操作的基本长度为三个T时钟。,不需要和需要插入Tw的时序如下:,(1) 无等待周期的存储器读,Ready,Data,地址,CPU采样数据,(2

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论