1、南京大学计算机系 多媒体技术研究所 袁春风,1,第一次作业(2003/04/18),思考题(1). 为什么传统的RAM采用位片式芯片,而ROM采用字片式芯片?zA(2). 为什么要在位片式芯片中设置片选信号? 作业题(1). 解释下列名词:存储单元 记忆单元 编址方式 编址单位易失性存储器 随机存取存储器 相联存取存储器 存取周期 刷新 再生(2). 书上习题1(3). 书上习题2(4). 书上习题3,南京大学计算机系 多媒体技术研究所 袁春风,2,第一次作业解答,思考题 (1)为什么传统的RAM采用位片式芯片,而ROM采用字片式芯片?因为一般来说,RAM的容量要求大,而位片式芯片可在字方向上
2、扩充,用来组成容量很大的RAM。此外,位片式芯片引脚数少,因而更可靠。ROM的容量一般不大,用1到2个字片式芯片就可构成,成本低。 (2)地址线复用时,只需用一半的信号线。你认为这是以时间为代价的吗?如果不是,请说明理由。目前的技术而言,是以时间为代价的。(参看时序图) (3)为什么要在位片式芯片中设置片选信号?便于在字方向上扩充。 作业题: (1) 解释下列名词:存储单元 记忆单元 编址方式 易失性存储器 随机存取存储器 相联存取存储器 存取周期 EPROM EEPROM 刷新 再生 答:(略),南京大学计算机系 多媒体技术研究所 袁春风,第一次作业解答,(2) 书中习题1(某机主存储器有1
3、6位地址,字长为8位,用1K4位的RAM芯片构成该存储器) 参考答案: 1)存储器有16位地址,所以容量为64K单元,每单元8位。因此需要的芯片数为:(64K/1K)(8/4)=642=128(片)。 2)该存储器能存放64K字节的信息。 3)芯片地址为10位,存储器共16位地址,所以片选逻辑需要6位地址。 (3) 书中习题2(用8K8位的静态RAM芯片构成64K字节的存储器 ) 参考答案: 1)所需芯片数为:(64K/8K)(8/8)=8(片),只在字方向上扩展。 2)存储器逻辑框图,南京大学计算机系 多媒体技术研究所 袁春风,4,第一次作业解答,存储器逻辑框图,南京大学计算机系 多媒体技术
4、研究所 袁春风,5,第一次作业解答,(3) 书中习题3(用64K1位的DRAM芯片构成256K8位的存储器。假定一次刷新操作要一个读/写周期) 参考答案:1)该存储器的逻辑框图(见下页)2)所需芯片数:(256K/64K)(8/1)=32(片)。3)64K1的芯片,假定内部结构为256256。所以存储器刷新一遍至少需要256次刷新操作。若采用分散刷新方式,则刷新信号周期应为:存储周期的2倍。(若采用异步刷新方式,则刷新信号周期应为: 2ms/2567.8s。4)若采用集中刷新方式,则存储器刷新一遍最少用256个读/写周期。注1:DRAM芯片的内部结构可从手册中查出。如不知芯片的内部结构,按惯例
5、可将芯片按nn的结构处理,本例是64 K1的芯片,则存储器刷新一遍需要256次刷新操作。注2:若由四个128128的矩阵构成,则刷新时4个存储矩阵同时对128个元素操作。刷新一遍只需要128次刷新操作。,南京大学计算机系 多媒体技术研究所 袁春风,6,第一次作业解答,存储器逻辑框图,64K=28x28 (采用地址线复用技术,只要用8位地址线),南京大学计算机系 多媒体技术研究所 袁春风,7,第二次作业(2003/4/18),(1) 解释下列名词:奇偶校验 多模块存储器 程序访问的局部性直接映射 组相联映射 Cache FIFO LRU (2)书中习题4 (3)书中习题5 (4)书中习题7 (5
6、)书中习题8 (6)书中习题9,南京大学计算机系 多媒体技术研究所 袁春风,8,第二次作业解答,解释下列名词 参考答案(略) (2)书中习题4 (用8K8位的EPROM芯片组成32K16位的只读存储器 ) 参考答案:1) 数据寄存器16位。2) 32K存储器至少应有15位地址,故地址寄存器采用15位或更多。3) 共需8片EPROM芯片。4) 只读存储器的逻辑框图(略) (3)书中习题5(已配有0000H-3FFFH的ROM区域,现再用8K8位的RAM芯片形成32K8位的存储区域,CPU地址总线为A0-A15,数据总线为D0-D7,控制信号为R/W(读/写)、MREQ(访存)参考答案:给出地址译
7、码方案,并实现ROM、RAM和CPU的连接。(图见下页)ROM:0000H-3FFFH(0214 -1),所以要用两个8Kx8位ROM芯片。RAM:实际安装的32Kx8位存储器总共要用4个8Kx8位芯片,因此还要两个RAM芯片。16位地址线构成64K物理存储空间,因此另外四个芯片的位置还可插入4个芯片。,南京大学计算机系 多媒体技术研究所 袁春风,9,第二次作业解答,对MEMQ和R/W信号(或80486的M/IO,W/R)进行译码后可得MEMR和MEMW信号,然后直接连到存储器芯片的读写控制端。,CPU通过控制器与芯片相连,南京大学计算机系 多媒体技术研究所 袁春风,10,第二次作业解答,(4
8、)书中习题7 (主存8M字节, 分成4096页, Cache 64K字节, 和主存分成同样大小的页.采用直接映象方式. ) 参考答案:1) 每页2K字节=8MB/4096,故 Cache有64KB/2KB=32页(槽) 。2) 由于每页大小为2KB,故Cache 的页内地址为11位。3) 因为采用直接映射技术,共有32槽,故Cache 的页面地址(槽号)为5位 。4) * 地址 6807FFH 即 1101000 00000 11111111111映射到Cache 的0页该地址高7位1101000与Cache第0页的标记相等,故命中。* 地址 2D07FFH 即 0101101 00000 1
9、1111111111映射到Cache 的0页该Cache页的标记11010000101101,故不能命中。* 地址7F1057H 即 1111111 00010 00001010111映射到Cache 的2页高7位与相应的Cache页面标记相符,故命中。* 地址000000H 即 0000000 00000 00000000000映射到Cache 的0页高7位与相应的标记不符,故不能命中。,南京大学计算机系 多媒体技术研究所 袁春风,11,第二次作业解答,(5)书中习题8 (一个组相联高速缓存由64块(每块256字)组成,分为8组,主存有4096块。) 参考答案:1) Cache容量:64块x
10、256字=8组x8页/组x256字/页主存容量:4096块x256字=212+8字,故主存地址为20位。2) 主存容量为:220字=29组群x23块/组群x28字/块主存地址划分:块内地址:8位组号:3 位标志位: 9位所以,Cache的每个页面其标志位有9位。,南京大学计算机系 多媒体技术研究所 袁春风,12,第二次作业解答,(6)书中习题9(64KB的主存和4KB的Cache,Cache每组4块,每块64字。若Cache起始为空,CPU依次从0号单元顺序访问到4344号单元,然后重复此序列访存15次,采用LRU算法。若访问Cache的时间为20ns,访存时间为200ns,试估计CPU访存的
11、平均时间。)参考答案:(假设每字为一个字节)1) Cache容量:4KB=16组x4页/组x64B/页主存容量:64KB=64组群x16块/组群x64B/块,主存地址为16位。主存地址划分:块内地址:6位组号:4位标志位: 6位所以,Cache的每个页面其标志位有6位。,南京大学计算机系 多媒体技术研究所 袁春风,13,第二次作业解答,因为每块为64字,4345/64=67.89 67x64=4288 所以04344单元应该对应前68块,也即处理器的访问过程是对前68块连续访问16次。,0,63,1,4344,128,4288,4352,64,16次,1#,2#,67#,0#,65,68#,总
12、访存次数:16x4345=69520 Cache共有16组,每组4页(槽),各槽的替换情况如下图:,南京大学计算机系 多媒体技术研究所 袁春风,14,第二次作业解答,0组 1组 2组 3组 4组 15组,0 槽,1 槽,2 槽,3 槽,0/64/48 1/65/49 2/66/50 3/67/51 4 15,16/0/64 17/1/65 18/2/66 19/3/67 20 31,32/16 33/17 34/18 35/19 36 47,48/32 49/33 50/34 51/35 52 63,LRU算法:第一次循环,对于每一块只有第一字未命中,其余都命中; 以后15次循环,有20块的第
13、一字未命中,其余都命中. 所以,命中率p为(69520-68-15x20)/69520=99.47% 平均访存时间:ta= ptc+(1-p)tm=20xp+200x(1-p)=19.89+1.06=20.95ns,南京大学计算机系 多媒体技术研究所 袁春风,15,第二次作业解答,1) (假设每字为两个字节)Cache容量:4KB=8组x4页/组x64字/页x2B/字主存容量:64KB=64组群x8块/组群x64字/块x2B/字=32K字x2B/字主存地址为15位。主存地址划分:块内地址:6位组号:3位标志位: 6位所以,Cache的每个页面其标志位有6位。,南京大学计算机系 多媒体技术研究所
14、 袁春风,16,第二次作业解答,因为每块为64字,4345/64=67.89 67x64=4288 所以04344单元(字)应该对应前68块,也即处理器的访问过程是对前68块连续访问16次。,0,63,1,4344,128,4288,4352,64,16次,1#,2#,67#,0#,65,68#,总访存次数:16x4345=69520 Cache共有8组,每组4页(槽),各槽的替换情况如下图:,南京大学计算机系 多媒体技术研究所 袁春风,17,第二次作业解答,0组 1组 2组 3组 4组 5组 6组 7组,0 槽,1 槽,2 槽,3 槽,0/32/64/24 1/33/65/25 2/34/6
15、6/26 3/35/67/27 4/36/28 5/37/29 6/38/30 7/39/31,8/40/0 9/41/1 10/42/2 11/43/3 12/44/4 13/45/5 14/46/6 15/47/7,16/48/8 17/49/9 18/50/10 19/51/11 20/52/12 21/53/13 22/54/14 23/55/15,24/56/16 25/57/17 26/58/18 27/59/19 28/60/20 29/61/21 30/62/22 31/63/23,LRU算法:对于每次循环, 每一块只有第一字未命中,其余都命中; 所以,命中率p为(69520-68x16)/69520=98.43% 平均访存时间:ta= ptc+(1-p)tm=20xp+200x(1-p)=19.69+3.14=22.83ns,