西电计算机组成原理26概要

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

1CPU的功能与结构简化的单总线结构的CPU内部控制信号图6.2单总线数据通路CPU内部结构图寄存器组R0Rn-1SPDRARPCIRCPU内部总线ALUPSW移位寄存器求补器算术、布尔逻辑暂存器Y暂存器ZABCBDB控制器CU2微操作二、微操作流程1.时序信号的产生(1)节拍周期信号的产生T节拍T1T2T16TTT74LS154A00Y1YA315YASTBST时钟T74LS163CPD0Q0D3Q3LDCTPCTTCR+5V&RESET结束END计数型节拍脉冲发生器(节拍数≤16)状态利用率高需要采取措施消除竞争冒险3微操作二、微操作流程1.时序信号的产生(1)节拍周期信号的产生T图6.6移位型节拍脉冲发生器(节拍数≤8)时钟T74LS199CP0CP1Q0D0Q1D7Q7LDSH/JKCR&RESET结束END节拍T1T2T8TTT+5V反向延时没有竞争冒险问题状态利用率低4微操作二、微操作流程5微操作6微操作西安电子科技大学计算机学院2020年2月9日06:13:34计算机组织与体系结构中央处理器(CPU)微程序控制器设计8微程序控制原理指导思想:用软件方法组织和控制数据处理系统的信息传送,并最终用硬件实现。基本思想:依据微程序顺序产生一条指令执行时所需的全部控制信号。相当于把控制信号存储起来,因此又称存储控制逻辑方法。一、微程序控制基本思想9微程序控制原理对在一个时间单位(节拍)内出现的一组微操作进行描述的语句称作微指令(microinstruction)。一个微指令序列称作微程序(microprogram)或固件(firmware)。通过一组微指令产生的控制信号,使一条指令中的所有微操作得以实现,从而实现一条指令的功能。指令、微程序、微指令的关系:二、微指令T1:微操作1(命令1,命令2,…)微操作2(命令1,命令2)……Tj:微操作i(命令1,命令2,…)……Tm:微操作n(命令1)一条机器指令一个微程序微指令j微指令m微指令110微程序控制原理一条(机器)指令对应一个微程序,该微程序包含从取指令到执行指令一个完整微操作序列对应的全部微指令,它被存入一个称为控制存储器(controlmemory)的ROM中。在控制存储器中存放着指令系统中定义的所有指令的微程序。微指令周期:一条微指令执行的时间(包括从控制存储器中取得微指令和执行微指令所用时间)。微指令的一般格式:二、微指令地址域控制域生成下条微指令地址产生控制信号11下一地址及控制read指令寄存器译码器1微地址寄存器微指令寄存器控制存储器译码器2时序逻辑状态时钟控制单元CPU内部控制信号到系统总线的控制信号图6.11微程序控制器的一般结构微程序控制原理三、微程序控制器的一般结构和工作原理12微程序控制原理控制存储器(CM)指令长度微程序占用的存储单元数微指令寄存器IR、微地址寄存器AR时序逻辑依据时钟按节拍为控制存储器提供读出控制信号。在微程序运行时依据CPU内外状态(ALU标志、中断请求、DMA请求等)和当前微指令地址域的信息生成下一条微指令地址,并将其装入到微地址寄存器中。三、微程序控制器的一般结构和工作原理13微程序控制原理微程序控制器在一个时钟周期内完成如下工作:①时序逻辑电路给控制存储器发出read命令;②从微地址寄存器AR指定的控存单元读出微指令,送入微指令寄存器IR;③根据微指令寄存器的内容,产生控制信号,给时序逻辑提供下条微地址信息;④时序逻辑根据来自微指令寄存器的下条微地址信息和CPU内外状态,给微地址寄存器加载一个新的微地址。三、微程序控制器的一般结构和工作原理14微指令设计微指令的一般格式:地址域:决定如何取得微指令控制域:微指令的执行设计微指令需要从两方面考虑:微指令的长度→减少控制器占CPU集成芯片的面积微指令的执行时间→提高CPU的工作速度15微指令设计一、微指令地址的生成下一条微指令的地址有三种可能:①由指令寄存器确定的微程序首地址:每一个指令周期仅出现一次,且仅出现在刚刚获取一条指令之后。②下一条顺序地址下一条微指令地址=当前微指令地址+1③分支跳转地址无条件和条件跳转两分支和多分支跳转两地址格式(断定方式)单地址格式(计数方式,增量方式)可变格式16微指令设计一、微指令地址的生成图6.12两地址格式的分支控制逻辑条件选择CMAR控制域地址1地址2ACIR分支逻辑多路选择器KIR状态标志地址选择微程序首地址跳转地址顺序地址1.两地址格式(断定方式)17微指令设计一、微指令地址的生成图6.13单地址格式的分支控制逻辑分支控制CMPC控制域地址ACIR分支逻辑多路选择器KIR状态标志加载分支地址微程序首地址跳转地址加1复位2.单地址格式(计数方式,增量方式)硬件代价极低PC利用率高微指令长度被有效地缩短18微指令设计一、微指令地址的生成3.可变格式使任何微指令执行时不存在无用信息:让微指令在顺序执行时只提供控制信号的产生,需要分支时再提供跳转地址。→可变格式微指令两种微指令格式控制微指令S=0转移微指令S=1控制存储器存储单元的位数L应设计为:L=max{Lc,Lj}Lc=控制微指令长度,Lj=转移微指令长度标识S控制域标识S分支控制地址字段19微指令设计一、微指令地址的生成图6.14可变格式的分支控制逻辑(设S=0,控制指令;S=1,跳转指令)S=1CMPC控制域/地址域SIR分支逻辑多路选择器KIR状态标志加载分支地址微程序首地址跳转地址加1复位门译码器分支控制ACS=03.可变格式20微指令设计一、微指令地址的生成4.三种地址域格式的比较两地址格式分支逻辑较简单,下条微指令地址可以快速生成地址域较长,微指令较长,控存单元需要较多的位数单地址格式减少了指令的长度,控制存储器的容量大为减小微程序计数器加1的速度决定了顺序地址产生的时间可变格式长度最短,要求控存单元的位数最少专用的跳转微指令:微程序的长度增加,控存单元数量增加,机器指令执行时间增长下条微指令地址的生成时间与单地址格式基本一致21微指令设计二、微指令控制域编码水平型微指令(horizontalmicroinstruction)多个控制信号同时有效→多个微操作同时发生。垂直型微指令(verticalmicroinstruction)类似于机器指令,利用微操作码的不同编码来表示不同的微操作功能。22微指令设计二、微指令控制域编码(1)直接表示法可以在同一个时间有效的控制信号称为相容信号,具有相容性;不能在同一个时间有效的控制信号称为互斥信号,具有互斥性。1.水平型微指令控制域的编码下一微地址……控制信号控制域图6.15直接表示法23微指令设计二、微指令控制域编码(2)译码法采用编码的方法表示控制信号。可以极大地缩短微指令控制域的长度。各控制信号需要通过不同的微指令在不同时间来产生,所以各控制信号是相斥的,这也被称为垂直编码。不能实现一个节拍提供多个控制信号的任务,从而使指令周期的节拍数增多,微程序中包含的微指令数量增多,(机器)指令执行时间增长。1.水平型微指令控制域的编码24微指令设计二、微指令控制域编码1.水平型微指令控制域的编码(3)字段译码法(字段编码)将控制域分为若干字段,字段内垂直编码,字段间水平编码。互斥的信号放在同一字段相容的信号放在不同字段若各字段的编码相互独立,则通过各字段独立译码就可以获得计算机系统的全部控制信号,这被称作直接译码方式。若某些字段的编码相互关联,则关联字段要通过两级译码才能获得相关的控制信号,这被称作间接译码方式。25字段字段字段译码器译码器译码器控制信号(a)直接译码字段字段字段译码器译码器译码器译码器控制信号(b)间接译码图6.16字段译码法微指令设计二、微指令控制域编码1.水平型微指令控制域的编码(3)字段译码法(字段编码)26微指令设计二、微指令控制域编码1.水平型微指令控制域的编码(3)字段译码法(字段编码)每个字段中要设计一个无效控制信号的编码若控制域的某字段有m位,则可以提供2m-1个控制信号的编码字段组织的有效方法:按功能组织:把功能类同的各控制信号放在同一字段中。按资源组织:把加载到同一部件上的各控制信号放在同一字段中。27微指令设计二、微指令控制域编码1.水平型微指令控制域的编码按功能按功能按资源按资源按功能/资源按资源按资源字段1(4位)字段2(4位)字段3(2位)字段4(3位)字段5(4位)字段6(2位)字段7(2位)字段8NOP0000R0in0001R1in0010……R7in1000IRin1001Yin1010ARin1011DRIin1100DRSin1101NOP0000R0out0001R1out0010……R7out1000IRout1001Zout1010ARout1011DRIout1100DRSout1101NOP00PCin01PCout10PC+111NOP000SPin001SPout010SP+1011SP-1100NOP0000ADD0001SUB0010AND0011OR0100SHL0101SHR0110ROL0111ROR1000NOP00Mread01Mwrite10NOP00IOread01IOwrite10其他信号*NOP为无效控制信号表6.1一种控制域字段的组织和编码图6.2图6.9(3)字段译码法(字段编码)28微指令设计二、微指令控制域编码1.水平型微指令控制域的编码按功能按功能按功能/资源按资源字段1(4位)字段2(4位)字段3(4位)字段4(3位)字段5NOP0000R0in0001R1in0010……R7in1000IRin1001Yin1010ARin1011DRIin1100DRSin1101PCin1110SPin1111NOP0000R0out0001R1out0010……R7out1000IRout1001Zout1010ARout1011DRIout1100DRSout1101PCout1110SPout1111NOP0000ADD0001SUB0010AND0011OR0100SHL0101SHR0110ROL0111ROR1000PC+11001SP+11010SP-11011NOP000Mread001Mwrite010IOread011IOwrite100其他信号*NOP为无效控制信号图6.2图6.9表6.2优化后的字段组织和编码(3)字段译码法(字段编码)29微指令设计二、微指令控制域编码1.水平型微指令控制域的编码(3)字段译码法(字段编码)也可以对字段进行关联设计,使一个域用于解释另一个域。……字段i(2位)字段i+1(2位)……NOP00算术01逻辑10移位11ADD00SUB01AND00OR01SHL00SHR01ROL10ROR11表6.3采用间接译码方式的字段编码30微指令设计二、微指令控制域编码采用与机器指令相似的格式微操作码:指示作何种微操作固定长度、可变长度微操作对象:为微操作提供所需的操作数(常量或地址)一个、多个特点:控制域紧凑、短小并行能力差,微程序长,执行速度减慢→在计算机系统中大量引入并行机制,使得少量的控制信号就可以引起较多的微操作同时完成→三总线结构的ALU2.垂直型微指令控制域的编码微操作码微操作对象31微指令设计二、微指令控制域编码水平型微指令特性:需要较长的微指令控制域;可以表示高度并行的控制信号;对控制域提供的控制信息只需较少的译码电路,甚至不需要译码。垂直型微指令特性:需要较短的微指令控制域;并行微操作的表示能力有限;对控制信息必须译码。3.水平型与垂直型微指令的比较32微指令设计二、微指令控制域编码IBMsystem/360Model50的微指令:由90位构成,其中有21个字段的控制域、5个字段的地址域和3个校验位。4.微指令控制域编码设计实例0161924253132P13264

1 / 46
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功