【系统架构设计师】第一章 计算机硬件 1.1 计算机硬件 - CPU - 校验码

发布于:2025-06-05 ⋅ 阅读:(17) ⋅ 点赞:(0)

文章目录

  • 计算机硬件
    • 1、 计算机的硬件组成
    • 2、中央处理器
      • CPU的功能
      • CPU的组成
    • 3. 校验码
      • 奇偶校验
      • CRC
  • 指令系统
    • 流水线

2018 年之前考的很多,2019-2021 没考过,2022 年考了磁盘调度
之后考的概率很小。

计算机硬件组成
校验码
指令系统
存储系统
输入/输出计数
总线结构

真题考点内容包含教材以外的内容。

计算机硬件

1、 计算机的硬件组成

计算机的基本硬件系统由运算器、控制器、存储器、输入设备和输出设备 5 大部分组成。

运算器、控制器等部件倍集成在一起统称为中央处理单元(Central Processing Unit, CPU)。CPU是硬件系统的核心,用于数据的加工处理,能完成各种算术、逻辑运算及控制功能

存储器是计算机系统中的记忆设备,分为内部存储器和外部存储器。前者速度高、容量小。一般用于临时存放程序、数据及中间结果。而后者容量大、速度慢,可以长期保存程序和数据。

输入设备和输出设备合称为外部设备(简称外设),输入设备用于输入原始数据及各种命令,而输出设备则用于输出计算机运行的结果。

2、中央处理器

CPU的功能

  • (1)程序控制。CPU通过执行指令来控制程序的执行顺序,这是CPU的重要功能。
  • (2)操作控制。一条指令功能的实现需要若干操作信号配合来完成,CPU产生每条指令的操作信号并将操作信号送往对应的不见,控制相应的部件按指令的功能要求进行操作。
  • (3)时间控制。CPU对各种操作进行时间上的控制,即指令执行过程中操作信号的出现时间、持续时间及出现的时间顺序都需要进行严格控制。
  • (4)数据处理。CPU通过对数据进行算术运算逻辑运算等方式进行加工处理,数据加工处理的结果被人们所利用。所以,对数据的加工处理也是CPU最根本的任务。

此外,CPU还需要对系统内部和外部的中断(异常)做出响应,进行相应的处理

算术运算 加减乘除。逻辑运算 与或非等

CPU的组成

CPU的组成:CPU主要由运算器、控制器、寄存器组和内部总线等部件组成

  • 运算器:由算术逻辑单元ALU(实现对数据的算术和逻辑运算)、累加寄存器AC(运算结或源操作数的存放区)、数据缓冲寄存器DR(暂时存放内存的指令或数据)、和状态条件寄存器PSW(保存指令运行结果的条件码内容,如溢出标志等)组成。执行所有的算术运算,如加减乘除等;执行所有的逻辑运算并进行逻辑测试,如与、或、非、比较等。
  • 控制器:由指令寄存器IR(暂存CPU执行指令)、程序计数器PC(存放指令执行地址)、地址寄存器AR(保存当前CPU所访问的内存地址)、指令译码器ID(分析指令操作码)等组成。控制整个CPU的工作,最为重要
  • CPU依据指令周期的不同阶段来区分二进制的指令和数据,因为在指令周期的不同阶段,指令会命令CPU分别取取指令或数据。

【考试真题】

CPU执行算术运算或逻辑运算时,常将源操作数和结果暂存在()中。
A. 程序计数器(PC)
B. 累加器(AC)
C. 指令寄存器(IR)
D. 地址寄存器(AR)

B.

执行CPU指令时,在一个指令周期的过程中,首先需从内存读取要执行的指令,此时先要将指令地址即()的内容送到地址总线上
A. 指令寄存器(IR)
B. 通用寄存器(GR)
C. 程序计数器(PC)
D. 状态寄存器(PSW)

C

3. 校验码

奇偶校验

码距:就单个编码A:00 而言,其码距为1,因为其只需要改变一位就变成另一个编码。在两个编码中 ,从A码到B码转换所需要改变的位数称为码距,如A:00 要转换成 B:11,码距为2.一般来说,码距越大,越利于纠错和检错。

奇偶校验码:在编码中增加1位校验位来使编码中1的个数为奇数(奇校验)或偶数(偶校验),从而使码距变为2.例如:

奇校验:编码中,含有奇数个1,发送给接收方,接收方收到后,会计算收到的编码有多少个1,如果是奇数个,则无误,是偶数个,则有误。

偶校验同理,只是编码中有偶数个1,由上述,奇偶校验只能检1位错,并且无法纠错

CRC

CRC 只能检错,不能纠错。使用CRC编码,需要先约定一个生成多项式 G(X)。生成多项式的最高位和最低位必须是1.假设原始信息有m位,则对应多项式M(x)。生成校验码思想就是在原始信息位后追加若干校验位,使得追加的信息能被G(x)整除。接收方接收到带校验位的信息,然后用G(x)整除。余数为0,则没有错误,反之则发生错误。

【例】假设原始信息串为 10110,CRC的生成多项式为 G(X)=x4 + x + 1,求CRC校验码。
(1)在原始信息位后面添加0,假设生成多项式的阶位r,则在原始信息位后添加r个0,本题中,G(X)阶位4,则在原始信息串后加4个0,得到的新串为101100000,作为被除数
(2)由多项式得到除数,多项中x的幂指数存在的位置1,不存在的位置0.本题中,x的幂质数为 0,1, 4的变量都存在,而幂指数为2,3的不存在,因此得到串10011。
(3)生成CRC校验码,将前两部得出的被除数和除数进行模2除法运算(即不进位也不借位的除法运算)。

模2除法运算,即异或运算 同 0 非 1。

在这里插入图片描述
得到余数为 1111,r= 4。如果余数不够4位则前面补 0。

(4)生成最终发送信息串,将余数添加到原始信息后。上例中,原始信息为 10110,添加余数1111后,结果为 10110 1111。发送放将此数据发送给接收方。
(5)接收方进行校验。接收方的CRC校验过程与生成过程类似,接收方接收了带校验和的帧后,用多项式G(X)来除,余数为0,则表示信息无错;否则要求发送方进行重传。

注意:收发双方需使用相同的生成多项式。

【考试真题】循环冗余校验码(Cyclic Redundancy Check, CRC)是数据通信领域中最常用的一种差错校验码,该校验方法中,使用多项式除法(模2除法)运算后的余数为校验字段。若数据信息为n位,则将其左移k位后,被长度为k+1位的生成多项式相除,所得的k位余数即构成k个校验位,构成n+k位编码。若信息数据为 1100,生成多项式为 x3+x+1即1011,则CRC编码是()

在这里插入图片描述
得到 10 ,3位 补 0 为 010,即 1100010

指令系统

计算机指令系统的组成:一条指令由操作码和操作数两部分组成,操作码决定要完成的操作,操作数指参加运算的数据及其所在的单元地址

在计算机中,操作要求和操作数地址都由二进制数码表示,分别称作操作码和操作地址码,整条指令以二进制编码的形式存放在存储器中。

计算机指令执行过程:取指令——分析指令——执行指令三个步骤,首先将程序计数器PC中的指令地址取出,送入地址总线,CPU依据指令地址取内存中取出指令内容存入指令寄存器IR;而后由指令译码器进行分析,分析指令操作码;最后执行指令,取出指令执行所需的源操作数。

指令寻址方式

  • 顺序寻址方式:当执行一段程序时,是一条指令接着一条指令地顺序执行。
  • 跳跃寻址方式:指下一条指令的地址码不是由程序计数器给出,而是由本条指令直接给出。程序跳跃后,按新地指令地址开始顺序执行。因此程序计数器地内容也必须相应改变,以便及时跟踪新的指令地址。

指令操作数地寻址方式

  • 立即寻址方式:指令的地址码字段指出的不是地址,而是操作数本身。
  • 直接寻址方式:在指令的地址字段中直接指出操作数在主存中的地址。
  • 间接寻址方式:指令地址码字段所指向的存储单元中存储的是操作数的地址
  • 寄存器寻址方式:指令中的地址码是寄存器的编号
  • 基址寻址方式:将基址寄存器的内容加上指令中的形式地址而形成的操作数有效地址,其优点是可以扩大寻址能力。
  • 变址寻址方式:变址寻址方式计算有效地址的方法与基址寻址方式很相似,它是将变址寄存器的内容加上指令中的形式地址而形成的操作数的有效地址。

前4种寻址方式比较重要

指令存在主存里,操作数不一定有可能在寄存器有可能在其他地方

CISC 是复杂指令系统,兼容性强,指令繁多,长度可变,由微程序实现
RISC是精简指令系统,指令少,使用频率接近,主要以开硬件实现(通用寄存器、硬布线逻辑控制)
在这里插入图片描述

Complex Instruction Set Computer
Reduced Instruction Set Computer

实现方式要记

流水线


指令流水线原理:将指令分成不同段,每段由不同的部分去处理,因此可以产生叠加的效果,所有的部件去处理指令的不同段

RISC中的流水线技术

  • (1)超流水线技术(Super Pipe Line)技术。它通过细化流水、增加级数和提高主频,使得再每个机器周期内完成一个甚至两个浮点操作。其实质是以时间换取空间
  • (2)超标量(Super Scalar)技术。它通过内装多条流水线来同时执行多个处理,其时钟频率虽然与一般流水接近,却又更小的CPI。其实质是以空间换取时间
  • (3)超长指令字(Very Long Instruction Word,VLIW)技术。VLIW和超标量都是20世纪80年代出现的概念,其共同点是要同时执行多条指令,其不同在于超标量依靠硬件来实现并行处理调度。VLIW则充分发挥软件的作用,而使硬件简化,性能提高。

CISC 没有使用流水线技术

流水线时间计算 【考点】

流水线周期:指令分成不同执行段,其中执行时间最长的段位流水线周期。

流水线执行时间1条指令总执行时间+(总指令条数-1) * 流水线周期

流水线吞吐率计算:吞吐率即单位时间内执行的指令条数。
公式:指令条数/流水线执行时间

流水线的加速比计算:加速比即使用流水线后 的效率提升读,即不比使用流水线快了多少倍,越高表明流水线效率越高
公式:不使用流水线执行时间/使用流水线执行时间


网站公告

今日签到

点亮在社区的每一天
去签到