计算机组成原理 (5)
计算机组成原理教案(第五章)
(1) I1: ADD R1,R2,R3 ; I2: SUB R4,R1,R5 ;
3.联合控制方式
此为同步控制和异步控制相结合的方式。 情况(1) 大部分操作序列安排在固定的机器周 期中,对某些 时间难以确定的操作则以执行部件的“回答”信号作为本次操 作的结束; 情况(2) 机器周期的节拍脉冲数固定,但是各条指令周期的 机器周期数不固定。
5.4 微程序控制器
5.4.1 微命令和微操作
控 制 字 段 判别测试字段
下地址字段
按照控制字段的编码方法不同,水平型微指令又分为三种:
I. 全水平型(不译法)微指令 II. 字段译码法水平型微指令 III. 直接和译码相混合的水平型微指令。
2.垂直型微指令
微指令中设置微操作码字段,采用微操作码编译法,由 微操作码规定微指令的功能 ,称为垂直型微指令。
下面举4条垂直型微指令的微指令格式加以说明。设微指 令字长为16位,微操作码3位。
(1)寄存器-寄存器传送型微指令 (2)运算控制型微指令
(3)访问主存微指令 (4)
3.水平型微指令与垂直型微指令的比较
(1)水平型微指令并行操作能力强,效率高,灵活性强,垂直型微 指令则较差。
(2)水平型微指令执行一条指令的时间短,垂直型微指令执行时间 长。
5.8.3 流水线中的主要问题
流水过程中通常会出现以下三种相关冲突,使流水线断流。
1. 资源相关
资源相关是指多条指令进入流水线后在同一机器时钟周 期内争用同一个功能部件所发生的冲突。
2. 数据相关
在一个程序中,如果必须等前一条指令执行完毕后,才能 执行后一条指令,那么这两条指令就是数据相关的。
5.8 流水CPU
5.8.1 并行处理技术
计算机组成原理 (5)
计算机组成原理姓名:[填空题]*1.指令系统中采用不同寻址方式的目的主要是()。
[单选题]A.实现存储程序和程序控制B.缩短指令长度,扩大寻址空间,提高编程灵活性(正确答案)C.可以直接访问外存D.提供扩展操作码的可能并降低指令译码难度2、立即寻址是指()o [单选题I*A.指令中直接给出操作数地址B.指令中直接给出操作数(正确答案)C.指令中间接给出操作数D.指令中间接给出操作数地址3、直接寻址是指()o [单选题]*A.指令中直接给出操作数地址(正确答案)B.指令中直接给出操作数C.指令中间接给出操作数D.指令中间接给出操作数地址4、间接寻址是指()o [单选题]*A.指令中直接给出操作数地址B.指令中直接给出操作数C.指令中间接给出操作数D.指令中间接给出操作数地址 15、变址寻址方式中,操作数的有效地址等于()o [单选题]*A.基址寄存器内容加上形式地址(位移量)B.堆栈指示器内容加上形式地址C.变址寄存器内容加上形式地址(正确答案)D.程序计数器内容加上形式地址6、基址寻址方式中,操作数的有效地址等于()o [单选题]*A.基址寄存器内容加上形式地址(偏移量)(正确答案)B.堆栈指示器内容加上形式地址C.变址寄存器内容加上形式地址D.程序计数器内容加上形式地址7、定点数补码加法具有两个特点:一是符号位();二是相加后最高位上的进位要舍去。
[单选题]*A.与数值位分别进行运算B.与数值位一起参与运算1正确答案)C.要舍去D.表示溢出8、长度相同但格式不同的2种浮点数,假设前者阶码长、尾数短,后者阶码短、尾数长,其他规定均相同,则它们可表示的数的范围和精度为()o [单选题]*A.两者可表示的数的范围和精度相同B.前者可表示的数的范围大但精度低(正确答案)C.后者可表示的数的范围大且精度高D.前者可表示的数的范围大且精度高9、在定点二进制运算器中,减法运算一般通过()来实现。
[单选题]*A.原码运算的二进制减法器B.补码运算的二进制减法器C.补码运算的十进制加法器D.补码运算的二进制加法器(正确答案)10、在机器数()中,零的表示形式是唯一的。
《计算机组成原理》5-指令系统
◆ CPU中设置程序计数器(PC)对指令的顺序号进行计 数。PC开始时存 放程序的首地址,每执行一条指令,PC 加”1”,指出下条指令的地址, 直到程序结束。
跳跃寻址 Leabharlann 转移指令指出AA22AA33
…
…
…
…
1111 1110 A2 A3
12 位操作码
1111 1111 0000 1111 1111 0001
AA33
…
…
…
…
1111 1111 1110 A3
16 位操作码
…
…
1111 1111 1111 0000 1111 1111 1111 0001 1111 1111 1111 1111
24
双字
28
双字(地址32)▲
32
双字
36
边界未对准
地址(十进制)
字( 地址2)
半字( 地址0)
0
字节( 地址7) 字节( 地址6)
字( 地址4)
4
半字( 地址10)
半字( 地址8)
8
5.2.2 数据类型
2、数据在计算机中存放方式
存储字长内部字节的次序
例: 12345678H如何存储? 12 34 56 78H
5.3.1指令寻址
指令寻址----计算指令有效地址的方法
指令地址
指令
指令地址寻址方式
PC +1
0 LDA
11 ADD 22 DEC 33 JMP
4 LDA
5 SUB 6 INC
77 STA 88 LDA
计算机组成原理第5章 中央处理器
19
第二节 一、指令执行分析 任何一条指令的执行都要经过读取指令、分析 指令和执行指令三个阶段。指令执行过程一般可分 为:1)取指令 2 3 4 5
20
图5.5
流水处理
21
二、 计算机的功能是执行程序。执行程序时,计算 机操作由一系列指令周期组成,每个周期执行一条 机器指令,而每个指令周期又由若干个机器周期组 成,一种通常的办法是分解成取指、取操作数、执 行和中断,只有取指和执行周期总是必有的。 1 2 图
10
二、时序控制方式 计算机的基本任务是执行指令。执行一条指令 的过程是分为若干步来实现的,每一步对应某些微 操作。由于不同指令所对应的微操作及繁简程度大 不相同,因而每条指令和每个微操作所需的执行时 间也不相同,这就需要引入时序信号来对这些微操 作进行定时控制。时序控制方式,就是指微操作与 时序信号之间采取何种关系。按照同步或非同步的 关系,可将时序控制方式分为同步控制和异步控制
13
计算机从取指令到执行完指令所需要的时间称 为指令周期。不同的指令,其功能不同,其指令周 期长短也就可以不同。在系统中,通常不为指令周 期设置时间标志信号,因而也不将其作为时序的一 级。时序信号通常划分为三级,即机器周期、节拍
14
图5.2
时序系统结构框图
15
3) 异步控制方式中没有统一的时钟信号,各部件 按自身固有的速度工作,通过应答方式进行联络, 常见的应答信号有准备好(READY)或等待( WAIT
16
图5.3 多级时序
17
图5.4
异步应答流程
18
在CPU中,控制器的任务是决定在什么时间、 根据什么条件、发什么命令、做什么操作。因此, 产生微命令的基本依据是时间、指令代码、状态、 外部请求等。这些信息或作为逻辑变量,经组合逻 辑电路产生微命令序列;或形成相应的微程序地址, 通过执行微指令直接产生微命令序列。按照微命令 的产生方式,可将控制器分为组合逻辑控制器和微
计算机组成原理第五章答案
第5章习题参考答案1.请在括号内填入适当答案;在CPU 中:1保存当前正在执行的指令的寄存器是 IR ; 2保存当前正在执行的指令地址的寄存器是 AR3算术逻辑运算结果通常放在 DR 和 通用寄存器 ;2.参见图的数据通路;画出存数指令“STO Rl,R2”的指令周期流程图,其含义是将寄存器Rl 的内容传送至R2为地址的主存单元中;标出各微操作信号序列; 解:STO R1, R2的指令流程图及微操作信号序列如下:3.参见图的数据通路,画出取数指令“LAD R3,R0”的指令周期流程图,其含义是将R3为地址主存单元的内容取至寄存器R2中,标出各微操作控制信号序列; 解:LAD R3, R0的指令流程图及为操作信号序列如下:4.假设主脉冲源频率为10MHz,要求产生5个等间隔的节拍脉冲,试画出时序产生器的逻辑图; 解: 5.如果在一个CPU 周期中要产生3个节拍脉冲;T l =200ns,T 2=400ns,T 3=200ns,试画出时序产生器逻辑图;解:取节拍脉冲T l 、T 2、T 3的宽度为时钟周期或者是时钟周期的倍数即可;所以取时钟源提供的时钟周期为200ns,即,其频率为5MHz.;由于要输出3个节拍脉冲信号,而T 3的宽度为2个时钟周期,也就是一个节拍电位的时间是4个时钟周期,所以除了C 4外,还需要3个触发器——C l 、C 2、C 3;并令211C C T *=;321C C T *=;313C C T =,由此可画出逻辑电路图如下:6.假设某机器有80条指令,平均每条指令由4条微指令组成,其中有一条取指微指令是所有指令公用的;已知微指令长度为32位,请估算控制存储器容量; 解:80条指令,平均每条指令由4条微指令组成,其中有一条公用微指令,所以总微指令条数为80 4-1+1=241条微指令,每条微指令32位,所以控存容量为:24132位7.某ALU 器件是用模式控制码M S 3 S 2 S 1 C 来控制执行不同的算术运算和逻辑操作;下表列出各条指令所要求的模式控制码,其中y 为二进制变量,φ为0或l 任选;2,S l ,C 的逻辑表达式;由表可列如下逻辑方程 M=GS 3=H+D+FS 2=A+B+D+H+E+F+G S 1=A+B+F+G C=H+D+Ey+Fy8.某机有8条微指令I1—I8,每条微指令所包含的微命令控制信号如下表所示;a—j分别对应10种不同性质的微命令信号;假设一条微指令的控制字段仅限为8位,请安10位控制字段,现控制字段仅限于8位,那么,为了压缩控制字段的长度,必须设法把一个微指令周期中的互斥性微命令组合在一个小组中,进行分组译码;经分析,e,f,h和b,i,j、或d,i,j和e,f,h、或g,b,j和i,f,h均是不可能同时出现的互斥信号,所以可将其通过2:4译码后输出三个微命令信号00表示该组所有的微命令均无效,而其余四个微命令信号用直接表示方式;因此可用下面的格式安排控制字段;e f h b i je f h d i jf h i bg j9μA8 = P1·IR6·T4μA7 = P1·IR5·T4μA6 = P2·C·T4其中μA8—μA6为微地址寄存器相应位,P1和P2为判别标志,C为进位标志,IR5和IR6为指令寄存器的相应位,T4为时钟周期信号;说明上述逻辑表达式的含义,画出微地址转移逻辑图;解:μA5=P3·IR5·T4μA4=P3·IR4·T4μA3=P1·IR3·T4μA2=P1·IR2·T4μA1=P1·IR1·T4μA0=P1·IR·T4+P2·C·T4用触发器强置端低有效修改,前5个表达式用“与非”门实现,最后1个用“与或非”门实现μA2、μA1、μA触发器的微地址转移逻辑图如下:其他略10.某计算机有如下部件,ALU,移位器,主存M,主存数据寄存器MDR,主存地址寄存器MAR,指令寄存器IR,通用寄存器R0R3,暂存器C和D;1请将各逻辑部件组成一个数据通路,并标明数据流动方向;2画出“ADD R1,R2”指令的指令周期流程图;解:1 设该系统为单总线结构,暂存器C和D用于ALU的输入端数据暂存,移位器作为ALU输出端的缓冲器,可对ALU的运算结果进行附加操作,则数据通路可设计如下:2 根据上面的数据通路,可画出“ADD R1,R2”设R1为目的寄存器的指令周期流程图如下:11.已知某机采用微程序控制方式,控存容量为51248位;微程序可在整个控存中实现转移,控制微程序转移的条件共4个,微指令采用水平型格式,后继微指令地址采用断定方式;请问;1微指令的三个字段分别应为多少位2画出对应这种微指令格式的微程序控制器逻辑框图;解:1 因为容量为51248位,所以下址字段需用9位,控制微程序转移的条件有4个,所以判别测试字段需4位或3位译码,因此操作控制字段的位数48-9-4=35位或48-9-3=36位2微程序控制器逻辑框图参见教材图12.今有4级流水线,分别完成取指、指令译码并取数、运算、送结果四步操作;今假设完成各步 操作的时间依次为100ns,100ns,80ns,50ns;请问; 1流水线的操作周期应设计为多少2若相邻两条指令发生数据相关,而且在硬件上不采取措施,那么第2条指令要推迟多少时间进行3如果在硬件设计上加以改进,至少需推迟多少时间 答:1 流水操作周期为max100,100,80,50=100ns2若相邻两条指令发生数据相关,而且在硬件上不采取措施,那么在第1条指令“送结果”步骤完成后,第2条指令的“取数”步骤才能开始,也就是说,第2条指令要推迟两个操作周期,即200ns 才能进行;3 如果在硬件设计上加以改进,采用定向传送的技术,则只要第1条指令完成“运算”的步骤,第2条指令就可以“取数”了,因此至少需推迟100ns;13.指令流水线有取指IF 、译码ID 、执行EX 、访存MEM 、写回寄存器堆WB 五个过程段,共有20条指令连续输入此流水线;1画出流水处理的时空图,假设时钟周期为100ns;2求流水线的实际吞吐率单位时间里执行完毕的指令数; 3求流水线的加速比; 解:1 流水处理的空图如下,其中每个流水操作周期为100ns :空间S I 1 I 2 I 15 I 16 I 17 I 18 I 19 I 20WB MEM EXIDIF123456192021222324时间T2 流水线的实际吞吐量:执行20条指令共用5+119=24个流水周期,共2400ns,所以实际吞吐率为:3 流水线的加速比为:设流水线操作周期为τ,则n指令串行经过k个过程段的时间为nkτ;而n条指令经过可并行的k段流水线时所需的时间为k+n-1τ;故20条指令经过5个过程段的加速比为:14.用时空图法证明流水计算机比非流水计算机具有更高的吞吐率;解:设流水计算机的指令流水线分为4个过程段:IF、ID、EX、WB,则流水计算机的时空图如下:空间S I1I2I3I4I5WBEXIDIF12345678时间T 非流水计算机的时空图:空间S I1I2WB EX ID IF1 2 3 4 5 6 7 8 时间T由图中可以看出,同样的8个操作周期内,流水计算机执行完了5条指令,而非流水计算机只执行完了2条指令;由此,可看出流水计算机比非流水计算机具有更高的吞吐率; 15.用定量描述法证明流水计算机比非流水计算机具有更高的吞吐率; 证明:设流水计算机具有k 级流水线,每个操作周期的时间为,执行n 条指令的时间为:()τ⨯-+=1n k T ;吞吐率为:()τ⨯-+=11n k nH而非流水计算机,执行n 条指令的时间为:τ⨯⨯=k n T ;吞吐率为:τ⨯⨯=k n nH 2当n=1时,21H H =;当n>1时,21H H >,即:流水计算机具有更高的吞吐率;16.判断以下三组指令中各存在哪种类型的数据相关 1 I 1 LAD R1,A ; MA →R1,MA 是存储器单元 I 2 ADD R2,Rl ; R2+R1→R2 2 I 1 ADD R3,R4 ; R3+R4→R3 I 2 MUL R4,R5 ; R4R5→R43 I 1 LAD R6,B ; MB →R6,MB 是存储器单元I 2 MUL R6,R7 ; R6 R7→R6 解:1 I 1的运算结果应该先写入R 1,然后再在I 2中读取R 1的内容作为操作数,所以是发生RAW “写后读”相关2 WAR3 RAW 和WAW 两种相关17.参考图所示的超标量流水线结构模型,现有如下6条指令序列: I 1 LAD R1,B ; MB →R1,MB 是存储器单元 I 2 SUB R2,Rl ; R2-R1→R2 I 3 MUL R3,R4 ; R3R4→R3 I 4 ADD R4,R5 ; R4+R5→R4I 5 LAD R6,A ; MA →R6,MA 是存储器单元 I 6 ADD R6,R7 ; R6+R7→R6请画出:1按序发射按序完成各段推进情况图; 2按序发射按序完成的流水线时空图; 解:(1) 按序发射按序完成各段推进情况图如下仍设F 、D 段要求成对输入;F 、D 、W 段只需1个周期;加需要2个周期;乘需要3个周期;存/取数需要1个周期;执行部件内部有定向传送,结果生成即可使用:取指段译码段执行段取/存加法器乘法器写回段1234567891011时钟I1I2超标量流水线的时空图。
西安电子科技大学_计算机组成原理第5章中央处理器_课件PPT
控制信号 指令译码 /控制器
F→IR
IR
总线B IR→B
设ALU的功能有: F = A + B (ADD), F = A - B (SUB), F = A + 1 (INC), F = A - 1 (DEC),
MAR F→MAR
ABUS
M
Read Write
DBUS
F→PC F→R0 F→R1
F→Rn-1
28
5了5条微指令I1~I5所发出的控制信号a~j。 设计微指令的控制字段,要求保持微指令本身的并 行性,需要最少的控制位数为______。
A. 6
B. 7
C. 8
D. 10
微指令
激活的控制信号
abcde f gh i j
I1 √
√√√
I2
√√
√√
I3
西安电子科技大学 计算机学院
计算机组成原理考研辅导
5 第 章 中央处理器
2021年9月3日 21:40:12
考研大纲
(一)CPU的功能和基本结构 (二)指令执行过程 (三)数据通路的功能和基本结构 (四)控制器的功能和工作原理
1. 硬布线控制器 2. 微程序控制器
微程序、微指令和微命令 微指令格式,微命令的编码方式 微地址的形成方式
水平型 垂直型 混合型
A1 A2 … An-1 An 判断测试字段 后续地址字段
操作控制
顺序控制
μOP 微操作码
Rd 目的地址
Rs 源地址
25
5.4 硬布线控制器和微程序控制器 二、微程序控制器 硬布线与微程序控制器的特点: 硬布线:速度快,不规整,修改及扩充困难 微程序:速度慢,规整,容易修改及扩充
计算机组成原理——指令系统5
15条二地址指令
12 位操作码
1111 1111 0000 1111 1111 0001 1111 1111 1110 … …
16 位操作码
1111 1111 1111 0000 1111 1111 1111 0001 1111 1111 1111 1111 … … …
…
… …
15条一地址指令
16条零地址指令
RISC
RISC——精简指令系统计算机 RISC的优点 RISC通过简化指令功能使计算机结构更为合理从而提高计算速度 RISC将原CISC中复杂指令用子程序代替 I增多,CPI大大减少 P减少
其中:I为目标程序的指令数、CPI每条指令平均周期数
故:指令执行时间P=I*CPI*T
RISC的特点 (1)优先选取使用频率高以及很有用但不复杂的指令。 (2)指令长度固定,指令格式、寻址方式种类少。 (3)除取数/存数指令外,其余指令操作都在寄存器之间。 (4)CPU中通用寄存器数量多。 (5)大部分指令在一个或小于一个机器周期内完成。 (6)以硬布线控制逻辑为主,不用或少用微码控制。 (7)一般用高级语言编程,重视编译优化工作。
• 指令执行阶段不访存 • A 的位数限制了立即数的范围
2. 直接寻址
EA = A 有效地址由形式地址直接给出
寻址特征
主存
LDA
A
A 操作数 ACC
• 执行阶段访问一次存储器
• A 的位数决定了该指令操作数的寻址范围
• 操作数的地址不易修改(必须修改A)
3. 隐含寻址
操作数地址隐含在操作码中
寻址特征
(1) 四地址
8
6
6
6
6
OP A1 A2 A3 A4
计算机组成原理第五章-有关cache的计算
计算机组成原理第五章-有关cache的计算计算机组成原理第五章主要讲述了计算机中的缓存(Cache)技术。
缓存是一种用于提高计算机性能的关键技术,它位于CPU和内存之间,用于存储最近访问的数据和指令。
当CPU 需要访问某个数据或指令时,首先会检查缓存中是否存在该数据或指令,如果存在,则直接从缓存中获取,否则从内存中获取并存入缓存。
有关cache的计算主要包括以下几个方面:1. 命中率(Hit Rate):命中率是指CPU在访问数据时,能够直接从缓存中找到所需数据的概率。
命中率越高,说明缓存的使用效果越好。
计算公式为:命中率= 命中次数/ (命中次数+ 未命中次数)2. 缺失率(Miss Rate):缺失率是指CPU在访问数据时,无法从缓存中找到所需数据的概率。
缺失率越低,说明缓存的性能越好。
计算公式为:缺失率= 未命中次数/ (命中次数+ 未命中次数)3. 平均访问时间(Average Access Time):平均访问时间是指CPU访问数据所需的总时间除以访问次数。
平均访问时间越短,说明缓存的性能越好。
计算公式为:平均访问时间= (命中时间* 命中次数+ 缺失时间* 缺失次数) / (命中次数+ 缺失次数)4. 缓存容量(Cache Capacity):缓存容量是指缓存中可以存储的数据量。
缓存容量越大,能够存储的数据越多,从而提高缓存的命中率。
但是,缓存容量的增加也会增加成本和功耗。
5. 缓存行大小(Cache Line Size):缓存行大小是指每次从内存中读取的数据量。
缓存行大小越大,每次读取的数据越多,从而提高缓存的命中率。
但是,过大的缓存行大小会增加内存带宽的需求。
6. 替换策略(Replacement Policy):替换策略是指在缓存已满的情况下,如何选择要被替换的数据。
常见的替换策略有随机替换、先进先出(FIFO)替换、最近最少使用(LRU)替换等。
不同的替换策略会影响缓存的性能和命中率。
计算机组成原理第五章(白中英版)PPT课件
取出CLA指令
算术逻辑单元
ALU
累加器AC
取指 控制
操作控制器
时序产生器
执行 控制
时钟
状态 反馈
c
+ 1
c
20 CLA 21 ADD 30 22 STA 40 23 NOP 24 JMP 21
30 000 006 31 40
指令译码器
CLA
c
CLA
c 指令寄存器IR
缓冲寄存器DR
数据总线DBUS
15
2
第5章 中央处理器 计算机组成原理
5.1 CPU的组成和功能 5.2 指令周期 5.3 时序产生器和控制方式 5.4 微程序控制器 5.5 微程序设计技术 5.6 硬布线控制器 5.7 传统CPU
5.8 流水CPU 5.9 RISC CPU 5.10 多媒体CPU 5.11 CPU性能评价
3
5.1 CPU的功能和组成
30 000 006 31 40
CLA
c
CLA
c 指令寄存器IR
缓冲寄存器DR
数据总线DBUS
16
5.2.3 ADD指令的指令周期
一个CPU周期 一个CPU周期 一个CPU周期
取指令 开始 PC+1
执行加 操作
取下条指 令PC+1
对指令 译码
送操作 数地址
取出操 作数
取指令阶段
执行指令阶段
17
取出并执行ADD指令
☼ 第一章 计算机系统概论 ☼ 第二章 运算方法和运算器 ☼ 第三章 存储系统 ☼ 第四章 指令系统 ☼ 第五章 中央处理器 ☼ 第六章 总线系统 ☼ 第七章 外围设备 ☼ 第八章 输入输出系统 ☼ 第九章 并行组织
计算机组成原理第五章答案
可编辑ppt
8
16、判断以下三组指令中各存在哪种类型的数据相关?
① I1 LDA R1 , A ;M(A)R1 I2 ADD R2 , R1 ;(R2)+(R1)R2 写后读相关
② I3 ADD R3 , R4 ;(R3)+(R4)R3 I4 MUL R4 , R5 ;(R4) ×(R5) R4 读后写相关
第5章 中央处理机
2、参见图5.15的数据通路,画出存数指令STO R1,(R2) 的指令周期流程图,其含义是将寄存器R1的内容传送至 (R2)为地址的数存单元中。
指令 地址
数据单元 指令
数据 地址
数据
可编辑ppt
2
存数指令STO R1,(R2)
取指周期
执行周期
PC0 G (PC)AR ARi
R/W=1 (M)DR
③ I5 LDA R6 , B ;M(B)R6
写后写相关
I6 MUL R6 , R7 ;(R6) ×(R7) R6
可编辑ppt
9
微指令的数目为80×3+1=241条; 微指令字长为32/8=4字节; 故,控制存储器的容量为 241×4=964字节
该容量为控制存储器的最小容量。
可编辑பைடு நூலகம்pt
6
13、指令流水线有取指(IF)、译码(ID)、执行 (EX)、访存(MEM)、写回寄存器堆(WB) 五个过程段,共有20条指令连续输入此流水线。
DR0 G
(DR)IR
IRi
R20 (R2)AR G
ARi
R10 (R1)DR G
DRi
DRMM R/W=0
译码
可编辑ppt
3
3、参见图5.15的数据通路,画出取数指令LAD (R3), R0的指令周期流程图,其含义是将(R3)为地址数存 单元的内容取至寄存器R0中。
计算机组成原理课后答案(高教版)5
5.图形显示和图像显示有何区别?
图形显示器是用点、线、面组合而成的平面或立体 图形。并可以做平移、比例变化、旋转、坐标变 换、投影变换、透视变换、透视投影、轴侧投影、 单点透视、两点或三点透视以及隐线处理等操作。 主要用于CAD和CAM等。图形显示器所显示的图 形是由计算机用一定的算法形成的点、线、面、 阴影等,它来自主观世界,因此又称主观图像或 叫做计算机图像。 图像显示器所显示的图像通常来自客观世界,故又 称客观图像。图像显示器是把由计算机处理后的 图像,以点阵列的形式显示出来。
2014-3-28
15
14. 在什么条件下,I/O设备可以向CPU提出中断请求? 解:条件是:I/O接口中的设备工作完成状态为1(D=1), 中断屏蔽码为0 (MASK=0),且CPU查询中断时,中断 请求触发器状态为1(INTR=1)。 15. 什么是中断允许触发器?它有何作用? 解:中断允许触发器是CPU中断系统中的一个部件,他起 着开关中断的作用(即中断总开关,则中断屏蔽触发器可 视为中断的分开关)。 16. 在什么条件和什么时间,CPU可以响应I/O的中断请求? 解:CPU响应I/O中断请求的条件和时间是:当中断允许状 态为1(EINT=1),且至少有一个中断请求被查到,则在 一条指令执行完时,响应中断。
2014-3-28 5
6. 字符显示器的接口电路中配有缓冲存储器和 只读存储器,各有何作用? 解: (1) 缓冲存储器做为显示存储器,存放欲显示 的字符的ASII码,其容量与显示屏能显示的 字符个数有关,每个字符所在存储单元的地 址与字符所在荧光屏上的位置一一对应。 (2) 只读存储器做为字符发生器,将ASCII码转 变为一组光点矩阵信息ROM的个数与显示器 所能显示的字符种类有关。
计算机组成原理第五章答案
31. 假设某设备向CPU传送信息的最高 频率是40K次/秒,而相应的中断处理程序其 执行时间为40s,试问该外设是否可用程序 中断方式与主机交换信息,为什么?
解:该设备向CPU传送信息的时间间隔 =1/40K=0.025×103=25s < 40s
则:该外设不能用程序中断方式与主机
交换信息,因为其中断处理程序的执行速度 比该外设的交换速度慢。
直接控制适用于结构极简单、速度极慢的 I/O设备,CPU直接控制外设处于某种状态而无须 联络信号。
同步方式采用统一的时标进行联络,适用于 CPU与I/O速度差不大,近距离传送的场合。
异步方式采用应答机制进行联络,适用于 CPU与I/O速度差较大、远距离传送的场合。
4. 试比较程序查询方式、程序中断方式和DMA方式 对CPU工作效率的影响。 答:
I/O数据送BR 或(BR)送I/O
就绪
数据传送:
响应, 停止CPU
让出
总线 (AR)送
访存
MM(MAR);
准备下 个数据
现 行 程
(AR)+1;R/W (BR)送MDR; WC减1;
序 等
B待
DMA请求就绪
I/O数据送BR
或(BR)送I/O C
D
CPU I/O
B D
现 行 程 序 等 待
DMAC
程序对I/O的控制包括了I/O准备和I/O传送两段时 间。由于I/O的工作速度比CPU低得多,因此程序 中要反复询问I/O的状态,造成“踏步等待”,严 重浪费了CPU的工作时间。
而程序中断方式虽然也是通过“程序”传送
数据,但程序仅对I/O传送阶段进行控制,I/O准 备阶段不需要CPU查询。故CPU此时照样可以运 行现行程序,与I/O并行工作,大大提高了CPU的 工作效率。
计算机组成原理第五章答案
10. 什么是I/O接口?它与端口有何区别?为 什么要设置I/O接口?I/O接口如何分类? 解: I/O接口一般指CPU和I/O设备间的连 接部件; I/O端口一般指I/O接口中的各种寄存器。 I/O接口和I/O端口是两个不同的概念。一 个接口中往往包含若干个端口,因此接口地址 往往包含有若干个端口地址。
若为输出,除数据传送方向相反以外,其他操作 与输入类似。工作过程如下: 1)CPU发I/O地址地址总线接口设备选择 器译码选中,发SEL信号开命令接收门; 2)输出: CPU通过输出指令(OUT)将数据放 入接口DBR中; 3)CPU发启动命令 D置0,B置1 接口向设 备发启动命令设备开始工作; 4)CPU等待,输出设备将数据从 DBR取走; 5)外设工作完成,完成信号接口 B置0,D 置 1; 6)准备就绪信号控制总线 CPU,CPU可通 过指令再次向接口DBR输出数据,进行第二次传送。
2. 简要说明CPU与I/O之间传递信息可采用 哪几种联络方式?它们分别用于什么场合? 答: CPU与I/O之间传递信息常采用三种联 络方式:直接控制(立即响应)、 同步、异步。 适用场合分别为: 直接控制适用于结构极简单、速度极慢的 I/O设备,CPU直接控制外设处于某种状态而无须 联络信号。 同步方式采用统一的时标进行联络,适用于 CPU与I/O速度差不大,近距离传送的场合。 异步方式采用应答机制进行联络,适用于 CPU与I/O速度差较大、远距离传送的场合。
启动
I/O准备 就绪
DMA请求
数据传送: 响应, 让出一个 MM周期
现行程序
准备下 个数据
现行程序 A
DMA请求 总线请求
就绪
D
B
CPU
DMAC
C
I/O
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
5.1 指令系统的发展
计算机系统主要由硬件(hardware)和软件 (software)两部分组成。所谓硬件就是由中央 处理机(CPU)、存储器以及外部设备等组成的 实际装置。软件则是为便于用户使用计算机而 编写的各种程序,最终转换成一系列机器指令 后在计算机上执行。 计算机的性能与它所设置的指令系统有很大的 关系,而指令系统的设置又与机器的硬件结构 密切相关。通常性能较好的计算机都设置有功 能齐全、通用性强、指令丰富的指令系统,但 这需要复杂的硬件结构来支持。
由此可见,操作码扩展技术是一种重要的指令 优化技术,它可以缩短指令的平均长度,减少 程序的总位数以及增加指令字所能表示的操作 信息。当然,扩展操作码比固定操作码译码复 杂,使控制器的设计难度增大,需更多的硬件 来支持。
5.2.3 指令长度与字长的关系 字长是指计算机能直接处理的二进制数据的位 数,它与计算机的功能和用途有很大的关系, 是计算机的一个重要技术指标。首先,字长决 定了计算机的运算精度,字长越长,计算机的 运算精度越高,因此,高性能的计算机字长较 长,而性能较差的计算机字长相对要短一些。 其次,地址码长度决定了指令直接寻址能力, 若为n位,则给出的n位直接地址寻址2n字节。 扩大寻址能力的方法,一是通过增加机器字长 来增加地址码的长度;二是采用地址扩展技术, 把存储空间分成若干个段,用基地址加位移量
图5.1 指令格式
一种可供扩展的方法和步骤如下: (1) 15条三地址指令的操作码由4位基本操作 码从0000~1110给出,剩下一个码点1111用 于把操作码扩展到A1,即4位扩展到8位; (2) 15条二地址指令的操作码由8位操作码从 11110000~11111110给出,剩下一个码点 11111111用于把操作码扩展到A2,即从8位扩 展到12位; (3) 15条一地址指令的操作码由12位操作码从 111111110000~111111111110给出,剩下一 个码点111111111111用于把操作码扩展到A3, 即从12位扩展到16位;
然而,指令结构太复杂也会带来一些不利的因 素,如设计周期长,正确性难以保证且不易维 护等;此外,实验证明,在如此庞大的指令系 统中,只有诸如算术、逻辑运算、数据传送、 转移和子程序调用等几十条最基本的指令才是 经常使用的,而需要大量硬件支持的大多数较 复杂的指令却利用率很低,造成硬件资源的极 大浪费。为了解决这个问题,在70年代末人们 提出了便于VLSI实现的精简指令系统计算机, 简称RISC(见5.7节)。
显然,操作码长度不固定将增加指令译码和分 析的难度,使控制器的设计复杂化,因此对操 作码的编码至关重要。通常是在指令字中用一 个固定长度的字段来表示基本操作码,而对于 一部分不需要某个地址码的指令,把它们的操 作码扩充到该地址字段,这样既能充分地利用 指令字的各个字段,又能在不增加指令长度的 情况下扩展操作码的长度,使它能表示更多的 指令。例如,设某机器的指令长度为16位,包 括4位基本操作码字段和三个4位地址字段,其 格式如图5.1所示。
EA-操作数地址,A-指令中的地址码 Data-操 作数 R-寄存器 (R)-寄存器的内容 1. 直接寻址 EA=A 指令的地址码部分给出操作数在存储器中的地 址,图5.4(a)仅给出一个操作数地址;该指令 的寻址方式由操作码表示。图5.4(b)增加了一 个寻址方式字段M。 2. 寄存器寻址 Data=(R) 计算机的中央处理器一般设置有一定数量的通 用寄存器,用以存放操作数、操作数的地址或
随着集成电路的发展和计算机应用领域的不断 扩大,计算机的软件价格相对不断提高。为了 继承已有的软件,减少软件的开发费用,人们 迫切希望各机器上的软件能够兼容,以便在旧 机器上编制的各种软件也能在新的、性能更好 的机器上正确运行,因此,在60年代出现了系 列(series)计算机。
所谓系列计算机是指基本指令系统相同,基本 体系结构相同的一系列计算机,如IBM 370系 列,IBMPC (XT/AT/286/386/486/Pentium)微 机系列等。一个系列往往有多种型号,各型号 的基本结构相同,但由于推出的时间不同,所 采用的器件也不同,因此性能上可以有很大差 异。通常是新推出的机种在性能和价格方面要 比早推出的机种优越。系列机能解决软件兼容 问题的必要条件是该系列的各机种有共同的指 令集,而且新推出的机种的指令系统一定包含 旧机种的所有指令,因此在旧机种上运行的各 种软件可以不加任何修改地在新机种上运行。
1. 零地址指令 格式: OPCODE OPCODE——操作码 指令中只有操作码,而没有操作数或没有操作 数地址。这种指令有两种可能: (1) 无需任何操作数。如空操作指令,停机指 令等。 (2) 所需的操作数是默认的。
2. 一地址指令 格式: OPCODE A OPCODE——操作码 A——操作数的存储器地址或寄存器名 指令中只给出一个地址,该地址既是操作数的 地址,又是操作结果的存储地址。 在某些字长较短的微型机中,大多数算术逻辑 运算指令也采用这种格式,第一个源操作数由 地址码A给出,第二个源操作数在一个默认的 寄存器中,运算结果仍送回到这个寄存器中, 替换了原寄存器内容,通常把这个寄存器称为
5.2 指令格式
5.2.1 指令格式 计算机是通过执行指令来处理各种数据的。为 了指出数据的来源、操作结果的去向及所执行 的操作,一条指令必须包含下列信息: (1) 操作码,具体说明了操作的性质及功能。 一台计算机可能有几十条至几百条指令,每一 条指令都有一个相应的操作码,计算机通过识 别该操作码来完成不同操作。 (2) 操作数的地址。CPU通过该地址就可以取 得所需的操作数。 (3) 操作结果的存储地址。把对操作数的处理 所产生的结果保存在该地址中,以便再次使用。
第5章 指令系统
5.1 指令系统的发展 5.2 指令格式 5.3 数据表示(略) 5.4 寻址方式(编址方式) 5.5 指令类型
5.6 指令系统的兼容性 5.7 精简指令系统计算机(RISC)和复杂 指令系统计算机(CISC) 5.8 指令系统举例(略) 5.9 机器语言、汇编语言和高级语言(略) 习题
指令的长度与机器的字长没有固定的关系,它 既可以小于或等于机器的字长,也可以大于机 器的字长。前者称为短格式指令,后者称为长 格式指令,一条指令存放在地址连续的存储单 元中。在同一台计算机中可能既有短格式指令 又有长格式指令,但通常是把最常用的指令 (如算术逻辑运算指令、数据传送指令)设计成 短格式指令,以便节省存储空间和提高指令的 执行速度。
(4) 下一条指令的地址。一般来说,当程序顺 序执行时,下条指令的地址由程序计数器(PC) 指出,仅当改变程序的运行顺序(如转移、调 用子程序)时,下条指令的地址才由指令给出。 从上述分析可知,一条指令实际上包括两种信 息即操作码和地址码。操作码(operation code) 用来表示该指令所要完成的操作(如加、减、 乘、除、数据传送等),其长度取决于指令系 统中的指令条数;地址码用来描述该指令的操 作对象,或者直接给出操作数或者指出操作数 的存储器地址或寄存器地址(即寄存器名)。根 据地址码部分所给出地址的个数,指令格式可
(4) 16条零地址指令的操作码由16位操作码从 1111111111110000~1111111111111111给 出。 除了这种方法以外,还有其他多种扩展方法。 在可变长度的指令系统的设计中,到底使用何 种扩展方法有一个重要的原则,就是使用频度 (即指令在程序中的出现概率)高的指令应分配 短的操作码;使用频度低的指令相应地分配较 长的操作码。这样不仅可以有效地缩短操作码 在程序中的平均长度,节省存储器空间,而且 缩短了经常使用的指令的译码时间,因而可以 提高程序的运行速度。
计算机发展至今,其硬件结构随着超大规模集 成电路(VLSI)技术的飞速发展而越来越复杂化, 所支持的指令系统也趋于多用途、强功能化。 指令系统的改进是围绕着缩小指令与高级语言 的语义差异以及有利于操作系统的优化而进行 的。为了便于操作系统的实现和优化,还设置 有控制系统状态的特权指令、管理多道程序和 多处理机系统的专用指令等。
5.2.2 指令操作码的扩展技术 指令操作码的长度决定了指令系统中完成不同 操作的指令条数。若某机器的操作码长度为K 位,则它最多只能有2k条不同指令。指令操作 码通常有两种编码格式,一种是固定格式,即 操作码的长度固定,且集中放在指令字的一个 字段中。这种格式对于简化硬件设计,减少指 令译码时间非常有利,在字长较长的大、中型 机和超级小型机以及RISC上广泛采用。另一种 是可变格式,即操作码的长度可变,且分散地 放在指令字的不同字段中。这种格式能够有效 地压缩程序中操作码的平均长度,在字长较短
5. 多地址指令 在某些性能较好的大、中型机甚至高档小型机 中,往往设置一些功能很强的,用于处理成批 数据的指令,如字符串处理指令,向量、矩阵 运算指令等。为了描述一批数据,指令中需要 多个地址来指出数据存放的首地址、长度和下 标等信息。 以上所述的几种指令格式只是一般情况,并非 所有的计算机都具有。
在20世纪50年代和60年代早期,由于计算机 采用电子管或晶体管,其体积庞大,价格昂贵, 因此,大多数计算机的硬件结构比较简单。所 支持的指令系统一般只有定点加减、逻辑运算、 数据传送和转移等十几至几十条最基本的指令, 而且寻址方式简单。到60年代中、后期,随着 集成电路的出现,计算机的价格不断下降,硬 件功能不断增强,指令系统也越来越丰富。除 了具有以上最基本的指令以外,还设置了乘除 法运算指令、浮点运算指令、十进制运算指令 以及字符串处理指令等,指令数多达一、二百 条,寻址方式也趋于多样化。
图5.4 直接寻址方式
3. 基址寻址 EA=B+A B为基址寄存器 内容 A为地址码存放的位移量 在计算机中设置一个专用的基址寄存器,或由 指令指定一个通用寄存器为基址寄存器。操作 数的地址由基址寄存器的内容和指令的地址码 A相加得到,如图5.5所示。
图5.5 基址寻址过程
当存储器的容量较大,由指令的地址码部分直 接给出的地址不能直接访问到存储器的所有单 元时,通常把整个存储空间分成若干个段,段 的首地址存放于基址寄存器或段寄存器中,段 内位移量由指令给出。存储器的实际地址就等 于基址寄存器的内容(即段首地址)与段内位移 量之和,这样通过修改基址寄存器的内容就可 以访问存储器的任一单元。 综上所述,基址寻址主要用以解决程序在存储 器中的定位和扩大寻址空间等问题。通常基址 寄存器中的值只能由系统程序设定,由特权指 令执行,而不能被一般用户指令所修改,因此