2020秋季计算机组成原理试卷B(正题)答案脱敏

一、 要基于一位全加器FA 串联设计一个4位无符号补码可控加减法器,两个运算操作数分别为X= X 3X 2X 1X 0,Y=Y 3Y 2Y 1Y 0,进位输入信号为C 0,运算结果输出为S=S 3S 2S 1S 0,C 4为进位输出,运算控制信号为Sub ,试完成下列各题。(12分)
1) 请设计一位全加器FA 的电路,运算操作数为X ,Y ,进位信号为C in ,输出为运算结果S ,进
位输出C out ,给出所有输出信号逻辑表达式。
S i  =  X  ⊕ Y ⊕ C in  (2分)
C out  =  X  Y  + (X ⊕ Y )C in      或  C out  =  X  Y  + (X + Y )C in      (2分)
2)以一位全加器FA 为基础,设计一个4位串行无符号补码加减法器,请给出其电路图,并说明其工作原理。(5分)
3)假设所有门电路时间延迟均为1T ,则一位全加器FA 的时延为    3T      ,(1分)该4位可控加减法器的关键路径延迟为  13T      。(13T 给1分,10T 给2分)
摆度>山野的呼唤
二、某校验码编码长度15位,采用了海明码进行校验,编码左到右依次为H 15H H 1,海明校验组采用偶校验,试完成下列各问。(14分)
1) 根据海明校验的原理,请用打钩的方式在下表中标记出15位海明码中的校验位。
2)根据海明码定义,该编码应该分为四组,请给出每组中校验位的逻辑表达式。
白棉花 电影
Sub
FA n-2S 2
X 2Y 2C 0FA 0
C 1S 0
X 0Y 0C 3C 4S 3
FA n-1X 3Y 3FA 1S 1
克隆人X 1Y 1…=1=1=1=1
(上表为编码设计辅助表格,可以自行使用,不做判分依据)  (4分)
15
141312111098
15141312765415
141110763215131197531H H H H H H H H H H H H H H H H H H H H H H H H H H H H H H H H ⊕
⊕⊕⊕⊕⊕=⊕⊕⊕⊕⊕⊕=⊕⊕⊕⊕⊕⊕=⊕⊕⊕⊕⊕⊕=
3)假设指错字为G 4G 3G 2G 1,如果校验码最多只有一位错,如何判断错误并纠正错误,如校验码为010101101101010,请进行出错情况判断,给出计算过程。
抗压强度
指错字值=0 表示没有错误,否则表示出错位的位置,只需将对应为取反即可纠错(2分) G1 = 0+0+0+1+1+0+0+0 = 0 G2 = 1+0+1+1+1+0+1+0 = 1 G3 = 1+0+1+1+1+0+1+0 = 1 G4 = 0+1+1+0+1+0+1+0 = 0
G 4G 3G 2G 1=6  因此H6出错    (2分)
4)该编码纠错的前提是什么,假设没有三位错,如何识别一位错,两位错? 假设只有一位错才能纠错  (1分) 可以引入总校验位,  (1分)
指错字=1,总检错位=1时,表示一位错,否则表示两位错。  (2分)
三、某计算机系统主存容量为256B,按字节编址,其高速缓冲存储器(Cache) Array数据存储体的容量为32B,假定主存和Cache每个数据块大小均为4B。
(16分)
1)若Cache采用2路组相联,请给出主存地址向Cache地址映射时主存地址划分图,分别给出标
记字段(Tag)、索引字段(Index) 和块偏移字段(Offset)的位数。(3分) Array
2)假定Cache采用LRU替换策略,且Cache的初始内容为空;画出N=10时,执行下列代码后
Cache各组各行中保存的数组数据情况(按映射方法直接将v[i] 写在Cache特定组的特定行,i
要用0-9中具体的值代替,如v[1]等)。(注意:int 类型为4个字节,假定代码执行时数组V被
加载到主存地址0开始的连续存储器地址中,变量i,sum编译时分配到寄存器中)
int sumv(int v[N])
{
int i,  sum=0;
for (i=0;i<N; i ++)
sum + = v[i];
return sum;
3)结合Cache工作原理和存储体系构建的基本原理,简要说明存储体系中设置Cache的目的是什么?分析上述代码执行过程中Cache作用是否得到了发挥? 给出你认为能提高上述代码执行过程中Cache作用有效发挥的办法。
基于局部性原理,提高CPU在Cache中访问数据的命中率来缓解CPU与主存间的速度差异,从而提高
存储系统的访问速率。(2分)
代码在执行过程,Cache的作用没有发挥出来,因为数据块大小刚好就是一个整数,所构建的存储体系没有体现局部性的思想,导致CPU对数据的访问没有一次能在Cache中命中。(1分)
可行的办法:提高数据块的大小(2分)
四、下图为虚拟存储器的工作原理图。(14分)
1) 页式虚拟存储器工作过程中涉及到 VA (虚拟地址)、PA (物理地址)、VPN (虚拟页号)、
PPN (物理页号)等概念。根据页式虚拟存储器的工作原理,给出VA 、PA 、VPN 、PPN 在图中的编号。
(4分)威坪中学
VA    1 VPN    2 PA
4
PPN
3
2) 如果不使用TLB 会导致什么问题,简要说明原因?
如果不使用TLB ,会降低存储系统的访问速率(或增加存储系统的访问时间),因为实现虚拟地址与物理地址的转换需要增加一次访问主存/高速缓冲存储器。  (2分)
3)假定某虚拟页式存储器页大小为1024B ,物理空间为64KB 。结合下表求对应于十进制虚拟地址2050和3080的主存物理地址(十进制)。(第一列为有效位,1表示有效)  (4分)
VA (10进制) PA (10进制)
2050 7170 3080
缺页
根据虚拟页式存储器页面大小1024B ,可知页内偏移地址为10位;
(2050)10 = (10 0000000010)B , 对应的虚页号为2,查页表得到物理页号为 000111,且有效位为1,因此可得到物理地址为: (000111 0000000010)B  =7170
(3080)10 = (11 0000001000)B , 对应的虚页号为3,查页表得该页有效位为0,因此本次访问实效,本次访问不能获得与虚拟十进制地址3080对应的物理地址, 将发生缺页异常。
4)访问TLB 不命中时一定会发生缺页异常吗?如果TLB 命中,cache 是否一定命中?简单分析原因。
TLB 不命中,只是表示对应页表项不在TLB 中,只有访问主存系统中的页表项提示缺页时才会发生缺页异常;TLB 命中,只能说明要访问的页在主存,页载入主存和数据块载入 cache 并不同步,所以 cache 有可能命中,也有可能缺失。    4分
分  数  评卷人
五、某计算机采用16 位定长指令字格式,其CPU 中有一个标志寄存器,Array
其中包含进位/借位标志CF、零标志ZF 和符号标志NF。假定为该机设
计了条件转移指令,其格式如下:Array
其中,00000
1 时表示需检测对应标志,需检测的标志位中只要有一个为 1 就转移,否则不转移,例如,若C=1,Z=0,N=1,则需检测 CF 和 NF 的值,当 CF=1 或 NF=1 时发生转移; OFFSET 是相对偏移量,用补码表示。转移执行时,转移目标地址为(PC)+2+OFFSET×2;顺序执行时,下条指令地址为(PC)+2。请回答下列问题。(11分)
1)该计算机存储器按字节编址还是按字编址?该条件转移指令向前和向后最多可跳转多少条指令?
按字节编址(2分)
Offset采用8位补码表示,所以表示范围位-128~127,可以向前跳跃128,向后跳跃127条指令(1分)
2)某条件转移指令的地址为 200CH,指令内容如下图所示,若该指令执行时 CF=0, ZF=0,
NF=1,则该指令执行后 PC 的值是多少?若该指令执行时 CF=1,ZF=0,NF=0,则该指令执行后
PC 的值又是多少?请给出计算过程。
指令中 C = 0,Z = 1,N = 1,故应根据 ZF 和 NF 的值来判断是否转移。当 CF=0, ZF=0,NF=1 时,需转移。(1 分)
已知指令中偏移量为 1110 0011B=E3H,符号扩展后为 FFE3 H,左移一位(乘 2)后为 FFC6
H,故 PC 的值(即转移目标地址)为200CH+2+FFC6H=1FD4H。(2 分)
当 CF = 1,ZF = 0,NF = 0 时不转移。(1 分)
PC 的值为:200CH+2=200EH。(1 分)
3)实现“无符号数比较小于等于时转移”功能的指令中,C、Z 和 N 应各是什么?
C=Z=1,N=0  (3分)

本文发布于:2024-09-22 12:30:49,感谢您对本站的认可!

本文链接:https://www.17tex.com/xueshu/231376.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:主存   转移   指令   地址
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议