文章
103
粉丝
0
获赞
0
访问
3.8k
(1)由于(R6)=1000,故(R2)=1000。
(2)指令Cache数据区的容量:16×32B=512B。P共有6条指令,占24字节,小于主存块大小(32B),其起始地址为0804 8100H,因而所有指令都在同一个主存块中。读取第一条指令时,发生Cache缺失,故将P所在主存块调入Cache某一行,以后每次读取指令时,都能在指令Cache中命中。因此,P在l000次循环执行过程中,共发生1次指令访问缺失,故指令Cache的命中率为1000×6-1)/(1000×6)=99.98%。
(3)P执行过程中,指令4(或add R1,R1,R5)的执行可能发生溢出异常。load指令(或指令3)的执行可能会产生缺页异常。因为load指令需要读取数组A的内容,当数组A不在主存时,发生缺页异常。第一次执行load指令时,因为数组A未调入主存,故访问TLB缺失,并发生缺页,需要从磁盘上读取数组A,因为数组A在同一页以及磁盘的同一个扇区中,所以在不考虑页面置换的情况下,只要读取磁盘1次。缺页异常处理结束后,重新执行load指令;load指令的随后1000次执行中,每次都能在TLB中命中,因而无需访问内存页表项和磁盘,所以,P在1000次循环执行过程中,对于数组A,需要读取TLB共1001次。
评分及理由
(1)得分及理由(满分1分)
得分:1分
理由:学生正确回答了R2的内容为1000,与标准答案一致。
(2)得分及理由(满分3分)
得分:3分
理由:学生正确计算了指令Cache数据区的容量为512B,并正确计算了指令Cache的命中率为99.98%,且解释过程与标准答案一致。
(3)得分及理由(满分7分)
得分:7分
理由:学生正确指出指令4可能发生溢出异常,指令3可能产生缺页异常,并正确计算了读取磁盘的次数为1次和TLB的访问次数为1001次,解释过程与标准答案一致。
题目总分:1+3+7=11分
登录后发布评论
暂无评论,来抢沙发