第六章 输入输出与接口技术

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

第6章第6章输入输出和接口技术教学重点接口与接口控制原理I/O端口地址的译码方法数字通道接口及其应用模拟通道接口6.1接口基本概念为什么需要I/O接口(电路)?微机的外部设备多种多样工作原理、驱动方式、信息格式、以及工作速度方面彼此差别很大它们不能与CPU直接相连必须经过中间电路再与系统相连这部分电路被称为I/O接口电路多种外设6.1接口基本概念(续1)什么是I/O接口(电路)?I/O接口是位于系统与外设间、用来协助完成数据传送和控制任务的逻辑电路PC机系统板的可编程接口芯片、I/O总线槽的电路板(适配器)都是接口电路CPU接口电路I/O设备6.1接口基本概念(续2)什么是微机接口技术?处理微机系统与外设间联系的技术注意其软硬结合的特点根据应用系统的需要,使用和构造相应的接口电路(硬件),编制配套的接口程序(软件),支持和连接有关的设备微机接口技术是编程人员的一项基本技能。6.1.1I/O接口的主要功能⑴对输入输出数据进行缓冲和锁存输出接口有锁存环节输入接口有缓冲环节⑵对信号的形式和数据的格式进行变换微机直接处理:数字量、开关量、脉冲量⑶对I/O端口进行寻址⑷与CPU和I/O设备进行联络6.1.2I/O接口的典型结构控制总线CB地址总线ABI/O接口电路数据控制状态数据总线DBCPU外设控制寄存器状态寄存器数据寄存器1.接口电路的内部结构2.接口电路的外部特性3.接口电路芯片的分类4.接口电路的可编程性1.接口电路的内部结构CPU与外设主要有数据、状态和控制信息需要相互交换,于是从应用角度看内部:⑴数据寄存器保存外设给CPU和CPU发往外设的数据⑵状态寄存器保存外设或接口电路的状态⑶控制寄存器保存CPU给外设或接口电路的命令理解端口2.接口电路的外部特性主要体现在引脚上,分成两侧信号面向CPU一侧的信号:用于与CPU连接主要是数据、地址和控制信号面向外设一侧的信号:用于与外设连接提供的信号五花八门功能定义、时序及有效电平等差异较大3.接口电路芯片的分类接口电路核心部分往往是一块或数块大规模集成电路芯片(接口芯片):通用接口芯片支持通用的数据输入输出和控制的接口芯片面向外设的专用接口芯片针对某种外设设计、与该种外设接口面向微机系统的专用接口芯片与CPU和系统配套使用,以增强其总体功能4.接口电路的可编程性许多接口电路具有多种功能和工作方式,可以通过编程的方法选定其中一种接口需要进行物理连接,还需要编写接口软件接口软件有两类:初始化程序段——设定芯片工作方式等数据交换程序段——管理、控制、驱动外设,负责外设和系统间信息交换6.1.3接口控制原理1.I/O数据的传送方式并行一个数据单位(通常为字节)的各位同时传送速度快、距离短、成本高例:PC机的并行接口(通常用于连接打印机)串行数据按位进行传送速度慢、距离远、成本低例:PC机的串行接口(通常用于串行通信)串行通信串行通信:将数据分解成二进制位用一条信号线,一位一位顺序传送的方式串行通信的优势:用于通信的线路少,因而在远距离通信时可以极大地降低成本串行通信适合于远距离数据传送,也常用于速度要求不高的近距离数据传送PC系列机上有两个串行异步通信接口、键盘、鼠标器与主机间采用串行数据传送异步串行通信串行通信时的数据、控制和状态信息都使用同一根信号线传送收发双方必须遵守共同的通信协议(通信规程),才能解决传送速率、信息格式、位同步、字符同步、数据校验等问题串行异步通信以字符为单位进行传输,其通信协议是起止式异步通信协议起止式异步通信协议起始位——每个字符开始传送的标志,起始位采用逻辑0电平起始位校验位停止位空闲位数据位低位高位字符0/10/10/10/110111…数据位——数据位紧跟着起始位传送。由5~8个二进制位组成,低位先传送校验位——用于校验是否传送正确;可选择奇检验、偶校验或不传送校验位停止位——表示该字符传送结束。停止位采用逻辑1电平,可选择1、1.5或2位空闲位——传送字符之间的逻辑1电平,表示没有进行传送数据传输速率数据传输速率也称比特率(BitRate)每秒传输的二进制位数bps字符中每个二进制位持续的时间长度都一样,为数据传输速率的倒数当进行二进制数码传输,且每位时间长度相等时,比特率还等于波特率(BaudRate)过去,串行异步通信的数据传输速率限制在50bps到9600bps之间。现在,可以达到115200bps或更高在电子通信领域,波特率即调制速率,指的是信号被调制以后在单位时间内的波特数,即单位时间内载波参数变化的次数。它是对信号传输速率的一种度量,通常以“波特每秒”(Bps)为单位。波特率有时候会同比特率混淆,实际上后者是对信息传输速率(传信率)的度量。波特率可以被理解为单位时间内传输码元符号的个数(传符号率),通过不同的调制方法可以在一个码元上负载多个比特信息。波特率与比特率的区别比特率在数字信道中,比特率是数字信号的传输速率,它用单位时间内传输的二进制代码的有效位(bit)数来表示,其单位为每秒比特数bit/s(bps)、每秒千比特数(Kbps)或每秒兆比特数(Mbps)来表示(此处K和M分别为1000和1000000,而不是涉及计算机存储器容量时的1024和1048576)。波特率波特率指数据信号对载波的调制速率,它用单位时间内载波调制状态改变次数来表示,其单位为波特(Baud)。波特率与比特率的关系为:比特率=波特率X单个调制状态对应的二进制位数。如何区分两者?显然,两相调制(单个调制状态对应1个二进制位)的比特率等于波特率;四相调制(单个调制状态对应2个二进制位)的比特率为波特率的两倍;八相调制(单个调制状态对应3个二进制位)的比特率为波特率的三倍;依次类推。2.数据传送方式程序控制下的数据传送——通过CPU执行程序中的I/O指令来完成传送,又分为:无条件传送、查询传送、中断传送直接存储器存取(DMA)——传送请求由外设向DMA控制器(DMAC)提出,后者向CPU申请总线,最后DMAC利用系统总线来完成外设和存储器间的数据传送I/O处理机——CPU委托专门的I/O处理机来管理外设,完成传送和相应的数据处理(1)无条件传送方式及其接口在CPU与慢速变化的设备交换数据时,可以认为它们总是处于“就绪”状态,随时可以进行数据传送,这就是无条件传送,或称立即传送、同步传送适合于简单设备,如LED数码管、按键或按纽等无条件传送的接口和操作均十分简单这种传送有前提:外设必须随时就绪(2)查询传送方式及其接口CPU需要选择了解(查询)外设的工作状态,然后在外设可以交换信息的情况下(就绪)实现数据输入或输出对多个外设的情况,则CPU按一定顺序依次查询(轮询)。先查询的外设将优先进行数据交换查询传送的特点是:工作可靠,适用面宽,但传送效率低就绪?查询传送的两个环节⑴查询环节寻址状态口读取状态寄存器的标志位若不就绪就继续查询,直至就绪⑵传送环节寻址数据口是输入,通过输入指令从数据端口读入数据是输出,通过输出指令向数据端口输出数据输入状态就绪?数据交换YN传送流程(3)中断传送方式断点主程序中断服务程序中断请求对外设进行处理继续执行返回断点CPU在执行程序中,被内部或外部的事件所打断,转去执行一段预先安排好的中断服务程序;服务结束后,又返回原来的断点,继续执行原来的程序传送流程中断传送与接口中断传送是一种效率更高的程序传送方式进行传送的中断服务程序是预先设计好的中断请求是外设随机向CPU提出的CPU对请求的检测是有规律的:一般是在每条指令的最后一个时钟周期采样中断请求输入引脚中断除了在输入和输出方面的应用外,中断还有着非常广泛的应用(4)DMA传送方式希望克服程序控制传送的不足:外设→CPU→存储器外设←CPU←存储器直接存储器存取DMA:外设→存储器外设←存储器CPU释放总线,由DMA控制器管理DMA传送的工作过程⑴CPU对DMA控制器进行初始化设置⑵外设、DMAC和CPU三者通过应答信号建立联系:CPU将总线交给DMAC控制⑶DMA传送DMA读存储器:存储器→外设DMA写存储器:存储器←外设⑷自动增减地址和计数,判断传送完成否传送流程DMA传送流程HLDA发存储器地址传送数据传送结束?DMA结束修改地址指针传送方式的比较无条件传送:慢速外设需与CPU保持同步查询传送:简单实用,效率较低中断传送:外设主动,可与CPU并行工作,但每次传送需要大量额外时间开销DMA传送:DMAC控制,外设直接和存储器进行数据传送,适合大量、快速数据传送6.1.4接口控制信号两类:总线控制信号、输入输出控制信号总线控制信号:数据线、地址线、IOW*、IOR*等输入输出控制信号:数据线、输入输出应答信号等现代微机系统都是采用总线接口方式6.2I/O指令和I/O地址译码微处理器进行I/O操作时完成两种选择:片选、字选;两种I/O接口结构:标准的I/O接口、存储器映射I/O结构。6.2.1I/O端口的编址接口电路占用的I/O端口有两类编排形式I/O端口单独编址(标准的I/O接口)I/O地址空间独立于存储地址空间如8086/8088I/O端口与存储器统一编址(存储器映射I/O结构)它们共享一个地址空间如M68001.I/O端口单独编址优点:I/O端口的地址空间独立控制和地址译码电路相对简单专门的I/O指令使程序清晰易读缺点:I/O指令没有存储器指令丰富内存空间I/O空间FFFFF0FFFF80x86采用I/O端口独立编址2.I/O端口与存储器统一编址优点:不需要专门的I/O指令I/O数据存取与存储器数据存取一样灵活缺点:I/O端口要占去部分存储器地址空间程序不易阅读(不易分清访存和访问外设)内存部分I/O部分存储器空间00000FFFFF6.2.28088/8086的输入输出指令输入指令INAL,i8;字节输入INAX,DX;字输入输出指令OUTi8,AL;字节输出OUTDX,AX;字输出功能演示功能演示I/O指令与接口实现执行CPU指令:MOVDX,42HOUTDX,8AH控制总线:IOW有效、IOR无效、MEMR/MEMW无效、AEN无效。地址总线:将42H写入A9~A0。译码器:根据DX高位译码,Y2有效,其他Yx无效。接口芯片:8253工作,其他接口芯片不工作。接口电路:8253对应接口电路应答选中信号,8253根据DX低位选择相应的寄存器。8253:接受数据总线(D7~D0)数据(8AH),写入所选寄存器。6.2.3I/O地址的译码因为对I/O端口的寻址与存贮器寻址相似,即必须进行片选和字选。所以其译码方法也相似。通常采用两级译码方法,译码地址的高位作为片选,以选择某一组(某一片I/O)。低位组地址直接接到I/O接口芯片的地址输入端,以选择片内寄存器(即具体端口)或低位再译码,以选择多个寄存器。PC机的I/O端口地址译码只用低10位地址(A0~A9)。210=1024个口地址,而实际上并未配上1K个外设端口,所以常采用部分译码法对10位地址的高位译码作为片选信号,片内对低位地址译码以选择具体寄存器端口。1.直接地址译码IBMPC/AT主机板的I/O译码电路DMA控制器1(00H~1FH)中断控制器1(20H~3FH)定时计数器(40H~5FH)并行接口电路(60H~7FH)DMA页面寄存器(80H~9FH)中断控制器2(A0H~BFH)DMA控制器2(C0H~DFH)协处理器(E0H~FFH)AEN接口芯片内部译码A0~A4A5A6A7A8A9ALS138译码器ABCG2AG2BG1Y0Y1Y2Y3Y4Y5Y6Y7IBMPC/AT主机板的I/O译码(续)*所有I/O译码必须有AEN(AddressEnable地址允许)参与译码,此信号用来隔离处理器,其他装置与I/O通道,而使DMA传送得以进行。即AEN=1,DMA控制三总线,进行DMA传

1 / 53
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功