🌱博客主页:大寄一场.
😘博客制作不易欢迎各位👍点赞+⭐收藏+➕关注
目录
前言
第一章 计算机系统概论计算机软件的发展
计算机硬件的基本组成
计算机系统的层次结构
计算机的性能指标
第二章 数据表示 与 第三章 数据运算与运算器
第四章 存储系统
存储器的层次结构
主存储器的技术指标
替换算法
写策略
虚拟存储器
第五章 指令系统
第六章 中央处理器
第七章 总线系统
前言
欢迎来到这篇博客,我将为大家提供一份计算机组成原理期末复习笔记。在本次复习中,我们将回顾和巩固计算机组成原理的重要知识点,包括计算机系统的基本结构、指令集架构、存储器层次结构、总线和通道以及输入输出设备的工作原理等。
计算机组成原理是计算机科学和工程领域的核心课程之一,对于理解计算机系统的运作原理和设计计算机硬件具有重要意义。通过本次复习笔记的阅读,你将加深对计算机组成原理的理解,提高自己的知识水平和技能。
希望这份复习笔记对你有所帮助,如果你在学习过程中遇到任何问题或需要进一步解释,请随时在评论区留言。祝你考试顺利!
本文参考教材:周建敏主编的《计算机组成原理》
B站视频: 王道计算机考研 计算机组成原理;
第一章 计算机系统概论
学到这一章我们便会想知道什么是计算机系统?
计算机系统=软件(具有各种特殊功能的程序)+硬件(计算机的实体)
计算机软件的发展
计算机软件技术的发展,促进计算机系统的发展。
计算机语言的发展经历了面向机器的机器语言和汇编语言、面向问题的高级语言。其中高级语言的发展真正促进了软件的发展,它经历了从科学计算和工程计算的 FORTRAN、结构化程序设计的 PASCAL到面向对象的C++和适应网络环境的Java。
同时,直接影响计算机系统性能提升的各种系统软件也有了长足的发展,特别是操作系统,如 Windows、 Linux、UNIX等。
计算机硬件的基本组成
计算机的硬件包括运算器、控制器、存储器、输入/输出设备和总线。随着半导体制造工艺的进步,将运算器和控制器集成在一个芯片上,这样的集成电路芯片称为中央处理器 (CPU)。
- 运算器(Calculator):负责执行算术和逻辑运算,处理数据的基本操作。
- ACC:累加器(accumulator),一种计算机中的寄存器,用于保存运算结果。
- ALU:算术逻辑单元(arithmetic logic unit),用于执行算术和逻辑运算。
- MQ:乘法器-商寄存器(multiply-quotient),用于存储乘法操作的结果和商。
- X:通用的操作数寄存器,用于存放操作数
- 控制器(Controller):控制计算机各部件的工作,确保它们按照正确的顺序和时序协同工作。
IR:指令寄存器,存放当前执行的指令
PC:程序计数器,存放下一条指令地址,有自动加1功能
- 存储器(Memory):用于暂时存储数据和程序。主要有内存(主存)(RAM随机存储器,ROM只读存储器)和辅助存储器(硬盘、固态硬盘等)。
- 存储单元(Storage Unit):是计算机中用于存储数据的基本单位,通常是一个二进制位(bit)或八个二进制位(byte)。
- 存储字(Storage Word):是计算机中用于存储一个数据项的基本单位,通常由一个或多个存储单元组成。例如,一个 32 位的存储字可以存储 4 个字节的数据,每个字节包含 8 个二进制位。
- 存储字长(Storage Word Length):是指一个存储单元可以存储的二进制位数。例如,一个 32 位的存储字长可以存储 32 个二进制位,而一个 64 位的存储字长可以存储 64 个二进制位。
- 存储元(Storage Element):是计算机中用于存储单个数据的最小单位,通常是一个字节(byte)或两个字节(word)。例如,一个字节可以存储一个八进制数位、一个十进制数位或两个二进制数位。
MAR(Memory Address Register)(内存地址寄存器),用于存储CPU将要访问的内存地址,是CPU和主存之间传送地址信息的桥梁。当CPU需要访问主存中的数据时,首先将要访问的地址存储到MAR中,然后通过地址总线将地址发送到主存,主存根据地址读取对应的数据并将其送回给CPU。
MDR(Memory Data Register)(内存数据寄存器),用于存储CPU与主存之间传输的数据。当CPU需要进行读取操作时,主存通过数据总线将数据传回给CPU,并存储到MDR中,CPU接着就可以对数据进行计算或处理。当CPU需要进行写入操作时,CPU将要写入的数据存储到MDR中,主存通过数据总线将数据写入到对应的地址中。
- 输入/输出设备(Input/Output Devices):负责接收外部数据并将其传输到计算机内部,以及将计算机内部的数据输出到外部设备。常见的输入/输出设备有键盘、鼠标、显示器、打印机等。
- 总线(Bus):连接计算机各部件的通信系统。总线负责在各个部件之间传输数据、地址和控制信号。
冯诺依曼计算机
早期的冯·诺依曼机以运算器为中心,且是单处理机,最根本的特征是采用“存储程序”原理,基本工作方式是控制流驱动方式
冯诺依曼计算机的特点:
-
存储程序:计算机的程序和数据都存储在同一个内存中,而程序可以被当做数据进行处理,从而实现程序可以自我修改和自我执行的特性。
-
指令流控制:计算机按照指令流的顺序执行程序,每行指令完成后跳转到下一行继续执行,这种控制方式简洁高效。
-
二进制代码:计算机中所有的数据和指令都以二进制的形式表示,使得计算机处理数据的方式简单而统一。
-
高度灵活:计算机可以根据不同的需求,通过改变指令或数据的存储位置,来实现不同的功能,具有高度灵活性和可编程性。
-
通用性:冯诺依曼计算机的架构支持各种类型的数据处理和算法实现,适用于各种领域的应用。
现代计算机
以存储器为中心
CPU=运算器+控制器
计算机系统的层次结构
计算机的性能指标
计算机的性能指标包括主频、CPU 时钟周期、CPI、CPU 执行时间、运算速度、基本字长、主存容量和主存存取周期等。
- 主频(CPU Clock Frequency):指 CPU 的主频,也就是 CPU 内部时钟的频率。主频越高,CPU 的计算速度就越快。
CPU主频=1/ CPU时钟周期
- CPU 时钟周期(CPU Clock Cycle):指 CPU 内部时钟的一个完整周期的时间长度。CPU 时钟周期越短,CPU 执行指令的速度就越快。
- CPI(Cache Hit Rate in percent):指 CPU 缓存命中率,即 CPU 从缓存中读取数据的成功率。CPI 越高,CPU 从缓存中读取数据的速度就越快。
执行一条指令的耗时=CPI*CPU时钟周期
- CPU 执行时间(Execution Time):指 CPU 对一条指令的执行时间。CPU 执行时间越短,CPU 处理指令的速度就越快。
CPU执行时间=CPU时钟周期数/主频=(指令条数*CPI)/主频
- 运算速度:指 CPU 在执行算术或逻辑运算时的速度。运算速度越快,CPU 可以更快地完成各种计算任务。
- IPS是指每秒钟可以执行的指令数,它用于衡量计算机的处理速度。IPS的值越高,计算机的处理能力就越强。IPS通常用于衡量CPU的性能。
- FLOPS是指每秒浮点运算次数,它用于衡量计算机的计算速度。FLOPS的值越高,计算机可以在单位时间内执行更多的浮点运算。FLOPS通常用于衡量GPU或其他处理器的性能。
IPS=主频/平均CPI
- 基本字长(Basic Element Size):指 CPU 每个指令所操作的基本数据单元的大小。基本字长越小,CPU 可以更快地处理数据。
- 主存容量(Main Memory Capacity):指计算机主存(也称为随机存储器)的容量大小。主存容量越大,计算机可以存储更多的数据和程序。
- 主存存取周期(Memory Access Cycle):指 CPU 从主存中读取或写入数据所需的时间长度。主存存取周期越短,CPU 从主存中读取或写入数据的速度就越快。
第二章 数据表示 与 第三章 数据运算与运算器
博主将俩个章节放在一起
关于这一章的学习大家可以参考博主之前的博文《深度剖析数据在内存中的存储》
本章需要掌握的知识点如下:
- 字符信息属于符号数据,是处理非数值领域的问题,国际上采用的字符系统是ASCII码。
- 直接使用西文标准键盘输入汉字,进行处理,并显示打印汉字,是一项重大成就。为此要了解汉字的输入编码、汉字内码、字模码等3 种不同用途的编码。
校验码:
1.奇偶效验
2.海明码
3.循环冗余
- 一个定点数由符号位和数值位两部分组成。按小数点位置不同,定点数有纯小数和纯整教两种表示方法。
- 数的真值变成机器码时有4种表示方法:原码表示法、反码表示法、补码表示法和移码表示法。其中,移码主要用于表示浮点数的阶码 E,以利于比较两个指数的大小。
- 按IEEE 754标准,一个浮点数由符号位S、阶码E、尾数M三个域组成。其中阶码E的值等于指数的真值e加上一个固定偏置值。
- 原码加法规则:先判断符号位,若符号位相同,则绝对值相加,结果符号位不变:若符号位不同,则绝对值大的数减去绝对值小的数,结果符号位与绝对值大的数相同。
- 补码加法的特点是符号位要作为数的一部分参加运算,并且要在模 M的意义下相加,即超过M的进位要丢掉。
- 当运算结果超过了数的表示范围时称为溢出。
- 在计算机中,乘法运算由累加和右移操作实现。根据机器数的不同,可分为原码一位乘法和补码一位乘法.
- 完成浮点加减法运算的操作过程大体分为6步:0操作数检查,比较阶码大小并完成对阶,尾数求和运算,结果规格化,舍入处理,溢出判断。
- 算术逻辑单元ALU的基本组成是加法器。
第四章 存储系统
存储器的功能是存放指令和数据,它使计算机具有了记忆能力,进而具备了自动操作能力,因此,存储器在计算机中具有重要的地位。本章首先介绍存储器的分类
存储器分类:
存储器的层次结构
主存储器的技术指标
- 存储容量:主存储器的存储容量通常以字节(byte)为单位进行计算,例如1GB=1024MB=1,073,741,824字节。
存取容量=存取单元个数*存储字长/8
存储器容量扩展
- 位扩展:位扩展是指通过增加主存中每个地址所对应的二进制位数来增加主存的容量。例如,将主存从8位扩展到16位或32位,可以使主存能够存储更多的数据。位扩展通常用于CPU速度较快的计算机系统中,因为它需要更多的时钟周期来完成数据传输。
存储芯片与CPU的引脚连接方式:
(1)地址线:各芯片的地址线直接与CPU地址线连接。
(2)数据线:各芯片的数据线分别与CPU数据线的不同位连接。
(3)片选及读/写线:各芯片的片选及读/写信号线直接与 CPU 的访存及读/写信号线
连接。- 字拓展:字拓展是指通过增加主存中每个地址所对应的字(即一组二进制位)的数量来增加主存的容量。
例如,将主存从4KB扩展到8KB或16KB,可以使主存能够存储更多的数据。字拓展通常用于CPU速度较慢但需要大量内存的计算机系统中,因为它可以在不增加时钟周期的情况下提高系统的性能。
存储芯片与CPU的引脚连接方式:
(1)地址线:各芯片的地址线与 CPU 的低位地址线直接连接。
(2)数据线:各芯片的数据线直接与 CPU 数据线连接。
(3)读/写线:各芯片的读/写信号线直接与 CPU 的读/写信号线连接
(4)片选信号:各芯片的片选信号由 CPU的高位地址和访存信号产生。- 字位同时扩展:位字同时扩展是指同时增加主存中每个地址所对应的二进制位数和字的数量来增加主存的容量。(先位拓展后字拓展)
例如,将主存从8位扩展到16位并将其从4KB扩展到8KB,可以使主存能够存储更多的数据,并且在处理大量数据时具有更高的性能。
- 存取时间:存取时间是从启动一次访问操作到完成该操作所经历的时间,以 ns 为单位,存取时间又分读出时间和写入时间两种。
- 存取周期:存取周期是存储器连续启动两次独立的访问操作所需的最小间隔时间,以 ns 为单位即。
存取周期=存取时间+复原时间。
- 存储器带宽:存储器带宽是每秒从存储器进出的最大数据量,单位为 b/s(位/秒)或者 B/s(字节/秒)。
带宽=每周期的信息量/周期时长
本章需要掌握的知识点如下:
- 对存储器的要求是容量大、速度快、成本低。为了解决这三方面的矛盾,计算机采用多级存储体系结构,即 Cache、主存和辅存。
- 广泛使用的 SRAM 和DRAM 都是半导体随机存储器,前者速度比后者快,但集成度不如后者高。二者的优点是体积小,可靠性高,价格低廉,缺点是断电后不能保存信息。
特点 | SRAM | DRAM |
存储原理 | 触发器 | 电容 |
破坏性读出 | 非 | 想 |
需要刷新 | 不需要 | 需要 |
送行列地址 | 同时送 | 分两次送 |
运行速度 | 快 | 慢 |
集成度 | 低 | 高 |
发热量(功率) | 大 | 小 |
存储成本 | 高 | 低 |
主要用途 | 高速缓存 | 主机内存 |
- 只读存储器和闪速存储器正好弥补了 SRAM 和DRAM 的缺点,即使断电也仍能保存原先写入的数据。特别是闪速存储器能提供高性能、低功耗、高可靠性及移动性,是一种全新的存储器体系结构。
- 多模块交叉存储器属于并行存储器结构。Cache 是一种高速缓冲存储器,是为了解决 CPU 和主存之间速度不匹配而采用的一项重要的硬件技术。主存与 Cache 的地址映射有直接、全相联、组相联三种方式。其中组相联方式是前二者的折中方案,适度地兼顾了二者的优点又尽量避免其缺点,从灵活性、命中率、硬件投资来说较为理想,因而得到了普遍的应用。
- 全相联映射方式:全相联映射方式是指在主存中每个地址所对应的物理位置是连续的,并且可以直接通过地址来访问内存中的数据。
优点:访问速度非常快,因为可以直接访问内存中的数据。
缺点:当需要扩展主存容量时,需要重新分配物理空间,这会导致系统性能下降。 - 直接映射方式:直接映射方式是指在主存中每个地址所对应的物理位置是不连续的,但是可以通过一个映射表将地址映射到物理位置。
优点:可以根据需要灵活地扩展主存容量,而不需要重新分配物理空间。
缺点:访问速度相对较慢,因为需要通过映射表来访问内存中的数据。 - 组相联映射方式:组相联映射方式是指在主存中每个地址所对应的物理位置是不连续的,但是可以将一组相邻的地址映射到同一个物理位置上。
优点:可以提高访问速度,因为可以同时访问多个相邻的地址。
缺点:当需要扩展主存容量时,需要重新分配物理空间,这会导致系统性能下降。
替换算法
- 随机算法(RAND):随机地确定替换的 Cache块。它的实现比较简单,但没有依据程序访问的局部性原理,故可能命中率较低
- 先进先出算法(FIFO):选择最早调入的行进行替换。它比较容易实现,但也没有依据程序访问的局部性原理,可能会把一些需要经常使用的程序块(如循环程序)也作为最早进入 Cache的块替换掉。
- 近期最少使用算法(LRU):依据程序访问的局部性原理选择近期内长久未访问过的存储行作为替换的行,平均命中率要比FFO要高,是堆栈类算法。LRU算法对每行设置一个计数器, Cache每命中一次,命中行计数器清0,而其他各行计数器均加1,需要替换时比较各特定行的计数值,将计数值最大的行换出。
- 最不经常使用算法(LFU):将一段时间内被访问次数最少的存储行换出。每行也设置一个计数器,新行建立后从0开始计数,每访问一次,被访问的行计数器加1,需要替换时比较各特定行的计数值,将计数值最小的行换出。
写策略
写回法:当写 Cache 命中时,先将更新内容写入 Cache,并做标记,在特定时间将 Cache 内容写回主存。
写贯穿(全写法): 当写 Cache 命中时,同时写入 Cache 和主存。其优点是一致性好,方法简单可靠;缺点是时间开销为访存时间,速度会受影响。
虚拟存储器
虚拟存储器是一个逻辑模型
功能:用户给出一个地址,叫做虚地址或逻辑地址虚拟存储器要给出该地址对应的数据。
实现:由辅助硬件将虚地址映射到主存当中的某个单元,主存单元地址称为实地址或物理地址。
- 页式虚拟存储系统中,虚地址空间和主存空间都被分成大小相等的页,通过页表可以把虚地址转换成实地址。
- 分页方式的缺点是页长与程序的逻辑大小不相关,而分段方式则可按照程序的自然分界将主存空间划分为长度可以动态改变的存储区域。在段式虚拟存储系统中,虚地址由段号和段内地址(偏移量)组成。段页式虚拟存储器是段式虚拟存储器和页式虚拟存储器的结合,程序按页进行调入和调出操作,但可按段进行编程、保护和共享。
第五章 指令系统
本章需要掌握的知识点如下:
- 一台计算机中所有机器指令的集合,称为这台计算机的指令系统。
- 指令格式是指令字用二进制代码表示的结构形式,通常由操作码字段和地址码字段组成。操作码字段表示指令的操作特性与功能,而地址码字段指示操作数的地址。指令中可以有零个、一个、两个、三个或多个地址码,分别称为零地址指令一地址指令、二地址指令、三地址指令或多地址指令。
指令寻址方式
- 形成操作数地址的方式,称为数据寻址方式。操作数可放在专用寄存器、通用寄存器、主存和指令中。数据寻址方式有隐含寻址、立即寻址、直接寻址、存储器间接寻址、寄存器寻址、寄存器间接寻址、相对寻址、基值寻址、变址寻址、段寻址和堆栈寻址等多种。
- 直接寻址:指令中给出了操作数的地址,指令操作直接读取该地址上的内容。
- 间接寻址:指令中给出了一个地址,该地址存储了操作数的地址。指令操作需要先读取该地址上的内容,然后再读取操作数的内容。
- 寄存器寻址:指令中使用寄存器作为操作数的地址,指令操作直接使用寄存器中存储的内容。
- 基址寻址:指令中使用基址寄存器和一个偏移量来计算操作数的地址。
- 变址寻址:指令中使用变址寄存器和一个偏移量来计算操作数的地址。
- 相对寻址:指令中使用一个相对地址或一个相对偏移量来计算操作数的地址。
- 不同机器有不同的指令系统。一个较完善的指令系统应包含数据传送指令、数据运算指令、程序控制指令、输入输出指令、字符串处理指令、处理机控制指令和特权指令等。
- RISC 指令系统是目前计算机发展的主流,也是 CISC 指令系统的改进。
CISC: Complex Instruction Set Computer 复杂指令集计算集
设计思路:一条指令完成一个复杂的基本功能。
代表:x86架构,主要用于笔记本、台式机等
RISC: Reduced Instruction Set Computer精简指令集计算机
设计思路:一条指令完成一个基本“动作”:
多条指令组合完成一个复杂的基本功能。代表:ARM架构,主要用于手机、平板等
对比项目 | CISC | RISC |
指令系统 | 复杂,庞大 | 简单,精简 |
指令数目 | 一般大于200条 | 一般小于100条 |
指令字长 | 不固定 | 定长 |
可访存指令 | 不加限制 | 只有Load/Store指令 |
各种指令执行时间 | 相差较大 | 绝大多数在一个周期内完成 |
各种指令使用频度 | 相差很大 | 都比较常用 |
通用寄存器数量 | 较少 | 多 |
目标代码 | 难以用优化编译生成高效的目标代码程序 | 采用优化的编译程序,生成代码较为高效 |
控制方式 | 绝大多数为微程序控制 | 绝大多数为组合逻辑控制 |
指令流水线 | 可以通过一定方式实现 | 必须实现 |
指令助记符
典型指令 | 指令助记符 | 助记符含义 | 二进制操作码 |
加法 | ADD | Add | 001 |
减法 | SUB | Subtract | 010 |
传送 | MOV | Move | 011 |
跳转 | JMP | Jump | 100 |
转子 | JSR | Jump subroutine | 101 |
存储 | STR | Store | 110 |
读数 | LDA | Load | 111 |
第六章 中央处理器
本章需要掌握的知识点如下:
CPU的功能:
- CPU是计算机的中央处理部件,具有指令控制、操作控制、时间控制、数据加工和中断处理等基本功能。
指令控制:完成取指令、分析指令和执行指令的操作,即程序的顺序控制。
操作控制:一条指令的功能往往是由若干操作信号的组合来实现的。CPU管理并产生由内存取出的每条指令的操作信号,把各种操作信号送往相应的部件,从而控制这些部件按指令的要求进行作。
时间控制:对各种操作加以时间上的控制。时间控制要为每条指令按时间顺序提供应有的控制信号。
数据加工:对数据进行算术和逻辑运算。
中断处理:对计算机运行过程中出现的异常情况和特殊请求进行处理。
- CPU 中至少有6类寄存器:指令寄存器、程序计数器、地址寄存器、数据缓冲寄存器、累加寄存器和程序状态寄存器。
种类 | 功能 |
IR | 指令寄存器(存储当前正在执行的指令) |
PC | 程序计数器(存储下一条指令的地址) |
AR | 地址寄存器(存储当前指令的操作数或数据的地址) |
DR | 数据缓冲寄存器(存储数据缓存区的数据) |
ACC | 累加寄存器(通常用于进行算术运算或逻辑运算) |
PSW | 状态寄存器(存储一些与程序状态相关的信息) |
种类 | 功能 |
EAX | 累加器(加法乘法指令) |
EBX | 基址寄存器(在内存寻址时存放基地址) |
ECX | 计数器(在循环和串操作中充当计数器) |
EDX | 数据寄存器(在I/O指令中可用作端口地址寄存器,乘除指令中用作辅助累加器) |
EBP | 寄存器存放当前线程的栈底指针 |
ESP | 寄存器存放当前线程的栈顶指针 |
ESI | 源变址寄存器 |
EDI | 目的变址寄存器 |
- CPU 从存储器取出一条指令并执行这条指令的时间和称为指令周期。
指令周期: CPU从主存中每取出并执行一条指令所需的全部时间指令周期常常用若干机器周期来表示,机器周期又叫CPU周期。1个机器周期又包含若干时钟周期(也称为节拍、T周期或CPU时钟周期,它是CPU操作的最基本单位)。
- 时序信号产生器提供CPU 周期(也称机器周期)所需的时序信号。操作控制器利用这些时序信号进行定时,有条不素地取出一条指令并执行这条指令。
- 硬布线控制器的基本思想是:某一微操作控制信号是指令操作码译码输出、时序信号和状态条件信号的逻辑函数,即用布尔代数写出逻辑表达式,然后用门电路触发器等器件实现。
硬布线工作原理:
微操作控制信号由组合逻辑电路根据当前的指令码、状态和时序,即时产生
- 微程序设计技术是利用软件方法设计操作控制器的一门技术,具有规整性、灵活性、可维护性等一系列优点,因而在计算机设计中得到了广泛应用。
微程序工作原理:
事先把微操作控制信号存储在一个专门的存储器(控制存储器)中,将每一条机器指令编写成一个微程序,这些微程序可以存到一个控制存储器中,用寻址用户程序机器指令的办法来寻址每个微程序中的微指令。
- 不论微型机还是超级计算机,并行处理技术已成为计算机技术发展的主流。并行处理技术可贯穿于信息加工的各个步骤和阶段。概括起来,主要有三种形式:时间并行,空间并行,时间并行+空间并行。
- 流水CPU是以时间并行性为原理构造的处理机,是一种非常经济而实用的并行技术。目前的高性能微处理机几乎无一例外地使用了流水技术。流水技术中的主要问题是资源相关、数据相关和控制相关。
指令流水:是指将一条计算机指令划分为多个阶段,多个指令在各个阶段并行执行的计算机架构。通过指令流水,可以有效地提高计算机的运行效率和吞吐量。具体来说,指令流水将一条指令分为取指、译码、执行、访存和写回等多个阶段,不同指令在不同阶段并行执行,使得计算机可以同时进行多条指令的处理,从而提高计算机的运行速度。
流水线的性能指标包括以下几个方面:
- 吞吐率:吞吐率是指在单位时间内流水线所完成的任务数量,或是输出结果的数量。设任务数为n;处理完成n个任务所用的时间为Tk
TP(吞吐率)=n/Tk
- 加速比:完成同样一批任务,不使用流水线所用的时间与使用流水线所用的时间之比
设:T0表示不使用流水线时的执行时间,即顺序执行所用的时间;Tk表示使用流水线时的执行时间
S=
-
流水线吞吐率(Pipeline throughput):指单位时间内,从流水线中处理器的后端输出的指令数。
-
硬件使用效率(Hardware utilization):指流水线中使用的硬件资源的利用率。硬件使用效率越高,处理速度就越快。
第七章 总线系统
总线的特性
- 机械特性:尺寸、形状、管脚数、排列顺序
- 电气特性:传输方向和有效的电平范围
- 功能特性:每根传输线的功能(地址、数据、控制)
- 时间特性:信号的时序关系
总线的分类
-
片内总线:片内总线是连接 CPU 和芯片内部其他部件的总线,它可以实现 CPU 与芯片内部其他部件的数据交换和控制信号传输。常见的片内总线有数据总线、地址总线和控制总线等。
-
系统总线:系统总线是连接 CPU 和主板上的其他设备(如内存、显卡、声卡等)的总线,它可以实现不同设备之间的数据交换和控制信号传输。常见的系统总线有扩展总线、I/O 总线和内存总线等。
-
通信总线:通信总线是连接计算机与其他设备(如打印机、扫描仪、网络适配器等)的总线,它可以实现计算机与其他设备之间的数据交换和控制信号传输。常见的通信总线有串行通信总线、并行通信总线和网络通信总线等。
-
串行总线:串行总线是指数据一次只能传输一位,并且需要在发送端和接收端之间进行同步,以保证数据的准确性和可靠性。串行总线的传输速率较慢,但可以通过增加线路数量提高传输速率。常见的串行总线有RS-232、RS-485、USB等。
-
并行总线:并行总线是指数据同时传输多位,并且不需要在发送端和接收端之间进行同步,以提高传输速率。并行总线的传输速率较快,但需要在多个线路上并行传输,增加了复杂度和难度。常见的并行总线有PCI、AGP、PCI Express等。
-
同步总线:同步总线是指数据传输需要采用时钟信号进行同步,以保证数据的准确性和可靠性。在同步总线上,发送端和接收端必须严格按照时序进行操作,否则会导致数据错误或丢失。常见的同步总线有RS-232、RS-485等。
-
异步总线:异步总线是指数据传输不需要采用时钟信号进行同步,可以在任意时刻开始和结束,但容易产生干扰和错误。在异步总线上,发送端和接收端的操作没有严格的时序要求,因此可以更加灵活地适应不同的应用场景。常见的异步总线有USB、IEEE 1394等。
在计算机系统中,CPU 对 I/O 设备的管理方式有程序查询方式、程序中断方式、DMA 方式、通道方式和 IO 处理机方式。
程序查询方式:CPU 通过查询 I/O 设备的寄存器或内存地址来获取设备状态和控制信息,这种方式需要 CPU 与 I/O 设备之间进行数据传输,速度较慢。
程序中断方式:
程序中断方式是各类计算机中广泛使用的一种数据交换方式。当某一外设的数据准备就绪后,它“主动”向 CPU 发出请求信号。CPU 响应中断请求后,暂停运行主程序,自动转移到该设备的中断服务子程序,为该设备进行服务,结束时返回主程序。中断处理过程可以嵌套进行,优先级高的设备可以中断优先级低的中断服务程序。DMA 方式:DMA(Direct Memory Access)是一种数据传输方式,它可以在不使用 CPU 的帮助下将数据从外设直接传输到内存中,或者从内存中传输数据到外设中。CPU 通过 DMA控制器控制 DMA 通道,实现对 I/O 设备的高速数据传输。
DMA 技术的出现,使得I/O 设备可以通过 DMA 控制器直接访问主存,与此同时CPU 可以继续执行程序。DMA 传送方式有 3 种:停止 CPU 访问主存、周期挪用DMA与CPU 交替访问主存通道方式:通道是一种硬件接口,它提供了一种高效的数据传输方式。通道可以被看作是一条双向的通信路径,CPU 可以通过通道与 I/O 设备进行高速数据传输。通道通常用于连接不同类型的 I/O 设备,如磁盘驱动器、网络适配器等。
通道是一个特殊功能的处理器。它有自己的指令和程序专门负资数据输入输出的传输控 制,从而使 CPU将“传输控制”的功能下放给通道,CPU 只负责“数据处理”功能。IO 处理机方式:IO 处理机是一种专门的硬件设备,它可以执行各种 I/O 操作,如读取磁盘、发送网络数据包等。CPU 可以利用 IO 处理机来执行一些复杂的 I/O 操作,提高系统的性能和效率。
I/O处理机的功能与一般的处理机相仿,有时甚至于就是一台普通的通用计算机,I/O处理机能够承担起输入输出过程中的全部工作,完全不需要 CPU参与。
本片文章就到此结束啦,希望佬们多多指教