答:14个通用寄存器需要4位来表示,30条单字长指令需要5位来表示,7种寻址方式需要3位来表示,剩下的20位用来表示操作数。
指令格式为:5位操作码+3位寻址方式设置+4位寄存器操作数+20存储器操作数
第五章
9.用16K×1位的DRAM芯片组成64K×8位的存储器,要求:
(1)画出该存储器组成的逻辑图。
(2)设存储器读、写周期均为0.5μs,CPU在1μs内至少要访存一次。试问采用哪种刷新方式比较合适?两次刷新的最大时间间隔是多少?
答:由题意知,存储器的总容量为64KB,故共需16条地址线(A0~A15),需要16K×1位DRAM芯片的个数为:(64K×8位)/(16K×1位)=32片,芯片地址线占14位(A0~A13),高2位的地址线(A14~A15)作为2:4译码器的输入端,4个输出端分别与4个DRAM芯片的片选信号端相连接。其组成逻辑框图如下:
由已知条件可知,CPU在1μs内至少访存一次,故整个存储器的平均读/写周期与单个DRAM 芯片的读/写周期基本相同,采用异步式刷新方式较合适。动态MOS存储器两次刷新的最大时间间隔为2ms/128=15.625us,应该取15.5us比较合适(取存取周期的整数倍)。
16. 某存储器容量为16M字,字长32位,模块数m=4,分别用顺序方式和交叉方式进行组织。若存取周期T=200ns,数据总线宽度为32位,总线传送周期τ=40ns。问:顺序存储器和交叉存储器的平均存取时间、带宽各是多少?
答:顺序存储器和交叉存储器连续读出4个字的信息总量都是:q=32位×4=128位
顺序存储器连续读出4个字所需的时间是:t1=m×T=4×200ns=800ns=8×10-7s;
交叉存储器连续读出4个字所需的时间是:t2=T+(m-1)τ=200ns+3×40ns=320ns=3.2×10-7s 因此,顺序存储器和交叉存储器的带宽分别为:
W1=q/t1=128÷(8×10-7)=16×107(b/s)