微机原理第8章-输入输出接口技术ppt课件.ppt

上传人:飞****2 文档编号:32154698 上传时间:2022-08-08 格式:PPT 页数:41 大小:756KB
返回 下载 相关 举报
微机原理第8章-输入输出接口技术ppt课件.ppt_第1页
第1页 / 共41页
微机原理第8章-输入输出接口技术ppt课件.ppt_第2页
第2页 / 共41页
点击查看更多>>
资源描述

《微机原理第8章-输入输出接口技术ppt课件.ppt》由会员分享,可在线阅读,更多相关《微机原理第8章-输入输出接口技术ppt课件.ppt(41页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、第8章 输入输出接口技术本讲内容l基本概念基本概念 I/O端口的编址端口的编址 输入输出的基本方法:输入输出的基本方法:无条件无条件、查询查询、中断中断、DMA微型计算机中微型计算机中I/O接口的作用接口的作用存存储储器器M MI/O接接口口输输入入设设备备II/O接接口口数据总线数据总线 DB控制总线控制总线 CB地址总线地址总线 AB输输出出设设备备OCPU 什么是I/O接口(电路)?lI/OI/O接口是位于系统与外设间、用来协助完成数据接口是位于系统与外设间、用来协助完成数据传送和控制任务的逻辑电路,传送和控制任务的逻辑电路,I/OI/O接口接口就是就是CPUCPU与外与外设的连接部件。

2、设的连接部件。lPCPC机系统板的可编程接口芯片、机系统板的可编程接口芯片、I/OI/O总线槽的电路总线槽的电路板(适配器)都是板(适配器)都是I/OI/O接口电路接口电路接口在接口在CPUCPU与外设之与外设之间间I/O接口的基本结构示意图为什么需要接口电路?1。外部设备的种类多种多样。2。传输的信息也有多种的。3。速度的相差更大。 所以就需要在计算机与外部设备之间设置一种部件,使CPU和外部设备的工作协调起来,有效地完成输入输出任务。这种部件称为输入输出接口。 lI/O接口要解决的问题接口要解决的问题 速度速度匹配匹配(Buffer) 信号信号电平电平和和驱动驱动能力能力(电平转换器、驱动

3、器电平转换器、驱动器) 信号信号形式形式匹配匹配(A/D、D/A) 信息信息格式格式(字节流、块、数据包、帧字节流、块、数据包、帧) 时序时序匹配匹配(定时关系定时关系) 总线总线隔离隔离(三态门三态门) I/O地址地址译码与设备选择译码与设备选择 把选中的与总线相接,未选中的与总线隔离把选中的与总线相接,未选中的与总线隔离(高阻态)(高阻态) 数据的缓冲与暂存数据的缓冲与暂存 缓解接口与缓解接口与CPU工作工作速度的差异速度的差异 输出接口有锁存环节 输入接口有缓冲环节 对对外设外设进行监测、控制与进行监测、控制与管理管理,中断处理,中断处理 信号信号电平电平与与类型类型的的转换转换 形式、

4、格式、电平、功率、码制等形式、格式、电平、功率、码制等 I/O接口的功能接口的功能什么是微机接口技术?处理微机系统与外设间联系的技术 注意其软硬结合的特点 根据应用系统的需要,使用和构造相应的接口电路,编制配套的接口程序,支持和连接有关的设备接口电路交换的信息:数据信息。控制信息。状态信息。 lI/O端口:端口: I/O信息的三种类型:数据、命令、状态。 传送这三类信息的通道分别称为:数据端口(I、O)、命令端口(O)、状态端口(I)。l不同外设具有的端口数各不相同,计算机中为每一个端口都赋予一个惟一编号称为端口地址端口地址(或或端口号端口号)。l端口有两种编址方式两种编址方式:统一统一编址和

5、独立独立编址。I/O接口的编址方式接口的编址方式 l定义定义 把外设接口与内存统一进行编址。各占据统一地址空间的不同部分。l优点优点 指令统一,灵活; 访问控制信号统一,使用同一组的地址/控制信号。 l缺点缺点 内存可用地址空间减小例如例如: MCS-51单片机0地址空间(共1MB)内存地址(960KB)I/O地址(64KB)FFFFFHEFFFFHF0000H1. 统一编址统一编址 l定义定义: 外设地址空间和内存地址空间相互独立相互独立。l优点:优点:内存地址空间不受I/O编址的影响l缺点:缺点:I/O指令功能较弱,使用不同的读写控制信号00000H内存地址空间内存空间(1MB)I/O空间

6、(64KB)FFFFHFFFFFHI/O地址空间0000H2. 独立编址独立编址例如例如: 8088/8086 微机系统 l采用I/O独立编址独立编址方式(但地址线与存储器共用)l地址线上的地址信号用地址线上的地址信号用 来区分:来区分: /0 时为时为I/O地址地址/M地址地址lI/O操作只使用20根地址线中的16/8根:A15/7 A0l可寻址的I/O端口数为64K(65536)/256个lI/O地址范围为0FFFFH/0FFHlIBM PC只使用了只使用了10根根 A9 A0 1024个个I/O地址(03FFH) 原因原因: 够用为度够用为度, 简化电路简化电路IO/M=1IO/M 80

7、88/8086 CPU的的I/O编址方式编址方式 、 、 A15 A0 OUT指令 将使总线的 信号有效 IN 指令 将使总线的 信号有效 当接口只有1个端口个端口(仅数据口仅数据口,无状态口和控制口无状态口和控制口)时,16位地址线一般应全部参与译码全部参与译码,译码输出直接选择该端口; 下面先介绍这种简单情况 当接口具有多个端口多个端口时,则16位地址线的高位高位参与译译码码(决定接口的基地址),而低位低位则用于确定要访问哪哪一个端口一个端口。 IORIOWIOWIORI/O端口地址的译码端口地址的译码例如:例如: 某外设接口有某外设接口有4个端口个端口(如如8255/8253),地址为,

8、地址为2F0H2F3H,则,则其基地址为其基地址为2F0H,由,由A15A2译码得到,译码得到,而而A1、A0用来确定用来确定4个端口中的某一个。个端口中的某一个。请思考请思考: : A0A15=?I/O接口接口(4端口端口)A0A1CS译码器译码器A0A1A2A15I/O接口接口(1端口端口)CS译码器译码器A0A15 l并行并行 定义定义: 一个数据单位(通常为字节字节)的各位同时传送 特点特点: 速度快、距离短、成本高 例如:例如:PC机的并行接口(通常用于连接打印机)l串行串行 定义定义: 数据按按位位进行传送 特点特点: 速度慢、距离远、成本低 例如:例如: PC机的串行接口(通常用

9、于串行通信)I/O数据的传送方式数据的传送方式CPU与外设间的数据传送方式与外设间的数据传送方式I/O接口电路基础:接口电路基础:三态缓冲器/锁存器问题:问题:CPU与外设的工作速度不一致速度不一致,尤其是当外设由其他CPU或时序电路控制时更加明显,应如何解决效率和可靠性如何解决效率和可靠性。数据传送控制:数据传送控制:使两者使两者高效、可靠地高效、可靠地进行数据传送进行数据传送(1) 无条件无条件传送方式传送方式(2) 条件条件传送方式传送方式 ( 查询查询方式方式 )(3) 中断中断传送方式传送方式(4) DMA传送方式传送方式 ( Direct Memory Access ) 存贮器直接

10、存取存贮器直接存取方式方式四四种种传传送送方方式式(程序程序方式方式)无条件无条件传送方式 (同步同步传送方式)l实现方法 CPU不查询外设工作状态, 与外设速度的匹配通过在软件上延时完成, 在程序中直接用I/O指令,完成与外设的数据传送l特点 1. 适用于外设动作时间已知, 前提:CPU与外设进行数据传送时,外设保证已准备好。如开关、发光器件开关、发光器件( (如发光二极管、如发光二极管、7 7段数码管、灯泡等段数码管、灯泡等) )、继电器、步进电机继电器、步进电机等。 2. 软硬件十分简单。(程序程序方式之一方式之一)典型典型无条件无条件传送方式接口电路(传送方式接口电路(输入输入)该电路

11、在该电路在CPU执行指令执行指令(当外设开关准备好后当外设开关准备好后-开关动作时间固定开关动作时间固定) MOV DX, 284H IN AL, DX功能功能: 将输入设备的数据读入将输入设备的数据读入CPU内内AL中中图中译码电路的作用图中译码电路的作用:只当只当A15A0上出现上出现284H时,时,(即(即0000 0010 1000 0100B)输出输出0,其他输出,其他输出1。三三 态态缓冲器缓冲器开关开关状态状态 DBIOR地址地址译码译码 AB 284H000D7 D0A15A0与与非非IO总线总线74LS244 E1/E2例例: 开关开关典型典型无条件无条件传送方式接口电路(传

12、送方式接口电路(输出输出)图中图中译码电路译码电路的作用的作用:只当只当A15A0上出现上出现288H时,时,(即(即0000 0010 1000 1000B)输出输出0,其他输出,其他输出1。该电路在该电路在CPU执行指令执行指令(当外设当外设LED指示灯指示灯准备好后准备好后实际上一直处于准备好实际上一直处于准备好) MOV AL, 81H MOV DX, 288H OUT DX, AL 功能功能: CPU内内AL中的数据中的数据81H送至输出设备送至输出设备IO总线总线锁存器锁存器输出输出设备设备数据线数据线IOW地址地址译码译码地址线地址线 288H000D7 D0A15A0与与非非例

13、例:LED指示灯指示灯74LS273条件条件传送方式(查询查询传送方式)l实现方法: 在与外设进行传送数据前,CPU先先查询外设状态,当外设准备好后,再再才执行I/O指令,实现数据传送。l特点: 1. CPU通过不断查询外设状态,实现与外设的速度匹配; 2. CPU的工作效率低,响应速度慢; 3. 适用于简单、慢速的或实时性要求不高的外设.(程序程序方式之二方式之二)NY从状态端口读入状态信息从状态端口读入状态信息从数据端口传送一个数据从数据端口传送一个数据外设准备好否?外设准备好否?编程流程编程流程查询查询方式方式输入输入例例假设外设的假设外设的状态端口状态端口为为28C H(83H), 其

14、中其中D7=1时,表示外设数据准备好时,表示外设数据准备好 外设的外设的数据端口数据端口为为288 H(80H)。 实现从外设读实现从外设读50H个字节到内存缓冲区个字节到内存缓冲区buffer中。中。28CH端口端口状态状态端口端口288H端口端口数据数据端口端口地址地址译码译码数据数据缓冲缓冲控制控制电路电路输输入入外外备备CPU地址线地址线数据线数据线控制线控制线状态状态信号信号数据数据信号信号I/O接口接口查询方式查询方式输入输入接口电路接口电路状态端口状态端口 D7=1 表示外设准备好表示外设准备好输输入入装装置置+5vSTB三三 态态缓冲器缓冲器数数 据据 线线2 8 8H 数据数

15、据端口端口地址地址译码译码地址线地址线 状态状态端口端口地址地址译码译码锁锁存存器器IOR R Q D三三 态态缓冲器缓冲器D72 8 CH PC总线总线IORA15A0D7D0&MOV DX, 288HIN AL, DXMOV DX, 28CHIN AL, DXBUSYD0:D7GNDREADYD7 D6 D0READY从从28CH状态端口状态端口读入外设状态信息读入外设状态信息从从288H数据端口数据端口读入一个字节数据读入一个字节数据YND7=1, 外设准备好否?外设准备好否?N50H个数据传送结束?个数据传送结束?Y编程从外设读入编程从外设读入50H个字节到内存缓冲区个字节到内存缓冲区

16、buffer中中流程图流程图 STATUS EQU 28CH MOV AX, SEG buffer ;取缓冲区首地址取缓冲区首地址 MOV DS, AX LEA DI, buffer MOV CX, 50H ;传送个数传送个数 next: MOV DX, STATUS ask: IN AL, DX ;从状态端口读入状态信息从状态端口读入状态信息 TEST AL, 1000 0000B ;80H, 检测检测D7位位 JZ ask ;D7=0,继续查询继续查询MOV DX, 288H IN AL, DX ;从数据端口读入数据从数据端口读入数据MOV DI, AL ;送缓冲区送缓冲区 INC DI

17、;修改缓冲区指针修改缓冲区指针 LOOP next ;传送下一个传送下一个.查询查询方式方式输入输入程序程序片段片段思考思考: 若若状态口状态口和和数据口数据口为为83H和和80H,则程序应则程序应如何修改如何修改?查询查询方式方式输出例输出例假设外设的假设外设的状态端口状态端口为为28C H, 其中其中D0 = 0时,表示外设准备好时,表示外设准备好 外设的外设的数据端口数据端口为为288 H。 编程将缓冲区编程将缓冲区buffer的的80H个字节输出到外设。个字节输出到外设。28CH端口端口状态状态端口端口288H端口端口数据数据端口端口地址地址译码译码数据数据缓冲缓冲控制控制电路电路输输

18、出出外外备备CPU地址线地址线数据线数据线控制线控制线状态状态信号信号数数据据信信号号I/O接口接口查询查询方式方式输出输出接口接口状态端口状态端口 D0 = 0 表示外设准备好表示外设准备好输输出出设设备备数数 据据 线线288H数据数据端口端口地址地址译码译码地址线地址线 锁锁存存器器 RD D Q 三三 态态缓冲器缓冲器+5vACKPC总总线线IORA15A0D7D0IOW状态状态端口端口地址地址译码译码D028CH&MOV DX, 288HOUT DX, ALMOV DX, 28CHIN AL, DXREADY (BUSY)D7 D6 D0BUSY从从28CH状态端口状态端口读入外设状

19、态信息读入外设状态信息将一字节数据送至将一字节数据送至288H数据端口数据端口YND0=0, 外设准备好否?外设准备好否?N80H个数据传送结束?个数据传送结束?Y编程将缓冲区编程将缓冲区buffer的的80H个字节输出到外设个字节输出到外设条件条件查询查询输出输出流程图流程图STATUS_PORT EQU 28CHDATA_PORT EQU 288H MOV AX, SEG buffer ;取缓冲区首地址取缓冲区首地址 MOV DS, AX LEA SI, buffer MOV CX, 80H ;传送个数传送个数 next: MOV DX, STATUS_PORT ask: IN AL, D

20、X ;从状态端口读入状态信息从状态端口读入状态信息 TEST AL, 0000 0001B ;检测检测D0位位 JNZ ask ;D0=1,继续查询继续查询 MOV AL, SI ;从缓冲区取数从缓冲区取数 MOV DX, DATA_PORT OUT DX, AL ;从数据端口输出数据从数据端口输出数据 INC SI ;修改缓冲区指针修改缓冲区指针 LOOP next ;输出下一个输出下一个 . .查询查询方式方式输出输出程序程序片断片断 中断中断传送方式l 实现方法: 1. 当外设准备好,向CPU发出中断请求 2. CPU在满足响应中断的条件下,发出中断响应信号; 3. CPU暂停当前的程序

21、,转去执行中断服务程序, 完成与外设的数据传送; 4. CPU从中断服务程序返回,继续执行被中断的程序中断服务程序中断服务程序发申请发申请中断服务程序中断服务程序发申请发申请中断中断方式下方式下CPU执行程序流程执行程序流程外外设设硬件中断硬件中断-NMI 与与INTR两根线申请中断两根线申请中断(与与CALL差别大差别大)软件中断软件中断-INT n与与INTO指令指令(与与CALL功能类似功能类似)时间随机时间随机两者无关两者无关1. CPU和外设大部分时间处在并行并行工作状态, 只在只在CPU响应外设的中断申请后,响应外设的中断申请后, 进入数据传送的过程。进入数据传送的过程。2. 中断

22、传送方式提高了CPU的效率。3. 对外设的请求能作出实时响应, 可处理故障。4. 适于实时、快速、复杂的外设,但不适用于大量、高速频繁数据交换DMA。 中断中断传送方式的特点传送方式的特点DMA传输方式传输方式 前面前面3种种I/O方式共性方式共性: 都需要都需要CPU作为中介:作为中介: 外设外设 CPU 内存内存 两个含义:两个含义:1)软件:)软件:外设与内存之间的数据传送是通过外设与内存之间的数据传送是通过CPU执行执行程序来完成的(程序来完成的(PIO方式);方式);2)硬件:)硬件:I/O接口和存储器的读写控制信号、地址信号接口和存储器的读写控制信号、地址信号都是由都是由CPU发出

23、的(总线由发出的(总线由CPU控制)。控制)。 缺点缺点:程序的执行速度限定了传送的最大速度(约为:程序的执行速度限定了传送的最大速度(约为几十几十KB/秒)秒) 解决办法:解决办法:DMA传输传输 外设 内存DMAC DMA 传送方式(直接存储器存取方式) 实现方法 1. 由专用接口芯片DMA控制器控制器 (称DMAC) 控 制传送过程, 2. 当外设需传送数据时,通过 DMAC向 CPU发出总线请求HOLD ; 3. CPU发出总线响应信号HLDA,释放总线; 4. DMAC接管总线,控制外设、内存之间直 接数据传送 DMA 传送方式过程传送方式过程CPUDMAC内存内存外设外设总线总线响

24、应响应总线总线请求请求(i8237)DMAC内部包括四个基本寄存器内部包括四个基本寄存器地址寄存器:地址寄存器:用于存取下一个要访问的内存单用于存取下一个要访问的内存单元的地址,地址寄存器的内容加元的地址,地址寄存器的内容加1 1或减或减1 1操作,取操作,取决于决于DMACDMAC的设计的设计字节计数器:字节计数器:用于存放尚未传送完毕字节的数用于存放尚未传送完毕字节的数量,字节计数器在量,字节计数器在DMADMA过程中自动作减过程中自动作减1 1操作操作控制寄存器:控制寄存器:用于对用于对DMACDMAC操作的控制操作的控制状态寄存器:状态寄存器:反映反映DMACDMAC当前所处的状态,例

25、如,当前所处的状态,例如,数据块传输是否结束等状态信息数据块传输是否结束等状态信息HLDA发存储器地址发存储器地址传送数据传送数据传送结束?传送结束?DMA结束结束修改地址指针修改地址指针图图7.17 DMA流程图流程图 1. 外设和内存之间,直接进行数据传送, 不通过CPU, 传送效率高。 适用于在内存与高速外设、适用于在内存与高速外设、 或两个高速外设之间进行大批量数据或两个高速外设之间进行大批量数据 传送传送。 2. 电路结构复杂,硬件开销较大。DMA传送方式的特点传送方式的特点几种数据传送方式特点?几种数据传送方式特点?无条件传送:无条件传送:慢速外设需与CPU保持同步查询传送:查询传送: 简单实用,效率较低,硬件开销小中断传送:中断传送:外设主动,可与CPU并行工作,但中断服务保护现场等需要额外时间开销,需要硬件开销进行中断管理DMA传送:传送:DMAC控制,外设直接和存储器进行数据传送,适合大量、快速数据传送,需要硬件开销

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 教案示例

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁