版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第五章中央处理器第一页,共一百三十一页,编辑于2023年,星期五第5章中央处理器5.1CPU的组成和功能 5.7流水CPU5.2
指令周期 5.8RISCCPU5.3时序产生器和控制方式 5.4微程序控制器 5.5硬布线控制器5.6传统CPU第二页,共一百三十一页,编辑于2023年,星期五5.1CPU的功能和组成
当代主流计算机所遵循的仍然是冯.诺依曼的“存储程序、程序控制”思想
程序告诉计算机:应该逐步执行什么操作;在什么地方找到用来操作的数据,结果存到何处等
中央处理器是控制计算机自动完成取出指令和执行指令任务的部件。它是计算机的核心部件,通常简称为CPU(CentralProcessingUnit)第三页,共一百三十一页,编辑于2023年,星期五5.1.1CPU的功能
★指令控制
保证机器按程序规定的顺序取出执行★操作控制
CPU产生每条指令所对应的操作信号,并把各种操作信号送往相应的部件,从而控制这些部件按指令的要求进行动作★时间控制
对各种操作的实施时间进行定时★数据加工
对数据进行算术运算和逻辑运算处理第四页,共一百三十一页,编辑于2023年,星期五5.1.2CPU的基本组成控制器完成对整个计算机系统操作的协调与指挥。
(1)控制机器从内存中取出一条指令,并指出下一条指令在内存中的位置;(2)对指令进行译码,并产生相应的操作控制信号,送往相应的部件,启动规定的动作;(3)指挥并控制CPU、内存与输入/输出(I/O)设备之间数据流动的方向运算器是数据加工处理部件,所进行的全部操作由控制器发出的控制信号指挥
(1)执行所有的算术运算;(2)执行所有的逻辑运算,并进行逻辑测试第五页,共一百三十一页,编辑于2023年,星期五算术逻辑单元状态条件寄存器程序计数器PC地址寄存器AR地址总线ABUS数据总线DBUS累加器AC存储器I/OCPUALU指令寄存器IR指令译码器操作控制器时序产生器时钟状态反馈取指控制执行控制ccccc缓冲寄存器DRCPU的基本模型第六页,共一百三十一页,编辑于2023年,星期五5.1.3CPU中的主要寄存器
数据缓冲寄存器(DR)暂时存放由内存读出或写入的指令或数据字指令寄存器(IR)保存当前正在执行的一条指令程序计数器(PC)确定下一条指令的地址地址寄存器(AR)保存当前CPU所访问的内存单元的地址累加寄存器(AC)最常使用的一个通用寄存器状态条件寄存器(PSW)保存由算术和逻辑指令的结果建立的各种条件码第七页,共一百三十一页,编辑于2023年,星期五5.1.4操作控制器与时序产生器
操作控制器在各寄存器之间建立数据通路(传送信息的通路)操作控制器的功能:就是根据指令操作码和时序信号,产生各种操作控制信号,以便正确地建立数据通路,从而完成取指令和执行指令的控制硬布线控制器微程序控制器时序产生器产生并发出计算机所需要的时序控制信号第八页,共一百三十一页,编辑于2023年,星期五5.2
指令周期—读取指令指令地址送入主存地址寄存器读主存,读出内容送入指定的寄存器—分析指令—按指令规定内容执行指令不同指令的操作步骤数和具体操作内容差异很大—检查有无中断请求若无,则转入下一条指令的执行过程形成下一条指令地址指令的执行过程取指令执行指令第九页,共一百三十一页,编辑于2023年,星期五5.2.1指令周期的基本概念
指令周期
:
CPU从内存取出一条指令并执行完这条指令的时间总和CPU周期
:
又称机器周期(总线周期),CPU访问内存所花的时间较长,因此用CPU从内存读取一条指令字的所需的最短时间来定义时钟周期
:
通常称为节拍脉冲或T周期。一个CPU周期包含若干个时钟周期T
相互关系:
1个指令周期=若干个CPU周期
1个CPU周期=若干T周期
取指时间+执行指令时间第十页,共一百三十一页,编辑于2023年,星期五指令周期·CPU周期·时钟周期第十一页,共一百三十一页,编辑于2023年,星期五020
CLA ;累加器清0021
ADD30 ;(AC)+(30)→AC
022
STA40 ;(AC)→(40)023
NOP ;空操作
024
JMP21 ;21→PC…030000006 ;数据…040存和数 ;数据5条典型指令构成的简单程序第十二页,共一百三十一页,编辑于2023年,星期五一个CPU周期一个CPU周期取指令阶段执行指令阶段开始取指令PC+1对指令译码执行指令取下条指令PC+15.2.2CLA指令的指令周期第十三页,共一百三十一页,编辑于2023年,星期五取出CLA指令算术逻辑单元状态条件寄存器程序计数器PC地址寄存器AR地址总线ABUS数据总线DBUS累加器AC缓冲寄存器DRCPUALU指令寄存器IR指令译码器操作控制器时序产生器时钟状态反馈取指控制执行控制cccc+10000202021222324303140CLAADD30STA40NOPJMP21000006000020CLACLA000021第十四页,共一百三十一页,编辑于2023年,星期五算术逻辑单元状态条件寄存器程序计数器PC地址寄存器AR地址总线ABUS数据总线DBUS累加器AC缓冲寄存器DRCPUALU指令寄存器IR指令译码器操作控制器时序产生器时钟状态反馈取指控制执行控制cccc+12021222324303140CLAADD30STA40NOPJMP21000006000020CLACLA000021000000执行CLA指令第十五页,共一百三十一页,编辑于2023年,星期五5.2.3ADD指令的指令周期一个CPU周期一个CPU周期取指令阶段执行指令阶段开始取指令PC+1对指令译码送操作数地址取下条指令PC+1取出操作数执行加操作一个CPU周期第十六页,共一百三十一页,编辑于2023年,星期五算术逻辑单元状态条件寄存器程序计数器PC地址寄存器AR地址总线ABUS数据总线DBUS累加器AC缓冲寄存器DRCPUALU指令寄存器IR指令译码器操作控制器时序产生器时钟状态反馈取指控制执行控制cccc+12021222324303140CLAADD30STA40NOPJMP21000006000021ADDADD300000210000220000300000060+6=6000006取出并执行ADD指令第十七页,共一百三十一页,编辑于2023年,星期五5.2.4STA指令的指令周期
第十八页,共一百三十一页,编辑于2023年,星期五算术逻辑单元状态条件寄存器程序计数器PC地址寄存器AR地址总线ABUS数据总线DBUS累加器AC缓冲寄存器DRCPUALU指令寄存器IR指令译码器操作控制器时序产生器时钟状态反馈取指控制执行控制cccc+120212223243040CLAADD30STA40NOPJMP21000006000022STASTA40000022000023000040000006000006000006取出并执行STA指令第十九页,共一百三十一页,编辑于2023年,星期五5.2.5NOP指令和JMP指令的指令周期第二十页,共一百三十一页,编辑于2023年,星期五算术逻辑单元状态条件寄存器程序计数器PC地址寄存器AR地址总线ABUS数据总线DBUS累加器AC缓冲寄存器DRALU指令寄存器IR指令译码器操作控制器时序产生器时钟状态反馈取指控制执行控制cccc+120212223243040CLAADD30STA40NOPJMP21000006000024JMP21JMP21000024000021000006000006000025000021取出并执行JMP指令第二十一页,共一百三十一页,编辑于2023年,星期五5.2.7用方框图语言表示指令周期用方框图语言表示指令周期在进行计算机设计时,可以采用方框图语言来表示一条指令的指令周期。一个方框代表一个CPU周期,方框中的内容表示数据通路的操作或某种控制。一个菱形符号代表某种判别或测试,不过时间它依附于它前面一个方框的CPU周期,而不单独占用一个CPU周期。符号“~”代表一个公操作。第二十二页,共一百三十一页,编辑于2023年,星期五~~PC→AR→ABUSDBUS→DR→IRPC+1译码或测试0→ACIR→ARIR→ARIR→PCPC→ARAR→ABUSDBUS→DRRD→ALUALU→ACAR→ABUSAC→DRDR→DBUS~~~CLAADDSTAJMPNOP第二十三页,共一百三十一页,编辑于2023年,星期五指令周期小结:各类信息的传送路径指令:M-----DR-----DBUS-----IR地址:PC----ABUS---AR------(取决于寻址方式)数据:寄存器----寄存器总线直接传送寄存器----存储器Ri----DBUS----DR-----M存储器----寄存器M-----DR------BUS----Ri第二十四页,共一百三十一页,编辑于2023年,星期五例:如图所示为双总线结构机器的数据通路,IR为指令寄存器,PC为程序计数器(具有自增功能),M为主存(受R/W信号控制),AR为地址寄存器,DR为数据缓冲寄存器,ALU由加、减控制信号决定完成何种操作,控制信号G控制的是一个门电路。另外,线上标注有小圈表示有控制信号,例中yi表示y寄存器的输入控制信号,R1o为寄存器R1的输出控制信号,未标字符的线为直通线,不受控制。1.“ADDR2,R0”指令完成(R0)+(R2)→R0功能操作。假设该指令的地址已放入PC中。2.“SUBR1,R3”指令完成(R3)-(R1)→R3的功能操作。第二十五页,共一百三十一页,编辑于2023年,星期五IRPCARDRR0R1R2R3MABALUIRiIRoPCiPCoARiDRiDRoR0iR0oR3iR3oXiYiA总线B总线G+-R/W第二十六页,共一百三十一页,编辑于2023年,星期五PC→ARM→DRDR→IRR2→YR0→XR0+R2→R0~PC→ARM→DRDR→IRR3→YR1→XR3+R1→R3~PC0,G,ARiDR0,G,IRiR20,G,YiR00,G,Xi+,G,R0i
R/W=RR3o,G,YiR1o,G,Xi-,G,R3i第二十七页,共一百三十一页,编辑于2023年,星期五5.2续CPU模型第二十八页,共一百三十一页,编辑于2023年,星期五5.2.2续MOV指令的指令周期取指周期执行周期第二十九页,共一百三十一页,编辑于2023年,星期五5.2.2MOV指令的指令周期-取指①程序计数器PC中装入第一条指令地址101(八进制);②PC的内容被放到指令地址总线ABUS(I)上,对指存进行译码,并启动读命令;③从101号地址读出的MOV指令通过指令总线IBUS装入指令寄存器IR;④程序计数器内容加1,变成102,为取下一条指令做好准备;⑤指令寄存器中的操作码(OP)被译码;⑥CPU识别出是MOV指令,至此,取指周期即告结束。WR/RD第三十页,共一百三十一页,编辑于2023年,星期五5.2.2MOV指令的指令周期-执行①操作控制器(OC)送出控制信号到通用寄存器,选择R1(10)作源寄存器,选择R0作目标寄存器;②OC送出控制信号到ALU,指定ALU做传送操作;③OC送出控制信号,打开ALU输出三态门,将ALU输出送到数据总线DBUS上。注意,任何时候DBUS上只能有一个数据。④OC送出控制信号,将DBUS上的数据打入到数据缓冲寄存器DR(10);⑤OC送出控制信号,将DR中的数据10打入到目标寄存器R0,R0的内容由00变为10。至此,MOV指令执行结束。第三十一页,共一百三十一页,编辑于2023年,星期五5.2.3续LAD指令的指令周期取指周期执行周期第三十二页,共一百三十一页,编辑于2023年,星期五5.2.3续LAD指令的指令周期第三十三页,共一百三十一页,编辑于2023年,星期五5.2.4续ADD指令的指令周期第三十四页,共一百三十一页,编辑于2023年,星期五5.2.4ADD指令的指令周期第三十五页,共一百三十一页,编辑于2023年,星期五5.2.5续STO指令的指令周期第三十六页,共一百三十一页,编辑于2023年,星期五5.2.5STO指令的指令周期第三十七页,共一百三十一页,编辑于2023年,星期五5.2.6JMP指令的指令周期第三十八页,共一百三十一页,编辑于2023年,星期五5.2.6JMP指令的指令周期第三十九页,共一百三十一页,编辑于2023年,星期五5.2.7续方框图表示指令周期取指执行第四十页,共一百三十一页,编辑于2023年,星期五5.3
时序产生器和控制方式
用二进制码表示的指令和数据都放在内存里,那么CPU是怎样识别出它们是数据还是指令呢?
从时间上来说:取指令事件发生在指令周期的第一个CPU周期中,即发生在“取指令”阶段,而取数据事件发生在指令周期的后面几个CPU周期中,即发生在“执行指令”阶段。
从空间上来说:如果取出的代码是指令,那么一定经DR送往指令寄存器IR,如果取出的代码是数据,那么一定送往运算器。时间控制对计算机来说是非常重要的![思考]第四十一页,共一百三十一页,编辑于2023年,星期五5.3.1时序信号的作用和体制
时序信号的作用和体制计算机的协调动作需要时间标志,而时间标志则是用时序信号来体现的。操作控制器发出的各种控制信号都是时间因素(时序信号)和空间因素(部件位置)的函数。组成计算机硬件的器件特性决定了时序信号最基本的体制是电位---脉冲制。第四十二页,共一百三十一页,编辑于2023年,星期五常用的操作控制器有两种:硬布线控制器微程序控制器
第四十三页,共一百三十一页,编辑于2023年,星期五硬布线控制器中时序信号采用主状态周期——节拍电位—节拍脉冲三级体制。第四十四页,共一百三十一页,编辑于2023年,星期五主状态周期(指令周期):包含若干个节拍周期,可以用一个触发器的状态持续时间来表示。节拍电位(机器周期):表示一个CPU周期的时间,包含若干个节拍脉冲,表示较大的时间单位。节拍脉冲(时钟周期):表示较小的时间单位。第四十五页,共一百三十一页,编辑于2023年,星期五节拍脉冲节拍电位1主状态周期节拍电位2主状态周期-节拍电位-节拍脉冲第四十六页,共一百三十一页,编辑于2023年,星期五微程序控制中时序信号采用节拍电位——节拍脉冲二级体制。触发器数据,电位控制信号,脉冲数据准备好后,以电位的方式送触发器(可执行保存),当控制信号来到后进用一个脉冲信号即可把数据装入触发器。第四十七页,共一百三十一页,编辑于2023年,星期五微程序控制器时序信号产生器的组成时钟源环形脉冲发生器节拍脉冲和读/写时序的译码启停控制逻辑第四十八页,共一百三十一页,编辑于2023年,星期五数据准备好后,以电位的方式送触发器控制信号来到后,用一个脉冲信号把数据装入触发器数据:电位控制信号:脉冲节拍电位-节拍脉冲第四十九页,共一百三十一页,编辑于2023年,星期五
IORQMREQRDWET1T2T3T4
IORQ°MREQ°RD°WE°T1°T2°T3°T4°MERQ’IORQ’RD’WR’Φ提供频率稳定且电平匹配的方波时钟脉冲信号由石英晶体振荡器组成产生一组有序的间隔相等或不等的脉冲序列启动停机5.3.2时序信号产生器
启停控制逻辑节拍脉冲和读写时序译码逻辑环形脉冲发生器时钟脉冲源第五十页,共一百三十一页,编辑于2023年,星期五控制方式同步控制方式:在任何情况下,已定的指令在执行时所需的机器周期数和时钟周期数都是固定不变的。__采用完全统一的机器周期执行各种不同的指令。这意味这所有指令周期具有相同的节拍电位和相同的节拍脉冲数。__采用不定长的机器周期。__中央控制和局部控制相结合。中央控制:就是将大部分指令安排在固定的机器周期完成。局部控制:对少数复杂的指令采用另外的时序进行定时。
第五十一页,共一百三十一页,编辑于2023年,星期五同步控制方式:时钟微操作信号1微操作信号2第五十二页,共一百三十一页,编辑于2023年,星期五异步控制方式:每条指令、每个操作控制信号需要多少时间就占用多少时间。这意味着每条指令的指令周期可由多少不等的机器周期数组成。第五十三页,共一百三十一页,编辑于2023年,星期五异步控制方式命令1命令2操作信号1回答1操作信号2回答2命令3第五十四页,共一百三十一页,编辑于2023年,星期五联合控制方式:将同步控制方式和异步控制方式相结合的方式。情况(1)大部分操作序列安排在固定的机器周期中,对某些时间难以确定的操作则以执行部件的“回答”信号作为本次操作的结束;情况(2)机器周期的节拍脉冲数固定,但是各条指令周期的机器周期数不固定。第五十五页,共一百三十一页,编辑于2023年,星期五小结控制器的组成:指令部件程序计数器PC指令寄存器指令译码器时序部件脉冲源及启停逻辑时序信号形成部件控制方式第五十六页,共一百三十一页,编辑于2023年,星期五5.4微程序控制器发展微程序的概念和原理是由英国剑桥大学的M·V·Wilkes教授于1951年在曼彻斯特大学计算机会议上首先提出来的,当时还没有合适的存放微程序的控制存储器的元件。到1964年,IBM公司在IBM360系列机上成功地采用了微程序设计技术。20世纪70年代以来,由于VLSI技术的发展,推动了微程序设计技术的发展和应用。目前,从大型机到小型机、微型机都普遍采用了微程序设计技术。第五十七页,共一百三十一页,编辑于2023年,星期五微程序控制器的基本思想:将微操作控制信号按一定规则进行信息编码(代码化)形成控制字(微指令),一条机器指令对应一段“程序”,该程序存放在控制存储器中,因为“程序”的指令结果是实现一条机器指令的功能,所以称为“指令的微程序”。第五十八页,共一百三十一页,编辑于2023年,星期五1)、微命令:控制部件向执行部件发出的各种控制命令叫作微命令,它是构成控制序列的最小单位。例如:打开或关闭某个控制门的电位信号、某个寄存器的打入脉冲等。微命令是控制计算机各部件完成某个基本微操作的命令。2)、微操作:是微命令的操作过程。微命令和微操作是一一对应的。微命令是微操作的控制信号,微操作是微命令的操作过程。微操作是执行部件中最基本的操作。微命令和微操作第五十九页,共一百三十一页,编辑于2023年,星期五由于数据通路的结构关系,微操作可分为相容的和互斥的两种:互斥的微操作,是指不能同时或不能在同一个节拍内并行执行的微操作。可以编码相容的微操作,是指能够同时或在同一个节拍内并行执行的微操作。必须各占一位举一个例子看一下:见下图第六十页,共一百三十一页,编辑于2023年,星期五ALUR1R2R3Cy+
-MDR468579123第六十一页,共一百三十一页,编辑于2023年,星期五2、微指令和微程序3)、微指令:把在同一CPU周期内并行执行的微操作控制信息,存储在控制存储器里,称为一条微指令(Microinstruction)。它是微命令的组合,微指令存储在控制器中的控制存储器中一条微指令通常至少包含两大部分信息:操作控制字段,又称微操作码字段,用以产生某一步操作所需的各个微操作控制信号。某位为1,表明发微指令微指令发出的控制信号都是节拍电位信号,持续时间为一个CPU周期微命令信号还要引入时间控制顺序控制字段,又称微地址码字段,用以控制产生下一条要执行的微指令地址。第六十二页,共一百三十一页,编辑于2023年,星期五微指令的格式:.......................1234567891011121314151617181920212223LDR1’LDR2’LDR3’R1→YR2→XR2→YR1→XDR→XR3→Y+M-RD’LDDR’LDIR’LDAR’PC+1P1P2直接地址操作控制顺序控制第六十三页,共一百三十一页,编辑于2023年,星期五程序机器指令1机器指令2机器指令i机器指令n……..………微指令2微指令1微指令i微指令n……..……..微程序4)微程序:一条机器指令的功能是用许多条微指令组成的序列来实现的,这个微指令序列称为微程序。第六十四页,共一百三十一页,编辑于2023年,星期五微命令→指令系统
指令系统=所有指令,指令=微程序微程序=若干微指令,微指令=一组微命令微命令→微操作第六十五页,共一百三十一页,编辑于2023年,星期五3、微程序控制器原理图控制存储器地址译码微地址寄存器OPP字段控制字段地址转移逻辑状态条件指令寄存器微命令信号
第六十六页,共一百三十一页,编辑于2023年,星期五1)控制存储器:用来存放实现全部指令系统的微程序。是一种高速存储器。微地址:人们常把全部指令的控制字存放在一个高速存储器中,即控制存储器中(简称控存),控存的一个单元的内容即控制字代表了某一个节拍的一组微操作控制信号的信息,而把控存单元的地址称为“微地址”。第六十七页,共一百三十一页,编辑于2023年,星期五2)微指令寄存器:
包括:微地址寄存器和微命令寄存器两部分。用来存放由控制存储器读出的一条微指令信息。3)微地址转移逻辑:自动完成修改微地址的任务。第六十八页,共一百三十一页,编辑于2023年,星期五微程序控制器——工作过程
微程序控制器的工作过程实质上就是在微程序控制器的控制下,计算机执行机器指令的过程。从控存中取出一段“取机器指令”用的微程序,称为取指微程序,这是一段公用的微操作,其首址通常放在“0”号微地址单元。该微程序完成从主存中读取机器指令并送往指令寄存器。机器指令操作码通过微地址形成部件,产生对应的微程序入口地址,并送入微地址寄存器。逐条取出对应的微指令,每一条微指令提供一个微命令序列,控制有关的微操作。执行完对应于一条机器指令的一段微程序后,返回到取指微程序的入口,以便取出下一条机器指令。不断重复,直至程序执行完毕。第六十九页,共一百三十一页,编辑于2023年,星期五4、微程序举例举例:“十进制加法”指令的微程序控制的过程。十进制加法”指令的功能是用BCD码来完成十进制数的加法运算。在十进制运算时,当相加二数之和大于9时,便产生进位,要进行加6修正;当相加二数之和小于等于9时,结果是正确的。第七十页,共一百三十一页,编辑于2023年,星期五
假定数a和b已存放在R1和R2两寄存器中,数6存放在R3寄存器中。算法要求先进行a+b+6运算,然后判断结果有无进位;当进位标志Cy=1不减6,当Cy=0,减6,从而可以获得正确的结果。第七十一页,共一百三十一页,编辑于2023年,星期五用BCD码完成A+B运算1、A=1000B=1001
1000+100110001有进位,修正为:
10001+0110101112、A=0110B=1000A+B+6=10100有进位,正确3、A+B+6=1101无进位,错误,修正:
1101-01100111第七十二页,共一百三十一页,编辑于2023年,星期五PC→AR→ABUSDBUS→DR→IR,PC+1P1R1+R2→R2R2+R3→R2R2-R3→R2P2RD0000000010101001000000010000Cy≠0Cy=0微程序流程图~第七十三页,共一百三十一页,编辑于2023年,星期五第一条微指令000000000000111111000001234567891011121314151617181920212223LDR1’LDR2’LDR3’R1→YR2→XR2→YR1→XDR→XR3→Y+M-RD’LDDR’LDIR’LDAR’PC+1P1P2直接地址操作控制顺序控制操作控制字段有五个微命令:第16位发出LDAR’,将PC内容送到地址寄存器AR;第13位发出RD’,第14位发出LDDR’,于是内存执行读操作,从内存取出“十进制加法”指令放到DR中,第15位发出LDIR’,将DR中的指令再送到指令寄存器IR中,第17位发出PC+1微命令,是程序计数器加1,做好取下一条机器指令的准备。第七十四页,共一百三十一页,编辑于2023年,星期五第二条微指令010100100100000000010011234567891011121314151617181920212223LDR1’LDR2’LDR3’R1→YR2→XR2→YR1→XDR→XR3→Y+M-RD’LDDR’LDIR’LDAR’PC+1P1P2直接地址操作控制顺序控制第七十五页,共一百三十一页,编辑于2023年,星期五第三条微指令010001001100000000100001234567891011121314151617181920212223LDR1’LDR2’LDR3’R1→YR2→XR2→YR1→XDR→XR3→Y+M-RD’LDDR’LDIR’LDAR’PC+1P1P2直接地址操作控制顺序控制第七十六页,共一百三十一页,编辑于2023年,星期五第四条微指令010001001001000000000001234567891011121314151617181920212223LDR1’LDR2’LDR3’R1→YR2→XR2→YR1→XDR→XR3→Y+M-RD’LDDR’LDIR’LDAR’PC+1P1P2直接地址操作控制顺序控制第七十七页,共一百三十一页,编辑于2023年,星期五CPU周期与微指令周期微指令周期:读出微指令的时间加上指令该条微指令的时间。T1T2T3T4T1T2T3T4T4T4执行微指令
微指令周期CPU周期CPU周期
读微指令
在T4节拍脉冲期间(200ns):取微指令;在T1的上升沿:微指令已经取好,在T1—T3期间(600ns):执行微操作。所以:在一个cpu周期内(800ns):取址指令:占1/4cpu周期;执行微指令:占3/4cpu周期。第七十八页,共一百三十一页,编辑于2023年,星期五6、机器指令和微指令的关系程序计数器pc地址寄存器缓冲寄存器指令寄存器微地址寄存器微指令寄存器主存储器控制存储器微命令地址译码器地址译码+1第七十九页,共一百三十一页,编辑于2023年,星期五取机器指令,取微指令,它们之间是什么关系?1.一条机器指令对应一个微程序,这个微程序是由若干条微指令序列组成的。因此,一条机器指令的功能是由若干条微指令组成的序列来实现的。简言之,一条机器指令所完成的操作划分成若干条微指令来完成,由微指令进行解释和执行。2.从指令与微指令,程序与微程序,地址与微地址的一一对应关系来看,前者与内存储器有关,后者与控制存储器有关。3.每一个CPU周期对应一条微指令。第八十页,共一百三十一页,编辑于2023年,星期五7、微程序设计技术设计微指令结构应当追求的目标是:1、有利于缩短微指令长度;2、有利于减小控制存储器的容量;3、有利于提高微程序的执行速度;4、有利于对微指令的修改;5、有利于提高微程序设计的灵活性;第八十一页,共一百三十一页,编辑于2023年,星期五微命令编码直接编码法字段直接编译法字段间接编译法第八十二页,共一百三十一页,编辑于2023年,星期五直接编码法在微指令的操作控制字段中每一个微命令都用一位信息表示,对应于一种微操作。设计微指令时,选用或不选用某个微命令,只要将表示该微命令的相应位设置成“1”或“0”就可以了。因此,微命令的产生不必经过译码,所需的控制信号直接送到相应的控制点。特点:直观、不必译码、速度快微指令的长度太长,不好记忆,占用空间大.......................1234567891011121314151617181920212223LDR1’LDR2’LDR3’R1→YR2→XR2→YR1→XDR→XR3→Y+M-RD’LDDR’LDIR’LDAR’PC+1P1P2直接地址操作控制顺序控制第八十三页,共一百三十一页,编辑于2023年,星期五编译表示法将微指令的控制字段分为若干个小字段,每个字段分别编码,每种编码代表一种微命令。把一组相斥性的微命令信号组成一个小组(即一个字段),然后通过小组(字段)译码器对每一个微命令信号进行译码,译码输出作为操作控制信号,其微指令结构如下图所示。第八十四页,共一百三十一页,编辑于2023年,星期五……………….译码译码译码………控制字段地址字段微命令微命令微命令uIR
采用字段译码的编码方法,可以用较小的二进制信息位表示较多的微命令信号。例如3位二进位译码后可表示7个微命令,4位二进制位译码后可表示15个微命令。与直接控制法相比,字译码控制法可使微指令字大大缩短,但由于增加译码电路,使微程序的执行速度稍稍减慢。第八十五页,共一百三十一页,编辑于2023年,星期五
例如,某机器指令系统总共需要256个微命令,采用直接编码法,微指令的操作控制字段需256位,采用编译表示法,如将控制字段分成4位一段,共16段,每个字段经一个译码器输出,可获得16个微命令,总共16段就可获得256个微命令。微指令的操作控制字段仅64位。第八十六页,共一百三十一页,编辑于2023年,星期五编码表示法的分段原则:相斥性位命令分在同一字段内,相容性命令分在不同的字段内。前者可提高信息位的利用率,缩短微指令字长;后者有利于实现并行操作,加快指令的执行速度。一般将同类操作中互斥的微命令划分在同一个字段中。每个小字段包含的信息位不能太多,一般不超过6位,否则将增加译码线路的复杂性和译码时间。第八十七页,共一百三十一页,编辑于2023年,星期五混合表示法这种方法是把直接表示法与字段编码法混合使用,以便能综合考虑指令字长、灵活性、执行微程序速度等方面的要求。另外,在微指令中还可附设一个常数字段。该常数可作为操作数送入ALU运算,也可作为计数器初值用来控制微程序循环次数。第八十八页,共一百三十一页,编辑于2023年,星期五微地址的形成方法根据机器指令操作码找到相应机器指令所对应的微程序的入口地址。后继微地址的产生计数器方式断定方式(下址字段方式)第八十九页,共一百三十一页,编辑于2023年,星期五计数器方式:设置一个微程序计数器uPC,在顺序执行微指令时,后继微指令地址由现行微地址加上一个增量来实现。遇到转移时,由微指令给出转移微地址。第九十页,共一百三十一页,编辑于2023年,星期五用计数器方式实现的微程序控制单元结构uPC转移部分控制存储器uPC指令寄存器入口地址及转移地址产生器条件码状态标志第九十一页,共一百三十一页,编辑于2023年,星期五计数器方式的优点是微指令字较短,便于编写微程序,后继微地址产生机构比较简单;缺点是执行速度低,原因是计数器方式不易直接实现对应于各个测试条件的多路转移,而微程序的主要特点是存在大量的分支。第九十二页,共一百三十一页,编辑于2023年,星期五多路转移方式一条微指令具有多个转移分支的能力称为多路转移。在多路转移方式中,当微程序不产生分支时,后继微地址直接由微指令的顺序控制字段给出;当微程序出现分支时,有若干“后选”微地址可供选择:即按顺序控制字段的“判别测试”标志和“状态条件”信息来选择其中一个微地址。“状态条件”有n位标志,可实现微程序2的n次方路转移,涉及微地址寄存器的n位。多路转移方式的特点是:能以较短的顺序控制字段配合,实现多路并行转移,灵活性好,速度较快,但转移地址逻辑需要用组合逻辑方法设计。第九十三页,共一百三十一页,编辑于2023年,星期五断定方式(下址字段法)所谓断定方式是指后继微指令地址可由设计者指定或由设计者指定的测试判断字段控制生产。在这种方式中,当微程序不产生分支时,后继微指令地址直接由微指令的顺序控制字段给出;当微程序出现分支时,按顺序控制字段给出的测试判别字段和状态条件来形成后继微地址。这种方式因为要在微指令格式中设置一个字段用来指明下一条要执行的微指令地址,所以也称为下址字段法。第九十四页,共一百三十一页,编辑于2023年,星期五用断定方式实现的微程序控制单元结构
指令寄存器IRPLA微地址修改逻辑+控制存储器uAR下址uIR测试条件码状态标志第九十五页,共一百三十一页,编辑于2023年,星期五uOP测试判别下址2400下址01按地址转移10按Z转移11空如:采用断定方式的微指令格式如下:第九十六页,共一百三十一页,编辑于2023年,星期五微指令格式水平型微指令垂直型微指令第九十七页,共一百三十一页,编辑于2023年,星期五水平型微指令:一次能定义并执行多个并行操作微命令的微指令,叫做水平型微指令。基本特征:微指令字较长一条微指令能控制数据通路中多个功能部件并行操作。微命令的编码简单,尽可能使微命令与控制门之间具有直接对应关系。格式如下:控制字段判别测试字段下地址字段第九十八页,共一百三十一页,编辑于2023年,星期五垂直型微指令:在微指令中设置微操作码字段,采用为操作码编译法,由操作码规定微指令的功能,在一条微指令中只有一、两个微操作命令称为垂直型微指令。基本特征:微指令字短。微指令的并行操作能力有限,一条微指令只能控制数据通路中的一、两个信息传送。微指令编码比较复杂,全部微命令组成一个微操作码字段,经过完全译码,微指令的各个二进制位与数据通路的各个控制点之间完全不存在直接对应关系。第九十九页,共一百三十一页,编辑于2023年,星期五设微指令字长为16位,微操作码3位。(1)寄存器-寄存器传送型微指令
其功能是把源寄存器数据送目标寄存器。13—15位为微操作码(下同),源寄存器和目标寄存器编址各5位,可指定31个寄存器。第一百页,共一百三十一页,编辑于2023年,星期五(2)运算控制型微指令
其功能是选择ALU的左、右两输入源信息,按ALU字段所指定的运算功能(8种操作)进行处理,并将结果送入暂存器中。左、右输入源编址可指定31种信息源之一。第一百零一页,共一百三十一页,编辑于2023年,星期五(3)访问主存微指令
其功能是将主存中一个单元的信息送入寄存器或者将寄存器的数据送往主存。存储器编址是指按规定的寻址方式进行编址。第1,2位指定读操作或写操作(取其之一)。第一百零二页,共一百三十一页,编辑于2023年,星期五(4)条件转移微指令
其功能是根据测试对象的状态决定是转移到D所指定的微地址单元,还是顺序执行下一条微指令。9位D字段不足以表示一个完整的微地址,但可以用来替代现行μPC的低位地址。测试条件字段有4位,可规定16种测试条件。101第一百零三页,共一百三十一页,编辑于2023年,星期五水平型微指令与垂直型微指令的比较(1)水平型微指令并行操作能力强,效率高,灵活性强,垂直型微指令则较差。(2)水平型微指令执行一条指令的时间短,垂直型微指令执行时间长。(3)由水平型微指令解释指令的微程序,有微指令字较长而微程序短的特点。垂直型微指令则相反。(4)水平型微指令用户难以掌握,而垂直型微指令与指令比较相似,相对来说,比较容易掌握。第一百零四页,共一百三十一页,编辑于2023年,星期五5.5硬布线控制器
(组合逻辑控制器)基本思想:把控制部件看成作为生产专门固定时序控制信号的逻辑电路,而此逻辑电路以使用最少元件和取得最高操作速度为设计目标。这种逻辑电路是一种由门电路和触发器构成的复杂树形网络,故称为硬布线控制器。由于门电路多是组合逻辑电路所以也称为组合逻辑控制器。第一百零五页,共一百三十一页,编辑于2023年,星期五硬布线控制器的结构图组合逻辑线路指令译码器指令寄存器节拍电位/节拍脉冲发生器微操作控制信号结果反馈信息启动停止时钟复位IR
M1MiT1Ti第一百零六页,共一百三十一页,编辑于2023年,星期五逻辑网络的输入信号来源有三个:(1)来自指令操码译码器的输出Im;(2)来自执行部件的反馈信息Bj;(3)来自时序产生器的时序信号,包括节拍电位信号M和节拍脉冲信号T。逻辑网络N的输出信号就是微操作控制信号,它用来对执行部件进行控制。硬布线控制器的基本原理:C=f(Im,Mi,Tk,Bj)实现:每一个操作控制信号与指令,时序,条件都有一个逻辑关系,用逻辑表达式描述。第一百零七页,共一百三十一页,编辑于2023年,星期五硬布线控制器评价:速度快电路设计太复杂增加功能不太可能第一百零八页,共一百三十一页,编辑于2023年,星期五时序采用三级时序,设置三个机器周期,每个机器周期可以完成一次主存的读/写操作,每个机器周期可分为若干个节拍,每个节拍可分为若干个脉冲。第一百零九页,共一百三十一页,编辑于2023年,星期五硬布线控制器的设计方法绘制指令的流程图:以指令的执行过程为线索,按指令类型分类,将每条指令归纳为一个微操作序列,根据操作的先后顺序画出指令流程图。列出微操作时间表:把指令流程图中的微操作序列合理地安排在各个机器周期的相应节拍和脉冲中去,使他们在执行的时间上不发生冲突。微操作的逻辑综合:以每个微操作为单位进行“同类项合并”,就是把不同指令在不同周期状态,不同节拍和不同条件下所需要的同一微操作用逻辑关系式综合起来,然后加以简化使逻辑表达式更为合理。第一百一十页,共一百三十一页,编辑于2023年,星期五硬布线控制器PC→MAR,READMDR→IRPC+1→PCADDR→MARREADADDR→MARADDR→MARREADADDR→MARREADZ=1ADDR→PCMDR→RiMDR→RiWRITEMDR→YY+Ri→ZZ→RiMDR→YY^Ri→ZZ→RiLDSTRADDANDJZ第一百一十一页,共一百三十一页,编辑于2023年,星期五
比较硬布线控制和微程序控制?【解答】①硬布线控制与微程序控制器相同之处是根据指令操作码和时序信号,产生各种控制信号,以便正确地建立各种数据通路,完成取指令和执行指令的控制。②硬布线控制的优点是由于控制器的速度取决于电路延迟,所以速度较快。
第一百一十二页,共一百三十一页,编辑于2023年,星期五③硬布线控制的主要缺点是由于将控制部件看成专门产生固定时序控制信号的逻辑电路,所以把用最少元件和取得最高速度作为设计目标。一旦设计完成,不可能通过其他的修改添加新功能。④微程序控制的主要优点是同硬布线控制器相比,具有规整性、灵活性、可维护性等一系列优点。⑤微程序控制的主要缺点是由于微程序控制器采用了存储程序原理,所以每条指令都要从控存中取一次,因此影响了速度。第一百一十三页,共一百三十一页,编辑于2023年,星期五5.7流水CPU并行处理技术并行性的两种含义:同时性指两个以上事件在同一时刻发生;并发性指两个以上事件在同一时间间隔内发生。时间并行空间并行时间并行+空间并行第一百一十四页,共一百三十一页,编辑于2023年,星期五微程序控制器——设计技术微指令的执行方式串行执行方式取i条执行i条取i+1条执行i+1条微周期微周期第一百一十五页,共一百三十一页,编辑于2023年,星期五微程序控制器——设计技术并行执行方式取i条执行i条取I+1条执行I+1条取I+2条执行I+2条第一百一十六页,共一百三十一页,编辑于2023年,星期五1.时间并行
时间并行指时间重叠,在并行性概念中引入时间因素,让多个处理过程在时间上相互错开,轮流重叠地使用同一套硬件设备的各个部分,以加快硬件周转而赢得速度。2.空间并行
空间并行指资源重复,在并行性概念中引入空间因素,以“数量取胜”为原则来大幅度提高计算机的处理速度。3.时间并行+空间并行
指时间重叠和资源重复的综合应用,既采用时间并行性又采用空间并行性。显然,第三种并行技术带来的高速效益是最好的。第一百一十七页,共一百三十一页,编辑于2023年,星期五流水计算机的系统组成
现代流水计算机的系统组成原理如下图所示。其中CPU按流水线方式组织,通常由三部分组成:指令部件、指令队列、执行部件。这三个功能部件可以组成一个3级流水线。第一百一十八页,共一百三十一页,编辑于2023年,星期五流水CPU的时空图计算机的流水处理过程非常类似于工厂中的流水装配线。为了实现流水,首先把输入的任务(或过程)分割为一系列子任务,并使各
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 个性化视频制作委托合同书(2024年版)版B版
- 2025年环保型打印纸张品研发与认证合同4篇
- 2025年度文化创意产业承包经营合同赔偿与创意成果转化3篇
- 二零二五版房产维修基金管理合同3篇
- 2025年绿色建筑彩板房采购协议3篇
- 2025年度商业地产项目租赁协议范本4篇
- 二零二五年度美容师客户满意度调查与反馈协议4篇
- 2024年销售合同风险评估3篇
- 2025版合伙企业个人退伙权益保障协议书3篇
- 2025年度数据中心基础设施建设承包协议8篇
- 2025年度公务车辆私人使用管理与责任协议书3篇
- 售后工程师述职报告
- 绿化养护难点要点分析及技术措施
- 2024年河北省高考历史试卷(含答案解析)
- 车位款抵扣工程款合同
- 小学六年级数学奥数题100题附答案(完整版)
- 高中综评项目活动设计范文
- 英汉互译单词练习打印纸
- 2023湖北武汉华中科技大学招聘实验技术人员24人笔试参考题库(共500题)答案详解版
- 一氯二氟甲烷安全技术说明书MSDS
- 物流签收回执单
评论
0/150
提交评论