计算机组成体系结构
计算机系统组成计算机的基本硬件系统由运算器、控制器、存储器、输入设备和输出设备五大部件组成运算器、控制器 等…被集成在一起统称为中央处理单元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 平均无故障时间指从开始使用到发生故障前的平均工作时间 MTTF1/λ - λ为失效率指工作到某一时刻尚未失效的产品在该时刻后单位时间内发生失效的概率 - λ(t) 表示单位为时间的倒数如 1/h每小时、1 / 次每次等 MTTR 平均故障修复时间即出现故障到修复完成所需要的平均时间 MTTR1/μ - μ为修复率指维修人员在单位时间内修复故障产品的概率 MTBF 平均故障间隔时间指相邻两次故障之间的平均工作时间MTBF 越长说明产品的可靠性越高 MTBFMTTRMTTF 系统可用性产品在规定的条件下和规定的时刻或时间区间内处于可工作或可使用状态的概率 MTTE/(MTTRMTTF)x100% - 在实际应用中一般MTTR很小所以通常认为MTBF≈MTTF - 可靠性可以用可以用 MTTF/(1MTTF) 来度量串联系统只要其中有一个单元发生故障整个系统就会失效串联系统是指系统中的所有单元部件或子系统必须都正常工作系统才能正常运行可靠性特点串联系统的可靠性取决于系统中可靠性最低的单元。由于所有单元都要正常工作系统才有效所以随着串联单元数量的增加系统的整体可靠性会迅速下降可靠性计算假设串联系统中有n个单元每个单元的可靠度分别为R1、R2、R3… RsR1∗R2∗R3∗...∗RnR_s R_1 * R_2 * R_3 * ... * R_nRs​R1​∗R2​∗R3​∗...∗Rn​例如一个串联系统由三个单元组成它们的可靠度分别为0.9、0.8和0.7那么系统的可靠度Rs0.9∗0.8∗0.70.504R_s 0.9*0.8*0.7 0.504Rs​0.9∗0.8∗0.70.504并联系统只有当所有单元都发生故障时系统才会失效并联系统是指系统中只要有一个单元正常工作系统就能正常运行可靠性特点并联系统提高了系统的可靠性和容错能力。因为只要有一个单元正常工作系统就能保持功能所以相比串联系统其整体可靠性更高尤其在单元数量较多时更为明显**可靠性计算**假设并联系统中有n个单元每个单元的可靠度分别为R1、R2、R3...R_1、R_2、R3 ...R1​、R2​、R3...则系统的不可靠度Fp(1−R1)∗(1−R2)∗(1−R3)∗...∗(1−Rn)F_p (1-R_1) * (1-R_2) * (1-R_3) * ... * (1-R_n)Fp​(1−R1​)∗(1−R2​)∗(1−R3​)∗...∗(1−Rn​)那么并联系统的可靠度Rp1−Fp(1−R1)∗(1−R2)∗(1−R3)∗...∗(1−Rn)R_p 1-F_p (1-R_1) * (1-R_2) * (1-R_3) * ... * (1-R_n)Rp​1−Fp​(1−R1​)∗(1−R2​)∗(1−R3​)∗...∗(1−Rn​)一个并联系统由三个单元组成它们的可靠度分别为 0.9、0.8和0.7则系统的不可靠度FpF_pFp​(1-0.9) x (1-0.8) x (1-0.7) 0.006系统的可靠度RpR_pRp​ 1-0.006 0.994串联系统和并联系统在不同的应用场景中各有优劣实际的复杂系统往往是串联和并联结构相结合的混合系统一半串联、并联中级考试中也通常是根据【混合模型图】 设计公式总线特点分时双工一条总线同一时刻仅允许一个设备发送但允许多个设备接收总线分类数据总线Data BusDB用于在 CPU、内存、I/O 设备等之间传输数据数据总线的宽度决定了计算机一次能传输的数据量32 位数据总线表示计算机一次可以传输 32 位(4 字节数据)地址总线Address BusAB主要用来传输地址信息CPU 通过地址总线指定访问内存单元 、I/O 设备地址地址总线的宽度决定了计算机的寻址能力如 32 位地址总线可以寻址2322^{32}232个不同的地址空间即 4GB 的内存空间计算机在直接寻址时需要从内存读取操作数要先将操作数的地址送到地址总线上。控制总线Control BusCB用于传输控制信号、时序信号和状态信息等协调计算机各部件的工作例如读 / 写信号、中断请求信号、时钟信号等都通过控制总线来传输按层次结构分类片内总线是集成电路芯片内部各功能单元之间的连线用于实现芯片内部的信息传输如 CPU 芯片内部的寄存器、算术逻辑单元ALU等之间的连接。系统总线连接计算机主机内各大部件如 CPU、内存、I/O 接口等是计算机系统的核心总线常见的系统总线有 ISA 总线、PCI 总线等外部总线用于计算机与外部设备之间的连接和通信如 USB 总线、IEEE 1394 总线等主要用于连接外部设备如打印机、扫描仪、移动存储设备等

相关新闻

NestJS + Kafka 秒杀系统完整实践总结

NestJS + Kafka 秒杀系统完整实践总结

文章目录前言1. 为什么在秒杀场景中用 Kafka 消息队列异步下单?2. Kafka 消息队列的基础概念回顾3. 秒杀中 Kafka 常见高频问题解析Q1. 如何保证 Kafka 消息不丢失?Q2. 如何保证秒杀下单的**幂等性**?Q3. Kafka 如何保证**顺序消费**&#xf…

2026/8/7 19:15:09 阅读更多 →
Java入门9 类和对象

Java入门9 类和对象

1. 面向对象的初步认知1.1 什么是面向对象Java是一门纯面向对象的语言(Object Oriented Program,简称OOP),在面向对象的世界里,一切皆为对象。面向对象是解决问题的一种思想,主要依靠对象之间的交互完成⼀件事情。用面向对象的思想…

2026/8/7 19:15:09 阅读更多 →
Arduino-LMIC区域配置指南:EU868/US915/AU915等频段设置

Arduino-LMIC区域配置指南:EU868/US915/AU915等频段设置

Arduino-LMIC区域配置指南:EU868/US915/AU915等频段设置 【免费下载链接】arduino-lmic LoraWAN-MAC-in-C library, adapted to run under the Arduino environment 项目地址: https://gitcode.com/gh_mirrors/ard/arduino-lmic Arduino-LMIC是一款强大的LoR…

2026/8/7 19:15:09 阅读更多 →

最新新闻

如何3分钟上手online-markdown?新手必备的微信公众号排版神器

如何3分钟上手online-markdown?新手必备的微信公众号排版神器

如何3分钟上手online-markdown?新手必备的微信公众号排版神器 【免费下载链接】online-markdown 在线Markdown转微信公众号内容工具 项目地址: https://gitcode.com/gh_mirrors/onl/online-markdown online-markdown是一款专为微信公众号运营者打造的Markdow…

2026/8/7 20:09:29 阅读更多 →
SPECTER2_aug2023refresh_base训练秘籍:从600万引文三元组到高效适配器微调

SPECTER2_aug2023refresh_base训练秘籍:从600万引文三元组到高效适配器微调

SPECTER2_aug2023refresh_base训练秘籍:从600万引文三元组到高效适配器微调 【免费下载链接】specter2_aug2023refresh_base 项目地址: https://ai.gitcode.com/hf_mirrors/LLM-Research/specter2_aug2023refresh_base SPECTER2_aug2023refresh_base是一款基…

2026/8/7 20:09:29 阅读更多 →
Underscore.php性能优化:如何避免常见的效率陷阱

Underscore.php性能优化:如何避免常见的效率陷阱

Underscore.php性能优化:如何避免常见的效率陷阱 【免费下载链接】Underscore.php PHP port of Underscore.js 项目地址: https://gitcode.com/gh_mirrors/un/Underscore.php Underscore.php作为PHP版的Underscore.js,是一款功能强大的工具库&…

2026/8/7 20:09:29 阅读更多 →
解密π₀ (Pi0) LeRobot配置文件:关键参数如何影响机器人行为

解密π₀ (Pi0) LeRobot配置文件:关键参数如何影响机器人行为

解密π₀ (Pi0) LeRobot配置文件:关键参数如何影响机器人行为 【免费下载链接】pi0_libero_base 项目地址: https://ai.gitcode.com/hf_mirrors/lerobot/pi0_libero_base π₀ (Pi0) LeRobot是一个功能强大的机器人控制框架,其配置文件直接决定了…

2026/8/7 20:09:29 阅读更多 →
为什么选择MLX框架?Inkling-Small-mlx-2bit在Apple Silicon上的5大优势解析

为什么选择MLX框架?Inkling-Small-mlx-2bit在Apple Silicon上的5大优势解析

为什么选择MLX框架?Inkling-Small-mlx-2bit在Apple Silicon上的5大优势解析 【免费下载链接】Inkling-Small-mlx-2bit 项目地址: https://ai.gitcode.com/hf_mirrors/mlx-community/Inkling-Small-mlx-2bit Inkling-Small-mlx-2bit是基于MLX框架构建的2bit量…

2026/8/7 20:09:29 阅读更多 →
Agent Governance Toolkit命令行工具详解:高效管理AI代理策略

Agent Governance Toolkit命令行工具详解:高效管理AI代理策略

Agent Governance Toolkit命令行工具详解:高效管理AI代理策略 【免费下载链接】agent-governance-toolkit AI Agent Governance Toolkit — Policy enforcement, zero-trust identity, execution sandboxing, and reliability engineering for autonomous AI agents…

2026/8/7 20:08:29 阅读更多 →

日新闻

为什么scrcpy成为Android投屏的终极解决方案:完整实战指南

为什么scrcpy成为Android投屏的终极解决方案:完整实战指南

为什么scrcpy成为Android投屏的终极解决方案:完整实战指南 【免费下载链接】scrcpy Display and control your Android device 项目地址: https://gitcode.com/GitHub_Trending/sc/scrcpy 想要将Android手机屏幕完美投射到电脑上,享受大屏操作的自…

2026/8/7 0:00:19 阅读更多 →
如何在5分钟内掌握Tom Select:打造现代化表单选择器的终极指南

如何在5分钟内掌握Tom Select:打造现代化表单选择器的终极指南

如何在5分钟内掌握Tom Select:打造现代化表单选择器的终极指南 【免费下载链接】tom-select Tom Select is a lightweight (~16kb gzipped) hybrid of a textbox and select box. Forked from selectize.js to provide a framework agnostic autocomplete widget wi…

2026/8/7 0:00:19 阅读更多 →
5分钟快速上手:NSZ压缩工具终极指南,轻松管理Switch游戏文件

5分钟快速上手:NSZ压缩工具终极指南,轻松管理Switch游戏文件

5分钟快速上手:NSZ压缩工具终极指南,轻松管理Switch游戏文件 【免费下载链接】nsz NSZ - Homebrew compatible NSP/XCI compressor/decompressor 项目地址: https://gitcode.com/gh_mirrors/ns/nsz 你是否在为Nintendo Switch游戏文件占用大量存储…

2026/8/7 0:00:19 阅读更多 →

周新闻

最大流算法详解:从水管网络到Ford-Fulkerson与Dinic实战

最大流算法详解:从水管网络到Ford-Fulkerson与Dinic实战

1. 从水管网络到最大流:一个核心问题的诞生想象一下,你是一个城市供水系统的总工程师。你的城市有多个水源(水库),需要通过一个复杂的地下管道网络,将水输送到各个居民区。每条管道都有其最大通水能力&…

2026/8/6 22:02:27 阅读更多 →
基于Springboot的企业门户网站(源码+LW+调试文档+讲解)

基于Springboot的企业门户网站(源码+LW+调试文档+讲解)

温馨提示:本人主页置顶文章(点我)开头有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:本人主页置顶文章(点我)开头有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:本人主页置顶文章(点我)开头有 CSDN 平台…

2026/8/6 22:02:27 阅读更多 →
MATLAB xcorr函数详解:从互相关原理到四大实战应用

MATLAB xcorr函数详解:从互相关原理到四大实战应用

1. 从一次信号“找茬”说起:为什么我们需要互相关几年前,我在处理一组声学传感器数据时遇到了一个棘手的问题。我有两个麦克风记录了一段相同的音频信号,理论上它们接收到的声音波形应该非常相似,只是由于麦克风位置不同&#xff…

2026/8/6 22:02:27 阅读更多 →

月新闻

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南 【免费下载链接】BaiduNetdiskPlugin-macOS For macOS.百度网盘 破解SVIP、下载速度限制~ 项目地址: https://gitcode.com/gh_mirrors/ba/BaiduNetdiskPlugin-macOS 还在为百度网盘macOS版的龟速下…

2026/8/7 17:02:37 阅读更多 →
终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换 【免费下载链接】ncmdump 项目地址: https://gitcode.com/gh_mirrors/ncmd/ncmdump 还在为网易云音乐下载的NCM格式文件无法在其他播放器播放而烦恼吗?ncmdump解密工具帮你轻松解决这个困…

2026/8/6 22:02:28 阅读更多 →
HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

AgentCard 智能体卡片:为英语学习 App 打造桌面级学习助手适用平台:HarmonyOS 7.0 (API 26 Beta)一、引言 HarmonyOS 7.0(API 26 Beta)新增了 AgentCard 智能体卡片能力,这是继 HMAF(鸿蒙智能体框架&#x…

2026/8/7 17:02:36 阅读更多 →