计算机组成与结构试卷 三

问答题


1、一种短浮点数的字长共16位(二进制),从高位到低位分别是:符号1位,阶码7位(包括符号位),尾数8位。尾数用原码、小数表示,阶码用移码、整数表示。尾数和阶码的基值都是2。有如下两个浮点数:A=1.0001x22和B=-0.11001x2-1
(1)把这两个数分别表示成规格化浮点数形式。
(2)按照浮点数加法运算规则,计算这两个浮点数的和。




2、一台实验计算机共有5种指令、8个通用数据寄存器,这5种指令的使用频度分别为35%、25%、20%、10%、10%。
(1)要求操作码的平均长度最短,请设计操作码编码,并计算所设计操作码的实际平均长度。
(2)要求设计8位字长的两地址寄存器-寄存器型指令3种,16位字长的寄存器-存储器型指令两种,其中,存储器地址采用直接寻址方式。请设计指令格式,给出5种指令的操作码编码、各个字段的长度和名称。




3、在一个Cache存储系统中,主存储器的访问周期、存储容量和单位价格分别为60ns、64MB和10元/MB,Cache的访问周期、存储容量和单位价格分别为10ns、512KB和100元/MB,Cache的命中率为0.98。
(1)计算这个Cache存储系统的等效访问周期、存储容量和单位价格。
(2)计算这个Cache存储系统的访问效率。




4、一个虚拟存储系统最多有64个用户,每个用户程序最大不超过8192页,每页4KB,主存储器的容量为64MB。为了加快地址变换过程,采用快慢表结构,快表的容量为64个存储字,快表地址经散列函数变换得到。为避免散列冲突,采用一个相等比较器。
(1)写出虚拟地址的格式,标出各字段的名称和长度。
(2)写出主存地址的格式,标出各字段的名称和长度。
(3)相等比较器的位数是多少?
(4)写出快表每个存储字的格式,标出各字段的名称和长度。




5、有4个中断源D1、D2、D3、D4,它们的中断优先级和中断屏蔽码见下表,表中,"1"表示该中断源被屏蔽,"0"表示该中断源开放。假设从处理机响应中断源的中断服务请求到运行中断服务程序中第一次开中断所用的时间为1微秒,其它中断服务时间为10微秒。
中断源
中断优先级
中断屏蔽码D1 D2 D3 D4
D1
1(最高)
1 1 0 0
D2
2(第二)
0 1 0 1
D3
3(第三)
1 0 1 0
D4
4(最低)
1 0 1 1

(1)当4个中断源同时申请中断服务时,写出处理机响应各中断源的中断请求的先后顺序和处理机实际为各中断源服务的先后顺序。
(2)处理机在0时刻开始响应中断请求,这时4个中断源都已经申请中断服务,写出处理机开始响应各中断源的中断请求和处理机为各中断源完成中断服务的时间。
(3)处理机在0时刻开始响应中断请求,这时中断源D3和D4已经申请中断服务,在6微秒时中断源D1和D2同时申请中断服务,写出处理机开始响应各中断源的中断请求和处理机为各中断源完成中断服务的时间。




6、一个磁盘存储器共有6个盘片(12个存储面),每面有4096条磁道,每条磁道有256个扇区,每个扇区512个字节,每分钟7200转,定位时间(寻道时间)为8ms。
(1)计算这个磁盘存储器的存储容量。
(2)磁盘存储器的寻址时间(包括定位时间和等待时间)是多少?
(3)在寻址完成之后,磁盘存储器的数据传输率是多少?




7、一条浮点加法流水线由对阶、尾数加和规格化三个流水段组成,每个流水段的时间均为2ns。流水线的输出端有直接数据通路与输入端相连,并且设置有缓冲寄存器用以保存中间运算结果。用这条流水线计算8个浮点数的和:S=A1+A2+A3+A4+A5+A6+A7+A8。画出流水线的时空图,并计算流水线的吞吐率、加速比和效率。




8、在一台每个时钟周期发射两条指令的超标量处理机上运行下面一段程序,所有指令都要经过"取指令"、"译码"、"执行"和"写结果"4个阶段,其中,"取指令"、"译码"和"写结果"三个阶段各为一个流水段,其延迟时间都为2ns。在"执行"阶段,LOAD操作和AND操作各延迟2ns,ADD操作延迟4ns,MUL操作延迟6ns,4种操作部件各设置一个。ADD部件和MUL部件都采用流水线结构,每一级流水线的延迟时间都为2ns。

(1)列出这个程序中所有的数据相关,包括写读数据相关、读写数据相关和写写数据相关。
(2)如果所有运算型指令都在"译码"流水段读寄存器,在"写结果"流水段写寄存器,采用顺序发射顺序完成调度方法,画出流水线的时空图,并计算执行这个程序所用的时间。 (3)如果所有运算型指令都在"译码"流水段读寄存器,在"写结果"流水段写寄存器,采用顺序发射乱序完成调度方法,画出流水线的时空图和各条指令完成的时间图,并计算执行这个程序所用的时间。
(4)如果每个操作部件的输出端都有直接数据通路与输入端相连,采用顺序发射乱序完成调度方法,画出流水线的时空图和各条指令完成的时间图,并计算执行这个程序所用的时间。