1.IO设备:外部输入输出设备
1.基本组成
(2)设备选择电路:I/O接口连接多个外部设备,该电路选择需要工作的设备
(3)命令寄存器和命令译码器:对CPU的命令进行译码和存储
(4)设备状态标记:用于判断设备状态
(5)数据缓冲寄存器DBR:将外部设备的数据存入用于CPU通信
2.工作流程
(1)CPU通过命令线发出命令,同时通过地址线给出设备地址给IO接口,选取设备
(2)IO接口通过设备选择电路选择CPU所需外部设备,同时发出命令给外部设备
(3)外部设备给出状态给IO接口,IO接口将相应状态转化为设备状态标记
(4)CPU判断设备状态标记,若可以开始通信,则与IO接口通过数据线进行数据交换
1.程序查询流程
(1)CPU发出命令,同时给出设备地址
(2)设备读取命令,开始准备
(3)CPU查询设备状态,若设备为准备好,则CPU一直等待不断查询直到设备准备完毕
(4)设备准备完毕,开始数据通信
2.程序查询接口电路
(2)设备读取命令开始启动准备(B触发器为1,D触发器为0)
(3)设备输入数据,设备工作结束(B触发器为0)
(4)CPU判断设备状态,若准备就绪(B触发器为0,D触发器为1),则开始数据通信
3.特点
(1)在查询时,CPU处于等待状态,CPU效率不高
1.程序中断流程
(1)CPU发出命令,给出地址线选出设备,然后CPU去执行其他工作
(2)设备读取命令,开始准备,若准备就绪,发出中断请求
(3)CPU停止工作,响应中断请求,执行中断服务程序,程序执行完毕,则继续工作
2.程序中断接口电路
(2)设备开始启动(B触发器为1),设备准备工作
(3)设备准备工作结束(B触发器为,D触发器为1),若未被屏蔽(MASK触发器为0),则发出中断请求
(4)CPU查询中断,若检查到中断请求,根据中断优先级(排队器),中断响应
(5)CPU根据中断源找出储存中断程序的向量地址空间,开始执行中断服务程序
3.中断服务程序
(1)单重中断:在执行中断程序时,不允许执行其他中断
(2)多重中断:在执行中断程序时,可以去执行比它优先级更高的中断
4.中断流程总结
(1)中断请求:中断源向CPU发出中断请求
(2)中断判优:判断中断源优先级,先执行优先级最高的
(3)中断隐指令
(4)中断服务程序寻址:根据向量地址查询
(5)执行中断服务程序
5.特点
(1)在设备准备期间,CPU可以去做其他事,相较查询方式效率提高
1.DMA接口组成
(2)WC:数据字计数器
(3)DAR:设备地址
(4)BR:数据缓冲器
2.DMA工作流程
(1)预处理
(2)数据传送
(3)后处理
3.特点
(1)此数据传输方式,不需要CPU直接参与,CPU效率大大提高
1.CPU给出命令,设备地址
(1)程序查询方式
(2)程序中断方式
(3)DMA方式无CPU参与命令
2.数据准备阶段
(1)程序查询方式:数据放入数据缓冲器,CPU等待
(2)程序中断方式:数据放入数据缓冲器,CPU执行其他程序
(3)DMA方式:数据放入数据缓冲器(AR、WC、DAR)
2.向CPU请求,CPU响应请求
(1)程序查询方式:CPU直接参与
(2)程序中断方式:中断源发出中断请求,CPU响应中断服务程序
(3)DMA方式:DMA向CPU发出控制请求,CPU响应请求放弃主存控制权
3.数据传输
(1)程序查询方式:直接进行传输
(2)程序中断方式:CPU响应中断服务程序
(3)DMA方式:DMA与主存交互
4.结束阶段
(1)程序查询方式:直接结束
(2)程序中断方式:跳出中断服务程序
(3)DMA方式:DMA放弃主存总线控制权