输入输出详细讲解
计算机组成与实现
输入输出
典型的输入输出系统 总线 I/O接口基本功能与结构 程序访问设备 PCI总线概述 P&P的原成与实现
计算机内部结构
CPU
内存控制器(MC) 集成显卡
系统芯片(主板芯片)
SATA、音频 PCI-E/PCI总线控制器
T1: Master发出请求
T2: Slave给出应答,表明数据被接收
T3: Master撤消请求
T4: Slave撤消请求
计算机组成与实现
异步总线读操作
Address Data Read Req Ack
Master Asserts Address Slave Data
Next Address
信息从设备输入 信息通过设备输出
输入设备
鼠标、键盘、手写笔
输出设备
显示器、打印机
输入输出设备
硬盘、网卡
显卡
SATA
音频
系统 芯片
千兆 显卡
DDR3 DDR3
USB(控制器) 串口(控制器) 并口(控制器)
PCI、PCI-E
计算机组成与实现
典型的输入输出系统 总线 I/O接口基本功能与结构 程序访问设备 PCI总线概述 P&P的原理 中断 3种数据传输方式 异常
异步总线
无时钟 可以宽范围的匹配多种设备 总线长度很长,不存在时钟歪斜 使用握手协议
计算机组成与实现
典型的同步总线协议
信号有效与无效,都与时钟上升沿同步
BReq BG R/W Address Wait#
Data
Cmd+Addr
Data1
Data1
Data2
计算机组成与实现
异步总线写操作
PCI 系统总线 PCI
计算机组成与实现
设备角色:Master和Slave
Master-主设备
能够主动发起总线周期(读周期、写周期)的设备
Slave-从设备
响应总线周期的设备
网卡:Slave & Master
Slave:响应CPU对网卡上寄存器的读写 Master:主动发起PCI总线周期进行DMA传输
目录
计算机组成与实现
什么是总线?
共享的信息通道 一组连接各个部件的导线 构造大型复杂计算机系统的基本方法
计算机组成与实现
总线的优点
灵活功能
易于增加/撤出设备 符合标准的设备可以在不同计算机上互换
低成本
只需要一组导线
处理器
I/O设备 I/O设备 I/O设备
主存
计算机组成与实现
总线的缺点
Address Data Read Req Ack
Master Asserts Address Master Asserts Data
Next Address
T0 T1 T2
T3 T4 T5
T0 : 主设备(Master)获得总线(control/address/direction/data)等待 一个规定的时间(slave译码)
T0 T1 T2
T3 T4
T0 : 主设备(Master)获得总线(control/address/direction/data)等待 一个规定的时间(slave译码)
T1: Master发出请求
T2: Slave给出应答,指示数据已经放到总线上了
T3: Master撤消请求,表明数据已经被接收
读周期:从主存中读取数据发送报文 写周期:接收报文写数据至主存
计算机组成与实现
同步总线 vs 异步总线
同步总线
控制信号中包含一个时钟信号 控制信号的有效/无效与时钟相关
同步由时钟界定,无需对方响应,减少握手延迟
接口控制器通常包含高速FIFO以最大化传输带宽 总线的设备必须以相同的时钟频率工作 高速总线距离要短,否则会导致时钟歪斜 传输带宽高
32位PCI总线
USB2.0/3.0 串口/并口 定时器、中断控制器
网卡芯片(主板芯片)
显卡
SATA
音频
系统 芯片
千兆 显卡
DDR3 DDR3
USB(控制器) 串口(控制器) 并口(控制器)
PCI、PCI-E
计算机组成与实现
设备:信息传输的通道
CPU:信息处理 内存:程序/数据 设备:信息交换的通道
为Cache块传输优化(Cache块传输、Burst) 多CPU支持(Cache一致性协议) 距离短、挂载少、位数多、频率高
存储器总线:最大化存储器带宽
为SDRAM传输优化(Burst、Page、刷新) 距离短、点-点、位数多、频率高
系统总线(也称I/O总线):匹配大量各类设备
标准化总线接口 适度工作频率 通过Bridge连接至CPU总线 距离长、挂载多、位数相对少、频率相对低
通讯瓶颈
系统I/O吞吐受限于总线最大带宽
总线性能难以大幅度提高
总线长度越长,总线速率就越低 总线上的设备总数越多,总线负载能力越低 需要支持多种类型设备
传输延迟变化巨大 数据传输速率变化巨大
计算机组成与实现
总线层次
现代计算机中多采用多层次总线
只在低端系统中存在单一总线
CPU总线:最大化CPU带宽;支持多CPU
T4: Slave撤消请求
计算机组成与实现
仲裁:多个潜在的Master
总线仲裁框架 要求使用总线的Master发出总线请求 Master直到收到仲裁器的确认前不能使用总线 Master完成总线传输后必须通知仲裁器
总线仲裁必须平衡两个因素 优先级:最高优先级的设备应首先被响应 公平:即使最低优先级的设备也应能使用总线
计算机组成与实现
总线层次
现代计算机中涉及大量的总线 类型和层次
由于存在多层次总线,因此总 线之间必须有Bridge(桥)进行总 线转接
系统总线 PCI-Ex16
PCI-E x16
显卡
CPU总线
存储器 总线
北桥
DDR2/3 DDR2/3
SATA
音频
PCI-E x1
系统总线 PCI-Ex1
南桥
USB(连接器) 1394(连接器) 串口(连接器) 并口(连接器)
总线仲裁方式
分布式 集中式
计算机组成与实现
常见的仲裁架构
链式查询方式:适用于小型系统
总线 仲裁器
BS BR BG
I/O接口1
I/O接口2
DATA ADD
BUSY REQ
I/O接口3
GNT
独立请求方式:适用于复杂系统,广泛应用与现代计算机系统
计算机组成与实现
典型的输入输出系统 总线 I/O接口基本功能与结构 程序访问设备 PCI总线概述 P&P的原理 中断 3种数据传输方式 异常