ch6输入输出和中断技术 本章内容 基本概念 I/o端口的编址 输入输出的基本方法:无条件、查询、中断、DMA 中断 中断基本概念 8086/8088中断系统 8259中断控制器* DMAN DMA的基本概念 DMA工作过程 DMA的三种传输方式
Ch.6 输入输出和中断技术 ◼ 本章内容 ◼ 基本概念 ◼ I/O端口的编址 ◼ 输入输出的基本方法:无条件、查询、中断、DMA ◼ 中断 ◼ 中断基本概念 ◼ 8086/8088中断系统 ◼ 8259中断控制器* ◼ DMA* ◼ DMA的基本概念 ◼ DMA工作过程 ◼ DMA的三种传输方式
61输入/输出接口(I/O接口) 611概述 什么是O接口? 把外设连接到总线上的一组逻辑电路的总称。实现外设与主机之 间的信息交换。 I/O接口要解决的问题 速度匹配( Buffer) 信号电平和驱动能力(电平转换器、驱动器) 信号形式匹配(A/D、D/A) 信息格式(字节流、块、数据包、帧 时序匹配(定时关系) 总线隔离(三态门)
6.1 输入/输出接口(I/O接口) ◼ 6.1.1 概述 ◼ 什么是I/O接口? 把外设连接到总线上的一组逻辑电路的总称。实现外设与主机之 间的信息交换。 ◼ I/O接口要解决的问题 ◼ 速度匹配(Buffer) ◼ 信号电平和驱动能力(电平转换器、驱动器) ◼ 信号形式匹配(A/D、D/A) ◼ 信息格式(字节流、块、数据包、帧) ◼ 时序匹配(定时关系) ◼ 总线隔离(三态门)
IO接口的功能 nI/O地址译码与设备选择 把选中的与总线相接,未选中的与总线隔离(高阻态) ■数据的缓冲与暂存 缓解接口与cPU工作速度的差异 对外设进行监测、控制与管理,中断处理 信号电平与类型的转换 形式、格式、电平、功率、码制等
◼ I/O接口的功能 ◼ I/O地址译码与设备选择 ◼ 把选中的与总线相接,未选中的与总线隔离(高阻态) ◼ 数据的缓冲与暂存 ◼ 缓解接口与CPU工作速度的差异 ◼ 对外设进行监测、控制与管理,中断处理 ◼ 信号电平与类型的转换 ◼ 形式、格式、电平、功率、码制等
612I/o接口的编址方式 I/O端口: I/O信息的三种类型:数据、命令、状态。传送 这三类信息的通道分别称为:数据端口(I、O) 命令端口(O)、状态端口(I)。 ■不同外设具有的端口数各不相同,计算机中为每 个端口都赋予一个惟一编号—称为端口地址 (或端口号)。 ■端口有两种编址方式:统一编址和独立编址
◼ 6.1.2 I/O接口的编址方式 ◼ I/O端口: I/O信息的三种类型:数据、命令、状态。传送 这三类信息的通道分别称为:数据端口(I、O)、 命令端口(O)、状态端口(I)。 ◼ 不同外设具有的端口数各不相同,计算机中为每 一个端口都赋予一个惟一编号——称为端口地址 (或端口号)。 ◼ 端口有两种编址方式:统一编址和独立编址
1.统一编址 地址空间(共1MB) ■把外设接口与内存统一进行 0 编址。各占据统一地址空间 的不同部分 优点 内存地址 指令统一,灵活; (960KB) ■访问控制信号统一,使用同 组的地址/控制信号。 EFFFFH ■缺点 FOOOOH 内存可用地址空间减小 IO地址 (64KB) FFFFFH
◼ 1. 统一编址 ◼ 把外设接口与内存统一进行 编址。各占据统一地址空间 的不同部分。 ◼ 优点 ◼ 指令统一,灵活; ◼ 访问控制信号统一,使用同一 组的地址/控制信号。 ◼ 缺点 ◼ 内存可用地址空间减小 0 地址空间(共1MB) 内存地址 (960KB) I/O地址 (64KB) FFFFFH EFFFFH F0000H
2.独立编址 外设地址空间和内存地址空间相互独立 ■优点:内存地址空间不受I/O编址的影响 ■缺点:I/O指令功能较弱,使用不同的读写控制信号 内存地址空间 I/O地址空间 00000H 0000H I/O空间 (64KB) FFFFH 内存空间 IMB) FFFFFH
◼ 2. 独立编址 ◼ 外设地址空间和内存地址空间相互独立。 ◼ 优点:内存地址空间不受I/O编址的影响 ◼ 缺点:I/O指令功能较弱,使用不同的读写控制信号 00000H 内存地址空间 内存空间 (1MB) I/O空间 (64KB) FFFFH FFFFFH I/O地址空间 0000H
例如:8088/8086系统 MEMR、MEMW 8088总 A19-A0 存储器访问 OR、Iow、AEN O访问 线 A9-AO
◼ 例如:8088/8086系统 8 0 8 8 总 线 A19-A0 A9-A0 MEMR、MEMW IOR、IOW 、AEN 存储器访问 I/O访问
8088/8086cPU的I/o编址方式 ■采用I/O独立编址方式(但地址线与存储器共用) ■地址线上的地址信号用IOM来区分: nIOM=1时为工/O地址 ■I/O操作只使用20根地址线中的16根:A15~A0 ■可寻址的I/o端口数为64K(65536)个 ■I/O地址范围为0~ FFFFH IBM PO只使用了1024个I/O地址(0~3FFH)
◼ 8088/8086 CPU的I/O编址方式 ◼ 采用I/O独立编址方式(但地址线与存储器共用) ◼ 地址线上的地址信号用 来区分: ◼ 时为I/O地址 ◼ I/O操作只使用20根地址线中的16根: A15 ~ A0 ◼ 可寻址的I/O端口数为64K(65536)个 ◼ I/O地址范围为0~FFFFH ◼ IBM PC只使用了1024个I/O地址(0~3FFH) IO/M=1 IO/M
613I/o端口地址的译码 IOW、IOR、A5~Ao ■OUT指令将使总线的IOW信号有效 IN指令将使总线的IOR信号有效 当接口只有一个端口时,16位地址线一般应全部参与译 码,译码输岀直接选择该端口;当接口具有多个端口时, 则16位地址线的高位参与译码(决定接口的基地址), 而低位则用于确定要访问哪一个端口。 例如:某外设接口有4个端口,地址为2F0H~2F3H 则其基地址为2FDH,BA5~A2译码得到,A1、A0用 来确定4个端口中的某一个
◼ 6.1.3 I/O端口地址的译码 ◼ 、 、 A15 ~ A0 ◼ OUT指令将使总线的 信号有效 ◼ IN指令将使总线的 信号有效 ◼ 当接口只有一个端口时,16位地址线一般应全部参与译 码,译码输出直接选择该端口;当接口具有多个端口时, 则16位地址线的高位参与译码(决定接口的基地址), 而低位则用于确定要访问哪一个端口。 例如: 某外设接口有4个端口,地址为2F0H~2F3H, 则其基地址为2F0H,由A15~A2译码得到,而A1、A0用 来确定4个端口中的某一个。 IORIOW IOW IOR
614I/O数据的传送方式 并行 个数据单位(通常为字节)的各位同时传送 速度快、距离短、成本高 例:PC机的并行接口(通常用于连接打印机) 串行 数据按位进行传送 速度慢、距离远、成本低 n例:PC机的串行接口(通常用于串行通信)
◼ 6.1.4 I/O数据的传送方式 ◼ 并行 ◼ 一个数据单位(通常为字节)的各位同时传送 ◼ 速度快、距离短、成本高 ◼ 例:PC机的并行接口(通常用于连接打印机) ◼ 串行 ◼ 数据按位进行传送 ◼ 速度慢、距离远、成本低 ◼ 例: PC机的串行接口(通常用于串行通信)