存储器作业 (每题写出解题思路)
一个采用直接映射方式的16KB缓存,假设块长为8个32位的字,则地址为FDA459H的主存单元映射到缓存的第 290 (十进制表示)块内。
////////////////////////////////////
先将FDA459H转换成二进制1111 1101 1010 0100 0101 1001 24位
字块内地址:5位
Cache字块地址:?9位10 0100 010===转换成十进制就是290号
主存字块标记:10位
16KB=214B
块的大小:8*32/8=32B
块数:214/32=29块
//////////////////////////////////
已知接收到的汉明码为0100111(按配偶原则配置),试问欲传送的信息是什么?
设某机主存容量为16MB,缓存的容量为16KB。每字块有8个字,每个字32位。设计一个四路组相连映射(即缓存每组内共有4个字块)的缓存组织,要求:
画出主存地址字段中各段的位数。
根据每个字块有8个字,每个字32位,得出主存地址字段中字块内地址为5位。
8*32/8=25;
在这里考虑一个块就行,一个块的大小为8*32bit
按字节寻址8bit
所以字块内地址《==对应的==》的范围32,即5位地址对应的范围为32。
根据缓存容量:16KB=214B,字块大小为25B,得缓存共有29块。
故c=9.
根据四路组相连映射2r=4,r=2,q=c-r=9-2=7。所以组地址为7位。
16MB=224B;m=19,即主存共有219块。
t=m-c=19-9=10位;
主存字块标记为s=t+r=10+2=12位。
所以主存字块标记12位,组地址7位,字快内地址5位。
(1) 主存字块标记12位 组地址7位 字块内地址5位
命中率
缓存速度为t, 主存速度为6t, 则为缓存访问时间6t*800,有缓存访问时间为t(800-13)+6t*13,提高倍数为:
设缓存初态为空,CPU依次从主存第0、1、2、…、99号单元读出100个字(主存一次读出一个字),并重复此次序读8次,问命中率是多少?
命中率h=命中Cache次数/(命中Cache次数+访问主存次数)
由于每个字块中有8个字,而且初态缓存为空,因此CPU读第0号单元时,未命中,必须访问主存,同时将该字所在主存块调入缓存第0组中的任一块内,接着读1--7号单元时,均命中
一组====两块====16个字====16个单元
因为是调入了一个块,所以8个字,8个单元。
同理CPU读第8、16、24...96 号单元都未命中。可见CPU在连续读100个字共有13次未命中,而之后的7次读100个字全部命中。命中率为(100*8-13)/100*8=98.375%。
若缓存的速度是主存速度的6倍,试问有缓存和无缓存相比,速度提高多少倍?
设Cache的存取周期为t,则主存的存取周期为6t
没有缓存访问时间:6t*800
有缓存访问时间:t(800-13)+6t*13
则速度提高倍数为:(6t*800)/(t(800-13)+6t*13) -1 约等于4.5
某计算机字长是32位,它的存储容量是64KB,按字编址,它的寻址范围是( B:16K )
解:64K*8bit/32=2的n次方
n=14,即地址线的数为14
则寻址范围:2的n=2的14次方=2的4次方*2的10次方=16K
A 16KB B 16K C 32K
动态半导体存储器的刷新一般有(集中刷新)、(分散刷新)和(异步刷新)三种方式,之所以刷新是因为(存储电荷的电容放电,保证动态RAM内的信息不丢失)。
某C语言程序段如下:??????????????????????????
for(i=0; i=9; i++)
{
temp=1;
for(j=0; j=i; j++) temp*=a[j];
sum+=temp;
}
下列关于数组a的访问局部性的描述中,正确的是 ( A )
A时间局部性和空间局部性皆有 B 无时间局部性,有空间局部性
C 有时间局部性,无空间局部性 D 时间局部性和空间局部性皆无
某计算机字长为32位,按字节编址,采用小端(Little Endian)方式存储数据。假定有一个double型变量,其机器数表示为1122 3344 5566 7788H,存放在0000 8040H开始的连续存储单元中,则存储单元0000 8046H中存放的是( A )
A 22H B 33H C 77H D 66H
设CPU共有16根地址线,8根数据线,并用 EQ \* j
原创力文档

文档评论(0)