凑数
凑数
凑数
凑数
【2010统考真题】下列寄存器中,汇编语言程序员可见的是( )
A.存储器地址寄存器( MAR)
B.程序计数器(PC)
C.存储器数据寄存器(MDR)
D.指令寄存器(IR)
解析
1.B
汇编语言程序员可见的是 $\color{green}{\text{程序计数器}}$ (PC),即汇编语言程序员通过汇编程序可以对某个寄存器进行访问。汇编程序员可以通过指定待执行指令的地址来设置PC的值,如转移指令、子程序调用指令等。而 IR、MAR、MDR是CPU的内部工作寄存器,对程序员不可见。
通用寄存器是()。
A.可存放指令的寄存器
B.可存放程序状态字的寄存器
C.本身具有计数逻辑与移位逻辑的寄存器
D.可编程指定多种功能的寄存器
解析
3.D
存放指令的寄存器是指令寄存器,因此选项A 错。存放程序状态字的寄存器是程序状态字寄存器,因此选项B错。通用寄存器本身并不一定具有计数和移位逻辑功能,因此选项C错。
CPU中保存当前正在执行指令的寄存器是()。
A.指令寄存器
B.指令译码器
C.数据寄存器
D.地址寄存器
解析
4.A
指令寄存器用于存放当前正在执行的指令。
- 时隔三个月终于弄清楚这个概念,请翻看,结合第四章的习题理解指令寄存器和PC(程序计数器)的作用
在CPU 中,跟踪后继指令地址的寄存器是()。
A.指令寄存器
B.程序计数器
C.地址寄存器
D.状态寄存器
解析
5.B
程序计数器用于存放下一条指令在主存中的地址,具有自增功能。
- 时隔三个月终于弄清楚这个概念,请翻看,结合第四章的习题理解指令寄存器和PC(程序计数器)的作用
条件转移指令执行时所依据的条件来自()。
A.指令寄存器
B.标志寄存器
C.程序计数器
D、地址寄存器
解析
6.B
指令寄存器用于存放当前正在执行的指令﹔程序计数器用于存放下一条指令的地址;地址寄存器用于暂存指令或数据的地址;程序状态字寄存器用于保存系统的运行状态。条件转移指令执行时,需对 $\color{green}{\text{标志寄存器}}$ 的内容进行测试,判断是否满足转移条件。
在所谓的n位CPU 中,n是指()。
A.地址总线线数
B.数据总线线数
C.控制总线线数
D. IO线数
解析
7.B
数据总线的位数与处理器的位数相同,它表示CPU一次能处理的数据的位数,即CPU 的位数。
在CPU的寄存器中,()对用户是透明的。
A.程序计数器
B.状态寄存器
C.指令寄存器
D.通用寄存器
解析
8.C
指令寄存器中存放当前执行的指令,不需要用户的任何干预,所以对用户是透明的。其他三种寄存器的内容可由程序员指定。
下面有关程序计数器( PC)的叙述中,错误的是()。
A. PC中总是存放指令地址
B. PC的值由CPU在执行指令过程中进行修改
C.转移指令时,PC 的值总是修改为转移指令的目标地址
D. PC的位数一般和存储器地址寄存器(MAR)的位数一样
解析
- C
PC中存放下一条要执行的指令的地址,因此选项A正确。PC的值会根据CPU在执行指令的过程中修改(确切地说是取指周期末),或自增,或转移到程序的某处,因此选项B正确。转移指令时, $\color{green}{\text{需要判别转移是否成功}}$ ,若成功则PC修改为转移指令的目标地址,否则下一条指令的地址仍然为PC自增后的地址,因此选项C错误。PC 与MAR的位数一样,因此选项D正确。
在一条无条件跳转指令的指令周期内,PC的值被修改()次。
A. 1
B.2
C.3
D.无法确定
解析
11.B
取指周期结束后,PC值自动加1;执行周期中,PC值修改为要跳转到的地址,因此在这个指令周期内,PC值被修改两次。
指令寄存器的位数取决于( )。
A.存储器的容量
B.机器字长
C.指令字长
D.存储字长
解析
13.C
$\color{red}{\text{指令寄存器}}$ 中保存当前正在执行的指令,所以其位数取决于 $\color{green}{\text{指令字长}}$ 。
CPU中通用寄存器的位数取决于()。
A.存储器的容量
B.指令的长度
C.机器字长
D、都不对
解析
14.C
$\color{red}{\text{通用寄存器}}$ 用于存放操作数和各种地址信息等,其位数与 $\color{green}{\text{机器字长}}$ 相等,因此便于操作控制。
CPU中的通用寄存器,()。
A.只能存放数据,不能存放地址
B.可以存放数据和地址
C.既不能存放数据,又不能存放地址
D.可以存放数据和地址,还可以替代指令寄存器
解析
15.B
通用寄存器供用户自由编程,可以存放数据和地址。而 $\color{red}{\text{指令寄存器}}$ 是专门用于存放指令的专用寄存器, $\color{green}{\text{不能由通用寄存器代替}}$ 。
控制器的全部功能是()。
A.产生时序信号
B.从主存中取出指令并完成指令操作码译码
C.从主存中取出指令、分析指令并产生有关的操作控制信号
D.都不对
解析
- C
控制器的功能是取指令、分析指令和执行指令,并产生有关操作控制信号。
指令译码是指对()进行译码。
A.整条指令
B.指令的操作码字段
C.指令的地址码字段
D.指令的地址
解析
19.B
指令包括操作码字段和地址码字段,但 $\color{green}{\text{指令译码器}}$ 仅对 $\color{green}{\text{操作码}}$ 字段进行译码,借以确定指令的操作功能。
- Q:对地址码译码的元器件是啥
- Q:存储器(见下题)
CPU中不包括()。
A.存储器地址寄存器
B.指令寄存器
C.地址译码器
D.程序计数器
解析
- C
$\color{red}{\text{地址译码器}}$ 是 $\color{green}{\text{主存等存储器}}$ 的组成部分,其作用是根据输入的地址码唯一选定一个存储单元,它不是CPU的组成部分。而MAR、IR、PC都是CPU的组成部分。
各种组件的概念
图片详情
解析
图片详情
- 地址译码器位于存储器
- 程序状态字寄存器对用户不透明
间址周期结束时,CPU内寄存器MDR中的内容为()。
A.指令
B.操作数地址
C.操作数
D.无法确定
解析
22.B
间址周期的作用是取操作数的有效地址,因此间址周期结束后,MDR中的内容为操作数地址。
【2016统考真题】某计算机的主存空间为4GB,字长为32位,按字节编址,采用32位字长指令字格式。若指令按字边界对齐存放,则程序计数器(PC)和指令寄存器(IR)的位数至少分别是()。
A. 30、30
B.30、32
C. 32、30
D.32、32
解析
23.B
程序计数器(PC)给出下一条指令字的访存地址(指令在内存中的地址),它取决于存储器的字数(4GB/32位= $2^{30}$ ),因此程序计数器(PC)的位数至少是30位;指令寄存器(IR)用于接收取得的指令,它取决于指令字长(32位),因此指令寄存器(R)的位数至少为32位。
2018年真题,减法指令与标志寄存器
图片详情
解析
CPU 中有哪些专用寄存器?
CPU中的专用寄存器有程序计数器(PC)、指令寄存器(IR)、存储器数据寄存器(MDR)、存储器地址寄存器(MAR)和程序状态字寄存器(PSW)。
解析
图片详情
【2009统考真题】冯·诺依曼计算机中指令和数据均以二进制形式存放在存储器中,CPU 区分它们的依据是()。
A.指令操作码的译码结果
B.指令和数据的寻址方式
C.指令周期的不同阶段
D.指令和数据所在的存储单元
解析
1.C
冯·诺依曼计算机根据 $\color{green}{\text{指令周期}}$ 的不同阶段来区分从存储器取出的是指令还是数据,取指周期取出的是指令,执行周期取出的是数据。
【2011统考真题】假定不采用Cache 和指令预取技术,且机器处于“开中断”状态,则在下列有关指令执行的叙述中,错误的是().
A.每个指令周期中CPU都至少访问内存一次
B.每个指令周期一定大于等于一个CPU时钟周期
C.空操作指令的指令周期中任何寄存器的内容都不会被改变
D.当前程序在每条指令执行结束时都可能被外部中断打断
解析
2.C
由于不采用指令预取技术,每个指令周期都需要取指令,而不采用Cache技术,因此每次取指令都至少要访问内存一次(当指令字长与存储字长相等且按边界对齐时),A 正确。时钟周期是CPU的最小时间单位,每个指令周期一定大于等于一个CPU时钟周期,B正确。即使是空操作指令,在取指操作后, $\color{green}{\text{PC 也会自动加1}}$ ,C错误。由于机器处于“开中断”状态,在每条指令执行结束时都可能被外部中断打断。
计算机工作的最小时间周期是()。
A.时钟周期
B.指令周期
c. CPU 周期
D.工作脉冲
解析
A
$\color{green}{\text{时钟周期}}$ 是计算机操作的最小单位时间,由计算机的主频确定,是主频的倒数。工作脉冲是控制器的最小时间单位,起定时触发作用,一个时钟周期有一个工作脉冲。指令周期则可由多个CPU 周期组成。CPU 周期,即机器周期,包含若干时钟周期。
采用DMA 方式传递数据时,每传送一个数据就要占用()。
A.指令周期
B.时钟周期
C.机器周期
D.存取周期
解析
$\color{green}{\text{D}}$
CPU 从主存中每取出并执行一条指令所需的全部时间称为指令周期;时钟周期通常称为节拍或T周期,它是CPU 操作的最基本单位;CPU周期也称机器周期,一个机器周期包含若干时钟周期;存取周期是指存储器进行两次独立的存储器操作(连续两次读或写操作)所需的最小间隔时间。
指令()从主存中读出。
A.总是根据程序计数器
B.有时根据程序计数器,有时根据转移指令
C.根据地址寄存器
D.有时根据程序计数器,有时根据地址寄存器
解析
$\color{green}{\text{A}}$
程序计数器用于指出下一条指令在主存中的存放地址,执行转移指令后也需将目标指令地址传到程序计数器中。CPU正是根据程序计数器中的内容去主存取指令的。
指令周期由一个到几个机器周期组成,第一个机器周期是()。
A.从主存中取出指令字
B.从主存中取出指令操作码
C.从主存中取出指令地址码
D.从主存中取出指令的地址
解析
$\color{green}{\text{A}}$
指令周期的第一个机器周期是取指周期,即从主存中取出指令字。
由于CPU内部操作的速度较快,而CPU访问一次存储器的时间较长,因此机器周期通常由()来确定。
A.指令周期
B.存取周期
C.间址周期
D.中断周期
解析
$\color{green}{\text{B}}$
存储器进行一次读或写操作所需的时间称为存储器的访问时间(或读/写时间),
而连续启动两次独立的读或写操作(如连续的两次读操作)所需的最短时间称为存取周期。机器周期通常由存取周期确定。
以下有关机器周期的叙述中,错误的是().
A.通常把通过一次总线事务访问一次主存或IO的时间定为一个机器周期
B.一个指令周期通常包含多个机器周期
C. 不同的指令周期所包含的机器周期数可能不同
D.每个指令周期都包含一个中断响应机器周期
解析
$\color{green}{\text{D}}$
在指令的执行周期完成后,处理器会判断是否出现中断请求, $\color{green}{\text{只有在出现中断请求时才会进入中断周期}}$ 。
下列说法中,合理的是()。
A.执行各条指令的机器周期数相同,各机器周期的长度均匀
B.执行各条指令的机器周期数相同,各机器周期的长度可变
C.执行各条指令的机器周期数可变,各机器周期的长度均匀
D.执行各条指令的机器周期数可变,各机器周期的长度可变
解析
13.D
机器周期是指令执行中每步操作(如取指令、存储器读、存储器写等)所需要的时间,每个机器周期内的节拍数可以不等,因此其长度可变。因为各种指令的功能不同,所以各指令执行时所需的机器周期数是可变的。
以下关于间址周期的描述中,正确的是()。
A.所有指令的间址操作都是相同的
B.凡是存储器间接寻址的指令,它们的操作都是相同的
C.对于存储器间接寻址和寄存器间接寻址,它们的操作是不同的D.都不对
解析
C
指令的间址分为 $\color{green}{\text{一次间址}}$ 、 $\color{green}{\text{两次间址}}$ 和多次间址,因此它们的操作是不同的,所以选项A、B错误。存储器间址通过形式地址访存,寄存器间址通过寄存器内容访存,因此选项C正确。
()可区分存储单元中存放的是指令还是数据。
A.控制器
B.运算器
C.存储器
D.数据通路
解析
A
存储器本身无法区分存储单元中存放的是指令还是数据。而在控制器的控制下,计算机在不同的阶段对存储器进行读/写操作时,取出的代码也就有不同的用处。而在取指阶段读出的二进制代码为指令,在执行阶段读出的二进制代码则可能为数据;运算器和数据通路显然不能区分。
指令字长、机器字长、机器周期、取指周期
图片详情
解析
图片详情
- $\color{green}{\text{指令字长一般是存储字长的整数倍,不都是一样长}}$
指令和数据都存于存储器中,CPU如何区分它们?
解析
通常完成一条指令可分为取指阶段和执行阶段。在取指阶段通过访问存储器可将指令取出;在执行阶段通过访问存储器可以将操作数取出。因此,虽然指令和数据都以二进制代码形式存放在存储器中,但CPU可根据指令周期的不同阶段判断从存储器取出的二进制代码是指令还是数据。
中断周期的前后各是CPU的什么工作周期?
解析
中断周期之前是执行周期,之后是下一条指令的取指周期。
下列不属于CPU 数据通路结构的是()。
A.单总线结构
B.多总线结构
C.部件内总线结构
D.专用数据通路结构
解析
对CPU而言,数据通路的基本结构分为总线结构和专用数据通路结构,其中总线结构又分为单总线结构、双总线结构、多总线结构。
在单总线的CPU中,()。
A. ALU的两个输入端及输出端都可与总线相连
B. ALU的两个输入端可与总线相连,但输出端需通过暂存器与总线相连
C. ALU的一个输入端可与总线相连,其输出端也可与总线相连
D. ALU只能有一个输入端可与总线相连,另一输入端需通过暂存器与总线相连
解析
D
由于ALU是一个组合逻辑电路,因此其运算过程中必须保持两个输入端的内容不变。又由于CPU内部采用单总线结构,因此为了得到两个不同的操作数,ALU的一个输入端与总线相连,另一个输入端需通过一个寄存器与总线相连。此外,ALU的输出端也不能直接与内部总线相连,否则其输出又会通过总线反馈到输入端,影响运算结果,因此输出端需通过一个暂存器(用来暂存结果的寄存器)与总线相连。
采用CPU内部总线的数据通路与不采用CPU内部总线的数据通路相比,().
A.前者性能较高
B.后者的数据冲突问题较严重
C.前者的硬件量大,实现难度高
D.以上说法都不对
解析
3.D
采用CPU内部总线方式的数据通路的特点:结构简单,实现容易,性能较低,存在较多的冲突现象;不采用CPU内部总线方式的数据通路的特点:结构复杂,硬件量大,不易实现,性能高,基本不存在数据冲突现象。
- 与内部总线相区别与联系:专用数据通路方式
CPU的读/写控制信号的作用是()。
A.决定数据总线上的数据流方向
B.控制存储器操作的读/写类型
C.控制流入、流出存储器信息的方向
D、以上都是
解析
4.D
读/写控制信号线决定了是从存储器读还是向存储器写,显然A、B、C选项都正确。
【2016 统考真题】单周期处理器中所有指令的指令周期为一个时钟周期。下列关于单周期处理器的叙述中,错误的是()。
A.可以采用单总线结构数据通路
B.处理器时钟频率较低
C.在指令执行过程中控制信号不变
D.每条指令的CPI为1
解析
5.A
单周期处理器是指所有指令的指令周期为一个时钟周期的处理器,D正确。 $\color{green}{\text{因为每条指令的CPI为1,要考虑比较慢的指令,所以处理器的时钟频率较低}}$ ,B正确。 $\color{green}{\text{单总线数据通路将所有寄存器的输入输出端都连接在一条公共通路上,一个时钟内只允许一次操作,无法完成指令的所有操作}}$ , $\color{red}{\text{A错误}}$ 。控制信号是CU根据指令操作码发出的信号,对于单周期处理器来说,每条指令的执行只有一个时钟周期,而在一个时钟周期内控制信号并不会变化;若是多周期处理器,则指令的执行需要多个时钟周期,在每个时钟周期控制器会发出不同信号,C正确。
(R0)+ ((R1)) $\to$ (R1)的数据通路
图片详情
解析
题干已给出取值和译码阶段每个节拍的功能和有效控制信号,我们应以弄清楚取指阶段中数据通路的信息流动为突破口,读懂每个节拍的功能和有效控制信号,然后应用到解题思路中,包括划分执行步骤、确定完成的功能、需要的控制信号。
先分析题干中提供的示例(本部分解题时不做要求);
取指令的功能是根据PC的内容所指的主存地址,取出指令代码,经过MDR,最终送至IR。这部分和后面的指令执行阶段的取操作数、存运算结果的方法是相通的。
图片详情
- 要像题目中一样标出C几
- 只有要送往内存的数据才需要放到MDR中
- R0,R1可以直接送到ALU中进行运算
ADD R1,(R2)的微操作序列
图片详情
解析
答案
一份错误答案
- $\color{red}{\text{注意}}$ :没有说明的话默认目的地址是前者
- $\color{red}{\text{注意}}$ :M $\to$ MDR 不需要加大括号
ADD B,C 即(B)+(C) $\to$ B 和 SUB ACC,H 即 (ACC)-(H) $\to$ ACC的控制信号
图片详情
解析
图片详情
一份错误答案
- $\mho$(图中:总线和内部总线的区别是什么)
- 为什么第一条指令的第四行B不用被()包着,(答案错了吧)
- 没有表示出主存的结构的话,取指的主存到IR直接连写成M(MAR) $\to$ MDR $\to$ IR
ADD (R0),R1
图片详情
解析
图片详情
我的答案
- 注意写进内存时候的微控制信号
简化的CPU结构
图片详情
解析
- 注意存到ACC前需要经过ALU
图片详情
我的答案
连接各部件,流程图
图片详情
解析
图片详情
- $\mho$(什么叫先取地址之后加1再送回到该寄存器)
信息流程
图片详情
解析
图片详情
- 思路相近,不做了
2015年真题
图片详情
解析
图片详情
- 注意是ALUop的位数,不是数据的位数
- MUX的的作用是执行(PC)+ 4
取指令操作()
A.受到上一条指令的操作码控制
B.受到当前指令的操作码控制
C.受到下一条指令的操作码控制
D、是控制器固有的功能,不需要在操作码控制下进行
解析
D
取指令阶段完成的任务是将现行指令从主存中取出并送至指令寄存器,这个操作是公共的操作,是每条指令都要进行的,与具体的指令无关,所以不需要操作码的控制。
在组合逻辑控制器中,微操作控制信号的形成主要与()信号有关。
A.指令操作码和地址码
B.指令译码信号和时钟
C.操作码和条件码
D.状态信息和条件
解析
3.B
CU 的输入信号来源如下:①经指令译码器 $\color{green}{\text{译码}}$ 产生的指令信息;②时序系统产生的机器周期信号和 $\color{green}{\text{节拍}}$ 信号;③来自执行单元的反馈信息即 $\color{green}{\text{标志}}$ 。前两者是主要因素。
在微程序控制器中,形成微程序入口地址的是()。
A.机器指令的地址码字段
B.微指令的微地址码字段
C.机器指令的操作码字段
D..微指令的微操作码字段
解析
C
执行公用的取指微程序从主存中取出机器指令后,由机器指令的 $\color{green}{\text{操作码}}$ 字段指出各个微程序的入口地址(初始微地址)。
微程序控制存储器属于()的一部分。
A.主存
B.外存
C. CPU
D、缓存
解析
7.C
微程序控制存储器用来存放微程序,是微程序控制器的核心部件,属于CPU的一部分,而不属于主存。
硬布线控制器与微程序控制器相比,( )。
A.硬布线控制器的时序系统比较简单
B.微程序控制器的时序系统比较简单
C.两者的时序系统复杂程度相同
D.可能是硬布线控制器的时序系统比较简单,也可能是微程序控制器的时序系统比较简单
解析
9.B
硬布线控制器需要结合各微操作的节拍安排,综合分析,写出逻辑表达式,再设计成逻辑电路图,因此时序系统比较复杂;而微程序只需按照节拍的安排,顺序执行微指令,因此比较简单。
在微程序控制器中,控制部件向执行部件发出的某个控制信号称为()。
A.微程序
B.微指令
C.微操作
D.微命令
解析
10.D
在微程序控制器中,控制部件向执行部件发出的控制信号称为 $\color{red}{\text{微命令}}$ ,微命令执行的操作称为 $\color{red}{\text{微操作}}$ 。 $\color{red}{\text{微指令}}$ 则是若干微命令的集合,若干微指令的有序集合称为 $\color{red}{\text{微程序}}$ 。
在微程序控制器中,机器指令与微指令的关系是()
A.每条机器指令由一条微指令来执行
B.每条机器指令由若干微指令组成的微程序来解释执行
C.若干机器指令组成的程序可由一个微程序来执行
D、每条机器指令由若干微程序执行
解析
11.B
在一个CPU周期中,一组实现一定功能的微命令的组合构成一条微指令,有序的微指令序列构成一段微程序,微程序的作用是实现一条对应的机器指令。
【2012统考真题】某计算机的控制器采用微程序控制方式,微指令中的操作控制字段采用字段直接编码法,共有33个微命令,构成5个互斥类,分别包含7、3、12、5和6个微命令,则操作控制字段至少有()。
A.5位
B.6位
C.15位
D.33位
解析
14.C
字段直接编码法将微命令字段分成若干小字段,互斥性微命令组合在同一字段中,相容性微命令分在不同字段中,每个字段还要留出一个状态,表示本字段不发出任何微命令。5个互斥类,分别包含7、3、12、5和6个微命令,需要3、2、4、3和3位,共15位。
【2014统考真题】某计算机采用微程序控制器,共有32条指令,公共的取指令微程序包含⒉条微指令,各指令对应的微程序平均由4条微指令组成,采用断定法(下地址字段法)确定下条微指令地址,则微指令中下地址字段的位数至少是()。
A. 5
B. 6
C. 8
D. 9
解析
15.C
计算机共有32条指令,各个指令对应的微程序平均为4条,则指令对应的微指令为32 $\times$ 4 = 128条,而公共微指令还2条,整个系统中微指令的条数共为 128 + 2= 130条,所以需要 $\lceil log_2 130 \rceil$ =8位才能寻址到130条微指令,答案选C。
某带中断的计算机指令系统共有101种操作,采用微程序控制方式时,控制存储器中相应最少有()个微程序。
解析
16.C
若指令系统中具有n种机器指令,则控制存储器中的微程序数至少是n+2个(增加的1个为公共的取指微程序,另1个为对应中断周期的微程序)。因此,控制存储器中的微程序数可以为n+2个。
- 题目明确说了中断,那么还需要加一个中断的微程序,而不是只多一个取值微程序
“效率” 与编码
图片详情
解析
图片详情
- 如果是执行效率的话,直接编码的效率最高
微PC能不能取代PC
图片详情
解析
图片详情
通常情况下,一个微程序的周期对应一个()。
A.指令周期
B.主频周期
C.机器周期
D.工作周期
解析
- A
一条微指令包含一组实现一定操作功能的微命令。许多条微指令组成的序列构成微程序,微程序则完成对应指令的解释执行。在采用微程序控制器的CPU中,一条指令对应一个微程序,一个微程序由许多微指令构成,一条微指令会发出很多不同的微命令。
【2017统考真题】下列关于主存储器(MM)和控制存储器(CS)的叙述,错误的是()。
A. MM在CPU外,CS在CPU内
B. MM按地址访问,CS按内容访问
C. MM存储指令和数据,CS存储微指令
D. MM 用 RAM和ROM实现,CS 用ROM实现
解析
21.B
主存储器就是我们通常所说的主存,它在CPU外,用于存储指令和数据,由RAM和ROM实现。控制存储器用来存放实现指令系统的所有微指令,是一种只读型存储器,机器运行时只读不写,在CPU的控制器内。CS按照微指令的地址访问,所以B错误。
控制部件
图片详情
解析
22.B
CPU控制器主要由三个部件组成:指令寄存器、程序计数器和操作控制器。状态条件寄存器通常属于运算器的部件,保存由算术指令和逻辑指令运行或测试的结果建立的各种条件码内容,如运算结果进位标志(C)、运算结果溢出标志(V)等。
执行部件
图片详情
解析
23.B
一台数字计算机基本上可以划分为两大部分:控制部件和执行部件。控制器就是控制部件,而运算器、存储器、外围设备相对控制器来说就是执行部件。
假设某机器有80条指令,平均每条指令由4条微指令组成,其中有一条取指微指令是所有指令公用的。已知微指令长度为32位,请估算控制存储器CM容量。
解析
总的微指令条数=(4-1)×80+1=241条,每条微指令占一个控制存储器单元,控制存储器CM的容量为2的n次幂,而241刚好小于256,所以CM的容量=256×32位=1KB。
- CM是2的整数倍
- 算总指令的时候,是在平均微指令条数上减1
某微程序控制器中,采用水平型直接控制(编码)方式的微指令格式,后续微指令地址由微指令的下地址字段给出。已知机器共有28个微命令,6个互斥的可判定的外部条件,控制存储器的容量为512×40位。试设计其微指令的格式,并说明理由。
解析
图片详情
- 注意是直接控制,不是求 $2^n$ 中的n
天勤例题
图片详情
解析
图片详情
看一下就好跟上一章类似
图片详情
解析
图片详情
【2009统考真题】某计算机的指令流水线由4个功能段组成,指令流经各功能段的时间(忽略各功能段之间的缓存时间)分别为90ns、80ns、70ns 和 60ns,则该计算机的CPU周期至少是( )。
A. 90ns
B. 80ns
C.70ns
D. 60ns
解析
A
时钟周期应以各功能段的最长执行时间为准,否则用时较长的流水段的功能将不能正确完成,因此应选90ns。
【2010统考真题】下列不会引起指令流水线阻塞的是()。
A.数据旁路
B.数据相关
C.条件转移
D.资源冲突
解析
2.A
采用流水线方式,相邻或相近的两条指令可能会因为存在某种关联,后一条指令不能按照原指定的时钟周期运行,从而使流水线断流。有三种相关可能引起指令流水线阻塞:①结构相关,又称资源相关;②数据相关;③控制相关,主要由转移指令引起。
数据旁路技术的主要思想是,直接将执行结果送到其他指令所需要的地方,使流水线不发生停顿,因此不会引起流水线阻塞。
下列关于超标量流水线的描述中,不正确的是()。
A.在一个时钟周期内一条流水线可执行一条以上的指令
B.一条指令分为多段指令由不同电路单元完成
C.超标量通过内置多条流水线来同时执行多个处理器,其实质是以空间换取时间
D.超标量流水线是指运算操作并行
解析
D
超标量流水线是指在一个时钟周期内一条流水线可执行一条以上的指令,因此A正确。一条指令分为多段指令,由不同电路单元完成,因此B正确。超标量通过内置多条流水线来同时执行多个处理器,其实质是以空间换取时间,因此C正确。
2017 统考真题:超标量流水线
图片详情
解析
图片详情
- $\mho$(什么是动态调度技术)
流水CPU是由一系列称为“段”的处理线路组成的。一个m段流水线稳定时的CPU的吞吐能力,与m个并行部件的CPU的吞吐能力相比,()。
A.具有同等水平的吞吐能力
B.不具备同等水平的吞吐能力
C.吞吐能力大于前者的吞吐能力
D.吞吐能力小于前者的吞吐能力
解析
A
吞吐能力是指单位时间内完成的指令数。 $m$ 段流水线在第 $m$ 个时钟周期后,每个时钟周期都可以完成一条指令;而 $m$ 个并行部件在 $m$ 个时钟周期后能完成全部的 $m$ 条指令,等价于平均每个时钟周期完成一条指令。因此两者的吞吐能力等同。
常规标量单流水线处理机
图片详情
解析
图片详情
图片详情
超标量流水线
图片详情
解析
超标量流水线
图片详情
题解的方法不够完美,看图可得2 $\Delta_t + \dfrac{20}{4} \Delta_t$
2016年,数据冒险
图片详情
解析
图片详情
【2017统考真题】下列关于指令流水线数据通路的叙述中,错误的是()。
A.包含生成控制信号的控制部件
B.包含算术逻辑运算部件(ALU)
C.包含通用寄存器组和取指部件
D. 由组合逻辑电路和时序逻辑电路组合而成
解析
A
五阶段流水线可分为取指F、译码/取数ID、执行EXC、存储器读MEM、写回 WriteBack。数字系统中,各个子系统通过数据总线连接形成的数据传送路径称为数据通路,包括程序计数器、算术逻辑运算部件、通用寄存器组、取指部件等,不包括 $\color{green}{\text{控制部件}}$ ,选A。
关于流水线技术的说法中,错误的是()。
A.超标量技术需要配置多个功能部件和指令译码电路等
B.与超标量技术和超流水线技术相比,超长指令字技术对优化编译器要求更高,而无其他硬件要求
C.流水线按序流动时,在RAW、WAR和WAW中,只可能出现RAW相关
D.超流水线技术相当于将流水线再分段,从而提高每个周期内功能部件的使用次数
解析
17.B
要实现超标量技术,要求处理机中配置多个功能部件和指令译码电路,以及多个寄存器端口和总线,以便能实现同时执行多个操作,因此A正确;超长指令字技术对 $\color{green}{\text{Cache}}$ 的容量要求 $\color{green}{\text{更大}}$ ,因为需要执行的指令长度也许会很长,因此B错误;流水线按序流动,肯定不会出现先读后写(WAR)和写后写(WAW)相关(根据定义可知)。只可能出现没有等到上一条指令写入,当前指令就去读寄存器的错误(此时可采用旁路相关来解决),因此C正确。由超流水线技术的定义易知D正确。
2020真题,CPI为1的CPU
图片详情
解析
图片详情
现有四级流水线,分别完成取指令、指令译码并取数、运算、回写四步操作,假设完成各部操作的时间依次为100ns、100ns、80ns和50ns。试问:
1)流水线的操作周期应设计为多少?
2)试给出相邻两条指令发生数据相关的例子(假设在硬件上不采取措施),试分析第二条指令要推迟多少时间进行才不会出错。
3)若在硬件设计上加以改进,至少需要推迟多少时间?
解析
图片详情
- 加数据旁路技术
看一眼即可,注意时空图该怎么画
解析
图片详情
2012年真题
图片详情
解析
图片详情
移位和除2得到的结果并不一样
除法和移位的对比
- $\mho$(还是没看懂阻塞的原因)
- $\mho$(按序发射、按序完成的特点是啥)
2014年真题
图片详情
解析
图片详情
- 注意取完指之后,PC会加4
- 每隔一条都数据相关