文章目录
一、程序查询方式二、程序中断方式三、DMA方式一、程序查询方式
1、程序查询方式的接口电路
2、符号说明
&与非门B工作触发器D完成触发器
3、程序查询工作过程(输入)
(1)当CPU通过I/O指令启动输入设备时,该指令的设备码将通过地址线传入设备选择电路;
(2)若该设备码与地址线上的代码吻合,则输出SEL有效;
(3)I/0指令的启动命令经过“与非门”,将B置1,D置0;
(4)B触发器启动设备工作;
(5)输入设备将数据送至缓冲寄存器DBR中;
(6)设备工作结束,结束信号传入,将B置0,D置1;
(7)CPU执行输入指令,将数据缓冲寄存器中的数据送到CPU通用寄存器中,再存入主存的相关单元。
二、程序中断方式
1、程序中断方式的接口电路
2、符号说明
&与非门1取反B工作触发器D完成触发器MASK设备屏蔽器
3、程序中断处理过程
(1)由CPU启动I/O设备命令,将B置1,D置0;
(2)接口启动输入设备开始工作;
(3)输入设备将数据送入数据缓冲寄存器;
(4)输入设备向接口发出“结束”信号,将B置0,D置1,标志设备准备就绪;
(5)当设备准备就绪时,且设备未被屏蔽(MASK=0),在指令执行结束时刻,CPU发出中断查询信号;
(6)中断请求触发器(INTR)被置1,设备向CPU发出中断,同时,INTR送到排队器中,进行中断判优;
(7)若CPU允许中断,则进入中断响应阶段,INTR将信号送至编码器形成向量地址;
(8)向量地址送至PC,作为下一条指令的地址;
(9)无条件转移指令结束后,进入中断服务阶段,最后将指令存入主存;
(10)中断服务程序的最后一条指令是中断返回指令,即中断返回至原程序的断点处。
三、DMA方式
1、DMA方式的接口电路
2、符号说明
DMA直接存储器存储方式AR主存地址寄存器WC字计数器BR数据缓冲寄存器DAR设备地址寄存器DACK一个DMA周期DREQ向DMA提出申请HRQ请求信号,申请总线控制权HLDA响应信号
3、DMA的工作过程
预处理:传送方向的确定;向DMA设备地址寄存器送入设备号;送入主存起始地址。数据传送
(1)设备发出选通信号,将字读取到DMA的BR中;
(2)设备向DMA接口发送请求(DRWQ);
(3)DMA想CPU申请总线控制权;
(4)CPU发回HLDA信号,允许DMA控制;
(5)将主存地址送入地址总线,并命令存储器写;
(6)通知设备已被授予一个DMA周期,并为交换下一个字做准备;
(7)将DMA数据缓冲寄存器的内容送到数据总线;
(8)主存将数据总线的信息写到指定存储单元中;
(9)修改主存地址和字计数器;
(10)判断数据块是否传送结束。后处理过程:包括效验送入主存的数据是否正确,决定是否继续用DMA传送其他数据块;若出错,则诊断和处理错误。