第5章中央处理器(CPU)

上传人:cl****1 文档编号:578350605 上传时间:2024-08-24 格式:PPT 页数:180 大小:1.43MB
返回 下载 相关 举报
第5章中央处理器(CPU)_第1页
第1页 / 共180页
第5章中央处理器(CPU)_第2页
第2页 / 共180页
第5章中央处理器(CPU)_第3页
第3页 / 共180页
第5章中央处理器(CPU)_第4页
第4页 / 共180页
第5章中央处理器(CPU)_第5页
第5页 / 共180页
点击查看更多>>
资源描述

《第5章中央处理器(CPU)》由会员分享,可在线阅读,更多相关《第5章中央处理器(CPU)(180页珍藏版)》请在金锄头文库上搜索。

1、第5章中央处理器(CPU)第5章中央处理器(CPU)5.1控制器的基本概念5.2时序系统与控制方式5.3指令的执行过程5.4微程序控制原理5.5微程序设计举例5.6硬布线控制器5.7流水线处理技术5.8CPU举例1第5章中央处理器(CPU)5.1控制器的基本概念5.1.1控制器的功能5.1.2控制器的基本组成5.1.3控制器的实现方法控制器是计算机的控制和指挥中心,它负责对指令进行译码,产生一系列控制信号,指挥和协调计算机各部件工作。2第5章中央处理器(CPU)5.1.1控制器的功能1)操作控制功能2)指令顺序控制功能3)时序控制功能4)对异常和某些请求的处理功能(1)异常(2)中断(3)DM

2、A请求或其它主控设备的总线请求3第5章中央处理器(CPU)送AR5.1.2控制器的基本组成指令部件时序部件4第5章中央处理器(CPU)1)指令部件(1)程序计数器PCPC是用来提供下一条要执行的指令的地址在程序顺序执行时,由PC自动增1功能提供下一条指令的地址。(2)指令寄存器IRIR用来存放当前从主存中取出的指令。指令存放于IR中,直到被下一条取出的指令所取代。5第5章中央处理器(CPU)(3)指令译码器IDID的功能是对存放IR中的操作码进行译码。经ID输出的一系列控制电位反映该指令的操作性质。(4)地址形成部件地址形成部件的功能是根据指令的寻址方式,形成有效地址。有效地址地址寄存器AR(

3、操作数的地址)有效地址PC(跳转的目标地址)6第5章中央处理器(CPU)2)时序部件n时序部件是用来产生机器中的各种时序信号,对各种操作实施时间上的控制。(1)时钟脉冲发生器时钟脉冲信号是机器的主频信号,为机器提供时间基准。它由外接高稳定度的晶体振荡器产生,具有一定占空比。例如:占空比1/37第5章中央处理器(CPU)(2)启停线路开放和封锁脉冲,控制时序信号的发生和停止;保证起动时输出的第一个脉冲和停止时的最后一个脉冲都是完整的。(3)节拍信号发生器节拍信号分为节拍电位和节拍脉冲节拍电位:用于控制数据通路中代码的传送或数据的运算。节拍脉冲(工作脉冲):用于寄存器接收代码的选通信号。8第5章中

4、央处理器(CPU)3)微操作信号发生器根据指令操作码译码结果和时序信号及状态标志,产生各种操作控制信号,以便正确地建立数据通路,完成取指令和执行指令的控制。通常把许多寄存器之间传送信息的通路,称为“数据通路”。4)中断控制逻辑中断控制逻辑是用来控制中断处理的硬件逻辑,对于某些外部中断的处理,需要外部中断逻辑配合完成。9第5章中央处理器(CPU)5.1.3控制器的实现方法n硬布线控制器根据译出的指令各字段的含义,并结合当前工作状态及时序信号,由组合逻辑电路形成微操作控制信号。n微程序控制器以存储逻辑取代组合逻辑,根据指令操作码的译码转向控制存储器取出对应的微程序,由微指令提供微操作控制信号。10

5、第5章中央处理器(CPU)5.2时序系统与控制方式5.2.1时序系统5.2.2时序控制方式11第5章中央处理器(CPU)5.2.1时序系统n计算机的协调动作需要时间标志,而时间标志是用时序信号来体现的。1)指令周期和机器周期(1)指令周期完成一条指令所有操作所需要的时间,称为指令周期。指令周期通常用若干机器周期(CPU周期)表示。指令周期长短不同。12第5章中央处理器(CPU)(2)机器周期为了便于对执行时间各不相同的指令进行控制,一般根据指令的操作性质和控制功能,将各指令分成一些基本操作,每一条指令由若干个不同的基本操作组成,对每一个基本操作规定一个基本时间称为机器周期。不同机器周期完成不同

6、的操作。在时序系统中设置一组周期状态触发器,以标志不同的机器周期。任一时序只允许其中的一个触发器为1,以表明CPU当前所处的机器周期。13第5章中央处理器(CPU)2)节拍电位和工作脉冲(1)节拍电位一个机器周期内要完成若干个微操作,这些微操作有的可以同时进行,有的则按先后次序串行执行。每个微操作都需要一定的时间,因此需要将一个机器周期分为若干相等的时间段,每一个时间段,用一个电平信号宽度对应,称为节拍电位。节拍电位作为开门/关门控制信号。14第5章中央处理器(CPU)(2)工作脉冲用于同步触发器的翻转。如:运算结果打入、周期切换。一个节拍内可以设置一个或几个工作脉冲。工作脉冲一般处于节拍后部

7、(节拍脉冲)。若机器周期由时钟组成,脉冲的前沿将运算结果打入寄存器,后沿实现周期切换。时钟电位作为开门/关门控制信号。15第5章中央处理器(CPU)节拍电位和工作脉冲配合关系16第5章中央处理器(CPU)3)总线周期n完成一次总线操作所需的时间称为总线周期。n总线周期与机器周期的区别在于总线周期是根据要求出现的。n例如:8086基本的总线周期17第5章中央处理器(CPU)4)多级时序系统 (1)三级时序信号间的关系这些时序信号将参与形成各种微操作命令。机器周期节拍工作脉冲18第5章中央处理器(CPU)(2)时钟周期的时序系统19第5章中央处理器(CPU)5.2.2时序控制方式nCPU的控制方式

8、包含时序控制方式和指令执行控制方式。n形成控制不同操作序列的时序信号的方法,称为时序控制方式,其实质反映了时序信号的定时方式。1)同步控制方式固定时序控制。受事先确定的时序信号所控制。每个时序信号的结束意味一个微操作的完成,随即开始进行后继的微操作。20第5章中央处理器(CPU)同步控制方式可选取的三种方案:(1)定长机器周期(2)不定长机器周期。(3)中央控制与局部控制结合。n同步控制方式的特点设计简单,容易实现影响指令的执行速度21第5章中央处理器(CPU)2)异步控制方式n每条指令、每个操作控制信号需要多少时间就占用多少时间。当控制器发出某一操作控制信号后,等待执行部件完成操作后发回“回

9、答”信号,再开始新的操作。没有统一的时钟,各功能部件拥有各自的时序信号。n异步控制方式的特点没有时间上的浪费,提高了机器的效率;分散控制,比较复杂。22第5章中央处理器(CPU)3)联合控制方式n同步控制和异步控制相结合的方式。n大部分操作序列安排在固定的机器周期中,对某些时间难以确定的操作则以执行部件的“回答”信号作为本次操作的结束。例如CPU访问主存时,依靠其送来的“READY”信号作为读写周期的结束。n常用:部件内同步,部件间异步23第5章中央处理器(CPU)5.3指令的执行过程5.3.1CPU的基本功能元素5.3.2指令执行的基本过程5.3.3指令执行的微操作序列24第5章中央处理器(

10、CPU)5.3.1CPU的基本功能元素逻辑函数启动信号二进制存储位元读写1)门n实现逻辑功能,采用电位控制数据流,无记忆功能2)存储位元n存储一位数据的元件,采用脉冲打入数据,有记忆功能25第5章中央处理器(CPU)5.3.2指令执行的基本过程nCPU的工作过程就是执行指令序列的过程。1)取指令2)分析指令(1)指令译码产生微操作控制信号(2)计算操作数的有效地址(3)取操作数对于分页式或分段式存储器结构需要将有效地址与段或页基址组合形成物理地址送主存取出操作数。3)执行指令4)响应中断或DMA请求26第5章中央处理器(CPU)PC27第5章中央处理器(CPU)5.3.3指令执行的微操作序列n

11、从指令的微操作序列说明一条指令的执行过程。n微操作序列是与CPU的内部数据通路密切相关。指令格式加法指令完成的功能:(rs1)+disp)+(rs)rd(rd、rs为同一R)设加法指令采用四个机器周期(每个机器周期包含T1、T2):取指、计算有效地址、取数、运算及送结果操作码rs、rdrs1(源1)Imm(disp)28第5章中央处理器(CPU)29第5章中央处理器(CPU)1)取指(PC)AB访存控制命令ADS=1(T1周期)、M/IO=1、W/R=0DBIR(PC)+12)计算有效地址送AR,即(rs1)+dispARrs1GR、(rs1)ALU、dispALU“+”ALUAR30第5章中

12、央处理器(CPU)3)取数(AR)AB访存控制命令ADS=1(T1周期)、M/IO=1、W/R=0DBDR4)运算及送结果、置状态标志rs、rdGR、(rs)ALU、(DR)ALU“+”ALUGR、置N、Z、V、C标志31第5章中央处理器(CPU)JCA1)取指(PC)AB访存控制命令ADS=1(T1周期)、M/IO=1、W/R=0DBIR(PC)+12)分析执行Ifc=0thenendIfc=1then(PC)ALU、dispALU“+”ALUPC32第5章中央处理器(CPU)5.4微程序控制原理5.4.1微程序控制的基本概念5.4.2实现微程序控制的基本原理5.4.3微指令编码法5.4.4

13、微程序流的控制5.4.5微指令格式及执行方式5.4.6微程序设计技术的应用33第5章中央处理器(CPU)5.4.1微程序控制的基本概念1)微命令和微操作控制部件通过控制线向执行部件发出各种控制命令,通常把这种控制命令叫做微命令,它构成控制序列的最小单位。执行部件接受微命令后所进行的操作,称为微操作,它是最基本的、不可再分解的操作。相容性的微操作:指在同一个微周期内可以并行执行的微操作。(相容性微命令)互斥性的微操作:指不能在同一个微周期内并行执行的操作。(互斥性微命令)34第5章中央处理器(CPU)2)微指令和微地址在一个微周期中,一组实现一定操作功能的微命令的组合,构成一条微指令(控制字)。

14、微指令组成操作控制字段:用来发出管理和指挥全机工作的工作信号。位信息为“1”时,表示发出微命令;位信息为“0”时,表示不发微命令。顺序控制字段(下址字段):用来控制产生下一条微指令的地址。微指令存放在控制存储器中,存放微指令的控制存储器的单元地址称为微地址。35第5章中央处理器(CPU)3)微周期(机器周期或节拍)从控存中读取一条微指令并执行相应的一组微命令所需的全部时间4)微程序一条机器指令的功能是用许多条微指令组成的序列来实现的,这个微指令序列称为微程序。36第5章中央处理器(CPU)微程序控制计算机涉及两个层次传统机器层:机器指令工作程序主存储器微程序层:微指令微程序控制存储器37第5章

15、中央处理器(CPU)5.4.2实现微程序控制的基本原理1)微程序实现加法指令设ALU能进行+、-、四种运算序号控制信号序号控制信号序号控制信号1(PC)AB10(RS1)ALU19ALUGR2ALUPC11(RS)ALU20ALUDR3(PC)+1120ALU21ALUAR4DISPALU13(DR)ALU22(AR)AB5DBIR14(PC)ALU23ADS6DBDR15+24M/IO7(DR)DB16-25W/R8RS1GR179RS、RDGR1838第5章中央处理器(CPU)加法指令对应控制信号的序号n用4个机器周期完成,每个机器周期用一条微指令产生微操作命令。取指微指令的微命令序号:1

16、、3、5、23、24、25计算有效地址微指令的微命令序号:4、8、10、15、21取数微指令的微命令序号:6、22、23、24、25运算及送结果微指令的微命令序号:9、11、13、15、1939第5章中央处理器(CPU)微指令格式取指微指令1010100000000000000000110计算有效地址微指令0001000101000010000010000001000000010取数微指令0000010000000000000001110001000000011运算及送结果微指令000000001010101000100000000100000000012252637操作控制字段顺序控制字段(

17、PC)ABALUPCW/R设控存容量为4K字40第5章中央处理器(CPU)微程序流程图的表示41第5章中央处理器(CPU)2)微程序控制器基本工作原理42第5章中央处理器(CPU)n工作过程:执行取指公共操作(0#单元开始)形成微程序入口地址MAR从CM中取微指令IR:产生一组微命令控制有关操作,通过微地址形成部件形成下址下址MAR重复3)、4)直到机器指令的微程序执行完毕。返回到取指微程序的入口,重复上述过程,直到整个程序执行完毕。43第5章中央处理器(CPU)3)时序信号的形成(1)二分频电路及节拍电位、工作脉冲的产生44第5章中央处理器(CPU)(2)打入脉冲的形成n方法一:控制信号“与

18、”CP45第5章中央处理器(CPU)n方法二:直接用CP46第5章中央处理器(CPU)(3)特殊控制信号的产生n例如:ADS47第5章中央处理器(CPU)(4)访存需要等待的处理方法48第5章中央处理器(CPU)5.4.3微指令编码法n微指令编码是指对操作控制字段的编码。n实质:在微指令中如何组织微命令。n典型的微指令编译法有:1)直接控制法2)最短字长编码法3)字段直接编码法4)字段间接编码法5)常数源字段E49第5章中央处理器(CPU)1)直接控制法n操作控制字段中的每一位代表一个微命令。优点:简单直观,其输出直接用于控制,并行性强,速度快。缺点:微指令字较长,因而使控制存储器容量较大。5

19、0第5章中央处理器(CPU)2)最短字长编码法n所有微命令统一编码,每条微指令只定义一个微命令。Llog2n优点:微指令字最短。缺点:译码复杂,不能充分利用硬件的并行性,微程序长,速度慢,对要求同时动作的组和性微操作无法实现。51第5章中央处理器(CPU)3)字段直接编码法n把一组互斥性的微命令信号组成一个字段,然后通过字段译码器对每一个微命令信号进行译码,译码输出作为操作控制信号。52第5章中央处理器(CPU)优点:用较少的二进制信息位表示较多的微命令信号。缺点:使微程序的执行速度减慢。n例如:3位二进制位译码后可表示7个微命令,4位二进期位译码后可表示15个微命令。53第5章中央处理器(C

20、PU)n例题:某运算器数据通路如图。指出哪些微操作是互斥的,哪些是相容的。分别用直接控制法和字段直接编译法设计适合该运算器的微指令格式中的操作控制字段。n解:互斥微操作:IRA、R1A、R2A、R3A互斥;R1B、R2B、R3B互斥;+、-、M互斥。相容微操作:A选通门的任一个微操作与B选通门的任一个微操作相容;LDR1、LDR2、LDR3相容。54第5章中央处理器(CPU)55第5章中央处理器(CPU)直接控制法操作控制字段:56第5章中央处理器(CPU)n字段直接编码法操作控制字段ALUBUSLDR1LDR2LDR3123211100无01+10-11M000无001IRA010R1A01

21、1R2A100R3A00无01R1B10R2B11R3B57第5章中央处理器(CPU)4)字段间接编码法n一个字段的某些编码不独立地定义某些微命令,而与其他字段联合定义。58第5章中央处理器(CPU)n例如:有一ALU,它能完成8种不同的算术运算和8种不同的移位运算,用1位字段指示是算术运算还是移位运算,3位字段指示是8种操作中的某一种。5)常数源字段En通常把直接控制法与字段编码法相混合使用,以便能综合考虑微指令字长、灵活性和执行微程序速度等方面的要求。n目标:减少微指令字长,增强微操作的并行性。59第5章中央处理器(CPU)5.4.4微程序流的控制1)微程序入口地址的形成nOP微程序入口地

22、址一级功能转换机器指令的OP位数、位置固定(定长、定位置)二级功能转换同类机器指令的OP位数、位置固定,不同类机器指令的OP位数、位置不固定MAPROM机器指令的OP位数、位置不固定(变长、变位置)60第5章中央处理器(CPU)(1)一级功能转换OP与入口地址的部分位相对应。l000OPB设OP以4位二进制编码表示:MOV0000000BADD0000001BSUB0001111B61第5章中央处理器(CPU)lOP111BMOV0000111BADD0001111BSUB1111111B62第5章中央处理器(CPU)(2)二级功能转换按指令类型标志转换-区分指令类各类按OP转换-形成入口地址

23、(3)采用映像存储器MAPROM(2716)63第5章中央处理器(CPU)2)后继微地址的形成(1)增量方式n顺序执行:后继微地址由现行微地址加上一个增量来产生。n非顺序执行:由转移逻辑产生一个转移微地址。n顺序执行的微指令序列必须安排在控制存储器的连续单元中。nPC作为:微地址寄存器微程序计数器64第5章中央处理器(CPU)增量方式65第5章中央处理器(CPU)n增量方式的基本特点:微指令的顺序控制字段较短,仅起选择作用。微程序转移很不灵活性,使得微程序在控制存储器中的物理空间分配困难。66第5章中央处理器(CPU)(2)增量与下址字段结合方式n微指令顺序控制部分分成:转移控制字段BCF转移

24、地址字段BAFn当微程序转移时,将BAF送微程序计数器(PC),否则顺序执行下一条微指令(PC加1)。67第5章中央处理器(CPU)68第5章中央处理器(CPU)(3)多路转移方式(断定方式)n一条微指令具有多个转移分支的能力称为多路转移。当微程序不产生分支时,后继微地址直接由微指令的下址字段给出;当微程序出现分支时,有若干“后选”微地址可供选择。n下址字段由两部分组成:非测试段:由设计者指定,一般为微地址的高位。测试段:根据有关状态位的测试确定后继微地址,一般为微地址低位部分。69第5章中央处理器(CPU)n测试段有1位标志,可实现微程序2路转移;n测试段有2位标志,可实现微程序4路转移。实

25、现两路转移实现四路转移实现三路转移70第5章中央处理器(CPU)3)微程序定序器Am291071第5章中央处理器(CPU)I3I0功能2无条件转至微程序入口(/MAP=0)。3若/CC=0,则下条微指令地址来自当前微指令的下址字段(/PL=0);若/CC=1,则顺序执行(来自PC)。4进栈且条件装入计数器。把下条微指令的地址压入微堆栈,若/CC=0,则把当前微指令的下址字段内容装入计数器,然后顺序执行。8重复循环。前提:已使用4号命令,循环首址压入微堆栈,循环次数装入计数器。若R/C0,则R/C减1,微堆栈栈顶的内容作为下条微指令的地址。若R/C=0,则(SP)-1SP(弹栈),顺序执行下条微

26、指令。14无条件顺序执行(来自PC)。153路转移。前提同8号。F、D(/PL=0)、PC若R/C0,则R/C减1:若/CC=0,弹栈,选择PC;若/CC=1,选择F(栈顶)。若R/C=0,弹栈:若/CC=0,选择PC;若/CC=1,后继微指令地址来自当前微指令的地址字段。72第5章中央处理器(CPU)5.4.5微指令格式及执行方式1)微指令格式n水平型微指令一次能定义并执行多个并行操作微命令的微指令,称为水平型微指令。n垂直型微指令控制字段的设置采用编码法,由微操作码规定微指令的功能,称为垂直型微指令。垂直型微指令的结构类似于机器指令的结构。它有操作码,在一条微指令中只有1-2个微操作命令,

27、每条微指令的功能简单。它是采用较长的微程序结构去换取较短的微指令结构。73第5章中央处理器(CPU)(3)水平与垂直的比较:水平特征垂直特征不编码高度编码控制字段多位微指令字较短高度并行并行能力差硬件细节观点硬件总体观点编程困难编程容易很少或没有控制逻辑复杂的控制逻辑执行快执行慢实现一条机器指令对应的微程序短实现一条机器指令对应的微程序长优化性能优化编程74第5章中央处理器(CPU)2)微指令的执行方式n取微指令-从控存中取出n执行微指令-执行规定的各个操作执行方式:串行方式并行方式执行过程(1)串行方式l取微指令和执行微指令是顺序进行。l在一条微指令取出并执行之后,才能取下一条微指令。75第

28、5章中央处理器(CPU)取微指令阶段:CM工作,数据通路等待执行微指令阶段:CM空闲,数据通路工作76第5章中央处理器(CPU)(2)并行方式l在执行当前微指令的同时,预取下一条微指令。77第5章中央处理器(CPU)5.4.6微程序设计技术的应用1)计算机功能固件化n硬件的固件化计算机中凡具有逻辑控制功能的部件皆可固件化,例如:微程序控制器。n软件的固件化用微程序实现操作系统的内核;提供对高级语言支持;用微程序实现嵌入主机系统的专用设备。例如:驱动程序以固件而不是用软件实现。78第5章中央处理器(CPU)2)微程序仿真n使用微程序在一台机器上执行原本为另一类机器编写的程序,以支持用户程序由一种

29、计算机移植到另一种计算机上。例如:System/370仿真IBM1401宿主机目标机宿主机提供二种工作方式:l本机方式l仿真方式79第5章中央处理器(CPU)3)动态微程序设计n静态微程序设计微程序设计完毕,不允许也不便于改变,这样的设计称静态微程序设计(CM使用ROM,指令系统是固定的)n动态微程序设计在一台微程序控制的计算机中,若能根据用户的要求改变微程序,那么这台机器就具有动态微程序设计功能。(CM使用WCM)80第5章中央处理器(CPU)动态微程序设计的应用系统设计人员完成两套可供切换的微程序,例如:l一套用于科学计算的指令系统l另一套用于数据处理的指令系统本机指令系统中保留的供扩充指

30、令的操作码或未定义操作码,由用户来定义。81第5章中央处理器(CPU)5.5微程序设计举例5.5.1系统构成5.5.2微指令格式5.5.3微程序设计82第5章中央处理器(CPU)83第5章中央处理器(CPU)5.5.1系统构成n设置26=64条机器指令,支持的寻址方式:立即数寻址方式直接地址寻址方式寄存器寻址方式寄存器间接寻址方式相对寻址方式变址寻址方式绝对寻址方式堆栈寻址方式84第5章中央处理器(CPU)n53条指令已实现11条未实现指令的操作码为:D4、D8、DC、E0、E4、E8、EC、F0、F4、F8、FC(最低二位用于选择C、Z、V、S四个标志作为判断条件)。这11条指令的微程序入口

31、地址为:100h、110h、120h、130h、140h、150h、160h、170h、180h、190h、1A0h。85第5章中央处理器(CPU)硬件构成以位片式器件Am2901、Am2910作为核心部件1)运算器n4片Am2901、1片Am2902构成16位数据处理单元。nSTR:运算结果状态寄存器IB7IB6IB5IB4IB3IB2IB1IB0CZVSINTE P2P1P086第5章中央处理器(CPU)n4片Am2901中的16个4位寄存器构成16个16位寄存器R0R15及16位乘商寄存器Q(Q与其他寄存器联成32位寄存器,用于乘除运算)R0R3、R7R15:作为通用寄存器R4:作为SP

32、R5:作为PCR6:作为IP(指令当前地址,与已增量的PC不同)87第5章中央处理器(CPU)nAm2901的数据输入端D来源:来自DB(从M或I/O设备取操作数)IR的地址码字段STRn运算结果送:内部RAR或DB设置STR88第5章中央处理器(CPU)nSTR的输入:运算结果设置弹栈恢复nSTR的输出:IB组织/CC条件89第5章中央处理器(CPU)2)控制器n1片Am2910微程序定序器、7片6116(2K*8)与2片2716ROM(共2048个字)组成控存、56位微指令寄存器、16位指令寄存器、2片2716(2K*8)MAPROM组成。n微码装入:90第5章中央处理器(CPU)n两个地

33、址计数器的作用:第一个计数器是由三个4位计数器组成,初值为0,每来一次工作脉冲使其计数一次。计数器输出:作为控存RAM写入单元地址;作为读ROM芯片的高9位地址。ROM的低2位地址Y1、Y0由第二个计数器提供,该计数器每计满4次,第一个计数器计数一次。由Y1、Y0的4个状态可获得LRCP0LRCP3。Y11由0变1(211=2048),结束微码装入操作。91第5章中央处理器(CPU)n微控存的地址来源:Am2910的Y9Y0存储器的地址寄存器(低10位)计数器输出nAm2910的D的来源/MAP作为MAPROM的选通信号/PL选中下址作为D的输入/VECT选中接收内部总线的IB90SmuxY1

34、192第5章中央处理器(CPU)3)主存储器n4K字EPROM(2片2732)n2K字RAM(2片6116)4)总线n地址总线(16位):接受来自地址寄存器的值,地址寄存器接受来自运算器的结果输出。送主存、接口、控存(LDMC)93第5章中央处理器(CPU)n数据总线(16位):IB、DB两者间通过双向三态门,由/MIO和/WE控制。IB的输入来源:16个开关输入数据或地址、运算器输出、DB、中断向量寄存器、状态寄存器、IR的低位字节IB输出至:运算器的D输入端、DB、IR、送往可写控存的16位写入寄存器(4次)、Am2910的10位地址输入端。94第5章中央处理器(CPU)5.5.2微指令格

35、式采用水平型微指令格式。微指令字长56位:10位下址字段、3位备用、43位控制字段。B55B54B53B52B51B50B49B4810位下址字段B47B46B45B44B43B42B41B40备用Am2910命令码I3-I0B39B38B37B36B35B34B33B32SCCSC备用状态位产生SST给出2910的/CC的选择码95第5章中央处理器(CPU)B31B30B29B28B27B26B25B24/MIOI8I7I6REQI5I4I3B23B22B21B20B19B18B17B16/WEI2I1I0A口地址B15B14B13B12B11B10B9B8B口地址SCiSSHB7B6B5B

36、4B3B2B1B0SADC1SBDC2SA=0:A口地址来自微码SB=0:B口地址来自微码SA=1:A口地址来自IR3-0SB=1:B口地址来自IR7-496第5章中央处理器(CPU)SCC/CC01012345SC=0SC=0SC=0SC=0/FS1/FS2/FS3/WAIT23456SC=1SC=1SC=1SC=1/C/Z/V/S/INTSCC/CC7IR10801234567/C/Z/V/SCZVS返回97第5章中央处理器(CPU)SSTCZVS0CZVS1CYF=0OVF32IB7IB6IB5IB430ZVS41ZVS5RAM0ZVS6RAM3ZVS7Q0ZVS返回98第5章中央处理器

37、(CPU)返回99第5章中央处理器(CPU)SCiCin00112C3TCLK左移右移SSHRAM0Q0RAM3Q3000X0X01CXCX10Q3/F3CYRAM011XXF3或OVRAM0返回100第5章中央处理器(CPU)返回101第5章中央处理器(CPU)返回102第5章中央处理器(CPU)5.5.3微程序设计103第5章中央处理器(CPU)以7条指令为例1)ADD、SUB、MOV(DR)+(SR)DR(DR)-(SR)DR(SR)DR1510987430OP不用DRSR104第5章中央处理器(CPU)105第5章中央处理器(CPU)2)JPCND1510987430OPCND不用不用

38、ADRJPCND功能:当条件满足时ADRPCCND测试条件码OP0=1OP0=000CC=1转移C=0转移01ZZ=1转移Z=0转移10VV=1转移V=0转移11SS=1转移S=0转移106第5章中央处理器(CPU)JP(双字)1510987430OP不用不用不用ADRJP功能:ADRPC107第5章中央处理器(CPU)108第5章中央处理器(CPU)3)CALL(双字)1510987430OP不用不用不用ADRCALL功能:(SP)-1SP,(PC)(SP),ADRPC109第5章中央处理器(CPU)110第5章中央处理器(CPU)4)乘法指令MUL150987430OP不用不用SR无符号乘

39、(R1)*(SR)R0R1111第5章中央处理器(CPU)112第5章中央处理器(CPU)5.6硬布线控制器5.6.1硬布线控制器与微程序控制器的比较5.6.2硬布线控制器设计步骤5.6.3硬布线控制器设计举例113第5章中央处理器(CPU)逻辑网络硬布线控制器5.6.1硬布线控制器与微程序控制器的比较114第5章中央处理器(CPU)微程序控制器115第5章中央处理器(CPU)n共同点基本功能都是依据当前正在执行的指令和它所处的执行步骤,形成并提供处在这一时刻整机各部件所需要的控制信号。组成部分都有程序计数器PC,指令寄存器IR,时序电路。都分成几个执行步骤完成每一条指令的具体功能。116第5

40、章中央处理器(CPU)n不同点指令执行步骤的控制方法不同硬布线控制器是用节拍发生器指明指令执行步骤(机器周期、节拍、工作脉冲)微程序控制器是通过微指令地址的衔接区分指令执行步骤(微周期)提供微操作控制信号的方案不同硬布线控制器是用组合逻辑门电路直接提供控制计算机各功能部件协同运行所需的控制信号微程序控制器控制信号是以微程序的方式存放在控制存储器中,控制信号从控制存储器中读出,并经过一个微指令寄存器送到被控制部件。117第5章中央处理器(CPU)硬布线控制器微程序控制器结构不规整、设计与实现复杂结构规整、设计与实现简单不易修改和扩充可修改性,易于实现系列产品运行速度快运行速度慢特点比较118第5

41、章中央处理器(CPU)5.6.2硬布线控制器设计步骤1)时序系统2)拟定指令流程(以机器周期为线索、以指令为线索)3)列出微操作时间表(电位型微命令、脉冲型微命令)4)综合分析,归纳出产生每个微命令的条件,写出每个微命令的逻辑表达式,并进行化简。5)实现电路119第5章中央处理器(CPU)1)数据通路5.6.3硬布线控制器设计举例120第5章中央处理器(CPU)2)指令系统(15条)(单字节、双字节)指令助记符指令编码(IR1)76543210字节数功能ADDRi,Rj000Ri0Rj单(Rj)+(Ri)RiSUBRi,Rj000Ri1Rj单(Rj)-(Ri)RiANDRi,Rj001Ri0R

42、j单(Rj)(Ri)RiORRi,Rj001Ri1Rj单(Rj)(Ri)RiINCRi,Rj010Ri0Rj单(Rj)+1RiSALRi,Rj010Ri1Rj单(Rj)算术左移一位RiMOVRi,Rj011Ri0Rj单(0*(Rj)RiMOVRi,Rj011Ri1Rj单(Rj)Ri121第5章中央处理器(CPU)指令助记符指令编码(IR1)76543210字节数功能LDRi,adr100Ria10a9a8双(adr)RiSTRi,adr101Ria10a9a8双(Ri)adrJMPadr11000a10a9a8双adrPCJCadr11001a10a9a8双Cy=1时,adrPCJZadr11

43、010a10a9a8双Z=1时,adrPCLDIRi,#data111Ri000双dataRiHALT11111111单停机122第5章中央处理器(CPU)3)时序系统采用三级:机器周期、节拍、工作脉冲机器周期:FETCH(T1)、ANA(T1)、EXE(T1T3)4)指令流程(举例)(1)取指123第5章中央处理器(CPU)(2)单字节指令ADDRi,Rj;(Rj)+(Ri)RiI7I6I5I4I3I2I1I0000Ri0Rj124第5章中央处理器(CPU)MOVRi,Rj;(0*(Rj)RiI7I6I5I4I3I2I1I0011Ri0Rj125第5章中央处理器(CPU)(3)双字节指令LD

44、Ri,adr;(adr)RiI7I6I5I4I3I2I1I0100Ria10a9a8a7a0126第5章中央处理器(CPU)JMP、JC、JZadrPC(01:C=110:Z=1)I7I6I5I4I3I2I1I0110000110a10a9a8a7a0转移条件=C*/I4*I3+Z*I4*/I3+/I4*/I3127第5章中央处理器(CPU)5)列出微操作时间表(举例)指令周期节拍工作脉冲微操作控制信号节拍控制型脉冲控制型取指FETCHT1PPCIABIABOABReadODBIDBPC+1PC1ANA1EXECPIR1ANA=1的条件:I7(/I6+/I5)+/I7I6I5/I2)EXE=1

45、的条件:/I7(/I6+/I5+I2)+I7I6I5128第5章中央处理器(CPU)指令周期节拍 工作脉冲微操作控制信号节拍控制型脉冲控制型JMPadrJCadrJZadrANA T1P(PC)IABIABOABReadODBIDB(PC)+1PC1EXECPIR2EXET1P(IR1)|(IR2)IAB满足条件:IABPC1FETCHCPPC129第5章中央处理器(CPU)6)微操作信号综合n微操作控制信号=机器周期*节拍*脉冲*操作码*机器状态条件READ=FETCH*T1+ANA*I7*T1+EXE(/I7*I6*I5*/I2+I7*/I6*/I5+I7*I6*I5)T1(PC)+1PC

46、=FETCH*T1+ANA*I7*T1+EXE*I7*I6*I5*T1CPPC=EXE*I7*I6*/I5*T1*P*转移条件7)实现电路130第5章中央处理器(CPU)5.7流水线处理技术n对于指令的执行,CPU可有三种控制方式:顺序方式、重叠方式及流水线方式。5.7.1重叠控制和先行控制5.7.2流水线工作原理131第5章中央处理器(CPU)5.7.1重叠控制和先行控制1)顺序执行和重叠控制(1)顺序执行n顺序执行方式是指各指令间顺序串行执行,执行完第k条指令后,方可取出第k+1条指令分析、执行。nT=3nt,T=(t取指+t分析+t执行)取指K分析K执行K取指K+1分析K+1执行K+11

47、32第5章中央处理器(CPU)(2)重叠控制一次重叠n一次重叠执行方式是把执行第k条指令与取第k+1条指令同时进行。nT=(2*n+1)t取指K分析K执行K取指K+1分析K+1执行K+1取指K+2分析K+2执行K+2133第5章中央处理器(CPU)二次重叠n二次重叠执行方式是把取第k+1条指令提前到与分析第k条指令同时进行,分析第k+1条指令与执行第k条指令同时进行。nT=(n+2)t取指K分析K执行K取指K+1分析K+1执行K+1取指K+2分析K+2执行K+2134第5章中央处理器(CPU)n二次重叠执行方式必须有独立的取指部件、指令分析部件和指令执行部件。n解决访问内存冲突一般采用三种方法

48、:设置彼此独立编址的指令存储器和数据存储器,并规定执行指令的结果只写到通用寄存器。采用多体交叉存储结构,一个读周期同时可以访问多个存储单元。采用先行控制技术,进行指令预取。135第5章中央处理器(CPU)2)先行控制n在CPU内部设置指令队列缓冲器及相应的预取指令计数器、队列控制逻辑等,就可以预先将内存中的指令取到队列缓冲器中,这样“取指k+1”只需将第k+1条指令由指令队列缓冲器取到指令分析部件,无需访问内存。n指令预取得以实现的原因是指令的执行阶段比分析阶段运行使用的时间长,在执行k和分析k+1同时进行时,当k+1已分析完成,k执行还未完成,此时若存储器空闲,就可进行指令的预取。136第5

49、章中央处理器(CPU)n在先行控制下的一次重叠执行方式是把一条指令的执行过程分为“分析”和“执行”二个子过程。nT=t分析1+MAXt分析i+t执行i-1+t执行n(i=2n)执行K分析K+1分析K执行K+1分析K+2执行K+2t1t2137第5章中央处理器(CPU)n使各阶段的专用控制部件不间断的工作。T=t分析1+t执行i(i=1n)执行K分析K+1分析K执行K+1分析K+2执行K+2分析K+2138第5章中央处理器(CPU)5.7.2流水线工作原理1)流水线概念n流水线技术是将一个重复的处理过程分解为m个复杂程度大致相同,处理时间大致相同的子过程,每一个子过程由一个独立的功能部件完成。处

50、理对象在实现各子过程的功能部件连成的通路上连续流动,在同一时间,m个部件同时进行不同的操作完成对不同的指令或数据,不同子过程的处理。这种并行处理是通过各功能部件在时间上的重叠实现的。139第5章中央处理器(CPU)n流水线方式与顺序工作方式相比,硬件设备增加量少,只是将完成各子过程的功能部件分开,但效率却相当于m套顺序处理设备的并行工作结果。140第5章中央处理器(CPU)n如果将一条指令的执行过程分解为取指令、指令译码、取操作数和执行四个子过程,每一过程对应的部件的输出端皆有一个锁存器,使对应的四个部件相互独立工作。n设各部件的执行时间分别为t1、t2、t3、t4,且t1=t2=t3=t4=

51、t,则执行指令的速度是顺序执行的4倍。141第5章中央处理器(CPU)时空图若部件并行工作,可采用时空图描述。横坐标表示时间,也就是输入到流水线中各个任务在流水线中所经过的时间,当各任务执行时间都相等时,横坐标被分割成相等长度的时间段纵坐标表示空间,也就是流水线的各个子过程(也称为功能段)。142第5章中央处理器(CPU)2)流水线分类(1)按照流水线使用的级别分类n一个计算机系统可以在不同的并行等级上采用流水线技术功能部件级(运算操作流水线)指令级(指令流水线)处理器级-又称为宏流水线,是指程序步骤的并行。143第5章中央处理器(CPU)指令流水线是一种将每条指令分解为多个子过程,并让各子过

52、程操作重叠,从而实现n条指令并行处理的技术。例如:80486CPUPF预取级D1译码级D2译码级EX执行级WB写回级144第5章中央处理器(CPU)运算操作流水线在指令流水线的每一个部件内部还可以采用流水线来实现。例如:浮点加法器流水线145第5章中央处理器(CPU)(2)按照功能分类n单功能流水线:只能完成一种固定的功能。实现多种不同功能,可采用多条单功能流水线。n多功能流水线多功能流水线是指流水线的各段可以进行不同的连接,在不同时间内或在同一时间内,通过不同连接方式实现不同的功能。146第5章中央处理器(CPU)(3)按工作方式分类n静态流水线在某一时刻,只允许一个功能通过流水线单功能流水

53、线一定是静态流水线静态多功能流水线从一种功能方式变为另一种,需要先排空流水线。n动态流水线允许几个功能同时通过流水线。动态流水线一定是多功能流水线。147第5章中央处理器(CPU)(4)按流水线结构分类n线性流水线设过程T被分成m个子过程,可表达为:T=T1,T2,Tm,各子过程之间有一定的优先关系:若iPIL时,CPU响应S:是管理员方式还是用户方式PS:保存陷阱前的S,以便返回时恢复ET:允许中断CWP(低5位):当前窗口指针3124232221211914131211876540恒为0NZVC保留ECEFPILSPSETCWP166第5章中央处理器(CPU)2)SPARC机在系统结构上采

54、取的措施nCPU中设置相当多的通用寄存器,并采用硬件或软件手段管理和使用这些寄存器。n采用Cache主存辅存三级存储体系。n采用流水线组织。n采用硬布线控制逻辑。167第5章中央处理器(CPU)(1)寄存器窗口重叠技术在RISC中对通用寄存器的处理采用两种方案:采用数量较大的寄存器堆,组成若干个窗口,并利用寄存器窗口重叠技术来加快程序的运转。利用一套分配寄存器的算法及编译程序的优化处理来充分利用寄存器资源。SPARC机采用了寄存器窗口重叠技术解决过程调用参数的传递问题和现场保护、恢复问题。例如:CALL/RETURN168第5章中央处理器(CPU)寄存器窗口重叠技术SPARC指令寄存器的地址码

55、字段长位,允许访问32个逻辑寄存器。8个全局寄存器(R0R7)24个局部寄存器(R8R31)输入Ins(R24)R31)局部Locals(R16R23)输出Outs(R8R15)组成一个窗口169第5章中央处理器(CPU)SPARC允许设置若干个窗口(632),窗口数取决于硬件设计所选定的物理寄存器实际数量。通过窗口指针CWP,可指出当前程序所访问的窗口号。170第5章中央处理器(CPU)例如:A、B、C三层嵌套程序R7全局R0R15outsR8R23localsR16R31insR24R15outsR8R23localsR16R31insR24R15outsR8R23localsR16R31

56、insR24A程序B程序C程序R23R8R39R24R63R40调用时返回时171第5章中央处理器(CPU)1110000-1110111119-112全局1101000-1101111W6outsW5ins1100000-1100111W5locals1011000-1011111W4insW5outs1010000-1010111W4locals1001000-1001111W4outsW3ins1000000-1000111W3locals0111000-0111111W2insW3outs0110000-0110111W2locals0101000-0101111W2outsW1ins

57、0100000-0100111W1locals0011000-0011111W0insW1outs0010000-0010111W0locals0001000-0001111W0outsW6ins0000000-00001117-0W6localsSPARC的MB86901有7个窗口,编号06(W0W6),采用循环处理,共有120个物理寄存器172第5章中央处理器(CPU)CWP为窗口号W6为最老的窗口,W6调用W5、W5调用W4当2CWP-1=WIM时,发生窗口溢出例如:WIM=00000000000000000000000000000100CWP=3时调用子程序,则23-1=22=WIM,

58、故发生窗口溢出调用时CWP-1CWP返回时CWP+1CWP173第5章中央处理器(CPU)逻辑地址转换为物理地址的方法7位物理地址低4位同逻辑地址7位物理地址高3位:Outs部分同当前CWPIns、locals部分为CWP+1(6为模)Outs、Ins、locals可用逻辑地址的最高2位区分:Outs01、locals10、Ins11174第5章中央处理器(CPU)(2)SPARC机的指令流水线取指、译码、执行、写回执行是属于时间最长、情况最复杂的阶段,是确定周期的依据。32位SPARC指令流水线n单周期流水线取指n译码n执行n写回n取指n+1译码n+1执行n写回n+1取指n+2译码n+2执行

59、n+2写回n+2取指n+3译码n+3执行n+3写回n+3D、E、W指令寄存器175第5章中央处理器(CPU)n双周期流水线(load指令、store指令)取指译码执行写回n+1help1(n)help1(n)help1(n)取指译码执行写回nnnn取指译码执行写回n+2n+1n+1n+1load译码执行写回数据n+2n+2n+2取指译码执行写回N+3n+3n+3n+3总线上代码顺序n、n+1条依次送B1176第5章中央处理器(CPU)SPARC执行时遇到的问题数据相关当n+1条源操作数是第n条的运算结果,通过旁路1直接将ALU的输出送A/B。当n+2条源操作数是第n条的运算结果,通过旁路2将运

60、算结果的送A/B。控制相关采用延迟转移177第5章中央处理器(CPU)本章知识点n控制器的基本概念控制器的功能、基本组成实现方法n时序系统与控制方式时序系统概念三种时序控制方式n指令的执行过程基本执行过程指令执行的微操作序列微程序设计技术的应用178第5章中央处理器(CPU)n微程序控制原理微程序控制的基本概念实现微程序控制的基本原理微指令编码法、微程序流的控制微指令格式及执行方式n微程序设计举例TEC2机的硬件系统组成微指令格式及微程序设计179第5章中央处理器(CPU)n硬布线控制器硬布线控制器与微程序控制器的比较硬布线控制器的设计步骤设计举例n流水线处理技术指令执行的三种控制方式重叠控制和先行控制流水线的概念、流水线分类、衡量流水线性能的主要参数、流水线处理中的相关问题nCPU举例Pentium的体系结构特点SPARC机在系统结构上采取的措施。180

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 大杂烩/其它

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