设备控制器
IO设备中的电子部件。又称设备适配器、IO控制器、IO控制接口,简称IO模块或IO接口。
设备控制器包括状态/控制寄存器、数据缓冲寄存器、地址译码器和IO控制逻辑、外设接口控制逻辑
IO方式
轮询方式
处理器向控制器发送IO命令,重复该过程直到设备准备就绪。
CPU需要等待设备,需要参与数据传送。
中断方式
处理器发送IO命令,然后继续执行其他质量。控制器就绪后发起中断,进行数据读写。
CPU不需要等待设备,参与数据传送。
DMA方式
处理器向DMA模块发送IO命令,随后继续执行其他工作,DMA模块负责传送全部数据。数据传送结束后,DMA中断处理器。
CPU不需要等待设备,只在数据传送的开始和结束时参与。
CPU会将总线的占有权短暂让给DMA以让其访问内存,对CPU和主存的数据交换影响不大
IO通道
又称通道控制器、IO处理器。设备控制器包含自身专用的处理器和通道程序。
IO指令不再由处理器执行,而是存在主存中,由IO通道所包含的处理器执行。
采用四级连接:处理器、通道、控制器、设备
流程:
- CPU遇到IO请求,启动指定通道
- 启动成功后,通道开始控制IO设备进行操作,CPU执行其他任务
- IO操作完成后,IO通道发出中断,CPU进行处理。
CPU和通道并行工作
总线
单总线
将CPU、主存和IO模块连接在同一组总线上
优点:结构简单,易于扩充
缺点:主存和IO模块共用总线;设备增多会造成总线变长;无法适用于大量高速设备。
三级总线
主存和Cache通过主存总线传输,主存总线和扩展总线上的IO设备间通过扩展总线接口缓存传送数据。
优点:主存和IO间的数据传送和处理器活动分离,可以支持更多的IO设备
缺点:不适用于IO设备速率相差太大的情形
南北桥模型
通过存储总线、PCI总线、E(ISA)总线分别连接主存、高速IO设备和低速IO设备实现
优点:可以支持不同数据速率的IO设备
采用IO通道的多级总线
支持CPU、主存和多个IO通道间的数据传送
支持IO通道和IO控制器,以及IO控制器和设备之间的数据传送