3.某计算机主存最大寻址空间为4GB,按字节编址,假定用64M×8位的具有8个位平面的DRAM芯片组成容量为512MB、传输宽度为64位的内存条(主存模块)。回答下列问题。
(1)每个内存条需要多少个DRAM芯片?
(2)构建容量为2GB的主存时,需要几个内存条?
(3)主存地址共有多少位?其中哪几位用作DRAM芯片内地址?哪几位为DRAM芯片内的列地址?哪几位用于选择芯片?
什么东西?牛头不对马嘴
(1)根据内存条容量来计算芯片个数:
需要的内存条容量:512MB=2^29 X 8位
每个芯片容量:64MB =2^26 X 8位
即:芯片个数 = 512MB / 64MB = 8 个
(2)构建主存为2GB的内存条个数,即
内存条个数:2GB / 512MB = 4个
(3)主存容量最大为4GB = 2^32 X 8位 ,按字节编址,则主存地址共有32位(由32位二进制给4G个“字节”编号)。
又,主存容量为4GB,则需要8个内存条,需要划分主存地址中的3位来区分他们。内存条容量分解:512MB=2^14 X 2^15 X 8 位,即行地址14位,列地址15位,每个芯片每行、列交叉处有8位。则可以一次读/写内存条的8位,输出到存储控制器,8次读/写组合成一个传输宽度,即64位的传输宽度。
所以,刚好 3 + 14 +15 = 32 。其中主存地址的高3位用于选择芯片,低29位用于DRAM芯片内地址,29位中,高14位用作片内行地址,低15位用作片内列地址。
(以上加粗部分表示答题内容。)