1.17k likes | 1.3k Views
补充 微型计算机和外设的数据传输. 一 为什么要用接口电路 二 CPU 和输入输出设备之间的信号 三 接口部件的 I/O 端口 四 CPU 和外设之间的数据传送方式. 一 为什么要用接口电路. (1)接口电路按功能可分为两类: 使 微处理器正常工作 所需的辅助电路:时钟信号或中断请求等 输入输出( I/O) 接口电路 : CPU 与外设 收发数据. 存储器: 功能单一 :保存信息 品种有限 : ROM 和 RAM 工作速度: 与 CPU 基本匹配. 外部设备: 功能多样 :输入、输出、输入/输出
E N D
补充 微型计算机和外设的数据传输 一 为什么要用接口电路 二 CPU和输入输出设备之间的信号 三 接口部件的I/O端口 四 CPU和外设之间的数据传送方式
一 为什么要用接口电路 (1)接口电路按功能可分为两类: 使微处理器正常工作所需的辅助电路:时钟信号或中断请求等 输入输出(I/O)接口电路:CPU与外设收发数据
存储器: 功能单一:保存信息 品种有限:ROM和RAM 工作速度:与CPU基本匹配 外部设备: 功能多样:输入、输出、输入/输出 品种繁多: A/D、D/A转换(格式不同),串口(串并转换),并口,中断控制,DMA控制,定时器等 工作速度:一般较慢,无法与CPU速度匹配(降低效率) (2)为什么要用接口电路
(3)什么是微机接口技术 • 处理微机系统与外设间联系的技术 • 注意其软硬结合的特点 • 根据应用系统的需要,使用和构造相应的接口电路,编制配套的接口程序,支持和连接有关的设备
C P U 接 口 电 路 I/O 设 备 什么是I/O接口(电路) • I/O接口是位于CPU与外设间、用来协助完成数据传送和控制任务的逻辑电路 • PC机系统板的可编程接口芯片、I/O总线槽的电路板(适配器)都是接口电路
二 CPU和输入输出设备之间的信号 (1)数据信息:(外设与CPU之间) 数字量:键盘、磁盘到CPU,CPU到打印机、磁盘、显示器等,一般为二进制数、ASCII码等 模拟量:通过A/D转换器输入,通过D/A转换器输出 开关量:控制开关、电机、阀门、继电器等等
(2)状态信息:(从外设到CPU) 显示外部设备的工作状态,如空闲还是忙 (3)控制信息: (CPU到外设) 使外设按要求工作,如启动、停止、控制字、命令字等信号 以上三种信号都可通过DB传送,此时,数据信息送接口中的数据缓冲器;状态信息送状态寄存器;控制信息送控制寄存器。
三 接口部件的I/O端口 1.什么是端口: 接口电路中,用于存放不同种类信息的寄存器,称这些寄存器为端口。每个端口对应一个端口地址。 2.端口分类: 数据端口:数据信息 状态端口:状态信息 控制端口或命令端口:控制信息
3. I/O端口的编址: 接口电路占用的I/O端口有两类编址形式 • I/O端口单独编址 • I/O地址空间独立于存储地址空间 • 如8086/8088 • I/O端口与存储器统一编址 • 它们共享一个地址空间 • 如M6800
4.端口地址分配方法: • 一般一个接口包含多个I/O端口,必须分配不同端口地址。 • 例如:一个双向I/O接口电路包含4个端口,即数据输入、状态端口、数据输出和控制端口。因为前两者只读不能写,后两者只写不能读,所以只需分配2个端口地址,即数据输入/输出一个端口,控制/状态一个端口。 • 对于外设的操作就可以转化为对端口的操作。
FFFFF 内存 空间 FFFF I/O 空间 0 I/O端口单独编址 • 优点: • I/O端口的地址空间独立 • 控制和地址译码电路相对简单 • 专门的I/O指令使程序清晰易读 • 缺点: • I/O指令没有存储器指令丰富
FFFFF 内存 部分 存储器空间 I/O 部分 00000 I/O端口与存储器统一编址 • 优点: • 不需要专门的I/O指令 • I/O数据存取与存储器数据存取一样灵活 • 缺点: • I/O端口要占去部分存储器地址空间 • 程序不易阅读(不易分清访存和访问外设)
外设通过接口和系统的连接 输入口 输出口 控制口 状态口
四 CPU和外设之间的数据传送方式 四种传送方式: 程序方式(无条件、条件传送) 中断方式 DMA方式 输入/输出处理机方式
一 程序方式 1. 无条件传送方式 (1)定义:确认计算机外设已经准备好,就不必查询外设状态而直接进行数据传输。 (2)适用条件:传送不能太频繁,外设通常比较简单,如开关、数码LED显示器等
(3)工作原理 OUT DX, AL IN AL, DX
说明: • 输入时要使用缓冲器,因为输入数据的保持时间相对CPU速度要长,可以直接用缓冲器与DB相连而不需锁存。 • 输出时要使用锁存器,因为外设速度一般较慢,需要让数据保存一段时间,以便外设能取到数据。
10K x 8 +5V 74LS244 数据总线 G1 G2 CS RD 无条件传送:输入实例 MOV DX, 160H IN AL, DX 160H
+5V Rx 8 数据总线 74LS 373 LE OE CS WR 无条件传送:输出实例 MOV DX, 160H MOV AL, 0FEH OUT DX, AL D0 D7 160H
IOR IOW G 无条件传送:输入输出接口 译码 A0~A15 next: mov dx,8000h ;DX指向数据端口 in al,dx ;从输入端口读开关状态 not al ;反相 out dx,al ;送输出端口显示 call delay ;调子程序延时 jmp next ;重复 +5V 8000H K0 K1 LS244 三态 缓冲器 … K7 +5V LED0 CLK LS06 反相 驱动器 LS273 8D 锁存器 … D0~D7 LED7
2 条件传送方式 (1)条件传送的概念: 又叫查询方式传送,CPU通过程序不断读取并检测外设状态,一旦发现输入设备处于准备好或输出设备空闲状态时,就执行输入/输出指令完成信息交换。
输入状态 N 就绪? Y 数据交换 (2)条件传送的三个环节: CPU从接口中读取状态字 CPU检测状态字 传送数据 查询式输出程序流程示意
1 查询式输入的接口电路 0 0 0 0 1 0 1 RD
输入 设备 STB IOR IOR 查询输入接口举例: 8位 三态 缓冲器 mov dx,8000h ;DX指向状态端口 status:in al,dx ;读状态端口 test al,01h ;测试标志位D0 jz status ;D0=0,未就绪,继续查询 inc dx ;D0=1就绪,DX指向数据端口 in al,dx ;从数据端口输入数据 8D 锁存器 D0~D7 +5V 8001H 1位 三态 缓冲器 R D0 译码 D Q A0~A15 8000H
1 查询式输出的接口电路 0 0 1 0 0 0 1 1
IOW ACK IOR 输出 设备 查询输出接口举例: 8D 锁存器 mov dx,8000h ;DX指向状态端口 status:in al,dx ;读取状态端口的状态数据 test al,80h ;测试标志位D7 jnz status ;D7=1,未就绪,继续查询 inc dx ;D7=0,就绪,DX指向数据端口 mov al,buf ;变量buf送AL out dx,al ;将数据输出给数据端口 D0~D7 +5V Q D R 8001H 1位 三态 缓冲器 D7 译码 A0~A15 8000H
主程序 中断服务程序 中断请求 一个字(节) 的信息 传送 断点 继续执行 返回断点 三 中断方式 • 适用于低速外设与CPU的信息交换 • 高速外设可能产生信息丢失,故不采用 程序流程
中断传送方式的原理(输入) 0 0 0 1 1 0 0 0 1 1
三 DMA方式 • 定义:直接存储器存取方式 • 特点:外设利用专用的DMA接口电路直接与存储器进行高速数据交换,而不经过CPU,完全不需要一些额外的操作,只决定于存储器和外设的速度。 • 方法:由专用的DMA控制器完成,如8237,要进行DMA传送时,只需向CPU发总线请求信号,CPU让出总线后即可进行。
四 输入/输出处理机方式 • 硬件:8089(输入/输出协处理器),包含2个DMA通道,本身有专用的指令系统用于数据传送。 • CPU状态:最大工作模式 • 特点:数据信息交换完全由8089实现,此时CPU可做其他事情。
传送方式的比较 • 无条件传送:慢速外设与CPU保持同步 • 查询传送: 简单实用,效率较低 • 中断传送:外设主动,可与CPU并行工作,但每次传送需要大量额外时间开销 • DMA传送:DMAC控制,外设直接和存储器进行数据传送,适合大量、快速数据传送 • 输入/输出处理机控制:8089控制,DMA方式的升级版。
第8章 输入/输出接口 8.1 微型计算机的输入/输出接口 8.2 并行通信和并行接口 8.3 可编程并行通信接口8255A
8.1 微型计算机的输入/输出接口 • 8.1.1 CPU和输入输出设备之间的信号 • 8.1.2 CPU和外设之间的数据传送方式
8.1.1 CPU和输入输出设备之间的信号 (1)数据信息:(外设与CPU之间) 数字量:键盘、磁盘到CPU,CPU到打印机、磁盘、显示器等,一般为二进制数、ASCII码等 模拟量:通过A/D转换器输入,通过D/A转换器输出 开关量:控制开关、电机、阀门、继电器等等
(2)状态信息:(从外设到CPU) 显示外部设备的工作状态,如空闲还是忙 (3)控制信息: (CPU到外设) 使外设按要求工作,如启动、停止、控制字、命令字等信号 以上三种信号都可通过DB传送,此时,数据信息送接口中的数据缓冲器;状态信息送状态寄存器;控制信息送控制寄存器。
8.1.2 CPU和外设之间的数据传送方式 四种传送方式: 程序方式(无条件、条件传送) 中断方式 DMA方式 输入/输出处理机方式
一 程序方式 1. 无条件传送方式 (1)定义:确认计算机外设已经准备好,就不必查询外设状态而直接进行数据传输。 (2)适用条件:传送不能太频繁,外设通常比较简单,如开关、数码LED显示器等
(3)工作原理 OUT DX, AL IN AL, DX
说明: • 输入时要使用缓冲器,因为输入数据的保持时间相对CPU速度要长,可以直接用缓冲器与DB相连而不需锁存。 • 输出时要使用锁存器,因为外设速度一般较慢,需要让数据保存一段时间,以便外设能取到数据。
2 条件传送方式 (1)条件传送的概念: 又叫查询方式传送,CPU通过程序不断读取并检测外设状态,一旦发现输入设备处于准备好或输出设备空闲状态时,就执行输入/输出指令完成信息交换。
输入状态 N 就绪? Y 数据交换 (2)条件传送的三个环节: CPU从接口中读取状态字 CPU检测状态字 传送数据 查询式输出程序流程示意
1 查询式输入的接口电路 0 0 0 1 0 1
1 查询式输出的接口电路 0 0 1 0 0 0 1 1
主程序 中断服务程序 中断请求 一个字(节) 的信息 传送 断点 继续执行 返回断点 二 中断方式 • 适用于低速外设与CPU的信息交换 • 高速外设可能产生信息丢失,故不采用 程序流程
三 DMA方式 • 定义:直接存储器存取方式 • 特点:外设利用专用的DMA接口电路直接与存储器进行高速数据交换,而不经过CPU,完全不需要一些额外的操作,只决定于存储器和外设的速度。 • 方法:由专用的DMA控制器完成,如8237,要进行DMA传送时,只需向CPU发总线请求信号,CPU让出总线后即可进行。
四 输入/输出处理机方式 • 硬件:8089(输入/输出协处理器),包含2个DMA通道,本身有专用的指令系统用于数据传送。 • CPU状态:最大工作模式 • 特点:数据信息交换完全由8089实现,此时CPU可做其他事情。
8.2 并行通信和并行接口 定义: 一个字符的各位数用几条线同时进行传输。 特点: 优点:传输速度快,信息率高 缺点:用电缆多,不适应远距离传输
数据输入 准备好 数据 数据输入 回答 RD# INTR 数据 数据输入过程 : 输入准备好 状态位 外设 CPU 8255
数据输出 回答 数据 数据输出 准备好 WR# INTR 数据 数据输出过程 : 输出准备好 状态位 外设 CPU 8255