《计算机组成原理习题课.ppt》由会员分享,可在线阅读,更多相关《计算机组成原理习题课.ppt(56页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、P150 11(DRAM刷新)nRAM芯片内部结构芯片内部结构256256,存储周期,存储周期0.1usn假定假定RAM芯片刷新周期芯片刷新周期2msn集中刷新间隔集中刷新间隔=2msn分散刷新间隔分散刷新间隔=2560.1us=25.6usn异步刷新间隔异步刷新间隔=2msP151 第15题1/816根地址线,8根数据线CPU具有64K8位的寻址能力主存储器容量上限是64K8位位扩展宽度:8位P151 第15题2/84K地址为系统程序区(ROM区)ROM地址空间:00000FFF,容量:4K8选择4K4,2K8芯片均可选择4K4芯片2片,采用位扩展409616383为用户程序区(RAM区)R
2、AM地址空间:10003FFF,容量:12K8选择1K4,2K8,4K8芯片均可选择4K8芯片3片,采用字扩展P151 第15题3/8存储器芯片地址空间共需4个片选地址(地址(A15A0)芯片说明(A15A12)00000FFFROM(4K4两片)CS0:000010001FFFRAM(4K8)CS1:000120002FFFRAM(4K8)CS2:001030003FFFRAM(4K8)CS3:0011P151 第15题4/874138P151 第15题5/874138真值表A0P151 第15题6/8n负逻辑:译码输出直接作为片选信号n74138输入管脚连接:n控制端:E2,E1#,E0#
3、nE2:H(高电平)nE1#,E0#:CPU存储器访问请求线MREQ#n译码地址输入端:A2,A1,A0nA2:L(低电平)nA1,A0:CPU地址线A13,A12P151 第15题7/8译码输出138输出连接关系Y0#ROM片选Y1#RAM片选Y2#RAM片选Y3#RAM片选P151 第15题8/8P151 第16题8片8K8芯片与CPU连接共需8个片选地址地址芯片芯片说明说明(A15A14A13)00001FFF第一片第一片RAM(8K8)CS0:00020003FFF第二片第二片RAM(8K8)CS1:00140005FFF第三片第三片RAM(8K8)CS2:01060007FFF第四片
4、第四片RAM(8K8)CS3:01180009FFF第五片第五片RAM(8K8)CS4:100A000BFFF第六片第六片RAM(8K8)CS5:101C000DFFF第七片第七片RAM(8K8)CS6:110E000FFFF第八片第八片RAM(8K8)CS7:111P151 第16题P151 第16题n无论数据写到哪个芯片,无论数据写到哪个芯片,A000起始地址芯片总是有相同数起始地址芯片总是有相同数据据n原因:原因:A000起始地址这个芯片的片选信号发生问题,起始地址这个芯片的片选信号发生问题,无论无论A15A14A13为什么值,该芯片片选信号总为低电为什么值,该芯片片选信号总为低电平:译
5、码器损坏致使平:译码器损坏致使CS5总为低,或芯片的总为低,或芯片的CS端搭端搭接到其他低电平信号上。接到其他低电平信号上。P151 第16题nA13与与CPU断线,并搭接成高电平。断线,并搭接成高电平。CPU提供地址提供地址实际使用地址实际使用地址说明说明(A15A14A13)00001FFF20003FFFCS1:00120003FFF20003FFFCS1:00140005FFF60007FFFCS3:01160007FFF60007FFFCS3:01180009FFFA000BFFFCS5:101A000BFFFA000BFFFCS5:101C000DFFFE000FFFFCS7:11
6、1E000FFFFE000FFFFCS7:1114.284.294.321.某机主存容量为某机主存容量为16MB,组相联方式的,组相联方式的Cache容量为容量为64KB,Cache与主存都分为与主存都分为16组,每个数据块为组,每个数据块为256字节。某指字节。某指令执行时,经寻址计算,其字节操作数的有效地址为令执行时,经寻址计算,其字节操作数的有效地址为020281H,又知又知Cache中第中第2组组(组号为组号为2的那组的那组)的前的前4块已装块已装入,且第入,且第2组前组前4块的块的Tag内容为内容为:0010H1020H2030H3040H(1)写出主存与写出主存与CacheCach
7、e的地址格式;的地址格式;(2)(2)上述操作数能否从上述操作数能否从Cache中读取,若能,给出其在中读取,若能,给出其在Cache中的地址。中的地址。CACHE补充:第1题第1题第1问块尺寸256字节块内地址:8位组数64KB/(256B*16)16组地址:4位主存块数16MB/256B=64K主存块/组64K/164K组内块地址:12位第1题第1问主存地址:24位Cache的Tag:12位12位组内块地址第1题第2问主存地址:020281H最低8位为块内地址对应组内块地址:020H(将与Cache块Tag比较)主存块号:0202H对应Cache组号主存块号%组数0202H%162表明:该
8、主存地址可映射在Cache第2组Cache第2组第1块的标记:020结论:命中,可以从Cache读取数据CACHE补充:第2题2.计算机系统包含计算机系统包含32K字的主存,字的主存,Cache容量容量4K字,字,每组每组4 Blocks,每,每Block 64个字。假设个字。假设Cache开始是开始是空的,空的,CPU顺序从存储单元顺序从存储单元0,1,2到到4351中读取中读取字,然后再重复这样的取数字,然后再重复这样的取数9次,次,Cache速度是主速度是主存速度的存速度的10倍,采用倍,采用LRU替换算法,替换算法,假定块替换假定块替换的时间忽略不计,计算采用的时间忽略不计,计算采用C
9、ache后的加速比。后的加速比。第2题CACHE结构块尺寸64字组内块数4块组数 4K/(64*4)16主存结构组数:16主存块数32K/64512主存块/组512/1632第2题4352个主存字分配在68个主存块中主存块0:主存字063主存块1:主存字64127。主存块63:主存字40324095主存块64:主存字40964159主存块65:主存字41604223主存块66:主存字42244287主存块67:主存字42884351第2题主存块Cache组68个主存块16个Cache组Cache组主存块00,16,32,48,6411,17,33,49,6522,18,34,50,6633,1
10、9,35,51,6744,20,36,521313,29,45,611414,30,46,621515,31,47,63组块0块1块2块30123456789101112131415第2题CACHE初始为空组块0块1块2块300163248111733492218345033193551442036525521375366223854772339558824405699254157101026425811112743591212284460131329456114143046621515314763第2题第1次循环(块0块63)块6467?组块0块1块2块3006416324811651733
11、4922661834503367193551442036525521375366223854772339558824405699254157101026425811112743591212284460131329456114143046621515314763第2题第1次循环(块64块67)块03?Tip:LRU算法替换最长时间不算法替换最长时间不用的块用的块组块0块1块2块306416032481651713349266182345036719335514420365255213753662238547723395588244056992541571010264258111127435912
12、12284460131329456114143046621515314763第2题第2次循环(块0块3)组块0块1块2块30641603248165171334926618234503671933551442036525521375366223854772339558824405699254157101026425811112743591212284460131329456114143046621515314763第2题第2次循环(块4块15)组块0块1块2块30641603216481651713317492661823418503671933519514420365255213753662
13、23854772339558824405699254157101026425811112743591212284460131329456114143046621515314763第2题第2次循环(块16块19)组块0块1块2块3064160321648165171331749266182341850367193351951442036525521375366223854772339558824405699254157101026425811112743591212284460131329456114143046621515314763第2题第2次循环(块20块31)组块0块1块2块306416
14、032164832165171331749332661823418503436719335195135442036525521375366223854772339558824405699254157101026425811112743591212284460131329456114143046621515314763第2题第2次循环(块32块35)组块0块1块2块306416032164832165171331749332661823418503436719335195135442036525521375366223854772339558824405699254157101026425811
15、112743591212284460131329456114143046621515314763第2题第2次循环(块36块47)组块0块1块2块30644816032164832165491713317493326650182341850343675119335195135442036525521375366223854772339558824405699254157101026425811112743591212284460131329456114143046621515314763第2题第2次循环(块48块51)组块0块1块2块3064481603216483216549171331749
16、3326650182341850343675119335195135442036525521375366223854772339558824405699254157101026425811112743591212284460131329456114143046621515314763第2题第2次循环(块52块63)组块0块1块2块30644816064321648321654917165331749332665018266341850343675119367351951354420365255213753662238547723395588244056992541571010264258111
17、12743591212284460131329456114143046621515314763第2题第2次循环(块64块67)第2题规律第1次循环(单位:块)主存块063:失效主存块6467:失效&替换因“块替换的时间忽略不计”等价于仅存在失效块失效次数:68第2次循环第10次循环(单位:块)映射到组03的20个主存块:失效&替换主存块:03,1619,3235,4851,6467其余48个主存块:全部命中块失效次数:209块命中次数:489第2题块失效 vs.块命中(单位:块)块失效次数:68209248块命中次数:489432块失效1次字失效,63次字命中块命中64次字命中CPU读存储器总
18、计Cache失效次数:248Cache命中次数:632486443243272第2题设Cache一次访问时间为S则主存一次访问时间为10SCache失效访问字时间:10SS加速比指令系统:P336,19题(1问)OPCodeS/DRegI/DAddress615119l指令长度:32位lOPCode:操作码6位,表示64种操作lS/D与Reg配合:指明寄存器直接寻址操作数,S/D指明Reg表示的是源操作数还是目的操作数。lI/D与Address配合指明另一个存储器操作数,I/D指明是存储器直接还是存储器间接。Address是存储器地址。l当存储器直接时。Address的存储空间为512KB指令
19、系统:P336,19题(2问)OPCodeS/DReg1I/DDisplacement615114l指令长度:32位lOPCode:操作码6位,表示64种操作lS/D与Reg1配合:指明寄存器直接寻址操作数,S/D指明Reg表示的是源操作数还是目的操作数。lI/D,Reg2与Displacement配合指明另一个存储器操作数,I/D指明是存储器直接还是存储器间接。Reg2指明基址寄存器,Displacement是位移量。l最大寻址空间232Reg25指令系统:补充题某机字长为16位,数据总线也为16位,内存容量64KB,包含8个16位通用寄存器R0R7。指令系统基本要求是:128条双操作数指令
20、,且其中必有一操作数是寄存器直接寻址;另一操作数的寻址方式有4种:立即寻址,寄存器直接寻址,寄存器间接寻址,变址寻址;立即数和变址寻址时的位移量为16位。指令长度应满足16的倍数,且要求尽量短。请给出指令系统的详细设计方案(提示:当另一个操作数为4种寻址方式中的每一种时,说明其指令编码长度,以及指令编码中各字段的详细说明)。如何理解题目1/6“某机字长为16位,数据总线也为16位”对机器作了一般性描述16位系统并非所有信息都是有价值的数据总线也为16位如何理解题目2/6“内存容量64KB”64KB16位地址线若指令中某个操作数需要访问内存,必须最终能得到16位地址16位地址如何得到?显式需要计
21、算:寄存器偏移(基址、变址、相对)无需计算:隐式寄存器间接寻址如何理解题目3/6“包含8个16位通用寄存器R0R7”凡是涉及到与寄存器相关的寻址必须3位编码定位寄存器对应8个寄存器指令中可能不只一处需要定位寄存器如何理解题目4/6“128条双操作数指令,且其中必有一操作数是寄存器直接寻址”7位操作码对应128条指令双操作数源/目的区分1位标志对应源/目的必然有一个固定的3位域定位该寄存器直接寻址操作数如何理解题目5/6“另一操作数的寻址方式有4种:立即寻址,寄存器直接寻址,寄存器间接寻址,变址寻址;立即数和变址寻址时的位移量为16位。”2位编码4种寻址模式寄存器直接/间接寻址/变址寻址需要有一
22、个3位域定位寄存器立即数为16位&位移量为16指令总长度如果只有1个16位,无法描述某些指令至少是2个16位第2个16位可以用于编码立即数和位移量如何理解题目6/6“指令长度应满足16的倍数,且要求尽量短”指令长度可以是16位、32位.指令编码应尽可能紧凑参考答案7位OP:128条指令1位S/D:源/目的选择(对应寄存器直接寻址操作数)0:R1目的操作数;1:R1是源操作数2位M:4种寻址模式00/01/10/11:立即数/寄存器直接/寄存器间接/变址3位R1:寻址寄存器(寄存器直接寻址操作数)“必有一操作数是寄存器直接寻址”3位R2:寻址寄存器寄存器直接/间接/变址都需要访问某个寄存器16位
23、DISP:立即数/偏移量OPS/DMR1R271233DISP参考答案M00:立即数S/D:只能为0R2没有意义OPS/DMR1R271233DISPOP000R171233立即数立即数参考答案M01:寄存器直接寻址DISP:不存在OPS/DMR1R271233DISPOPS/D01R1R271233参考答案M10:寄存器间接寻址DISP:不存在OPS/DMR1R271233DISPOPS/D10R1R271233参考答案M11:变址寻址R2:定位寄存器提供基地址DISP:偏移量OPS/DMR1R271233DISPOPS/D11R1R271233偏移量偏移量指令系统设计的基本方法不存在绝对正
24、确的指令系统!正确是相对的指令系统设计的基本方法第一原则:简洁/和谐!指令长度尽可能短,并且是机器字长倍数各域结构清晰,避免过多复用需求1:4功能;需求2:3功能方法1:2位2位方法2:3位哪个更好?指令系统设计的基本方法设计依据操作特性:不同操作的数量,具体是些什么操作,复杂程度等数据类型:各种操作所处理的数据的类型指令格式:指令长度,地址数目,指令中不同域的大小等寄存器数目:CPU中可以直接访问的寄存器的数目及使用方法寻址(Addressing):操作数的寻址方式指令系统设计的基本方法指令设计的相关因素操作数量:决定操作码的位数。操作数数量:采用几个操作数(一般为两个),每个操作数均涉及寻址模式(有时操作数是隐含的)寻址方式数量:有时寻址方式可以是隐含的(由操作码决定)寄存器数量:确定寄存器编码的位数。地址范围:存储器直接寻址很少见,但变址(或基址)寻址时,较大的寻址范围必须以较多的displacement位数为前提。编址粒度(Address Granularity):字节编址或字编址。字节编址方便,但要以更多的地址位数为代价指令系统设计的基本方法指令设计首先考虑指令编码中的固定部分,然后考虑可变的部分指令编码中固定部分操作码(数量,位数,编码)寻址方式(数量,位数,编码)寄存器(数量,位数,编码)不同指令所涉及的地址数量