资源描述
资料内容仅供您学习参考,如有不当或者侵权,请联系改正或者删除。
总分
一
二
三
四
五
六
七
……………○……………密……………○……………封……………○…………线………………………………
学 院
班 级
学 号
姓 名
东北大学考试试卷( A卷答案)
— 年第 1 学期
课程名称: 计算机组成原理
二、 ( 10分) 判断题( 在每小题后的括号内答”对”或”错”。每小题1分)
一、 ( 10分) 填空题( 答案请勿直接写在每小题的括号里, 请答在本题下面空白处。每空1分)
┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄
1. 冯·诺依曼机体系结构的主要思想是( ) 概念。
存储程序( 并顺序执行)
2. 为表示无符号数值0~128需要( ) 个二进制位。
8
3. 设寄存器位数为8位, 机器数采用补码形式( 含1位符号位) 。对应于十进制数–27, 寄存器内容为( ) H。
E5
4. 三级存储系统是指( ) 这三级。
Cache( 高缓) -主存-辅存( 外存)
5. 建立高速缓冲存储器的理论依据是( ) 。
程序运行的局部性原理
6. 硬布线控制器设计的基本思想是: 某一微操作控制信号是指令译码输出、 ( ) 信号、 状态条件( 反馈) 信号的函数。
时序
7. 寄存器IR的作用是( ) 。
存放当前执行的指令
8. 在微程序控制器中, 时序信号常采用( ) 的二级体制。
节拍( 电位) -脉冲
9. 为实现中断, 保护断点和现场一般使用( ) 。
堆栈
10. 中断向量是指( ) 。
中断服务程序的入口地址( 中断服务程序的PC及其PSW内容)
1. 浮点数用规格化形式表示是为了扩大数值的表示范围。( 错 )
2. 多体交叉存储器主要解决的问题是扩充主存储器的容量。( 错 )
3. EEPROM是允许用电擦除后重写的只读存储器。( 对 )
4. 在取指令操作完成后, 程序计数器PC中存放的是下一条顺序执行的指令的地址。( 对 )
5. 控制存储器用来存放微程序和数据。( 错 )
6. 中断系统是由软硬件结合实现的。( 对 )
7. Cache与主存统一编址, 即主存空间的某一部分属于Cache。( 错 )
8. 取指令操作不受指令的操作码控制。( 对 )
9. 双端口存储器之因此能高速读写, 是因为采用了流水技术。( 错 )
10. 因为DRAM是破坏性读出, 必须不断地刷新。( 错 )
三、 ( 20分) 简要回答下列问题
3.( 5分) 指令和数据都在内存中, 计算机如何区分某次访问内存取出的是指令还是数据?
答: 主要由时序信号来区分——取指令机器周期取出来的是指令, 而执行周期( 其它机器周期) 访存取出来的是数据。
进一步说, 取出来的内容若送往控制器, 则为指令; 若送往执行部件则为数据。
1. ( 5分) 什么是”中断响应”? 中断周期完成的主要操作有哪些?
答: 处理器从发现中断请求、 终止现运行程序到调出中断服务程序的过程称为中断响应。
中断周期完成的主要操作: 关中断, 保护断点( PC和PSWR的内容入栈) 和找到中断源( 装入新的PC和PSWR) 。
4.( 5分) 在微程序控制器中微程序计数器( μPC) 能够用有计数功能( 加1) 的微地址寄存器( μAR) 来代替。试问, 程序计数器( PC) 是否能够用有计数功能( 加1) 的存储器地址寄存器( MAR) 来代替? 为什么?
答: 不能够。原因是: MAR除了存放指令地址外还用来存放数据地址; 而微程序控制器中的μPC或μAR只是用来存放微指令的地址。
2. ( 5分) 比较SRAM芯片与DRAM芯片的主要异同点。
答: DRAM芯片与SRAM芯片相同之处——都有存储体、 地址译码驱动系统、 I/O和读写控制电路几个部分作为芯片构成;
DRAM芯片与SRAM芯片不同之处——
( 1) 增加了刷新控制电路
( 2) 地址引脚复用——减少引线:
由RAS*和CAS*分时选择地址并锁存到芯片中;
( 3) 一般没有CS*信号; 代之以RAS*和CAS*;
( 4) 在×1( 例: 16K ×1、 256K×1等) 的DRAM芯片中, 数据线D常分为两个引脚: Din和Dout。
四、 ( 12分) 一个组相联Cache由64个存储块组成, 主存由8192个存储块组成; 每组包含4个块, 每块由32个字组成, 存储器按字编址。要求:
( 1) 求主存地址有多少位? Cache地址有多少位? 其地址映射是几路组相联?
( 2) 计算主存地址格式中, 区号、 组号、 组内块号和块内地址字段的位数各是多少。
解答:
( 1) 主存地址为18位, Cache地址为11位, 其地址映射为4路组相联。
( 2) 区号 组号 组内块号 块内地址
7位 4位 2位 5位
解答: ( 2)
图略( 不唯一)
五、 ( 15分) 某CPU提供16条地址线( A15~A0) 、 8条数据线( D7~D0) 及R/控制信号( 高电平为读, 低电平为写) 。当前要为该机配8KB主存, 其中4KB为ROM, 占据最低地址区, 采用2K×8位的EPROM芯片构成; 另外4KB为RAM, 采用4K×2位的SRAM芯片构成, 占据以4000H为起始地址的连续区域。问:
( 1) 需要已知的EPROM芯片和SRAM芯片各多少片? 写出各芯片的二进制地址范围;
( 2) 画出包括片选逻辑在内的CPU与存储器之间的连接图( 译码器、 门电路自定) 。
解答:
(1) 需要已知的EPROM为2片, SRAM为4片; 各芯片的二进制地址范围如下所示:
A15 A14 A13 A12 A11 A10 A9 A8 A7 A6 A5 A4 A3 A2 A1 A0
第1片EPROM 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
┇ ┇ ┇ ┇ ┇
0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1
第2片EPROM 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0
┇ ┇ ┇ ┇ ┇
0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1
第1片~第4片SRAM( 并联) 的地址范围
0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0
┇ ┇ ┇ ┇
0 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1
六、 ( 15分) 已知某机有四级中断A、 B、 C、 D, 其中断响应优先级由高到低依次为A→B→C→D。现在为了调整各级中断的处理次序, 用软件修改各级中断的屏蔽字如左下表所示, 其中”1”表示中断屏蔽, ”0”表示中断开放。问:
(1) 按此表改变后的中断处理次序是怎样的?
(2) 当CPU运行用户程序的某时刻t( 见右下图中的标示) , A、 B、 C、 D四级中断请求同时出现, 请在右下图中画出CPU运行程序的轨迹。
各级中断处理程序及用户程序的屏蔽字
CPU运行
屏蔽字
中断处理程序
A B C D
A级中断处理程序 1 1 0 1 A级中断处理程序
B级中断处理程序 0 1 0 0
C级中断处理程序 1 1 1 1 B级中断处理程序
D级中断处理程序 0 1 0 1
用户程序 0 0 0 0 C级中断处理程序
解答:
(1) 改变后的中断处理次序是C→A→D→B。
(2) 见右图。
D级中断处理程序
用户程序
时间T
A、 B、 C、 D 四级中断请求同时出现
时刻t
解答:
(1) 设计微指令格式如下:
A总线→寄存器 寄存器→B总线 ALU运算 M ALU+1 PC+1 G打开 P字段 下址字段
4位: 3位 2位 2位 1位 1位 1位 3位 8位
0000: 无 000: 无 00: 无 00: 无 0: 不+1 0: 不+1 0: G不打开
0001: R0i 001: R0o 01: + 01: 读 1: +1 1: +1 1: G打开
0010: R1i 010: R1o 10: - 10: 写
0011: R2i 011: R2o
0100: R3i 100: R3o
0101: MDRi 101: MDRo
0110: PCi 110: PCo
0111: IRi 111: IRo
1000: Xi
1001: Yi
1010: MARi
( 2) 实现a-b并将结果补码送R1需要3条微指令。
实现该操作的微程序代码如下( 忽略顺序控制字段) :
1000 010 00 00 0 0 1
1001 100 00 00 0 0 1
0010 000 10 00 1 0 1
七、 ( 18分) 双总线结构的模型计算机数据通路如下图所示。其中的ALU具有算术加运算和算术减运算的功能, 算术加是对其输入端寄存器X和Y中的内容进行二进制加法即( X) +( Y) ; 算术减则是完成( X) +( –Y) , ( –Y) 代表( Y) 的反码。上述加、 减运算由ALU上的控制信号+、 –控制。图中的连线上标有控制信号的, 用下标i表示输入控制信号, o表示输出控制信号; 线上无标示的为直通信号, 不受控制。控制信号G控制A总线与B总线之间的门是否打开。
现用水平型字段直接译码结合下址字段法设计该机微指令格式, 假定设计好的全部微程序流程中, 需要分支转移的地方共有6个, 控存容量为256字, 并设微程序能够在控存的全部空间内转移。要求设计完成的微指令长度不超过25位。
(1) 请设计出该机微指令的格式。
(2) 假设指令SUB R1, R3【指令功能: ( R1) –( R3) →R1) 】的取指令工作已经完成, 指令码已取到IR中, 且操作数a和b( 补码形式) 也已经在R1和R3中; 问: 按( 1) 中设计的微指令格式实现a–b并将结果补码送到R1需要几条微指令? 写出实现该操作的微程序代码, 忽略顺序控制字段。
图中: IR——指令寄存器, PC——程序计数器( 在PC+1信号控制下完成自增计数) , M——主存( 受读、 写信号控制) , MAR——存储器地址寄存器, MDR——存储器数据寄存器, R0、 R1、 R2、 R3——通用寄存器, X、 Y——ALU的输入寄存器。
展开阅读全文