第五节主机和外部设备的信息交换 35.1主机和外设的连接方式 1.辐射式 主机 主机 /01/01/0 接口接口 早期:不易扩展 1/0|1/01/0 现在:便于扩展
第五节 主机和外部设备的信息交换 3.5.1 主机和外设的连接方式 1.辐射式 主机 I/O I/O I/O 早期:不易扩展 主机 接口 接口 I/O I/O I/O 现在:便于扩展
2.总线式 总线 便于扩展 主机接口接口 /0 1/0 3通道式 主机 并行能力通道 提高 通道 1/01/0 1/01/0
2.总线式 主机 接口 接口 I/O I/O I/O 便于扩展 总线 3.通道式 主机 通道 通道 I/O I/O I/O 并行能力 提高
35.2信息传送控制方式 1.直接程序传送方式(程序查询) 用1/0指令编程实现信息传送。 (1)外设状态 00启动 01 在接口中设 置状态字表(空闲 工作 示这些状态。 再请求 空闲:调用前,调用完 完成一次 设备不工作; 结束 工作 结束:调用后, 设备完成工作。 10
3.5.2 信息传送控制方式 1.直接程序传送方式 用I/O指令编程实现信息传送。 (程序查询) (1)外设状态 空闲 工作 结束 启动 完成一次 工作 调用完 再请求 00 01 10 空闲:调用前, 设备不工作; 结束:调用后, 设备完成工作。 在接口中设 置状态字表 示这些状态
(2)查询流程 启动外设 外设工作完成?N 入/出操作 (3)优缺点 硬件开销小;实时处理能力差,并行程度低。 (4)应用场合 对0PU效率要求不高的场合或诊断调试过程
(2)查询流程 启动外设 外设工作完成? N Y 入/出操作 (3)优缺点 硬件开销小;实时处理能力差,并行程度低。 (4)应用场合 对CPU效率要求不高的场合,或诊断、调试过程
2中断方式 (1)中断的引入 查询:程序 程序 主机 启动(交换数据 外设_空闲」工作 中断: 主机樵序程序 程序 启动 请求中断程序 外设_空闲工作 交换数据 并行操作 (2)中断定义
2.中断方式 查询: (1)中断的引入 程序 并行操作 主机 外设 空闲 启动 等待 工作 程序 交换数据 中断: 主机 程序 外设 空闲 启动 工作 程序 请求 中断程序 交换数据 程序 (2)中断定义
CPU暂时中止现行程序的执行,转去执行为某 个随机事态服务的中断处理程序。处理完毕 后自动恢复原程序的执行。 (3)中断流程 =1允许响应中断 CPU內设置允许中断标志 开中断) 0不允许响应中断 开中断 关中断) 启动外设 条指令结束Y 有中断请求 响应 继续原程序 返回执行中断 N 服务程序 继续原程序
开中断 一条指令结束 时有中断请求? N Y 继续原程序 (3)中断流程 CPU内设置允许中断标志 CPU暂时中止现行程序的执行,转去执行为某 个随机事态服务的中断处理程序。处理完毕 后自动恢复原程序的执行。 =1 允许响应中断 (开中断) =0 不允许响应中断 (关中断) 启动外设 执行中断 服务程序 继续原程序 响应 返回
(4)程序组织 例.P系列机 CLI;关中断,初始化 允许中断位 启动;启动设备 F=0关中断 sT;开中断 1开中断 响应 请求 返回
CLI ; 请求 关中断,初始化 启动;启动设备 响应 返回 例.PC系列机 允许中断位 IF= 0 关中断 1 开中断 STI ;开中断 (4)程序组织
(5)硬件设置 判别设备优先级设备提出请求 响应 判优 请求设备工作完成 逻辑 逻辑 逻辑 CPU响应请求,并转相 非屏蔽 应服务程序入口 屏蔽 GP禁止/允许设没备请求逻辑 (动态改变设备优先级) GPU送屏蔽字 CPU 接口 注意区分CPU对请求的屏蔽和对请求的响应。 (6)应用场合 送屏蔽字开/关中断 用于中、低速|/0操作或处理复杂随机事态
(5)硬件设置 响应 逻辑 CPU禁止/允许设备请求 设备工作完成 (6)应用场合 用于中、低速I/O操作或处理复杂随机事态。 判优 逻辑 请求 逻辑 屏蔽 逻辑 非屏蔽 (动态改变设备优先级) CPU送屏蔽字 判别设备优先级 设备提出请求 CPU响应请求,并转相 应服务程序入口 CPU 接口 注意区分CPU对请求的屏蔽和对请求的响应。 送屏蔽字 开/关中断
3直接存储器存取ODMA方式 (1)定义 直接依靠硬件实现主存与1/0间的数据传送, 传送期间不需QPU程序干预。 1)1/0与主存,而不是l/0与CPU或/0与主机。 2)早期由GPU控制传送; 现在由DMA控制器控制传送,DMA控制器接 管总线权,传送完毕再交还总线权。 3传送期间只要CPU不访存,可并行操作。 4传送前和传送后需要程序干预
3.直接存储器存取(DMA)方式 (1)定义 DMA控制器接 直接依靠硬件实现主存与I/O间的数据传送, 传送期间不需CPU程序干预。 1)I/O与主存,而不是I/O与CPU或I/O与主机。 2)早期由CPU控制传送; 现在由DMA控制器控制传送, 管总线权,传送完毕再交还总线权。 3)传送期间只要CPU不访存,可并行操作。 4)传送前和传送后需要程序干预
(2)硬件设置 控制传送方向 传递请求 操作类型 DMA 中断 请求 初始化信息 /提供主存地址 暂存交换数据 地址计数 数据缓冲 控制传送次数 /提供外设地址 交换量计数 外设寻址 DMA控制器 接口 (3)DMA流程
(2)硬件设置 操作类型 地址计数 控制传送方向 DMA控制器 接口 提供主存地址 交换量计数 控制传送次数 DMA 中断 请求 数据缓冲 传递请求 暂存交换数据 外设寻址 提供外设地址 初 始 化 信 息 (3)DMA流程