(一) CPU的功能和基本结构

(二) 指令执行过程

(三) 数据通路的功能和基本结构

(四) 控制器的功能和工作原理

  1. 硬布线控制器
  2. 微程序控制器
    微程序、微指令和微命令;
    微指令的编码方式;
    微地址的形式方式。

(五) 指令流水线

  1. 指令流水线的基本概念
  2. 指令流水线的基本实现
  3. 超标量和动态流水线的基本概念

(六)多核处理器的基本概念

(2009)
18.某计算机的指令流水线由四个功能段组成,指令流经各功能段的时间(忽略各功能段之
间的 缓存时间)分别是 90ns、80ns、70ns 和 60ns,则该计算机的 CPU 时钟周期至少是
A.90ns B.80ns C.70ns D.60ns

答案:A
考点:指令流水线的阶段设置
为了充分发挥流水线的作用,CPU时钟周期应取各功能段时间的最大值,使得各功能段能在CPU的统一时钟控制下执行。这样,流水线的各功能段的执行时间才能相等,不会引起“堵塞”或“断流”现象,使得时间长的段成为整个流水线的“瓶颈”。

19.相对于微程序控制器,硬布线控制器的特点是
A.指令执行速度慢,指令功能的修改和扩展容易
B.指令执行速度慢,指令功能的修改和扩展难
C.指令执行速度快,指令功能的修改和扩展容易
D.指令执行速度快,指令功能的修改和扩展难

答案:D
考查硬布线控制器的特点。
硬布线控制:
由于控制器的速度取决于电路延迟,所以速度较快。
一旦设计完成,不可能通过其他的修改添加新功能。
微程序控制:
同硬布线控制器相比,具有规整性、灵活性、可维护性等一系列优点。
由于微程序控制器采用了存储程序原理,所以每条指令都要从控制存储器中取一次,
因此影响了速度。

(2010)

19.下列不会引起指令流水阻塞的是()
A.数据旁路
B.数据相关
C.条件转移
D.资源冲突

答案:A
考点:引起指令流水的原因。数据旁路的引入是为了解决指令流水阻塞的。

(2012)

18.某计算机的控制器采用微程序控制方式,微指令中的操作控制字段采用字段直接编码法,共有 33 个微命令,构成 5 个互斥类,分别包含 7、3、12、5 和 6 个微命令,则操作控制字段至少有
A. 5 位 B. 6 位 C.15 D. 33 位

答案:C
考点:互斥的概念,由于还需要考虑一种不发命令的情况,所以每组还要加上1,所以有8,4,13,6,7个微命令,取对数取整后得到最少操作控制字段为3+2+4+3+3=15

(2013)

某 CPU 主频为 1.03 GHz,采用 4 级指令流水线,每个流水段的执行需要 1 个时钟周期。假定 CPU 执行了 100 条指令,在其执行过程中,没有发生任何流水线阻塞,此时流水线的吞吐率为
A. 0.25×109条指令/秒 B. 0.97×109条指令/秒
C. 1.0×109条指令/秒 D. 1.03 ×109条指令/秒

答案:C
解析:采用 4 级流水执行 100 条指令,在执行过程中共用4 +(100-1) =103 个时钟周期(k+(n-1))。
CPU 主频是1.03 GHz,即每秒1.03 G个时钟周期
那么流水时间为103/1.03Ghz=110-7s
流水线的吞吐率=指令条数n/流水时间=100/1
10-7=1.0×109条指令/秒

(2014)

  1. 某计算机采用微程序控制器,共有32条指令,公共的取指令微程序包含2条微指令,各指令对应的微程序平均由4条微指令组成,采用断定法(下址字段法)确定下条微指令的地址,则微指令中下址字段的位数至少是:
    A 5 B 6 C 8 D 9

答案:C
解析:
这里的32条指令是机器指令,一条机器指令对应一条微程序,那么就要有32条微程序,微指令条数=2+32*4=130,取一下对数可以得到需要8位二进制数才能用来表示这些微指令。

(2016)
19、已知无转发机制的五段基本流水线(取指、译码/读寄存器、运算、访存、写回寄存器)中,下列指令序列存在数据冒险的指令对是()
I1: add R1,R2,R3; (R2)+(R3)->R1
I2: add R5,R2,R4; (R2)+(R4)->R5
I3: add R4,R5,R3; (R3)+(R5)->R4
I4: add R5,R2,R6; (R2)+(R6)->R5
A、I1和I2 B、I2和I3 C、I2和I4 D、I3和I4

答案:B
解析:流水线包括3种冒险:结构冒险 、数据冒险 、控制冒险。这里的数据冒险,通俗点说就是前一条指令产生的后果是下一条指令的输入
流水线冒险
结构冒险
由于硬件资源的竞争,操作无法同时执行的冒险情况。如内存访问会造成构造冒险。IF阶段和MEM 阶段都要涉及内存访问。由于访问内存使用的总线是共享资源,无法同时进行操作。
数据冒险
当即将执行的指令依赖于还未处理完成的数据时,会导致指令无法立刻开始执行,引发数据冒险。直通(Forwarding):原本回写运算结果是在WB 阶段,直通是指在运算结果确定的EX 阶段,将数据直接传递给下一个指令。
控制冒险
程序存在跳转语句,如果程序的实际执行路径是要跳转到其他的地址去执行,那么流水线中已经做的这些取指和译码工作就白做了,这就是流水线的控制冒险。此时,处理器需要排空流水线,跳转到新的地址处重新进入流水线。

(2016)
2.静态流水线是指( )
A.只有一种功能的流水线
B.功能不能改变的流水线
C.同时只能完成一种功能的多功能流水线
D.可同时执行多种功能的流水线

答案:C
一条流水线只能完成一种固定的功能,这种流水线称为单功能流水线。多功能流水线是指流水线的各段可以进行不同的连接,在不同时间内或同一时间内,通过不同的连接方式实现不同的功能。
在多功能流水线中,按照同一时间内是否能够连接成多种方式以同时执行多种功能,可以将其分为静态流水线和动态流水线。

所谓静态流水线,是指同一段时间内,多功能流水线中的各个功能段只能按照一种固定的方式连接,实现一种固定的功能,只有当按照该方式工作的所有任务都流出流水线之后,也就是流水线完全排空之后,多功能流水线才能重新进行连接,以实现另外的功能。

动态流水线是指同一段时间内,多功能流水线中的各段可以按照不同的方式连接,同时执行多种功能。当然,要同时实现多种连接方式是有条件的,即流水线中各个功能部件之间不能发生冲突。

1、以下说法不正确的是( )
A.线性流水线是单功能流水线
B.动态流水线是多功能流水线
C.静态流水线是多功能流水线
D.动态流水线只能是单功能流水线

答案:D

  1. 在流水机器中,全局性相关是指( )
    A.先写后读相关
    B.先读后写相关
    C.指令相关
    D.由转移指令引起的相关

答案:D

5.流水机器对全局性相关的处理不包括( )
A.猜测法
B. 提前形成条件码
C.加快短循环程序的执行
D. 设置相关专用通路

答案:D
设置相关专用通道是为解决局部相关而产生的一种方法。

(2012)

44 某 16 位计算机中,带符号整数用补码表示,数据 Cache 和指令 Cache 分离。(下表给出了指令系统中部分指令格式,其中 Rs 和 Rd 表示寄存器,mem 表示存储单元地址,(x)表示寄存器 x 或存储单元 x 的内容。)
该计算机采用 5 段流水方式执行指令,各流水段分别是取指(IF)、译码/读寄存器(ID)、执行/计算有效地址(EX)、访问存储器(M)和结果写回寄存器(WB),流水线采用“按序发射,按序完成”方式,没有采用转发技术处理数据相关,并且同一寄存器的读和写操作不能在同一个时钟周期内进行。请回答:

(1)若 int 型变量 x 的值为-513,存放在寄存器 R1 中,则执行“SHR R1”后,R1 的内容是多少?(用十六进制表示)

答:
X=-513=-(512+1)=(-00000010 00000001)2
X补=(11111101 11111111)2
右移 1 位后位 1111 1110 1111 1111,
即指令执行后(R1)=FEFFH。

(2)若在某个时间段中,有连续的 4 条指令进入流水线,在其执行过程中没有发生任何阻塞,则执行这 4 条指令所需的时钟周期数为多少?

答:执行这4条指令所需的时钟周期数=5+(4-1)=8
3)若高级语言程序中某赋值语句为 x=a+b,x、a 和 b 均为 int 型,它们的存储单元地址分别表示为[x]、[a]和[b]。该语句对应的指令序列及其在指令流中的执行过程如图所示。则这 4 条指令执行过程中 I3 的 ID 段和 I4 的 IF 段被阻塞的原因各是什么?
I1 LOAD R1,[a]
I2 LOAD R2,[b]
I3 ADD R1,R2
I4 STORE R2,[x]

答:
I3 的 ID 段被阻塞的原因: I3 与 I1 和 I2 都存在数据相关,需等到 I1 和 I2 将结果写回寄存器后,I3 才能读寄存器内容。
I4 的 IF 段被阻塞的原因: I4与I3存在结构相关,I3占用了IF部件,需等I3进入ID部件后I4才能进入IF部件.

(4)若高级语言程序中某赋值语句为 x=x*2+a,x 和 a 均为 unsigned int 类型变量,它们的存储单元地址分别表示为[x]、[a],则执行这条语句至少需要多少个时钟周期?要求模仿(3)题图画出这条语句对应的指令序列及其在流水线中的执行过程示意图。

答:语句为 x=x*2+a对应的指令序列为:
I1 LOAD R1,[x]

I2 LOAD R2,[a]

I3 SHL R1 //或者 ADD R1,R1

I4 ADD R1,R2

I5 STORE R2,[x]

故执行 x=x*2+a 语句最少需要 17 个时钟周期。

(2009)
44.

某计算机字长16位,采用16位定长指令字结构,部分数据通路结构如下图,图中所有控制信号为1时表示有效,为0表示无效,例控制信号MDRinE为1表允许数据从DB打入MDR,MDRin为1表允许数据从内总线打入MDR。假设MAR的输出一直处于使能状态。

加法指令“ADD (R1),R0”的功能为(R0)+((R1))→(R1),即将R0中的数据与R1的内容所指主存单元的数据相加,并将结果送入R1的内容所指主存单元中保存。
下表给出了上述指令取指和译码阶段每个节拍(时钟周期)的功能和有效控制信号,请按表中描述方式用表格列出指令执行阶段每个节拍的功能和有效控制信号。

答案:

这里对这几个时钟周期的功能进行一下说明:

C1:MAR←(PC) 将PC中的内容送到MAR(存储器地址寄存器)中,取指令的地址

PCout,MARin PC寄存器要流出数据,MAR要流入数据

C2: MDR←M(MAR) PC←(PC)+1
将MAR中的内容(指令的地址)送到MDR(寄存器数据寄存器中),PC+1以便读取下一条指令

MemR,MDRinE,
PC+1

存储器允许读数据,允许数据从DB打入MDR
C3: IR←(MDR) 将取得指令存放到IR(指令寄存器中)

MDRout,IRin

MDR流出数据,指令寄存器流入数据
C4: 指令译码

C5: MAR←(R1) 取操作数R1的内容(即所指向主存单元的地址)。

R1out,MARin

R1流出数据,MAR流入数据
C6: MDR←M(MAR) A←(R0) 取得R1所指向主存单元的内容,取操作数R0的内容存放到寄存器A中

MemR,MDRinE
R0out,Ain

存储器允许读数据,允许数据从DB打入MDR

R0流出数据,A流入数据
C7: AC←(MDR)+(A) 加法运算,结果保存到AC寄存器中

MDRout,Add,ACin

MDR流出数据,加法运算,A流入数据
C8: MDR←(AC) 送到MDR

ACout,MDRin

A流出数据,MDR流入数据
C9: M(MAR)←(MDR) 写回到R1
MDRoutE,MemW

允许数据从MDR打入DB,存储器允许读数据

计算机组成原理——中央处理器(CPU)考研题相关推荐

  1. 计算机组成原理——中央处理器cpu

    计算机组成原理-题库 中央处理器选择题 1.中央处理器(CPU)是指什么. A. 运算器 B. 控制器 C. 运算器和控制器 D. 运算器.控制器和主存储器 2.在CPU中跟踪指令后继地址的寄存器是什 ...

  2. 计算机组成原理-中央处理器CPU

    转载自https://blog.csdn.net/chen1083376511/article/details/81941318 早期CPU由运算器和控制器组成,称为中央处理机.随着ULSI技术的发展 ...

  3. 计算机组成原理 中央处理器(CPU) 指令系统

    指令分类 名称 零地址指令 一地址指令 二地址指令 三地址指令 四地址指令 运算公式 OP(A1)->(A1) (ACC)OP(A1)->(ACC)或者OP(A1)->A1 (A1) ...

  4. 研究生院考计算机组成原理,2017年哈尔滨工业大学深圳研究生院854计算机基础(含数据结构、计算机组成原理)之数据结构考研题库...

    一.选择题 1. 下列关于闪存(FlashMemory )的叙述中,错误的是( ). A. 信息可读可写,并且读.写速度一样快 B. 存储元由MOS 管组成,是一种半导体存储器 C. 掉电后信息不丢失 ...

  5. 王道计算机组成原理课代表 - 考研计算机 第五章 中央处理器 究极精华总结笔记

    本篇博客是考研期间学习王道课程 传送门 的笔记,以及一整年里对 计算机组成 知识点的理解的总结.希望对新一届的计算机考研人提供帮助!!!   关于对 中央处理器 章节知识点总结的十分全面,涵括了< ...

  6. 计算机组成原理 启航教育,2021计算机考研:计算机组成原理知识点CPU的功能和基本结构...

    启航教育小编为大家整理了关于"2021考研:计算机组成原理知识点CPU的功能和基本结构"的相关内容,希望可以帮助到大家,祝大家考上自己理想的院校 CPU的功能和基本结构 CPU主要 ...

  7. 计算机组成原理常考大题合集

    计算机组成原理常考大题合集 1.在"Cache-主存-辅存"三级存储体系中,"Cache-主存"结构与"主存-辅存"结构的引入为了解决什么问 ...

  8. 计算机与信息专业综合试题,2017年西南大学计算机与信息科学学院软件学院808计算机专业基础综合考研题库...

    目录 2017年西南大学计算机与信息科学学院软件学院808计算机专业基础综合考研题库(一).... 2 2017年西南大学计算机与信息科学学院软件学院808计算机专业基础综合考研题库(二).. 14 ...

  9. 计算机组成原理往届的试题,【历年真题】全国2019年10月自考《计算机组成原理》试题真题与答案02318...

    [历年真题]全国2019年10月自考<计算机组成原理>试题真题与答案02318 时间:2020-08-09 17:33 来源:江苏成考网 阅读:94 全国2019年10月高等教育自学考试 ...

  10. 计算机组成原理 小说,计算机组成原理--中央处理器CPU5

    计算机组成原理--中央处理器CPU5 (15页) 本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦! 19.90 积分 综合内容? 用组合逻辑设计方法设计一颗CPU ...

最新文章

  1. C2:抽象工厂 Abstract Factory
  2. Python一些特殊用法(map、reduce、filter、lambda、列表推导式等)
  3. WPF中解决内存泄露的几点提示与解决方法
  4. crc16的c语言函数 计算ccitt_C语言为何如此重要
  5. 又一款神器:半小时带你轻松上手k8s
  6. 怎么彻底关闭计算机应用程序,电脑自动关机前如何强行关闭应用程序
  7. BZOJ4311:向量——题解
  8. linux安装思源字体下载,fedora25安装字体-以思源字体为例 适合中文用户
  9. DGND PGND GND AGND 精密电阻与普通电阻
  10. iOS面试前的准备计划(2022)
  11. 第8周项目5:定期存款利息计算器
  12. spring上传文件
  13. k8s源码分析 pdf_《k8s-1.13版本源码分析》上github
  14. 《美通社头条》祝大家国庆节快乐!
  15. ddos流量攻击有多少G_攻击流量超过300G,遭遇DDoS时我们能做些什么?
  16. UON:《Detecting Unexpected Obstacles for Self-Driving Cars...》论文阅读与总结
  17. java基础案例 饲养员喂养动物
  18. unity aces_评论:UiPath Aces机器人流程自动化
  19. Nginx的模块与工作原理
  20. 菜鸡服务器不支持接力,行业首发!菜鸡新功能游戏接力上线,将开云游戏新赛道...

热门文章

  1. 初遇初识初知接下来是什么_红色卫衣搭配什么外套?最时髦的卫衣搭配别错过了...
  2. 宏宇社:国外lead入门教程(二)如何寻找任务联盟申请账号
  3. Unity3D 2D入门——第一天:2D物体创建以及贴图 C#一些知识
  4. unity 入门知识:unity 根据URL路径下播放视频的宽高比更改播放面板的大小
  5. 怎样查看主板支持服务器内存,如何简单方便的查看主板支持多大内存?
  6. Python 中的图:Dijkstra 算法
  7. matlab用lu求逆矩阵,Matlab实现——求矩阵的逆(LU分解)
  8. 如何拍背景虚化的照片_如何拍出主体清晰背景虚化的照片
  9. Mybatis-Plus之连表查询的基本实现
  10. IDEA常用快捷键和debug常用调试技巧