第5章 中央处理器(CPU) .ppt
《第5章 中央处理器(CPU) .ppt》由会员分享,可在线阅读,更多相关《第5章 中央处理器(CPU) .ppt(180页珍藏版)》请在三一文库上搜索。
1、1,第5章 中央处理器(CPU),5.1 控制器的基本概念 5.2 时序系统与控制方式 5.3 指令的执行过程 5.4 微程序控制原理 5.5 微程序设计举例 5.6 硬布线控制器 5.7 流水线处理技术 5.8 CPU举例,2,5.1 控制器的基本概念,5.1.1 控制器的功能 5.1.2 控制器的基本组成 5.1.3 控制器的实现方法,控制器是计算机的控制和指挥中心,它负责对指令进行译码,产生一系列控制信号,指挥和 协调计算机各部件工作。,3,5.1.1 控制器的功能,1)操作控制功能 2)指令顺序控制功能 3)时序控制功能 4)对异常和某些请求的处理功能 (1)异常 (2)中断 (3)D
2、MA请求或其它主控设备的总线请求,4,送AR,5.1.2 控制器的基本组成,时序部件,5,1)指令部件,(1)程序计数器PC PC是用来提供下一条要执行的指令的地址 在程序顺序执行时,由PC自动增1功能提供下一条指令的地址。 (2)指令寄存器IR IR用来存放当前从主存中取出的指令。 指令存放于IR中,直到被下一条取出的指令所取代。,6,(3)指令译码器ID ID的功能是对存放IR中的操作码进行译码。经ID输出的一系列控制电位反映该指令的操作性质 。 (4)地址形成部件 地址形成部件的功能是根据指令的寻址方式,形成有效地址。 有效地址地址寄存器AR (操作数的地址) 有效地址PC (跳转的目标
3、地址),7,2)时序部件 时序部件是用来产生机器中的各种时序信号,对各种操作实施时间上的控制。 (1)时钟脉冲发生器 时钟脉冲信号是机器的主频信号,为机器提供时间基准。 它由外接高稳定度的晶体振荡器产生,具有一定占空比。例如:占空比1/3,8,(2)启停线路 开放和封锁脉冲,控制时序信号的发生和停止 ; 保证起动时输出的第一个脉冲和停止时的最后一个脉冲都是完整的。 (3)节拍信号发生器 节拍信号分为节拍电位和节拍脉冲 节拍电位:用于控制数据通路中代码的传送或数据的运算。 节拍脉冲(工作脉冲):用于寄存器接收代码的选通信号。,9,3)微操作信号发生器,根据指令操作码译码结果和时序信号及状态标志,
4、产生各种操作控制信号,以便正确地建立数据通路,完成取指令和执行指令的控制。 通常把许多寄存器之间传送信息的通路,称为“数据通路”。 4)中断控制逻辑 中断控制逻辑是用来控制中断处理的硬件逻辑,对于某些外部中断的处理,需要外部中断逻 辑配合完成。,10,5.1.3 控制器的实现方法,硬布线控制器 根据译出的指令各字段的含义,并结合当前工作状态及时序信号,由组合逻辑电路形成微操作控制信号。 微程序控制器 以存储逻辑取代组合逻辑,根据指令操作码的译码转向控制存储器取出对应的微程序,由微指令提供微操作控制信号。,11,5.2 时序系统与控制方式,5.2.1 时序系统 5.2.2 时序控制方式,12,5
5、.2.1 时序系统,计算机的协调动作需要时间标志,而时间标志是用时序信号来体现的。 1)指令周期和机器周期 (1)指令周期 完成一条指令所有操作所需要的时间,称为指令周期。 指令周期通常用若干机器周期(CPU周期)表示。指令周期长短不同。,13,(2)机器周期 为了便于对执行时间各不相同的指令进行控制,一般根据指令的操作性质和控制功能,将各指令分成一些基本操作,每一条指令由若干个不同的基本操作组成,对每一个基本操作规定一个基本时间称为机器周期。 不同机器周期完成不同的操作。在时序系统中设置一组周期状态触发器,以标志不同的机器周期。任一时序只允许其中的一个触发器为1,以表明CPU当前所处的机器周
6、期。,14,2) 节拍电位和工作脉冲,(1)节拍电位 一个机器周期内要完成若干个微操作,这些微操作有的可以同时进行,有的则按先后次序串行执行。每个微操作都需要一定的时间,因此需要将一个机器周期分为若干相等的时间段,每一个时间段,用一个电平信号宽度对应,称为节拍电位。 节拍电位作为开门/关门控制信号。,15,(2)工作脉冲 用于同步触发器的翻转。如:运算结果打入、周期切换。一个节拍内可以设置一个或几个工作脉冲。 工作脉冲一般处于节拍后部(节拍脉冲)。,若机器周期由时钟组成,脉冲的前沿将运算结果打入寄存器,后沿实现周期切换。时钟电位作为开门/关门控制信号。,16,节拍电位和工作脉冲配合关系,17,
7、3)总线周期,完成一次总线操作所需的时间称为总线周期。 总线周期与机器周期的区别在于总线周期是根据要求出现的。 例如: 8086基本的总线周期,18,4)多级时序系统,(1)三级时序信号间的关系,这些时序信号将参与形成各种微操作命令。,机器周期 节拍 工作脉冲,19,(2)时钟周期的时序系统,20,5.2.2 时序控制方式,CPU的控制方式包含时序控制方式和指令执行控制方式。 形成控制不同操作序列的时序信号的方法,称为时序控制方式,其实质反映了时序信号的定时方式。 1)同步控制方式 固定时序控制。受事先确定的时序信号所控制。每个时序信号的结束意味一个微操作的完成,随即开始进行后继的微操作。,2
8、1,同步控制方式可选取的三种方案:,(1)定长机器周期 (2)不定长机器周期。 (3) 中央控制与局部控制结合。,同步控制方式的特点 设计简单,容易实现 影响指令的执行速度,22,2) 异步控制方式,每条指令、每个操作控制信号需要多少时间就占用多少时间。当控制器发出某一操作控制信号后,等待执行部件完成操作后发回“回答”信号,再开始新的操作。没有统一的时钟,各功能部件拥有各自的时序信号。 异步控制方式的特点 没有时间上的浪费,提高了机器的效率; 分散控制,比较复杂。,23,3) 联合控制方式,同步控制和异步控制相结合的方式。 大部分操作序列安排在固定的机器周期中,对某些时间难以确定的操作则以执行
9、部件的“回答”信号作为本次操作的结束。 例如CPU访问主存时,依靠其送来的“READY”信号作为读写周期的结束。 常用:部件内同步,部件间异步,24,5.3 指令的执行过程,5.3.1 CPU的基本功能元素 5.3.2 指令执行的基本过程 5.3.3 指令执行的微操作序列,25,5.3.1 CPU的基本功能元素,逻辑 函数,启动信号,二进制 存储位元,读 写,1)门 实现逻辑功能,采用电位控制数据流,无记忆功能 2)存储位元 存储一位数据的元件,采用脉冲打入数据,有记忆功能,26,5.3.2 指令执行的基本过程,CPU的工作过程就是执行指令序列的过程。 1)取指令 2)分析指令 (1)指令译码
10、产生微操作控制信号 (2)计算操作数的有效地址 (3)取操作数 对于分页式或分段式存储器结构需要将有效地址与段或页基址组合形成物理地址送主存取出操作数。 3)执行指令 4)响应中断或DMA请求,27,PC,28,5.3.3 指令执行的微操作序列,从指令的微操作序列说明一条指令的执行过程。 微操作序列是与CPU的内部数据通路密切相关。,指令格式 加法指令完成的功能: (rs1)+disp)+(rs)rd (rd、rs为同一R) 设加法指令采用四个机器周期(每个机器周期包含T1、T2): 取指、计算有效地址、取数、运算及送结果,29,30,1)取指 (PC)AB 访存控制命令 ADS=1(T1周期
11、)、 M/IO=1、 W/R=0 DB IR (PC)+1 2)计算有效地址送AR,即(rs1)+disp AR rs1 GR、 (rs1) ALU、disp ALU “+” ALU AR,31,3)取数 (AR) AB 访存控制命令 ADS=1(T1周期)、 M/IO=1、W/R=0 DBDR 4)运算及送结果、置状态标志 rs、rdGR、 (rs) ALU、 (DR)ALU “+” ALUGR、 置N、Z、V、C标志,32,JC A,1)取指 (PC)AB 访存控制命令 ADS=1(T1周期)、M/IO=1、W/R=0 DB IR (PC)+1 2)分析执行 If c=0 then end
12、 If c=1 then (PC) ALU、disp ALU “+” ALU PC,33,5.4 微程序控制原理,5.4.1 微程序控制的基本概念 5.4.2 实现微程序控制的基本原理 5.4.3 微指令编码法 5.4.4 微程序流的控制 5.4.5 微指令格式及执行方式 5.4.6 微程序设计技术的应用,34,5.4.1 微程序控制的基本概念,1)微命令和微操作 控制部件通过控制线向执行部件发出各种控制命令,通常把这种控制命令叫做微命令,它构成控制序列的最小单位。 执行部件接受微命令后所进行的操作,称为微操作,它是最基本的、不可再分解的操作。 相容性的微操作:指在同一个微周期内可以并行执行的
13、微操作。(相容性微命令) 互斥性的微操作:指不能在同一个微周期内并行执行的操作。(互斥性微命令),35,2)微指令和微地址,在一个微周期中,一组实现一定操作功能的微命令的组合,构成一条微指令(控制字)。 微指令组成 操作控制字段:用来发出管理和指挥全机工作的工作信号。 位信息为“1”时,表示发出微命令; 位信息为“0”时,表示不发微命令。 顺序控制字段(下址字段):用来控制产生下一条微指令的地址。 微指令存放在控制存储器中,存放微指令的控制存储器的单元地址称为微地址。,36,3)微周期(机器周期或节拍) 从控存中读取一条微指令并执行相应的一组微命令所需的全部时间 4)微程序 一条机器指令的功能
14、是用许多条微指令组成的序列来实现的,这个微指令序列称为微程序。,37,微程序控制计算机涉及两个层次,传统机器层: 机器指令 工作程序 主存储器 微程序层: 微指令 微程序 控制存储器,38,5.4.2 实现微程序控制的基本原理,1)微程序实现加法指令 设ALU能进行+、-、 、 四种运算,39,加法指令对应控制信号的序号,用4个机器周期完成,每个机器周期用一条微指令产生微操作命令。 取指微指令的微命令序号: 1、3、5、23、24、25 计算有效地址微指令的微命令序号: 4、8、10、15、21 取数微指令的微命令序号: 6、22、23、24、25 运算及送结果微指令的微命令序号: 9、11、
15、13、15、19,40,微指令格式,取指微指令 1010100000000000000000110 计算有效地址微指令 0001000101000010000010000 001000000010 取数微指令 0000010000000000000001110 001000000011 运算及送结果微指令 0000000010101010001000000 001000000000,操作控制字段,顺序控制字段,(PC)AB,ALU PC,W/R,设控存容量为4K字,41,微程序流程图的表示,42,2)微程序控制器基本工作原理,43,工作过程: 执行取指公共操作(0#单元开始) 形成微程序入口地
16、址MAR 从CM中取微指令 IR: 产生一组微命令控制有关操作, 通过微地址形成部件形成下址 下址MAR 重复3)、4)直到机器指令的微程序执行完毕。 返回到取指微程序的入口,重复上述过程,直到整个程序执行完毕。,44,3)时序信号的形成,(1)二分频电路及节拍电位、工作脉冲的产生,45,(2)打入脉冲的形成,方法一:控制信号“与”CP,46,方法二:直接用CP,47,(3)特殊控制信号的产生,例如:ADS,48,(4)访存需要等待的处理方法,49,5.4.3 微指令编码法,微指令编码是指对操作控制字段的编码。 实质:在微指令中如何组织微命令。 典型的微指令编译法有: 1)直接控制法 2)最短
17、字长编码法 3)字段直接编码法 4)字段间接编码法 5)常数源字段E,50,1)直接控制法,操作控制字段中的每一位代表一个微命令。 优点:简单直观,其输出直接用于控制,并行性强,速度快。 缺点:微指令字较长,因而使控制存储器容量较大。,51,2)最短字长编码法,所有微命令统一编码,每条微指令只定义一个微命令。 L log2n 优点:微指令字最短。 缺点:译码复杂,不能充分利用硬件的并行性,微程序长,速度慢,对要求同时动作的组和性微操作无法实现。,52,3)字段直接编码法,把一组互斥性的微命令信号组成一个字段,然后通过字段译码器对每一个微命令信号进行译码,译码输出作为操作控制信号。,53,优点:
18、用较少的二进制信息位表示较多的微命令信号。 缺点:使微程序的执行速度减慢。 例如:3位二进制位译码后可表示7个微命令,4位二进期位译码后可表示15个微命令。,54,例题:某运算器数据通路如图。 指出哪些微操作是互斥的,哪些是相容的。 分别用直接控制法和字段直接编译法设计适合该运算器的微指令格式中的操作控制字段。 解:互斥微操作: IR A、R1 A、R2 A、R3 A互斥; R1B、R2B、R3B互斥; +、-、M互斥。 相容微操作: A选通门的任一个微操作与B选通门的任一个微操作相容; LDR1、LDR2、LDR3相容。,55,56,直接控制法操作控制字段:,57,字段直接编码法操作控制字段
19、,58,4)字段间接编码法,一个字段的某些编码不独立地定义某些微命令,而与其他字段联合定义。,59,例如:有一ALU,它能完成8种不同的算术运算和8种不同的移位运算,用1位字段指示是算术运算还是移位运算,3位字段指示是8种操作中的某一种。 5)常数源字段E,通常把直接控制法与字段编码法相混合使用,以便能综合考虑微指令字长、灵活性和执行微程序速度等方面的要求。 目标:减少微指令字长,增强微操作的并行性。,60,5.4.4 微程序流的控制,1)微程序入口地址的形成 OP微程序入口地址 一级功能转换机器指令的OP位数、位置固定(定长、定位置) 二级功能转换同类机器指令的OP位数、位置固定,不同类机器
20、指令的OP位数、位置不固定 MAPROM机器指令的OP位数、位置不固定(变长、变位置),61,(1)一级功能转换,OP与入口地址的部分位相对应。 000 OPB 设OP以4位二进制编码表示: MOV 0000000B ADD 0000001B SUB 0001111B,62,OP 111B,MOV 0000111B ADD 0001111B SUB 1111111B,63,(2)二级功能转换,按指令类型标志转换 -区分指令类 各类按OP转换 -形成入口地址,(3)采用映像存储器MAPROM(2716),64,2)后继微地址的形成,(1)增量方式 顺序执行:后继微地址由现行微地址加上一个增量来产
21、生。 非顺序执行:由转移逻辑产生一个转移微地址。 顺序执行的微指令序列必须安排在控制存储器的连续单元中。 PC作为: 微地址寄存器 微程序计数器,65,增量方式,66,增量方式的基本特点: 微指令的顺序控制字段较短,仅起选择作用。 微程序转移很不灵活性,使得微程序在控制存储器中的物理空间分配困难。,67,(2)增量与下址字段结合方式,微指令顺序控制部分分成: 转移控制字段BCF 转移地址字段BAF 当微程序转移时,将BAF送微程序计数器(PC),否则顺序执行下一条微指令(PC加1)。,68,69,(3)多路转移方式(断定方式),一条微指令具有多个转移分支的能力称为多路转移。 当微程序不产生分支
22、时,后继微地址直接由微指令的下址字段给出; 当微程序出现分支时,有若干“后选”微地址可供选择。 下址字段由两部分组成: 非测试段:由设计者指定,一般为微地址的高位。 测试段:根据有关状态位的测试确定后继微地址,一般为微地址低位部分。,70,测试段有1位标志,可实现微程序2路转移; 测试段有2位标志,可实现微程序4路转移。,实现两路转移 实现四路转移 实现三路转移,71,3)微程序定序器Am2910,72,73,5.4.5 微指令格式及执行方式,1)微指令格式 水平型微指令 一次能定义并执行多个并行操作微命令的微指令,称为水平型微指令。 垂直型微指令 控制字段的设置采用编码法,由微操作码规定微指
23、令的功能,称为垂直型微指令。 垂直型微指令的结构类似于机器指令的结构。它有操作码,在一条微指令中只有1-2个微操作命令,每条微指令的功能简单。 它是采用较长的微程序结构去换取较短的微指令结构。,74,(3)水平与垂直的比较:,75,2)微指令的执行方式,取微指令-从控存中取出 执行微指令-执行规定的各个操作 执行方式: 串行方式 并行方式,(1)串行方式 取微指令和执行微指令是顺序进行。 在一条微指令取出并执行之后,才能取下一条微指令。,76,取微指令阶段:CM工作,数据通路等待 执行微指令阶段: CM空闲,数据通路工作,77,(2)并行方式,在执行当前微指令的同时,预取下一条微指令。,78,
24、5.4.6 微程序设计技术的应用,1)计算机功能固件化 硬件的固件化 计算机中凡具有逻辑控制功能的部件皆可固件化,例如:微程序控制器。 软件的固件化 用微程序实现操作系统的内核; 提供对高级语言支持; 用微程序实现嵌入主机系统的专用设备。例如:驱动程序以固件而不是用软件实现。,79,2)微程序仿真,使用微程序在一台机器上执行原本为另一类机器编写的程序,以支持用户程序由一种计算机移植到另一种计算机上。 例如:System/370仿真IBM1401 宿主机 目标机 宿主机提供二种工作方式: 本机方式 仿真方式,80,3)动态微程序设计,静态微程序设计 微程序设计完毕,不允许也不便于改变,这样的设计
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第5章 中央处理器CPU 中央处理器 CPU
链接地址:https://www.31doc.com/p-5030223.html