姓名_____________学号______________ 班级_____________
北京交通大学 2006 - 2007 学年 第2学期
计算机组成原理 期末考试题 (开卷考试)A
一. 计算题(20分)
已知:x = 2*(-0.10001); y = 2*0.101,若取数的阶码为5位,尾数为8位(均含一位符号位),请按机器补码浮点运算步骤,完成x+y的运算。(列出计算步骤)。
解:真值为:x = -2* 0.100010; y = 2*0.101000
补码为:[x]= 11110,1.0111100; [y]= 11101,0.1010000
对阶:[DE] = [m] - [n] = 11110 - 11101=11110 + 00011=00001, 真值为1, y的尾数右移1位,阶码加1。则:[y]= 11110,0.0101000
尾数相加:11.0111100 + 00.0101000 = 11.1100100 是非规格化数,左移2位,阶码减2,得:[x + y]= 11100,1.0010000
结果为:x + y = 2*(-0.111)
二.(10分)
(10分)某机器采用扩展操作码的方法进行优化编码,操作码字段分别为3位,6位和9位,其中3位操作码指令有6条、6位操作码指令有15条,9位操作码指令有8条。
1)请给出一种操作码的扩展方案。(5分)
2)如果使用频度如表1所示,请计算操作码的平均长度。(3分)
表1 指令编码与使用频度
指令类型
每条指令的使用频度
3位操作码指令(6条)
0.1
6位操作码指令(15条)
0.02
9位操作码指令(8条)
0.0125
答案:
1)4位操作码指令(10条):0000~1001
6位操作码指令(20条):101000~111011
8位操作码指令(20条):11110000~11111111
2)6*0.1*3+15*0.02*6+8*0.0125*9=4.5
三.(25分)
某计算机系统中CPU可输出16条地址线(A15~A0),8条数据线(D15~D0),两条控制信号R/W(读/写)和MREQ(当存储器读或写时,该信号指示地址总线上的地址是有效的,低电平有效),主存中有16K*8位的RAM, RAM的地址空间为4000H~7FFFH,采用8K*4bit的RAM芯片(有CS端,低电平有效和WR(高电平为读,低电平为写))
1) 画出主存和CPU的连接图,注意设计的译码方案不允许有地址重叠现象。(8分)
2) 写出每一芯片组的地址范围。(4分)
3) 若配以2K*8bit的cache,采用直接映像方式,每块为256*8bits,设Cache的初态为空,CPU依次从主存4000H开始读出1K个存储单元,每次读出一个存储单元的值,则命中率是多少?(3分)
答案:
A13A14A15
MREQ
D0~D7
D0~D3 CS
#3 WR
A0~A12 WR
W/R
g0g1g2 3:8译码器
CS y2 y3
A0~A12CS
#4 WR
D0~D3
A0~A12 CS
#2 WR D0~D3
A0~A12
D0~D3 CS
#1 WR
A0~A12 WR
CPU
1)
2)第一组RAM芯片(芯片#1,芯片#2):4000H~5FFFH
第二组RAM芯片(芯片#3,芯片#4):6000H~7FFFH
3)读出1K个字,共1024/256=4块,每块除第一个字不命中,其余都命中,所以命中率为:
(1024-4)/1024=99.6%
四.(15)某计算机有8条微指令I1—I8,每条微指令所包含的微命令控制信号见下表所示,a—j 分别对应10种不同性质的微命令信号。假设微指令的控制字段仅限8位,请安排微指令的控制字段格式。
答案:Bij 一组,efh 一组,每一组采用两位,其中00表示无操作,其他三种组合,分别表示一个微命令。对于acdg采用位直接控制.
五.(10)设某一微操作控制信号C1既发生在指令1(设操作码 OP为I1I2 = 11)的节拍电位M3、节拍脉冲T1时间,也发生在指令2(设 OP为I1I2 = 01)的节拍电位M2节拍脉冲 T2时间,
写出Ci的逻辑表达式,并表示在如图所示的GAL器件中。
答:
(1) C1= I1 I2 M3 T1+ I1 I2 M2 T2
(2)
六. (10分)
下图示出了可统一编址的单总线结构(a)和单独编址的单总线结构(b),请根据图示说明:
(1)什么是统一编址法?什么是单独编址法?
(2)在统一编址法(下图(a))中,可以使用访问内存的指令去访问I/O设备中的寄存器,问:如何才能知道该指令是访问内存还是访问I/O中的寄存器呢?
(3)在单独编址法(下图(b))中,访问内存的指令和访问I/O寄存器的指令都会影响哪些信号?
(a) 可统一编址的单总线结构
(b) 单独编址的单总线结构
解(1)统一编址法:将I/O设备中的所有的寄存器和内存单元一样看待,将它们和内存单元一起编排地址。这样一来就可用访问内存的指令去访问I/O中的某个寄存器。
单独编址法:内存地址和I/O地址是分开的,当访问内存时,由存储器读、存储器写两条控制线控制;当访问I/O设备时,由I/O读、I/O写两条控制线控制。
(2)根据指令中的地址涉及到的空间区分。
(3)存储器操作时会影响数据线、地址线、存储器读/写控制线;I/O设备操作时会影响数据线、地址线、I/O读/写控制线。
七. (10分)DMA数据传送的过程可分为哪几个阶段?简述各阶段的工作过程。
答:包括三个阶段: 初始化DMA控制器、正式传送、传送后的处理。
①在初始化阶段,CPU执行几条I/O指令,向DMA控制器中的地址寄存器送入设备号,向内存地址计数器中送入起始地址,向字计数器中送入传送的数据字个数并启动外设,CPU继续执行原来的主程序。
②经CPU启动的外部设备准备好数据输入或接收数据时,它向DMA控制器发出DMA请求,使DMA控制器进入数据传送阶段。当外设发出DMA请求时,CPU在本机器周期结束后响应该请求,并放弃系统总线的控制权,而DMA控制器接管系统总线并向内存提供地址,使内存与外设进行数据传送,直至传送结束,DMA控制器向CPU发出中断请求,DMA操作结束。
③DMA数据传送后的处理工作是:CPU接到DMA中断请求后,转去执行中断服务程序,而执行中断服务程序的工作包括:数据校验及数据缓冲区的处理等工作。
6
展开阅读全文