6.2.3中断方式当CPU需要输入时,若外设的输入数据已存入寄存器;需要输出时,若外设仓把上一个数据输出,输出寄荐器岂空,这时均奇亩外设向CPU发出中断请求。CPU在接到请求后若条件允许,则暂停(或中断)正在进行的工作而转去对该外设服务,并在服务结束后回到原来被中断的地方继续原来的工作。图6.10中断流程特点:利用中断方式进行数据传送,不仅大大提高了CPU效率,还能够对外设的请汞做出实时响应尤其是在外设出现故障,利用中断方式可以及时做出处理,避免不必要的损失
6.2.3 中断方式 ➢ 当CPU需要输入时,若外设的输入数据已存入寄存 器;需要输出时,若外设已把上一个数据输出,输 出寄存器已空,这时均可由外设向CPU发出中断请 求。 ➢ CPU在接到请求后若条件允许,则暂停(或中断)正在 进行的工作而转去对该外设服务,并在服务结束后 回到原来被中断的地方继续原来的工作。 ➢ 特点:利用中断方式进行数据传送,不仅大大提高 了CPU效率,还能够对外设的请求做出实时响应。 尤其是在外设出现故障,利用中断方式可以及时做 出处理,避免不必要的损失。 中断流程 图6.10
中断流程主程序中断服务程序中断请求对外设进行处理断点继续执行返回断点
中断流程 断点 主程序 中断服务程序 中断请求 对外设 进行处理 继续执行 返回断点
中断传送方式的接口电路地址总线地址译码器A0~A7M/IORD数据三态√去数据总线DB锁存器缓冲器输入设备+5VRDO选通-INTR设备中断允许中断失量口三态缓冲器√去数据总线DBINTA(中断响应信号)图6.10中断传送方式的接口电路
中断传送方式的接口电路
6.2.4 DMA方式直接存储器存取(Direct MemoryAccessDMA)方式是通过特殊的硬件电路(DMA控制器)来控制存储器与外设直接进行数据传送>在这种方式下,CPU放弃对总线的管理,而由DMA控制器来控制。>由于CPU只启动而不干预数据传送过程,整个过程只由硬件完成不需要软件介入,所以这种方式的数据传输率很高工作过程
6.2.4 DMA方式 ➢ 直接存储器存取(Direct Memory Access , DMA)方式是通过特殊的硬件电路(DMA控制 器)来控制存储器与外设直接进行数据传送。 ➢ 在这种方式下,CPU放弃对总线的管理,而 由DMA控制器来控制。 ➢ 由于CPU只启动而不干预数据传送过程,整 个过程只由硬件完成不需要软件介入,所以 这种方式的数据传输率很高。 工作过程
DMA的工作过程当外设准备好,可以进行DMA传送时,外设向DMA控制器发出DMA传送请求信号(DRQ)。DMA控制器收到请求后,向CPU发出“总线请求”信号HOLD,表示希望占用总线。》CPU在完成当前总线周期后会立即对HOLD信号进行响应响应包括两个面:一是CPU将数据总线、地址总线和相应的控制信号线均置为高阻态,由此放弃对总线的控制权,另方面,CPU向DMA控制器发出“总线响应"信号(HLDA)。DMA控制器收到HLDA信号后,就开始控制总线,并向外设发出DMA响应信号DACK。DMA控制器送出地址信号和相应的控制信号,实现外设与内存或内存与内存之间的直接数据传送。数据传送完成后,DMA控制器撤销对CPU的请求信号,CPU撤销保持响应信号并恢复对总线的控制
DMA的工作过程 ➢ 当外设准备好,可以进行DMA传送时,外设向DMA控制器 发出DMA传送请求信号(DRQ)。 ➢ DMA控制器收到请求后,向CPU发出“总线请求”信号 HOLD,表示希望占用总线。 ➢ CPU在完成当前总线周期后会立即对HOLD信号进行响应。 响应包括两个方面:一是CPU将数据总线、地址总线和相应 的控制信号线均置为高阻态,由此放弃对总线的控制权;另 一方面,CPU向DMA控制器发出“总线响应”信号(HLDA)。 ➢ DMA控制器收到HLDA信号后,就开始控制总线,并向外设 发出DMA响应信号DACK。 ➢ DMA控制器送出地址信号和相应的控制信号,实现外设与内 存或内存与内存之间的直接数据传送。 ➢ 数据传送完成后,DMA控制器撤销对CPU的请求信号,CPU 撤销保持响应信号并恢复对总线的控制