系统架构设计师 - 计算机组成与体系结构(2)


大家好呀!我是小笙,本章我主要分享系统架构设计师 - 计算机组成与体系结构(2)知识,希望内容对你有所帮助!!

计算机组成与体系结构

数据传输控制方式 ★

程序控制(查询)方式

分为无条件传送(一直查询并等待反馈)和程序查询方式两种

优缺点:软件实现简单,但 I/O 能力不强,导致 CPU 利用率不高

程序中断方式

image-20240516190500394

中断方式无需 CPU 等待而提高了利用率 如:鼠标

DMA 方式

DMA方式是为了在主存与处设之间实现高速、批量数据交换而设置的。DMA方式比程序控制方式与中断方式都高效
(DMAC 向总线裁决逻辑提出总线请求;CPU执行完当前总线周期即可释放总线控制权。此时DMA响应,通过 DMAC 通知 I/O 接口开始 DMA 传输)

还有通道方式、I/O 处理机等方式

例题

嵌入式系统中采用中断方式实现输入输出的主要原因是 能对突发事件做出快速响应。在中断时,CPU断点信息一般保存到


总线 ★★

一组能为多个部件分时共享的公共信息传输线路(分时:同一时间仅允许一个部件向总线发送信息,但允许多个部件同事从总线读取数据)

系统总线

  • 数据总线 DB:传输存储数据
  • 地址总线 AB:传输存储数据地址
  • 控制总线 CB:将微处理器控制单元传送到周边设备

并行与串行

  • 串行总线:适合长距离(传输波特率是可以在传输过程改变的;按位传输需要依赖于校验码纠正)
  • 并行总线:近距离传输

数据传输模式

  • 单工:单向传输
  • 双工:双向同时传输
  • 半双工:需要切换传输方向的转换

扩展(了解)

  • 总线宽度:总线的线数
  • 总线带宽:总线宽度 * 总线频率

例题

1、挂接在总线上的多个部件,只能分时向总线发送数据,但可同时从总线接收数据

  1. 只能分时向总线发送数据,并只能分时从总线接收数据
  2. 只能分时向总线发送数据,但可同时从总线接收数据
  3. 可同时向总线发送数据,并同时从总线接收数据
  4. 可同时向总线发送数据,但只能分时从总线接收数据

2、下列说法中正确的是 半双工总线可在两个方向上轮流传输信息,全双工总线可在两个方向上同时传输信息

  1. 半双工总线只在一个方向上传输信息,全双工总线可在两个方向上轮流传输信息
  2. 半双工总线只在一个方向上传输信息,全双工总线可在两个方向上同时传输信息
  3. 半双工总线可在两个方向上轮流传输信息,全双工总线可在两个方向上同时传输信息
  4. 半双工总线可在两个方向上同时传输信息,全双工总线可在两个方向上轮流传输信息

3、以下关于串行总线的说法中,正确的是 串行总线是按位(bt)传输数据的,其数据的正确性依赖于校验码纠正

  1. 串行总线一般都是全双工总线,适宜于长距离传输数据(非全双工)
  2. 串行总线传输的波特率是总线初始化时预先定义好的,使用中不可改变(可以更改)
  3. 串行总线是按位(bit)传输数据的,其数据的正确性依赖于校验码纠正
  4. 串行总线的数据发送和接收是以软件查询方式工作(还可以以中断查询方式工作)

CISC 与 RISC ★★

RISC 和 CISC 的比较

CISC(X86)RISC(ARM)
指令系统复杂,庞大简单,精简
指令数目大于200条小于100条
指令字长不固定定长
可访存指令不加限制只有Load/Store指令
控制方式绝大多数为微程序增加了通用寄存器;硬布线逻辑控制为主
通用寄存器数量较少

例题

1、RISC(精简指令系统计算机)的特点不包括:寻址方式尽量丰富,指令功能尽可能强

  1. 指令长度固定,指令种类尽量少
  2. 寻址方式尽量丰富,指令功能尽可能强
  3. 增加寄存器数目,以减少访存次数
  4. 用硬布线电路实现指令解码,以尽快完成指令译码

流水线 ★★

概述:指在程序执行时多条指令重叠进行操作的一种准并行处理实现技术

image-20240120120520171 image-20240516191715472

  • 流水线周期:执行时间最长的一段(短板效应)
  • 流水线时长计算公式 : 第一条指令的执行时间 + (指令条数 - 1)* 流水线周期
  • 流水线的吞吐率:Tp = 指令条数 / 流水线执行时间 (单位时间内流水线所完成的任务数量)
  • 流水线加速度比:S = 不使用流水线执行时间 / 使用流水线执行时间 > 1

例题

1、某计算机系统采用5级流水线结构执行指令,设每条指令的执行由取指令(2△t)、分析指令(1△t)广、取操作数(3△t)、运算(1△t)和写回结果(2△t)组成,并分别用5个子部件完成,该流水线的最大吞吐率为 1/3△t ;若连续向流水线输入10条指令,则该流水线的加速比为 5:2


校验码 ★

检验码种类

image-20240516190235656
  • 奇偶校验码:整个校验码(有效信息位 + 校验位) 中 “1” 的个数为 奇数/偶数(注意:只给检查一位错,不可纠错)

  • **CRC(循环冗余校验)**是一种错误检测码,常用于数据传输和存储中,以检测数据是否在传输过程中发生了错误或损坏

    循环冗余校验码编码规律如下

    1. 把待编码的N位有效信息表示为多项式M(X)
    2. 把M(X)左移K位,得到M(X) × X^k,这样空出了K位,以便拼装K位余数(即校验位)
    3. 选取一个K+1位的产生多项式G(X),对M(X) × XK做模2除
    4. 把左移K位以后的有效信息与余数R(X)做模2加减,拼接为CRC码,此时的CRC码共有N+K位

    例:原始报文为“10111”,其生成多项式为:“G(X)=x4+x+1”。对其进行CRC编码后的结果为 1100

    image-20240516190130358

  • 海明校验

    码距:又叫海明距离,是在信息编码中,两个编码之间对应位上编码不同的位数。例如编码100110和010101,第1、2、5、6位都不相同,所以这两个编码的码距就是4,并且可以通过异或的方式求出(异或后计算零的个数)

    两个合法编码(码字)

    工作流程

    1. 确定校验码位数 r

      • 数据/信息位数为 m
      • 校验码位数为 r
      • 2 ^ r >= m + r + 1 (已知 m + r 的和,可以通过整个公式分别求出 m、r)
    2. 确定校验码和数据的位置

      假设需要校验数据为 1100,意味着 m = 4,可以通过公式求得,r 的最小值为 3

    3. 求出校验码的值

      根据偶校验可以得出如下(分三组,分别是:xx1、x1x、1xx)

      7654321
      110x40x2x1
      001

      海明码就是 1100001

    4. 检错并纠错

      假设最后传入的参数为 1100000

      计算该海明码的三组校验是否正确

      x1 0 0 0 1

      x2 0 0 1 1 => 可知 x1 校验错误 0 0 1 说明最小位出错了,但是恰好是校验码出错,可以不用纠错

      x4 0 0 1 1

  • 26
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
计算机组成原理体系结构课程设计是计算机科学与技术专业中的一门重要课程,旨在通过设计一个简单的计算机系统来加深对计算机组成原理体系结构的理解。在这门课程设计中,通常需要完成以下几个主要任务: 1. 指令集设计:根据需求和目标,设计一个适合的指令集架构。这包括确定指令的格式、操作码和寻址方式等。 2. 数据通路设计:设计计算机的数据通路,包括寄存器、ALU(算术逻辑单元)、控制器等。数据通路负责执行指令并处理数据。 3. 控制器设计:设计计算机的控制器,负责解码指令、生成控制信号,并协调各个部件的工作。控制器通常采用有限状态机的形式。 4. 存储器设计:设计算机的存储器层次结构,包括主存器和辅助存储器。主存储器用于存储指令和数据,辅助存储器用于扩展存储容量。 5. 性能评估与优化:通过性能评估,对设计的计算机系统进行性能分析提出优化方案,以提高计算机系统的性能。 6. 实现与测试:将设计的计算机系统实现为硬件或软件,并进行测试和调试,确保系统的正确性和稳定性。 --问题--: 1. 计算机组成原理与体系构课程设计的目的是什么? 2. 课设计中的指令集设计包括哪些内容? 3. 数据通路设计的作用是什么? 4. 控制器设计中常用的方法有哪些? 5. 存储器设计中的主存储器和辅助存储器有什么区别? 6. 性能评估与优化在课程设计中的重要性是什么? 7. 实现计算机系统时,硬件和软件的选择有何区别?

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Al_tair

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值