408----存储系统,指令系统大题分析(4) 2020---44,46,2021---44

一. 2020-------43

1.1.题目解析
1.2.题目答案

(1)  因为乘法可以拆解为加法,减法和位移操作的组合,编译器将乘法转换为一个循环代码段,不断地在循环代码段中通过比较,加法,移位,即可以达成与乘法运算相同的结果.

(2)  控制逻辑的作用是控制ALU,移位器的操作,并控制代码的循环次数.

(3)  a)没有乘法指令的情况下执行umul()时间最长,因为只能依靠软件操作来实现循环的加法来最终实现乘法,需要不断地取指令,译码,取数,执行并且写回结果,执行时间过长,b)和c)有专门的指令通过一条指令即可实现乘法运算,但是b)需要多个时钟周期,c)只需要一个时钟周期

4)   x的机器级表示为7FFF FFFFH,执行umul()与执行imul()的结果均为0000 0000 FFFF FFFEH,执行umul()的返回结果没有溢出,而执行imul()的返回结果溢出了,对于无符号整数乘法运算,当2n位的乘积高n位不全为0时,即可以判定发生了溢出.

二. 2020------44

解题过程

1. 主存块大小为64B,块内地址占6位。一共有32KB/64B=512块,采用8路组相联方式,一共有512/8=64组,Cache组号占用6位,Tag位有32-6-6=20位。每组有8块Cache,有3位LRU位。采用直写写策略,没有修改位。

2.该程序段运行的过程中,第一次访存时,所访问Cache块为缺失,将此内存块调入后,此后三十一次访存都是成功的。一共要进行1024/16=64个这样的周期,则访问数组s的Cache缺失次数为64次。

3.读取主存单元0001 0003H的指令,此时要执行PC+1,然后读取Cache寻找主存单元0001 0003H对应的cache块,需要先根据组索引为0访问第0组,发现缺失后需要访问主存0001 0003H,将Cache中对应0001 003H的块有效位置为1,如果对应Cache组未满,将此块调入Cache,如果对应Cache组已满,使用LRU算法替换,此时可以直接访问该指令。(过程:先找组,再找组内块,发现有效位为0调入块,然后先设置有效位,修改LRU位,根据块内地址003H访问对应单元)

三. 2020------46

(1)a[1][2]对应的虚拟地址为1080 1008H ,对应的页目录号为00 0100 0010H,即为66,对应的页号为1,对应的页目录项起始地址为0020 1108H,对应的页表项物理地址为0030 1004H

(※)(2)数组a在虚拟地址空间中所占区域必须连续,在物理地址空间中所占区域不一定连续,因为数组a占用不止一页,而虚拟地址空间中连续的页在物理地址空间中不一定连续。(考点:页式存储在内存空间中的映射,注意数组a占用空间大于4096B,回忆:一个页内的页内地址访问是连续的,而访问另一个行后【a的一行有4096B,刚好一个页】,需要访问另一个页,此时访问地址空间为非连续的)

 (3)按照行优先方式局部性更好,因为按照行优先方式访问的地址是连续的,在 地址变换和访问Cache过程中可以连续访问同一个页表项和Cache块

四. 2021------44

(1)虚拟地址空间16MB,一共有24位,1-12位表示虚页号。物理地址空间大小1MB,一共有20位,1-8位表示物理页号。

(2)  物理地址应该划分为标记Tag位,Cache块号和Cache块内地址。Tag字段为1-12位,有12位,一共有8个Cache块,Cache块号占有13-15位,有3位,块内地址占有16-20位,有5位。

(3)虚拟地址001C60H所在的页面在主存中,对应的物理地址为04C60H,物理块号为011B,即为3,Cache中Tag为105H,而所访问的物理地址高12位为04CH,访问该地址时Cache没有命中。

(4)虚拟地址为024BACH,页号为0000 0010 0100,得知最后一位即组号为0,高位的标记Tag为012,此时发现TLB中有对应的页表项,且有效位为1,此时得知024BACH所在的页面在主存中。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值