说明

  1. 博客作为笔记备份,不定时更新
  2. 参考内容为《计算机组成原理(第3版)》唐朔飞 高等教育出版社;王道考研《计算机组成原理考研复习指导2023》
  3. 文中的例题摘自王道考研《计算机组成原理考研复习指导2023》,大多是我个人认为较为典型的题目以及错题的部分整理

文章目录

  • 数据通路
    • 1. 数据通路的功能
    • 2. 数据通路的基本结构
      • 2.1 CPU内部单总线方式
      • 2.2 CPU内部三总线方式
      • 2.3 专用数据通路方式
      • 2.4 说明
    • 3. 数据传送
      • 3.1 寄存器之间的数据传送
      • 3.2 主存与CPU之间的数据传送
      • 3.3 执行算术或逻辑运算
    • 4. 例题

数据通路

1. 数据通路的功能

  • 数据在功能部件之间传送的路径称为数据通路,包括数据通路上的部件,如ALU、通用寄存器、状态将寄存器、异常和中断处理逻辑等
  • 数据通路由控制部件控制,控制部件根据各条指令功能的不同,生成对数据通路的控制信号
  • 数据通路的功能是实现CPU内部的运算器与寄存器及寄存器之间的数据交换

2. 数据通路的基本结构

2.1 CPU内部单总线方式

  • 将所有寄存器的输入端和输出端都连接到一条公共通路上,这种结构较简单,但数据传输存在较多的冲突现象,性能较低
  • 连接各部件的总线只有一条时,称为单总线结构;CPU中有两条或更多的总线时,构成双总线或多总线结构

2.2 CPU内部三总线方式

  • 将所有寄存器的输入端和输出端都连接到多条公共通路上,相比之下单总线中一个时钟内只允许传送一个数据,因而指令执行效率低,因此采取多总线方式,同时在多个总线上传送不同的数据,提高效率

2.3 专用数据通路方式

  • 根据指令执行过程中的数据和地址的流动方向安排连接通路,避免使用共享的总线
  • 性能较高,但硬件量大

2.4 说明

  • 内部总线是指同一部件,如CPU内部连接各个寄存器及运算部件之间的总线
  • 系统总线是指同一计算机系统的各部件,如CPU、内存、通道和各类I/O接口之间互相连接的总线

3. 数据传送

3.1 寄存器之间的数据传送

  • 寄存器之间的数据传送可通过CPU内部总线完成
  • 举例:将PC的内容送到MAR,实现传送操作的流程及控制信号为:
    PC→BusPCout有效,PC内容送总线PC\rightarrow Bus \ \ \ \ \ \ \ \ \ \ \ PCout有效,PC内容送总线PC→Bus           PCout有效,PC内容送总线
    Bus→MARMARin有效,总线内容送MARBus\rightarrow MAR\ \ \ \ \ \ \ \ \ \ \ MARin有效,总线内容送MARBus→MAR           MARin有效,总线内容送MAR

3.2 主存与CPU之间的数据传送

  • 主存与CPU之间的数据传送也要借助CPU内部总线完成
  • 举例:CPU从主存读取指令,实现传送操作的流程及控制信号为:
    PC→Bus→MARPCout和MARin有效,现行指令→MARPC\rightarrow Bus\rightarrow MAR\ \ \ \ \ \ \ \ \ \ \ PCout和MARin有效,现行指令\rightarrow MARPC→Bus→MAR           PCout和MARin有效,现行指令→MAR
    1→RCU发出读命令1\rightarrow R\ \ \ \ \ \ \ \ \ \ \ CU发出读命令1→R           CU发出读命令
    MEM(MAR)→MDRMDRin有效MEM(MAR)\rightarrow MDR\ \ \ \ \ \ \ \ \ \ \ MDRin有效MEM(MAR)→MDR           MDRin有效
    MDR→Bus→IRMDRout和IRin有效,现行指令→IRMDR\rightarrow Bus\rightarrow IR\ \ \ \ \ \ \ \ \ \ \ MDRout和IRin有效,现行指令\rightarrow IRMDR→Bus→IR           MDRout和IRin有效,现行指令→IR

3.3 执行算术或逻辑运算

  • 举例(P214P_{214}P214​)
    Ad(IR)→Bus→MARMDRout和MARin有效Ad(IR)\rightarrow Bus\rightarrow MAR\ \ \ \ \ \ \ \ \ \ \ MDRout和MARin有效Ad(IR)→Bus→MAR           MDRout和MARin有效
    1→RCU发出读命令1\rightarrow R\ \ \ \ \ \ \ \ \ \ \ CU发出读命令1→R           CU发出读命令
    MEM→数据线→MDR操作数从存储器→数据线→MDRMEM\rightarrow 数据线\rightarrow MDR\ \ \ \ \ \ \ \ \ \ \ 操作数从存储器\rightarrow 数据线\rightarrow MDRMEM→数据线→MDR           操作数从存储器→数据线→MDR
    MDR→Bus→YMDRout和Yin有效,操作数→YMDR\rightarrow Bus\rightarrow Y\ \ \ \ \ \ \ \ \ \ \ MDRout和Yin有效,操作数\rightarrow YMDR→Bus→Y           MDRout和Yin有效,操作数→Y
    (ACC)+(Y)→ZACCout和ALUin有效,CU向ALU发出加命令,结果→Z(ACC)+(Y)\rightarrow Z\ \ \ \ \ \ \ \ \ \ \ ACCout和ALUin有效,CU向ALU发出加命令,结果\rightarrow Z(ACC)+(Y)→Z           ACCout和ALUin有效,CU向ALU发出加命令,结果→Z
    Z→ACCZout和ACCin有效,结果→ACCZ\rightarrow ACC\ \ \ \ \ \ \ \ \ \ \ Zout和ACCin有效,结果\rightarrow ACCZ→ACC           Zout和ACCin有效,结果→ACC

4. 例题

(201620162016)单周期处理器中所有指令的指令周期为一个时钟周期,下列关于单周期处理器的叙述,错误的是()
A. 可以采用单总线结构数据通路
B. 处理器时钟频率较低
C. 在指令执行过程中控制信号不变
D. 每条指令的CPI为1
解答

  • 单周期处理器是指所有指令周期为一个时钟周期的处理器,即CPI=1,要考虑到比较慢的指令,因此处理器的时钟频率较低。
  • 单总线数据通路将所有寄存器的输入输出端都连接在一条公共通路上,一个时钟内只允许有一次操作,无法完成指令的所有操作,因此A错误。
  • 控制信号是CU根据指令操作码发出的信号,对于单周期处理器来说,每条指令的执行只有一个时钟周期,而在一个时钟周期内控制信号并不会变化;若是多周期处理器则指令的执行需要多个时钟周期,在每个时钟周期控制器会发出不同信号
  • 选A
    错误原因:错选C

(201520152015) 某16位计算机的主存按字节编码,存取单位为16位;采用16位定长指令字格式; CPU采用单总线结构,主要部分如下图所示。

图中R0~ R3为通用寄存器;T为暂存器; SR为移位寄存器,可实现直送(mov)、左移一位(left)和右移一位(right)三种操作,控制信号为SRop, SR的输出由信号SRout控制; ALU可 实现直送A( mova)、A加B (add)、A减B (sub)、A与B (and)、 A或B (or)、非A (not)、A加1(inc)七种操作,控制信号为ALUop。
回答下列问题:

  1. 图中哪些寄存器是程序员可见的?为何要设置暂存器T?
    解答:程序员可见的寄存器为通用寄存器R0,R1,R2,R3R_0,R_1,R_2,R_3R0​,R1​,R2​,R3​和PC。因为采用了单总线结构,因此若没有暂存器T,则ALU的A,B端口会同时获得两个相同的数据,使数据通路无法正常工作
  2. 控制信号ALUop和SRop的位数至少各是多少?
    解答:ALUop:3位;SRop:2位
  3. 控制信号SRout所控制部件的名称或作用是什么?
    解答:SRout控制的部件是一个三态门,用于控制移位器与总线之间数据通路的连接与断开
  4. 端口①~⑨中,哪些端点须连接到控制部件的输出端?
    解答:端口1、2、3、5、8必须连接到控制部件的输出端
  5. 为完善单总线数据通路,需要在端点①~⑨中相应的端点之间添加必要的连线。写出连线的起点和终点,以正确表示数据的流动方向。
    解答:连线1:⑥→⑨⑥\rightarrow⑨⑥→⑨;连线2:⑦→④⑦\rightarrow④⑦→④
  6. 为什么二路选择器MUX的一个输入端是2?
    解答:因为每条指令的长度为16位,按字节编址,所以每条指令占用2个内存单元,顺序执行时,下条指令地址为(PC)+2,MUX的一个输入端为2,可便于执行(PC)+2操作

计算机组成原理——中央处理器-数据通路(课程笔记)相关推荐

  1. 计算机组成原理——指令系统(课程笔记)

    说明 博客作为笔记备份,不定时更新 参考内容为<计算机组成原理(第3版)>唐朔飞 高等教育出版社:王道考研<计算机组成原理考研复习指导2023> 文中的例题摘自王道考研< ...

  2. 【408】计算机组成原理第一轮强化笔记

    计算机组成原理第一轮强化笔记 根据天勤高分笔记所做 1 计算机系统概述 计算机的发展历程 冯·诺依曼体系结构 第一代计算机(1946-1957年) 电子管时代,机器语言 第二代计算机(1958-196 ...

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

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

  4. 计算机原理2408,《计算机组成原理实验》课程教学大纲

    <计算机组成原理实验>课程教学大纲 教学模块(章)教学目标 基本运算器试验 了解运算器的组成结构,掌握运算器的工作原理. 静态随机存储器实验 掌握静态随机存储器 RAM 工作特性及数据的读 ...

  5. 计算机组成原理带符号的阵列乘法器,计算机组成原理阵列乘法器课程设计报告精选.doc...

    计算机组成原理阵列乘法器课程设计报告精选 编 号: 学 号: XXX 课 程 设 计 教 学 院计算机学院课程名称计算机组成原理题 目阵列乘法器专 业计算机科学与技术班 级2011级计科(X)班姓 名 ...

  6. 王道考研b站操作系统、计算机组成原理、计算机网络课程(课件资料)

    王道考研b站操作系统.计算机组成原理.计算机网络课程(课件资料) 链接:https://pan.baidu.com/s/1pkI_kx6WYSpglijIjMTQiw 提取码:yyds 复制这段内容后 ...

  7. 计算机组成原理 先修课,《计算机组成原理》教学大纲 课程性质:专业基础课程 先修课程:计算机.doc...

    <计算机组成原理>教学大纲 课程性质:专业基础课程 先修课程:计算机 <计算机组成原理>教学大纲课程性质:专业基础课程先修课程:计算机电子技术 总学时: 51学分: 3理论学时 ...

  8. 计算机组成原理乘法器组成图,计算机组成原理阵列乘法器课程设计报告

    <计算机组成原理阵列乘法器课程设计报告>由会员分享,可在线阅读,更多相关<计算机组成原理阵列乘法器课程设计报告(20页珍藏版)>请在人人文库网上搜索. 1.课 程 设 计;.教 ...

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

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

最新文章

  1. jsf项目启动报:java.lang.ClassNotFoundException: javax.faces.webapp.FacesServlet
  2. POJ1321 棋盘问题
  3. linux i217 v网卡驱动,手动安装Intel network I217-LM网卡的Linux驱动
  4. 大地图开发管理:《巫师3》Umbra遮挡剔除技术
  5. [POJ3096]Surprising Strings
  6. MYSQL中group_concat有长度限制!默认1024(转载)
  7. 安装完 SQL Server 2008 后没有 SQL Server Management Studio
  8. sql 2000简体中文企业版下载(含SP3 SP4 下载地址)
  9. arduino 土壤温湿度传感器_arduino测量土壤湿度自动浇水提醒 - 全文
  10. winform自定义控件无法显示在工具箱中以及显示但使用时出错的解决办法
  11. 纯净正版 WIN10 安装文件官方下载
  12. 青柚文案:水果店青柚推广文案,水果青柚广告文案
  13. 树莓派3B+使用GPIO实现串口通信
  14. element ui table 报错 type check failed for prop “showOverflowTooltip“. Expected Boolean, got Stri
  15. kalman滤波纯纯纯纯纯纯理论推导
  16. 笔记本各种接口功能介绍
  17. 如何定位计算机专业的发展方向,如何定位自己的职业发展方向?
  18. 为什么土豆网王微会放弃自己原有的立场,跟优酷合并?合并后有何影响?
  19. 通过希网获取公网ip
  20. 使用百度echarts制作可视化大屏

热门文章

  1. 《大话数据结构》学习心得
  2. 博途中WinCC VBS 脚本的基础用法
  3. [C语言]实现一个关机整蛊的小程序
  4. 将py文件打包为exe文件
  5. 【历史上的今天】2 月 10 日:QQ 诞生;IBM 电脑击败人类象棋冠军;谷歌光纤发布
  6. Python爬取搜集豆瓣图书集,书荒的朋友们再也不用担心了
  7. java计算机毕业设计消防安全应急培训管理平台源码+系统+数据库+lw文档+mybatis+运行部署
  8. 【网安基础3】从0开始的网安学习3--计算机网络
  9. cs实现上线linux主机与CrossC2的配置
  10. 国内 Android 手机典型勒索软件详情分析(附解锁方法)