计算机管理外围设备有以下几种方式:
①、程序查询方式
②、程序中断方式
③、直接内存访问(DMA)
④、通道方式
一、程序查询方式
又称程序控制I/O方式。当需要输入输出时,CPU暂停执行主程序,转去执行设备输入/输出的服务程序,根据服务程序中的I/O指令进行数据传输
1、接口
2、轮询
CPU周期性的调用各I/O设备的子程序
3、特点
①、数据传输完全依赖于程序控制
②、硬件结构简单
③、频繁的查询动作浪费了大量宝贵的CPU时间
④、目前只用在单片机中
二、程序中断方式
中断是指CPU暂时中止现行程序,转去处理随机发生的紧急事件,处理完后自动返回原程序的功能和技术,适合处理随机出现的事务
1、中断系统
计算机实现中断功能的软硬件总称
①、在CPU中设置中断机构
②、在外设接口中设置中断控制器
③、在软件上设置相应的中断服务程序
2、中断流程
①、某外设数据准备就绪后,它主动向CPU发出中断请求信号
②、当CPU响应这个中断时,暂停运行主程序,自动转去执行该设备的中断服务程序
③、当中断服务程序执行完毕后,CPU又回到原来主程序继续执行
3、中断技术
(1)、响应中断时机
外界中断请求信号通常存放在接口中的中断源锁存器里,并通过中断请求线连至CPU。外界中断请求是随机的,CPU只有在当前一条指令执行完毕后,即转入公操作时才受理中断请求
(2)、断点保护
断点:主程序被中断的地方(PC的值)
保存现场:把程序计数器PC的内容以及当前指令执行结束后CPU的状态(包括寄存器的内容和一些状态标志位)都保存到堆栈中
恢复现场:在中断服务程序执行完毕后,从堆栈中恢复PC内容和CPU状态,从断点处继续执行主程序
(3)、多重中断处理
多重中断:CPU响应中断后,在执行中断服务程序时,有新的中断源发出中断请求
在CPU的中断管理部件中有一个中断屏蔽触发器,它可以在程序的控制下开关中断:
置1:设置屏蔽,关中断
置0:取掉屏蔽,开中断
(4)、软硬件结合
中断处理过程是由硬件和软件结合完成。中断周期的操作由硬件实现。中断服务程序由机器指令序列实现