当前位置: 首页 > news >正文

计算机组成体系结构

计算机系统组成

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

运算器、控制器 等… 被集成在一起统称为中央处理单元 Central Processing UnitCPU

存储器: 是计算机系统中的记忆设备,分为 内部存储器和外部存储器

  • 内部存储器:速度高、容量小,一般用于【临时存放程序数据】、【中间结果】
  • 外部存储器:容量大、速度慢,可以【长期保存程序、数据】

输入设备、输出设备 合称为外部设备(简称外设)

  • 输入设备:用于输入原始数据及各种命令,
  • 输出设备:则用于输出处理结果

输入/输出:I/O

键盘和鼠标: 是最常用的输入设备。键盘通过扫描码将按键信息传输给计算机,

鼠标则通过【光电、机械】方式检测移动和按键操作,并将相应的信号发送给计算机,常见的输入输出方式有:

通道方式

通道是一种特殊的处理机,它具有自己的指令系统和程序,

可以独立地执行通道程序,控制外设与内存之间的数据传输

通道方式进一步提高了 CPU 与外设的并行工作能力,适用于连接多个高速外设的系统

中断输入输出方式⭐

中断输入输出方式是计算机系统中【重要】:的数据输入输出方式

中断输入输出方式指:当外部设备完成:数据准备、需要 CPU 处理的事件时,主动向 CPU 发送中断请求信号

  • CPU 在接收到中断请求后,暂停当前正在执行的程序,转而去处理与该中断请求—对应—中断服务程序
  • 完成对外部设备的操作或处理相关事件,处理完后 再返回原来被中断的程序继续执行

中断方式提高了 CPU 的利用率,使 CPU 可以与外设【并行】工作

  • 中断请求: 外部设备在完成数据准备或发生特定事件(如打印机完成一次打印任务、键盘有按键按下等)

    时通过硬件电路向 CPU 发送中断请求信号,该信号会通知 CPU 有外部事件需要处理

  • 中断响应: CPU 执行每条指令的最后一个时钟周期:

  • 都会检查是否有中断请求到来,若检测到中断请求,且此时 CPU 允许中断(即中断允许标志位为 1)

    则 CPU 会暂停当前正在执行的程序,保存当前程序断点:【程序计数器 PC 的值】程序状态字等现场信息

    然后根据中断源类型、中断向量表,找到对应的中断服务程序入口地址,开始执行中断服务程序;

  • 中断处理: CPU 执行中断服务程序,完成对外部设备的相应操作,

    在中断服务程序中,通常还会对中断请求进行 应答,以清除中断请求信号,防止再次触发中断。

  • 中断返回: 当中断服务程序执行完毕后,

    CPU 会恢复之前保存的现场信息: 程序计数器 PC 的值、寄存器的值和程序状态字等,

    然后返回到原来被中断的程序继续执行,使程序能够继续正常运行

中断输入输出方式【特点】

  • 实时响应性好:

    能够及时响应外部设备的请求,对于实时性要求较高的任务(如实时数据采集、实时控制等)非常重要

    外部设备可以在需要时立即向 CPU 发出中断请求,CPU 能够迅速做出响应并进行处理,减少了响应延迟

  • 提高 CPU 利用率: 与程序查询方式相比,CPU 无需不断地查询外设状态,

    在等待外设数据准备的过程中可以继续执行其他程序,只有当外设准备好数据并发出中断请求时,

    CPU 才会暂停当前工作去处理外设事务,大大提高了 CPU 的利用率

  • 可实现 [多任务并发] 处理: 多个外部设备可以同时向 CPU 发送中断请求,

    CPU 可以根据中断优先级等策略依次处理各个中断请求,从而实现多个任务的并发处理,

    使计算机系统能够同时管理和控制多个外部设备,提高系统的整体性能和效率

程序控制查询方式

程序控制,分为 【无条件传送】【程序查询方式】两种

方法简单,硬件开销小,但I/0能力不高,严重影响 CPU 的利用率!

【无条件传送】

特点:硬件简单、软件实现容易、适用场景有限 CPU 在需要时【直接】对端口进行读或写操作,

无需考虑外设的当前状态,默认外设始终处于准备好接收或发送数据的状态

  • 硬件简单:不需要复杂的硬件电路来实现 CPU 与外设之间的状态交互
  • 软件实现容易:程序中,只需使用简单的输入输出指令即可完成数据传输
  • 适用场景有限:只适用于那些工作速度非常快或非常慢,且对数据传输的实时性要求不高的外设

【程序查询方式】

CPU 利用率低 实时性较差 数据传输可靠性较高 优点是硬件简单

CPU 通过执行程序 不断地查询外设的状态 通过读取外设的状态寄存器,

来判断外设是否准备好进行数据传输,如果外设未准备好,CPU 则继续查询,直到外设准备好为止

内存与接口的编制方式

在计算机系统中,内存与接口的编址方式主要有**【独立编址】、【统一编址】**两种:

独立编址

内存和接口分别有各自独立的 地址空间,使用不同的指令和控制信号来访问内存和接口

  • 有专门的输入输出指令(如 IN、OUT 指令)用于对接口进行操作
  • 访问内存则使用专门的内存访问指令

缺点:指令类型增多、编程相对复杂、I/O 端口的操作灵活性受限

优点:地址空间清晰、指令系统简洁、译码电路相对简单

  • 指令系统简洁: 对接口的操作有专门的指令,指令格式和功能相对简单,易于设计和实现

  • 地址空间清晰: 内存和接口的地址空间相互独立,界限分明,易于理解和管理,不会产生地址冲突问题

  • 译码电路相对简单: 由于内存和接口的地址空间是分开的,所以设计地址译码电路时,

    可以分别针对内存和接口进行设计,电路结构相对简单

统一编址

也称为存储器映射编址,是将接口中的寄存器等当作内存单元一样进行编址,

内存、接口 共用一个地址空间: 对接口的访问就像对内存的访问一样,使用相同的指令来进行读写操作

缺点:地址空间冲突、内存空间相对减少、译码电路相对复杂

优点:指令系统统一、编程方便、I/O 端口的操作灵活性高

直接存储器访问(DMA)方式

DMA 控制器(硬件) 的控制下,外设直接与内存进行数据交换,无需 CPU 干预

DMA 方式主要用于高速外设与内存之间的大批量数据传输,如磁盘、磁带等。

它可以大大提高数据传输速度,减少 CPU 的干预,提高系统的整体性能

CPU 功能、组成:⭐

CPU 主要功能:

  • 程序控制: 通过执行指令来控制程序的执行顺序,是CPU的重要功能

  • 操作控制:一条指令功能的实现需要若干操作信号配合完成: CPU产生每条指令的操作信号

    并将操作信号送往不同的部件,控制相应的部件按指令的功能要求进行操作

  • 时间控制: CPU 对各种操作进行时间控制, 指令执行过程中操作信号的:

    出现时间、持续时间及出现的时间顺序都需要进行严格的控制

  • 数据处理: CPU通过对数据进行:算术运算、逻辑运算、等进行加工处理

    数据加工处理的结果被人们所利用,对数据的 加工处理也是 CPU最根本的任务;

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

运算器:

运算器—>组成:算术逻辑单元、累加寄存器、数据缓冲寄存器、状态条件寄存器

算术逻辑单元 ALU: 负责处理数据,实现对数据的算术运算、逻辑运算

累加寄存器 AC: 也称累加器 是一个寄存器

  • 当运算器—>算数逻辑单元—>执行—>算数运算、逻辑运算:为算术逻辑单元提供一个工作区

数据缓存寄存器DR: 作为CPU和内存、外部设备之间数据的—中转站—操作速度之间的—缓冲

  • 对内存储器进行读写、DR暂时存放内存储器的指令/数据,并将不同的时段数据进行 隔离;
  • 在单累加器结构运算器中,数据缓存寄存器DR 还可作为——数据寄存器;

状态条件寄存器 PSW:存储和反映CPU当前的工作状态和指令执行结果的相关信息

  • 由算数指令和逻辑指令运行、测试——结果建立的各种条件码内容,主要分为:状态标志和控制标志

运算器-主要功能: 执行所有算术运算:加、减、乘、除、等,基本运算及附加运算

执行所有的逻辑运算并进行逻辑测试,如与、或、非、零值测试或两个值的比较等

  • 考试时候如果这个选项,有争议就不要选择它 A\B都可以实现\情况就不需要选择:状态寄存器选项了

控制器:

运算器只能完成运算,控制器用于控制整个 CPU 的工作

它决定了计算机运行过程的【自动化】: 它不仅要保证程序的正确执行,而且要能够处理异常事件

一般包括:指令控制逻辑、时序控制逻辑、总线控制逻辑、中断控制逻辑等几个部分;

指令控制逻辑: 完成取指令、分析指令和执行指令的操作,

过程分:取指令、指令译码、按指令操作码执行、形成下一条指令地址、等步骤;

  • 指令寄存器 IR: 当 CPU 执行一条指令时,先把它从内存储器取到缓冲寄存器中,

    再送入 IR 暂存,指令译码器 根据 IR 的内容产生各种微操作指令,控制其他的组成部件工作,完成所需的功能。

  • 程序计数器PC: 具有【寄存信息、计数】两种功能,又称为:指令计数器

    程序的执行分为两种情况:【顺序执行】、【转移执行】

    CPU 中 PC 用来跟踪下一条要执行指令在存储器中的地址

  • 地址寄存器 AR:保存当前 CPU 所访问的内存单元的地址

  • 指令译码器 ID: 指令分为操作码和地址码两个部分,

    为了执行任何给定的命令,必须 对操作码进行分析,以便识别所有完成的操作

中断控制逻辑: 用于控制各种中断请求,并根据优先级的高低对中断请求进行排队,逐个交给 CPU 处理

时序控制逻辑: 为每条指令按时间顺序提供应有的控制信号

总线逻辑: 为多个功能部件服务的信息通路的控制电路

寄存器组:

寄存器组: 专用寄存器、通用寄存器

  • 运算器和控制器 中的寄存器 是专用寄存器其作用是固定的。
  • 通用寄存器: 的用途广泛,并且由程序员规定其用途,其数目因处理器的不同有所差异;

多核CPU:

核心又称为【内核】,是 CPU 最主要的组成部分

  • CPU 所有的计算、接受/存储命令、处理数据都 由【核心执行】 各种 CPU 核心都具有固定的逻辑结构:

    一级缓存、二级缓存、执行单元、指令级单元和总线接口等逻辑单元都会有合理的布局;

CPU 主要厂商:AMD 和 Intel 的双核技术在物理结构上有很大的不同

  • AMD 将两个内核做在一 个 Die 上,通过直接架构连接起来,集成度更高;
  • Intel 是将放在不同核心上的两个内核封装在一起,因此称为【双芯】,将 AMD 的方案称为【双核】

可靠性

可靠性指标: 是用于衡量系统、设备、产品或过程在规定条件下和规定时间内,完成规定功能的能力的 一系列参数

下面是一个程序运行的过程:
|-----MTTF----|--MTTR--|---MTTF---|--MTTR--|-----MTTF-----||---------MTBF------|MTTF 平均无故障时间:指从开始使用到发生故障前的平均工作时间 MTTF=1/λ
- λ为失效率:指工作到某一时刻尚未失效的产品,在该时刻后单位时间内发生失效的概率
- λ(t) 表示,单位为时间的倒数,如 1/h(每小时)、1 / 次(每次)等MTTR 平均故障修复时间:即出现故障到修复完成所需要的平均时间 MTTR=1/μ
- μ为修复率:指维修人员在单位时间内修复故障产品的概率MTBF 平均故障间隔时间:指相邻两次故障之间的平均工作时间,MTBF 越长,说明产品的可靠性越高 MTBF=MTTR+MTTF
系统可用性:产品在规定的条件下和规定的时刻或时间区间内,处于可工作或可使用状态的概率 MTTE/(MTTR+MTTF)x100%
- 在实际应用中,一般MTTR很小,所以通常认为:MTBF≈MTTF
- 可靠性可以用可以用 MTTF/(1+MTTF) 来度量

串联系统

只要其中有一个单元发生故障,整个系统就会失效

串联系统是指系统中的所有单元(部件或子系统)必须都正常工作,系统才能正常运行,

可靠性特点: 串联系统的可靠性取决于系统中可靠性最低的单元。由于所有单元都要正常工作系统才有效,

所以随着串联单元数量的增加,系统的整体可靠性会迅速下降

可靠性计算:假设串联系统中有n个单元,每个单元的可靠度分别为:R1、R2、R3… :

R s = R 1 ∗ R 2 ∗ R 3 ∗ . . . ∗ R n R_s = R_1 * R_2 * R_3 * ... * R_n Rs=R1R2R3...Rn

  • 例如,一个串联系统由三个单元组成,它们的可靠度分别为0.9、0.8和0.7那么系统的可靠度:

R s = 0.9 ∗ 0.8 ∗ 0.7 = 0.504 R_s= 0.9*0.8*0.7 = 0.504 Rs=0.90.80.7=0.504

并联系统

只有当所有单元都发生故障时,系统才会失效

并联系统是指系统中只要有一个单元正常工作,系统就能正常运行

可靠性特点: 并联系统提高了系统的可靠性和容错能力。因为只要有一个单元正常工作,

系统就能保持功能,所以相比串联系统,其整体可靠性更高,尤其在单元数量较多时更为明显

**可靠性计算:**假设并联系统中有n个单元,每个单元的可靠度分别为:

R 1 、 R 2 、 R 3... R_1、R_2、R3 ... R1R2R3...

  • 则系统的不可靠度: F p = ( 1 − R 1 ) ∗ ( 1 − R 2 ) ∗ ( 1 − R 3 ) ∗ . . . ∗ ( 1 − R n ) F_p = (1-R_1) * (1-R_2) * (1-R_3) * ... * (1-R_n) Fp=(1R1)(1R2)(1R3)...(1Rn)
  • 那么并联系统的可靠度: R p = 1 − F p = ( 1 − R 1 ) ∗ ( 1 − R 2 ) ∗ ( 1 − R 3 ) ∗ . . . ∗ ( 1 − R n ) R_p = 1-F_p = (1-R_1) * (1-R_2) * (1-R_3) * ... * (1-R_n) Rp=1Fp=(1R1)(1R2)(1R3)...(1Rn)

一个并联系统由三个单元组成,它们的可靠度分别为 0.9、0.8和0.7,

  • 则系统的不可靠度: F p F_p Fp =(1-0.9) x (1-0.8) x (1-0.7) = 0.006
  • 系统的可靠度: R p R_p Rp = 1-0.006 = 0.994

串联系统和并联系统在不同的应用场景中各有优劣

实际的复杂系统往往是串联和并联结构相结合的混合系统:一半串联、并联;

中级考试中也通常是根据:【混合模型图】 设计公式;

总线

特点:分时双工 一条总线同一时刻 允许一个设备发送,但允许多个设备接收

总线分类:

  • 数据总线(Data Bus,DB):用于在 CPU、内存、I/O 设备等之间传输数据

    数据总线的宽度决定了计算机一次能传输的数据量,32 位数据总线表示计算机一次可以传输 32 位(4 字节数据)

  • 地址总线(Address Bus,AB):主要用来传输地址信息,CPU 通过地址总线指定访问内存单元 、I/O 设备地址

    地址总线的宽度决定了计算机的寻址能力,如 32 位地址总线可以寻址 2 32 2^{32} 232 个不同的地址空间,即 4GB 的内存空间

    计算机在直接寻址时,需要从内存读取操作数,要先将操作数的地址送到地址总线上。

  • 控制总线(Control Bus,CB):用于传输控制信号、时序信号和状态信息等,协调计算机各部件的工作

    例如,读 / 写信号、中断请求信号、时钟信号等都通过控制总线来传输

按层次结构分类:

  • 片内总线: 是集成电路芯片内部各功能单元之间的连线,用于实现芯片内部的信息传输

    如 CPU 芯片内部的寄存器、算术逻辑单元(ALU)等之间的连接。

  • 系统总线: 连接计算机主机内各大部件,如 CPU、内存、I/O 接口等,

    是计算机系统的核心总线,常见的系统总线有 ISA 总线、PCI 总线等

  • 外部总线: 用于计算机与外部设备之间的连接和通信,如 USB 总线、IEEE 1394 总线等,

    主要用于连接外部设备,如打印机、扫描仪、移动存储设备等

http://www.xdnf.cn/news/598501.html

相关文章:

  • 数据库-数据处理
  • B2160 病人排队
  • 算法题(153):哈夫曼编码
  • CAD打印没有标注解决方法
  • vue2实现元素拖拽
  • Git实战演练,模拟日常使用,快速掌握命令
  • “轩辕杯“云盾砺剑 CTF挑战赛web方向题解
  • 【AI论文】VisualQuality-R1:通过强化学习进行推理诱导的图像质量评估
  • 【Java】异常的初步认识
  • 1.2 Box以及 InsideBox的使用
  • python字符串
  • fastadmin添加管理员账号只能查看一个表中指定条件的数据
  • 【朝花夕拾】S32K144 backdoor key解锁后劳德巴赫或者JLINK更新app
  • Python3 批量处理银行电子回单
  • 深搜题(如何找到进入下一层深搜的条件)
  • 第十九章 ADC——电压采集
  • ZeroMQ Sockets介绍及应用示例
  • 01_消息中间件概述
  • for...in 和 for...of:用法、区别
  • Vue2 项目报错问题收录(持续更新...)
  • 101个α因子#21
  • 火语言UI组件--控件事件触发
  • Vaptcha 手势、轨迹验证码
  • idea常用配置 properties中文输出乱码
  • AI智慧高光谱遥感实战精修班暨手撕99个案例项目、全覆盖技术链与应用场景一站式提升方案
  • 车载软件架构 --- FLASH bootloader 设计要点
  • 随机链表的复制问题详解与代码实现
  • python学习打卡day33
  • 等离子体隐身技术和小型等离子体防御装置设计
  • 军事目标系列之迷彩作战人员检测数据集VOC+YOLO格式2755张1类别