第五章输入输出接口_微机原理与接口技术

上传人:012****78 文档编号:132718699 上传时间:2020-05-19 格式:PPT 页数:54 大小:644KB
返回 下载 相关 举报
第五章输入输出接口_微机原理与接口技术_第1页
第1页 / 共54页
第五章输入输出接口_微机原理与接口技术_第2页
第2页 / 共54页
第五章输入输出接口_微机原理与接口技术_第3页
第3页 / 共54页
第五章输入输出接口_微机原理与接口技术_第4页
第4页 / 共54页
第五章输入输出接口_微机原理与接口技术_第5页
第5页 / 共54页
点击查看更多>>
资源描述

《第五章输入输出接口_微机原理与接口技术》由会员分享,可在线阅读,更多相关《第五章输入输出接口_微机原理与接口技术(54页珍藏版)》请在金锄头文库上搜索。

1、第5章输入输出接口 5 1微机接口及接口技术5 2I O端口及其编址方式5 3端口地址译码5 4CPU与外设之间的数据传送方式 5 1微机接口及接口技术 5 1 1 为什么要设置接口电路5 1 2接口电路中的信息5 1 3接口的基本功能5 1 4接口的基本结构 返回 5 1 1 为什么要设置接口电路 CPU与外设两者的信号线不兼容 在信号线功能定义 逻辑定义和时序关系上都不一致两者的工作速度不兼容 CPU速度高 外设速度低若不通过接口 而由CPU直接对外设的操作实施控制 就会使CPU处于穷于应付与外设打交道之中 大大降低CPU的效率若外部设备直接由CPU控制 也会使外设的硬件结构依赖于CPU

2、对外设本身的发展不利 DBABCB 图1 1微机系统各类接口框图 返回 5 1 2接口电路中的信息 数据信息状态信息控制信息习惯上把分别传送这三种信息的端口称为数据口 状态口 控制口 1 数据信息 1 数字量 通常以8位或16位的二进制数以及ASCII码的形式传输 主要指由键盘 磁盘 光盘等输入的信息或主机送给打印机 显示器 绘图仪等的信息 2 模拟量 模拟的电压 电流或者非电量 对模拟量输入而言 需先经过传感器转换成电信号 再经A D转换器变成数字量 如果需要输出模拟控制量的话 就要进行上述过程的逆转换 3 开关量 用 0 和 1 来表示两种状态 如开关的通 断 电机的转 停 阀门的开 关等

3、 2 状态信息 CPU在传送数据信息之前 经常需要先了解外设当前的状态 如输入设备的数据是否准备好 输出设备是否忙等 用于表征外设工作状态的信息就叫做状态信息 它总是由外设通过接口输入给CPU的 状态信息的长度不定 可以是1个二进制位或多个 含义也随外设的具体情况不同而不同 3 控制信息 用来发布控制命令 控制外设工作的信息 例如A D转换器的启停信号 控制信息总是CPU通过接口发出的 返回 5 1 3接口的基本功能 1 数据缓冲功能2 端口选择功能3 信号转换功能4 接收和执行CPU命令的功能5 中断管理功能6 可编程功能7 返回外设状态的功能8 数据宽度与数据格式转换的功能 1 数据缓冲功

4、能 接口电路中一般都设置有数据寄存器或锁存器数据口 以解决高速的主机与低速的外设之间的速度匹配问题 避免因主机与外设的速度不匹配而丢失数据 2 端口选择功能 微机系统中常有多个外设 而CPU在任一时刻只能与一个端口交换信息 因此需要通过接口的地址译码电路对端口进行寻址 3 信号转换功能 外设所提供的数据 状态和控制信号可能与微机的总线信号不兼容 所以接口电路应进行相应的信号转换 4 接收和执行CPU命令的功能 CPU对外设的控制命令一般以代码形式输出到接口电路的控制端口 接口电路对命令代码进行识别 分析 分解成若干控制信号 传送到I O设备 并产生相应的具体操作 5 中断管理功能 当外设需要及

5、时得到CPU的服务 特别是出现故障需要CPU立即处理时 就要求接口中设置中断控制器 以便于CPU处理有关中断事务 如中断请求 中断优先级排队 提供中断向量等 6 可编程功能 由于I O接口电路大多由可编程接口芯片组成 因此就有可能在不改变硬件电路的情况下 只要修改接口驱动程序就可以改变接口的工作方式 提高了接口的灵活性和可扩充性 使接口向智能化方向发展 7 返回外设状态的功能 接口电路在执行命令之前 执行命令过程中和执行命令之后 外部设备及接口电路都会有一些情况发生 包括正常工作状态和故障状态 忙 闲 准备就绪 未准备就绪 满 空 溢出错 格式错 等接口中一般都设置状态寄存器 称 状态口 状态

6、信号以状态代码形式存放在接口电路的状态寄存器中 CPU从状态口读取状态信息 供CPU作出判断与处理 8 数据宽度与数据格式转换的功能 CPU所处理的是并行数据 而有的外设只能处理串行数据 接口应具有数据 并串 串并 的转换能力 CPU与有些外设交换数据时 要求按照一定的数据格式传送 所以在CPU与通信设备之间进行数据格式转换 返回 5 1 4接口的基本结构 1 端口2 地址译码电路3 数据缓冲器与锁存器 1 端口 I O接口通常设置有若干个寄存器 用来暂存CPU和外设之间传输的数据 状态和控制信息 一般有三类寄存器 分别是数据寄存器 状态寄存器 控制寄存器 接口内的寄存器通常被称为端口 根据寄

7、存器内暂存信息的类型 分别称为数据端口 控制端口和状态端口 每个端口有一个独立的地址 CPU可以用端口地址代码来区别各个不同的端口 并对它们分别进行读 写操作 2 地址译码电路 它由译码器或能实现译码功能的其它芯片构成 它的作用是进行设备选择 是接口中不可缺少的部分 这部分电路不包含在集成接口芯片中 要由用户自行设计 3 数据缓冲器与锁存器 在微机系统的数据总线上 连接着许多能够向CPU发送数据的设备 如内存储器 外设的数据输入端口等 为了不使系统数据总线的信号传输发生 信息冲突 要求所有的这些连接到系统数据总线的设备具有三态输出的功能 也就是说 在CPU选中该设备时 它能向系统数据总线发送数

8、据信号 而在其它时刻 它的输出端必须呈高阻状态 为此 所有接口的输入端口必须通过三态缓冲器与系统数据总线相连 返回 5 2I O端口及其编址方式 5 2 1I 0端口5 2 2I O端口的编址方式5 2 3I O端口地址分配 返回 5 2 1I 0端口 端口 port 是接口电路中能被CPU直接访问的寄存器的地址 计算机给接口电路中的每个寄存器分配一个端口 因此 CPU在访问这些寄存器时 只需指明它们的端口 不需指出是什么寄存器 CPU对数据端口进行一次读或写操作 也就是与该接口连接的外设进行一次数据传输CPU对状态端口进行一次读操作 就可以获得外设或接口自身的状态代码CPU把若干位控制代码写

9、入控制端口 则意味着对该接口或外设发出一个控制命令 要求该接口或外设按规定的要求工作 返回 5 2 2I O端口的编址方式 1端口地址和存储器地址统一编址 也称存储器映射方式2I O端口地址和存储器地址分开独立编址 也称I O映射方式 1统一编址方式 从存储器空间划出一部分地址空间给I O设备 把I O接口中的端口当作存储器单元一样进行访问 不设置专门的I O指令优点 访问I O端口可实现输入 输出操作 还可以对端口内容进行算术逻辑运算 移位等等 能给端口有较大的编址空间 这对大型控制系统和数据通信系统是很有意义的 缺点 端口占用了存储器的地址空间 使存储器容量减小 指令长度比专门I O指令要

10、长 因而执行速度较慢 2独立编址方式 I O端口地址空间和存储器地址空间是独立的 分开的 即I O端口地址不占用存储器地址空间 优点I O端口地址不占用存储器空间 使用专门的I O指令对端口进行操作 I O指令短 执行速度快 并且由于专门I O指令与存储器访问指令有明显的区别 使程序中I O操作和存储器操作层次清晰 程序的可读性强 缺点这种编址方式中 微处理器对存储器及I O端口是采用不同的控制线进行选择的 因而接口电路比较复杂 图解 访问存储单元用地址总线A19 A0 全译码后得到00000H FFFFFH共1MB地址空间 I O端口只利用其中的一部分地址线 即A15 A0地址线 可译出00

11、00H FFFFH共64KB个I O端口地址 由于端口是与存储器隔离的 所以用户可扩展存储器到最大容量 而不必为I O端口留出地址空间 返回 5 2 3I O端口地址分配 表5 1中分配给每个接口芯片的I O端口地址 在实际使用中并未全部用完 中断控制器8259A 只使用了前面2个端口地址 20H 21H 主片 和A0H A1H 从片 并行接口芯片8255A 只使用了前面4个端口地址60H 63H 使用端口地址最多的DMA控制芯片8237A 也只用了前面的16个地址 0 FH 表5 2扩展槽上接口控制卡的端口地址 从表5 2中 可以看到允许用户使用的端口地址是300H 31FH 这一段地址是留

12、给用户在开发IBM PC系列机功能模块 插板 时使用的端口地址 系统是不会占用它的 除在表5 1和表5 2中已经分配了的I O地址之外 其余的地址均由厂商保留使用 I O端口地址选用的原则 凡是被系统配置所占用了的地址一律不能使用原则上讲 未被占用的地址 用户可以选用 但对计算机厂家申明保留的地址 不要使用 否则会发生I O地址重叠和冲突 造成用户开发的产品与系统不兼容而失去使用价值一般 用户可使用300 31FH地址 返回 5 3端口地址译码 5 3 1门电路译码5 3 2译码器译码5 3 3比较器译码 返回 5 3 1门电路译码 这是最基本的也是最简单的地址译码方法通常采用各种门电路 如与

13、门 或门 非门等电路的组合 设计时首先分配好地址 然后写成二进制形式 再根据地址总线数分配各与非门输入管脚地址 门电路译码需要芯片种类较多 且译出的端口地址单一 接口中用到的端口地址不能更改 例5 1 例5 1使用74LS20 30 32和74LS04设计I O端口地址为3D8H的只读译码电路 若要产生3D8H端口地址 则译码电路的输入地址线就应具有如表5 3所示的值 表5 3译码电路输入地址线的值 例5 1设计 按照表5 3中地址线的值 采用门电路就可以设计出译码电路 如图5 3所示 图5 3简单译码电路 更改例5 3端口地址为2E2H的译码电路 Y 读 Y 写 001011100010 返

14、回 5 3 2译码器译码 若接口电路中需使用多个端口地址 则采用译码器译码比较方便 译码器的型号很多 如3 8译码器74LS138 4 16译码器74LS154 双2 4译码器74LS139 74LS155等 这些译码器通常由三个部分组成 译码控制端 选择输入端 译码输出端 74LS137管脚定义 表5 474LS138的真值表 当G1 1 G2A G2B 0时 译码器处于工作状态 否则译码器被禁止 所有的输出端被封锁在高电平 这三个控制端也叫片选输入端 利用片选的作用可以将多片连接起来以扩展译码器的功能 74LS138 例5 2 使用74LS138设计一个系统板上接口芯片的I O端口地址译码

15、电路 并且让每个接口芯片内部的端口数目为32个 分析 由于系统板上的I O端口地址分配在000 0FFH范围内 故只使用低8位地址线 这意味着A9和A8两位应赋0值 为了让每个被选中的芯片内部拥有32个端口 只要留出5根低位地址线不参加译码 其余的高位地址线作为74LS138的输入线 参加译码 或作为74LS138的控制线与AEN一起 控制74LS138的译码是否有效 由上述分析 可以得到译码电路输入地址线的值 如表5 5所示 设计 采用74LS138译码器 可设计PC机系统板上的端口地址译码电路 如图5 5所示 图中地址线的高5位参加译码 其中A5 A7经译码器 分别产生 8237 8259

16、 8253 8255A 的片选信号 而地址线的低5位A0 A4作芯片内部寄存器的访问地址 从74LS138译码器的真值表可知 8237A的端口地址范围是000 01FH 8259A的端口地址范围是020 03FH等等 正好和前面表5 1所列出的端口地址分配表一致 表5 5译码电路输入地址线的值 例5 2电路 返回 5 3 3比较器译码 将比较器的A 或B 输入端输入地址信号 B 或A 端接一组DIP DualIn linePackage 开关 地址总线所送的地址与DIP所设置的地址相等时 产生一选通信号输出 特点可以通过改变DIP开关的设置 很容易地改变接口的地址 不但同一功能的模块在不同微型计算机应用中可以被分配不同的地址 而且即使在同一微型计算机系统中 也可通过改变DIP开关的设置而控制不同的设备 这种译码电路应用非常广泛 常用的比较器有四位比较器74LS85和八位比较器74LS688 四位比较器译码电路 返回 5 4CPU与外设之间的数据传送方式 5 4 1程序控制方式5 4 2中断传送方式5 4 3直接存储器存取方式 返回 5 4 1程序控制方式 程序控制方式是指CPU与外设间

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号