000P335-7.87.8设某机器字长16位,每个操作数的地址码为6位,设操作码长度固定,指令分为零地址、一地址和二地址三种格式。若零地址指令有M种,一地址指令有N种,则二地址指令最多有几种?若操作码位数可变,则二地址指令最多允许有几种。【解】指令格式如图所示,设二地址指令有X条①操作码长度固定。由于操作码长4位,则表示的所有指令条数为24=16,即X=16-M-N,当M和N取最小值1时,X最大,且X=14,即二地址指令最多14条。OP(4位)A2(6位)A1(6位)111P335-7.87.8设某机器字长16位,每个操作数的地址码为6位,设操作码长度固定,指令分为零地址、一地址和二地址三种格式。若零地址指令有M种,一地址指令有N种,则二地址指令最多有几种?若操作码位数可变,则二地址指令最多允许有几种。【解】指令格式如图所示,设二地址指令有X条②操作码长度可变。存在不等式((24-X)26-N)26≥M,即X≤16-(M/212+N/26)故当后式小于1时,X最大,且Xmax=15OP(4位)A2(6位)A1(6位)222寻址方式求下列指令中源操作数的寻址方式。MOVR1,200H立即寻址方式MOVR1,[200H]直接寻址方式ADDR1,R2寄存器寻址方式ADDR1,[R2]寄存器间接寻址方式333第5章中央处理CPU①控制器的组成②指令执行过程③数据通路(**)④机器指令与微指令的关系(**)⑤控制器原理微程序控制器(*)硬布线控制器(了解与微程序控制方式的区别)444第五章中央处理部件CPUP42010.2写出完成下列指令的微操作及节拍安排(包括取值操作)①指令ADDR1,X完成将R1寄存器的内容和主存X单元的内容相加结果存于R1的操作;②指令ISZX完成将主存单元X单元内容增1,并根据其结果若为0,则跳过下一条指令执行【解】此题仅考虑每条指令执行所需要的数据通路和控制信号,忽略节拍安排。555P42010.210.2ADDR1,X。【功能分析】将R1寄存器的内容和主存X单元的内容相加结果存于R1的操作。【步骤】①取指周期:取出指令②间址周期:取X③执行周期:送操作数、运算并送结果MARMARi地址线MDRMDRi数据线MDRoACACiACoALUALUi控制信号ZoYYiCPU内部总线Z┇PCPCiPCoIRIRiCU时钟控制信号┇MPC+1RWAd-MARR1R1iR1o666P42010.210.2ADDR1,X。①取指周期数据通路及信号PC→MAR:PCo,MARiM(R)→MDR:RMDR→IR:MDRo,IRiPC+1:PC+1MARMARi地址线MDRMDRi数据线MDRoACACiACoALUALUi控制信号ZoYYiCPU内部总线Z┇PCPCiPCoIRIRiCU时钟控制信号┇MPC+1RWAd-MARR1R1iR1o777P42010.210.2ADDR1,X。②间址周期,取X送MDRAD→MAR:Ad-MARM(R)→MDR:R③执行周期:送操作数、运算并送结果MDR→ALU:MDRo,ALUiR1→Y,+:R1o,Yi,+Z→R1:Zo,R1iMARMARi地址线MDRMDRi数据线MDRoACACiACoALUALUi控制信号ZoYYiCPU内部总线Z┇PCPCiPCoIRIRiCU时钟控制信号┇MPC+1RWAd-MARR1R1iR1o888P42010.210.2ISZX。【功能分析】将主存单元X单元内容增1,并根据其结果若为0,则跳过下一条指令执行。【步骤】①取指周期:取出指令②间址周期:取X③执行周期:送操作数、运算并送结果④转移周期MARMARi地址线MDRMDRi数据线MDRoACACiACoALUALUi控制信号ZoYYiCPU内部总线Z┇PCPCiPCoIRIRiCU时钟控制信号┇MPC+1RWAd-MARR1R1iR1o999P42010.210.2ISZX。①取指周期数据通路及信号PC→MAR:PCo,MARiM(R)→MDR:RMDR→IR:MDRo,IRiPC+1:PC+1②间址周期,取X送MDRAD→MAR:Ad-MARM(R)→MDR:RMARMARi地址线MDRMDRi数据线MDRoACACiACoALUALUi控制信号ZoYYiCPU内部总线Z┇PCPCiPCoIRIRiCU时钟控制信号┇MPC+1RWAd-MARR1R1iR1o101010P42010.210.2ISZX。③执行周期:送操作数、运算并送结果MDR→ALU:MDRo,ALUi+1:+Z→M:Zo,MDRi,W④转移周期:根据运算结果确定是否转移。Z·PC+1MARMARi地址线MDRMDRi数据线MDRoACACiACoALUALUi控制信号ZoYYiCPU内部总线Z┇PCPCiPCoIRIRiCU时钟控制信号┇MPC+1RWAd-MARR1R1iR1o111111P421-10.1510.15设某控制存储器的容量为512×48位,微程序可在整个控存空间实现转移,而控制微程序转移的条件共有4个(采用直接控制),微指令格式如下所示,微指令中的3个字段分别为多少位?【解】此题主要考查存储器和微指令编码方式①控制存储器规格512×48位,则说明存储器有512个单元,每个单元字长48位,即微指令共48位。②存储器有512个单元,需要9位地址表示,故下址字段为9位。③采用直接控制的转移条件4位,则转移条件字段为4位。④剩下48-9-4=35为微命令个数,即操作控制字段为35位。操作控制转移条件下地址顺序控制121212P422-10.19总线IRinIRPCinPCMARinMMARR/WMDRinMDRRNinR0RNoutR1DinCinALUCD+-ALUoutR2R3LLoutRoutR10.19假设机器的主要部件有程序计数器PC,指令寄存器IR,通用寄存器R0、R1、R2、R3,暂存器C、D,ALU,移位器,存储器地址寄存器MAR,存储器数据寄存器MDR及存储矩阵M。(1)要求采用单总线结构画出包含上述部件的硬件框图,并注明数据流动方向131313P422-10.19总线IRinIRPCinPCMARinMMARR/WMDRinMDRRNinR0RNoutR1DinCinALUCD+-ALUoutR2R3LLoutRoutR10.19(2)画出ADD(R1),(R2)指令在取指阶段和执行阶段的信息流程图。(3)写出对应该流程图所需要的全部微操作命令取指阶段PC+1→PCPC→Bus→MARM→MDRMDR→IRPCout、MARinR/#W=1MARout、IRinPC+1141414P422-10.19总线IRinIRPCinPCMARinMMARR/WMDRinMDRRNinR0RNoutR1DinCinALUCD+-ALUoutR2R3LLoutRoutR10.19(2)画出ADD(R1),(R2)指令在取指阶段和执行阶段的信息流程图。(3)写出对应该流程图所需要的全部微操作命令执行阶段R2→Bus→MARM→MDRMDR→CR1→Bus→MARM→MDRMDR→DC+DALU→MDRMDR→M151515P370-8.810.15什么叫指令流水,画出指令二级流水和四级流水的示意图,他们中哪一个更能提高处理器速度?【解】为提高处理器执行指令的效率,把一条指令的操作分成多个细小的步骤,每步骤由专门的电路完成的技术称为指令流水。IFIDEXWR12345678时间TI1I1I1I1I1I5I5I5I5I5I2I2I2I2I3I3I3I3I4I4I4I4I2I3I4IFEX123456时间TI1I1I1I5I5I5I2I2I3I3I4I4I2I3I4加速比2n/(n+1)加速比4n/(n+3)161616第6章存储系统①存储系统采用分级结构的作用②命中率(*)③地址映射方式直接相联映射方式(**)组相连映射方式(**)全相联映射方式(*)上述映射方式下主存地址的表示(**)给定的主存序列,求对应情况下的命中率171717第六章存储系统P1524.28设主存容量为256K字,cache容量为2K字,块长为4。①设计cache地址格式,cache可装入多少块数据。②在直接映射方式下,设计主存地址格式。③在四路组相联映射方式下,设计主存地址格式④在全相联映射方式下,设计主存地址格式⑤若存储字长为32位,存储器按字节寻址,写出上述三种映射方式下主存的地址格式。181818P1524.28设主存容量为256K字,cache容量为2K字,块长为4。①设计cache地址格式,cache可装入多少块数据。【解】以字编址的情况下,主存地址位数log2256K=18位cache可包含的块为2K/4=512块。为了标记各个字块,需要log2512=9位二进制位来表示,用2位来标记字块内每个字。故cache地址格式为:字块地址9位字块内地址2位191919设主存容量为256K字,cache容量为2K字,块长为4。②在直接映射方式下,设计主存地址格式。Cache地址【解】直接映射方式下,主存地址包含主存字块标记,cache字块标记,以及字块内地址构成。且主存字块标记位数为log2(256/2)=7位,地址为:字块地址9位字块内地址2位字块地址9位字块内地址2位主存字块标记7位P1524.28202020设主存容量为256K字,cache容量为2K字,块长为4。③在四路组相联映射方式下,设计主存地址格式Cache地址【解】四路组相联,即每组中包含4个字块,cache可以分成的组为log2(2K/4/4)=7。进一步细分可知cache地址:字块地址9位字块内地址2位组地址7位字块内地址2位组内字块地址2位主存地址为组地址7位字块内地址2位主存字块标记9位P1524.28212121设主存容量为256K字,cache容量为2K字,块长为4。④在全相联映射方式下,设计主存地址格式Cache地址【解】全相联映射方式下,主存地址位数去掉字块内地址即为主存字块标记,地址表示如下:字块地址9位字块内地址2位字块地址标记16位字块内地址2位P1524.28222222设主存容量为256K字,cache容量为2K字,块长为4。⑤若存储字长为32位,存储器按字节寻址,写出上述三种映射方式下主存的地址格式。【解】按字节寻址,仅需在地址的最后添加字节地址即可,位数为log2(32/8)=2。按字节寻址,直接、组相联、全相联映射方式对应地址格式分别为:字块地址9位字块内地址2位主存字块标记7位字节地址2位组地址7位字块内地址2位主存字块标记9位字节地址2位字块地址标记16位字块内地址2位字节地址2位P1524.28232323P1524.32P1524.32设某机主存容量为4MB,cache容量为16KB,每字块有8个字,每字32位,设计一个4路组相联映射的cache组织。①画出主存地址字段中各段的位数。②设cache的初态为空,CPU依次从主存第0,1,2,……89号单元读出90个字(主存一次读出一个字),并重复按此次序读8次,问命中率是多少?③若cache的速度是主存的6倍,试问有cache和无cache相比,速度约提高多少倍?242424P1524.32P1524.32设某机主存容量为4MB,cache容量为16KB,每字块有8个字,每字32位,设计一个4路组相联映射的cache组织。①画出主存地址字段中各段的位数。【解】每个字块8个字,需3位表示字块内地址;cache包含的组数16KB/4/8/4B=128组,故需要7位表示组号。另外主存4MB=1M字,故对字地址而言,需用20位表示,主存地址标志10位。若用字节寻址组地址7位字块内地址3位主存字块标记10位字节地址2位252525P1524.32②设cache的初态为空,CPU依次从主存第0,1,2,……89号单元读出90个字(主存一次读出一个字),并重复按此次序读8次,问命中率是多少?字块0……字块3组0字块4……字块7组1字块508……字块511组12