Computer Composition Principle
计算机组成原理
==HIghLIght ==
计算机系统概论
计算机基本组成
冯诺依曼计算机
- 特点
- 五大部件:运算器(ALU),控制器(CU),存储器(MEM),输入输出(I/O)
- 指令与数据同等地位存储与存储器
- 使用二进制
- 指令由操作码和地址码组成
- 指令在存储器内顺序存放
- 以运算器为中心(现代计算以存储器为中心)
计算机工作过程
存储器的基本组成
存储体:由存储单元组成(存储单元由存储原件组成,存储原件存储0和1)
存储字:存储单元中的二进制代码组合(?)
存储字长:
MAR:存储器的地址寄存器
MDR:存储器的数据寄存器
运算器的基本组成以及操作过程
- ACC: 被加数,被减数,乘积高位,被除数,余数
- ALU(算术逻辑单元):
- MQ: 乘数,乘积低位
控制器的基本组成
- CU:控制单元
- IR:指令寄存器
- PC:程序计数器
计算机硬件的主要技术指标
- 机器字长
CPU一次能处理的数据位数与ALU中的寄存器位数有关 - 运算速度
- MIP(Million Instructions Per Second)
表示每秒钟能够执行的指令数量。不考虑指令的复杂度和执行时间。
- MIPS(Million Instructions Per Second)
表示每秒钟能够执行的指令数量。MIPS通常用于描述某个特定计算机系统的实际性能,考虑了指令的复杂度和执行时间。
- CPI(Cycles Per Instruction)
表示每条指令执行所需的时钟周期数。CPI的倒数也常被用作衡量计算机性能的指标之一,称为IPC(Instructions Per Cycle)。
- FLOPS(Floating Point Operations Per Second)
表示每秒钟能够执行的浮点运算次数。FLOPS是衡量计算机在执行浮点运算时的速度和效率的重要指标之一。
系统总线
基本概念
- 使用总线的原因:希望随时增加或减少设备
- 总线的定义: 链接多个部件的信息传输线,是各部件信息共享的传输介质
总线的分类
按照数据传输方式:并行传输总线,串行传输总线
片内总线
芯片内部的总线
系统总线
- 系统总线的定义:是指CPU,主存,I/O各大部件之间的信息传输线
数据总线
传输各部件之间的数据信息
- 特点
- 双向传输
- 与机器字长,存储字长有关
- 数据总线位数即数据总线宽度
地址总线
- 特点:
- 用于指明CPU欲访问的存储单元或I/O端口的地址。
- 单向输出(仅由CPU输出)
控制总线
为了使各个部件在不同时刻占有总线使用权
- 特点
- 对于特定控制线:单向的,对于控制总线总体来说是双向的
- 对于CPU来说,控制信号既有输出也有输入
- 常见控制信号
时钟,复位,总线请求和允许,中断请求和响应,存储器读写,IO读写,传输响应
通信总线
目的:用于计算机系统之间活着计算机系统与其他系统之间的通信。
传输方式
- 串行通信总线(远距离)
- 并行通信总线(近距离)
总线的性能指标
- 总线宽度(数据总线的宽度)
- 总线带宽(总线的数据传输速率)
- 时钟同步/异步:分为同步总线,异步总线
- 总线复用:分时使用与地址或者数据
- 信号线数:地址,数据,控制总线总和
- 总线控制方式
- 其他指标
总线结构
总线标准
- ISA
- EISA
- VL-BUS
- PCI
- AGP
总线控制
总线判优控制
- 总线判优控制的分类
- 集中式:有链式查询,计数器定时查询,独立请求方式
- 分布式
链式查询
- 特点:
- 离总线控制部件最近的设备具有最高优先级
- 只需很少几根线
- 容易扩充设备
- 对电路故障很敏感
- 优先级低的设备很难获取请求
计数器定时查询
- 特点:
- 优先次序可变,并且是顺序,
- 设备使用总线的优先级相等
- 增加了控制线数,控制复杂。
- 对电路故障敏感度不如链式查询
独立请求方式
- 特点:
- 响应速度快
- 优先次序灵活
- 控制线多,控制复杂
总线通信控制
- 目的:解决通信双方协调配合的问题。
- 分类:
- 通常有:同步,异步,半同步,分离式。
总线周期
- 定义:完成一次总线操作的时间。
- 申请分配阶段
- 寻址阶段
- 传数阶段
- 结束阶段
同步通信
异步通信
异步通信的应答方式:不互锁,半互锁,全互锁。
半同步通信
“半同步通信”是一种混合型通信模型,结合了同步通信和异步通信的特点。在半同步通信中,通常存在两个部分:一个同步部分和一个异步部分。
- 同步部分:在同步部分,通信的发送者和接收者会在通信开始和结束时进行显式的同步,以确保数据的正确传输。这意味着发送方和接收方会通过一些同步机制来进行通信,例如信号量、条件变量或者消息队列等。在同步部分中,通信的发送和接收通常是一个阻塞操作,直到通信完成。
- 异步部分:在异步部分,通信的发送者和接收者不需要严格的同步,可以在不同的时间进行数据的发送和接收。在异步部分中,通常采用非阻塞的方式进行通信,发送方可以继续执行其他任务,而不需要等待通信完成。
半同步通信通常用于解决在异步通信中可能出现的数据一致性问题,同时又希望通过同步通信确保数据的正确性和完整性。这种通信模型可以在一定程度上提高通信的灵活性和效率,同时保持数据的安全性。
分离式通信
“分离式通信”是一种通信模型,其中通信的发送和接收是通过分开的机制进行的。在分离式通信中,发送者和接收者之间不直接进行数据传输,而是通过中间的通信通道或者中介进行交互。
通常,分离式通信包含以下两个主要组成部分:
- 发送端(Sender):发送端负责将数据发送到通信通道或者中介。它将要发送的数据传递给通信通道或者中介,并可能在发送后继续执行其他任务。
- 接收端(Receiver):接收端负责从通信通道或者中介接收数据。它从通信通道或者中介获取数据,并可能对接收到的数据进行处理或者响应。
分离式通信的通信通道或者中介可以是各种形式的,例如消息队列、事件、共享内存、套接字等。这些通道或者中介起到了一个连接发送端和接收端的桥梁作用,使得它们能够进行间接的数据交换。
分离式通信常用于解耦发送者和接收者之间的依赖关系,以提高系统的可扩展性、灵活性和性能。同时,它还可以用于实现异步通信,其中发送者和接收者可以以不同的速率进行数据交换。
其他概念
存储器
存储器的分类
按存储介质
- 半导体存储器
- 磁表面存储器
- 磁芯存储器
- 光盘存储器
按存取方式
随机存储器
- 静态RAM(触发器原理寄存信息)
- 动态RAM(电容充放电原理寄存信息)
只读存储器
- 掩模型只读存储器(MROM)
- 可编程只读存储器(PROM)
- 可擦除可编程只读存储器(EPROM)
- 用电可擦除可编程只读存储器(EEPROM)
顺序存取存储器
直接存取存储器、
-按在计算机中的作用
主存储器
辅存储器
缓冲存储器
主存储器
主存中存储单元地址的分配
- 按字寻址和按字节寻址
例:假设地址线24位,按字节寻址范围就是:2^24
如果机器字长32位,则按字寻址范围就是:2^24/(32/4)
主存的技术指标
存储容量和存储速度
存储容量
定义:主存能存放二进制代码的总位数(存储单元* 存储字长)。也可以用字节总数表示。
存储速度
存储速度由存取时间和存取周期表示。
存取时间(存储器访问时间(Memory Access Time))
定义:启动一次存储器操作到完成该操作所需的全部时间。
分为读出时间和写入时间
- 读出时间:收到有效地址到产生有效输出。
- 写入时间:存储器收到有效地址到数据写入被选中单元。
存取周期(Memory Cycle Time)
定义:存储器连续两次独立的存储器操作所需的最小时间间隔。
存储带宽
定义:单位时间内存储器存取的信息量
- 提高带宽的措施
- 缩短存储周期
- 增加存储字长
- 增加存储体
半导体存储芯片
地址线和数据线共同反应存储芯片的容量。
译码驱动方式
线选法:一根线拿出一个存储单元各位
重合法:类似键盘扫描
随机存取存储器
分为静态RAM和动态RAM
静态RAM(SRAM)
用于存储0和1的电路称为 存储器的基本单元电路。
易失性半导体
动态RAM(DRAM)
靠电容存储电荷的原理进行存储信息,需要再生(也称刷新)
存储器与CPU的链接
* 存储容量的扩展
- 位扩展
增加存储字长。相同地址线不同位数可以合体。两片1K×4位可以组成1K×8位
- 字扩展
增加存储器字的数量。例如两片1K×8位可以组成2K×8位。
存储器与CPU的连接
注意篇与片之间的地址线,数据线,控制线的连接。
地址线的连接
CPU地址线的低位与存储芯片的地址线相连。高位用于扩容或者片选
数据线的连接
读写命令线的连接
片选线的连接
取决于片选控制端 CS非(低电平生效),同时其与访存控制信号MREQ非(低电平有效)有关,CPU需要时才会选择存储芯片。
- 合理选择存储芯片
* 存储器的检验
汉明码:具有一位纠错能力的的编码
编码最小距离
- 在一种编码系统中任意两组合法代码之间的最小二进制位数差异。
1 | L-1=D+C (D>=C) |
- L(编码最小距离)
- D(检测错误的位数)
- C(纠正错误的位数)
提高访存速度的措施
单体多字系统
- 使用前提:
- 指令和数据必须在主存内连续存放。遇到转移指令或操作数不能连续存放则效果不明显。
- 单体 W 字可以将带宽拓宽 W 倍
多体并行系统
高位交叉编址(顺序存储)
- 特征:
- 在体内顺序存放,不同的请求源可以同时访问不同的体
- 高位地址表示体号,低位地址表示体内地址
- 特征:
低位交叉编址(模M编址)
- 特征:
- 程序连续存放在相邻体中,有交叉存储之称。
- 低位地址表示体号,高位地址表示体内地址
- 特征:
* 求交叉存储和顺序存储的存储器带宽
高速缓冲缓存器(Cache)
基本概念
程序访问的局部性原理
定义: 程序访问的局部性原理包括时间局部性和空间局部性。时间局部性是指在最近的未来要用到的信息,很可能是现在正在使用的信息,因为程序中存在循环。空间局部性是指在最近的未来要用到的信息,很可能与现在正在使用的信息在存储空间上是连续的,因为指令通常是顺序存放、顺序执行的,数据一般也是以向量、数组等形式簇聚地存储在一起的。
杂记(待整理)
- 指令寄存器(IR): 这是一个 CPU 内部的寄存器,用于存储当前正在执行的机器指令。当 CPU 从主存中取出指令并解码后,指令的操作码会被加载到指令寄存器中,CPU 根据其中的指令来执行相应的操作。
- 乘法商寄存器(MQ): 这是一个专门用于乘法运算的寄存器,通常在一些早期的 CPU 设计中出现。在执行乘法指令时,乘法器会将被乘数加载到 MQ 中,并将乘法的结果存储在 MQ 中,或者 MQ 用于存储商或余数。这样可以简化乘法运算的硬件设计。
PC 寄存器(Program Counter Register),也称为指令指针寄存器(Instruction Pointer Register),是一种特殊的寄存器,用于存储当前正在执行的 CPU 指令的地址或下一条指令的地址。
PC 寄存器在 CPU 内部起着关键的作用,它指示了 CPU 下一步将要执行的指令的位置。当 CPU 执行完一条指令后,PC 寄存器会自动更新,指向下一条指令的地址,以便 CPU 继续执行。这个过程被称为指令流水线(Instruction Pipeline)。
PC 寄存器用于存储指令地址,控制程序的执行流程;而 IR 寄存器用于存储指令内容,辅助 CPU 解码和执行指令。
AGP(Accelerated Graphics Port)和PCI(Peripheral Component Interconnect)是两种计算机总线标准,用于连接计算机主板与外部设备。它们分别用于不同的目的:
- AGP(加速图形端口):
- AGP 是一种专门用于连接图形显卡的高速总线标准。它最初被设计用于提供高性能图形渲染的支持,使图形处理单元(GPU)能够快速访问系统内存,从而加速图形处理和显示。
- AGP 总线通常用于连接显卡到主板的插槽上,并提供了比传统的 PCI 总线更高的带宽和更低的延迟。这使得 AGP 接口在处理图形密集型任务时表现更好。
- PCI(外围组件互连):
- PCI 是一种通用的、高性能的总线标准,用于连接各种外部设备,如网卡、声卡、扩展卡等。PCI 总线提供了一种标准化的接口,允许不同的设备在计算机系统中进行通信和交换数据。
- PCI 总线通常用于连接各种外部设备到主板上的插槽上,例如 PCI 插槽、PCI Express(PCIe)插槽等。它是一种通用的、灵活的接口,适用于连接各种类型的设备。
微型计算机中控制总线提供的完整信息是( )。
- 所有存储器和1/0设备的时序信号和控制信号
- 来自I/O设备和存储器的响应信号
所谓的三总线结构的计算机中的“三总线”包含___。
A、I/O总线B、主存总线C、DMA总线