计算机组成原理第四章 存储器-汉明码等
一.计算题(共3题,100.0分)
1
有一个16K16位的存储器,由1K4位的动态RAM芯片构成(芯片内是64*64结构),问:
(1)总共需要多少RAM芯片?
所需RAM芯片数=16K16位/1K4位=64片
(2)采用异步刷新方式,如果单元刷新间隔不超过2ms,则刷新周期是多少?
ms是毫秒=0.001秒 us是微秒=0.000001秒 ns是纳秒=0.000000001秒 毫秒是一种较为微小的时间单位,1 毫秒 = 0.001 秒。
刷新周期=2ms/64=31.25us,所以可取刷新周期为30us
(3)若采用集中刷新方式,存储器刷新一遍最少用多少个读/写周期?
64行芯片依次进行刷新,刷新一遍用 64 个读 / 写周期
正确答案:
(1)所需RAM芯片数=16K16位/1K4位=64片
(2)采用异步刷新方式,在2ms时间内分散地把芯片的64行刷新一遍,所以刷新时间各个=2ms/64=31.25us,所以可取刷新周期为30us(3)若采用集中刷新方式,设T为读/写周期,64行芯片依次进行刷新,则需要64个读写周期。
我的答案:
(1)(16K16)/(1k4)=64(2)2ms/64=31.3us(3)最少采用64个读/写周期
2
已知接受到的汉明码为0100111(按配偶原则配置),请问欲传送的信息是什么?
正确答案:
要求给出欲传送的信息必须给出正确的信息位,故此题首先应该判断收到的信息是否有错。纠错过程如下: 001 010 011 100 101 110 111 1 2 3 4 5 6 7 C0 C1 D1 C3 D2 D3 D4 0 1 0 0 1 1 1 P1=C0⊕D1⊕D2⊕D4=1⊕3⊕5⊕7=0⊕0⊕1⊕1=0 P2=C1⊕D1⊕D3⊕D4=2⊕3⊕6⊕7=1⊕0⊕1⊕1=1 P3=C3⊕D2⊕D3⊕D4=4⊕5⊕6⊕7=0⊕1⊕1⊕1=1P3P2P1=110,所以第六位出错,可纠正为0100101,则欲传送的信息是0101
我的答案:
要求给出欲传送的信息必须给出正确的信息位,故此题首先应该判断收到的信息是否有错.纠错过程如下:
0 1 0 0 1 1 1
C1 C2 b4 C3 b3 b2 b1
P1=C1 b4 b3 b1=0 0 1 1=0
P2=C2 b4 b2 b1=1 0 1 1=1
P3=C3 b3 b2 b1=0 1 1 1=1
P1=C1⊕b4⊕b3⊕b1=1⊕3⊕5⊕7=0⊕0⊕1⊕1=0 1 3 5 7
P2=C2⊕b4⊕b2⊕b1=2⊕3⊕6⊕7=1⊕0⊕1⊕1=1 2 3 6 7
P3=C3⊕b3⊕b2⊕b1=4⊕5⊕6⊕7=0⊕1⊕1⊕1=1 4 5 6 7
P2与P3同时出错,P1正常,那么b2出错,第6位出错,可纠正为01001101,即欲传输的信息为0101
3
设有一个1MB容量的存储器,字长为32位,问:
(1)按字节编址,地址寄存器,数据寄存器各为几位?编址范围为多大?
1MB=2的20次方B,地址寄存器20位,数据寄存器8位,编址范围为1MB
(2)按半字编址,地址寄存器,数据寄存器各为几位?编址范围为多大?
半字为16位,1MB=2的19次方x16,地址寄存器19位,数据寄存器16位,编址范围为2的19次方bit
(3)按字编址,地址寄存器,数据寄存器各为几位?编址范围为多大?
字为32位,1MB=2的18次方x18,地址寄存器18位,数据寄存器32位,编址范围为2的18次方bit
正确答案:
1MB容量的存储器,字长为32位:(1)按字节编址,1M=220,地址寄存器为20位,数据寄存器为8位,编址范围为1MB(2)按半字编址,半字为16位,则1MB=512K16位,512K=219,地址寄存器为19位,数据寄存器为16位,编址范围为512KW(3)按字编址,字为32位,则1MB=256K32位,256K=218,地址寄存器为18位,数据寄存器为32位,编址范围为256KW.
我的答案:
(1)按字节编址,1MB=2的20次方8=2的23次方,1M=2的20次方,地址寄存器为20位,数据寄存器为8位,编址范围为0-1M-1,即00000H-FFFFFH(2)按半字编址,半字为16位,则1MB=1M8位=2的10次方K8位=2的9次方K16位=512K16位,512K=2的19次方,地址寄存器为19位,数据寄存器为16位,编址范围为0-512K-1,即00000H-7FFFFH(3)按字编址,字为32位,则1MB=256K32位,256K=2的18次方,地址寄存器为18位,数据寄存器为32位,编址范围为0-256K-1,即00000H-3FFFFH
补充:字长是32位,就是指1字=32bit,该信息只有在按字编址时才有用。这里的字长说的是存储字长