《六章微型计算机的输入输出》由会员分享,可在线阅读,更多相关《六章微型计算机的输入输出(43页珍藏版)》请在金锄头文库上搜索。
1、六章微型计算机的输入输出Stillwatersrundeep.流静水深流静水深,人静心深人静心深Wherethereislife,thereishope。有生命必有希望。有生命必有希望6.1 I/O接口功能一、 CPU与外设通信特点需要有接口作为CPU与外设通讯的桥梁;需要有数据信息传送之前的“联络”;要传递的信息有三方面内容:状态、数据及控制信息。CPU I/O接口 外设地址数据控制控制数据状态 接口电路通常包含一组能够与处理器交换信息的接口电路通常包含一组能够与处理器交换信息的寄存器或缓冲器,称为寄存器或缓冲器,称为I/O端口端口 数据端口数据端口 存放数据信息存放数据信息 状态端口状态端
2、口 存放状态信息,即反映外设存放状态信息,即反映外设 当前工作状态的信息当前工作状态的信息 控制端口控制端口 存放控制信息存放控制信息二、接口的功能二、接口的功能l l进行地址译码或设备选择,以便使CPU能与某一指定的外部设备通讯;l l状态信息的应答,以协调数据传送之前的准备工作;l l进行中断管理,提供中断信号;l l进行数据格式转换,如正负逻辑的转换,串行与并行数据转换等;l l进行电平转换,如TTL电平与MOS电平间的转换;l l协调速度;l l时序控制,提供实时时钟信号。 6.2 I/O端口及其寻址方式 一、一、 存储器映像的存储器映像的I/O寻址寻址 存储单元和存储单元和I/O端口
3、的地址统一编址端口的地址统一编址I/O 端口端口存储单元存储单元I/O 地址空间地址空间存储器地址空间存储器地址空间整个地址空间整个地址空间举例:键盘及发光二极管接口 使用两个芯片74LS244 (8BIT三态门) 和74LS273(8BIT 寄存器发器)74LS24474LS273n这种编址方式的优点:这种编址方式的优点: 可以用访向存储器的指令来访问I/O端口,而访问存储器的指令功能比较强,不仅有一般的传送指令,还有算术、逻辑运算指令,以及各种移位、比较指令等,并且可以实现直接对I/O端口内的数据进行处理。n缺点是:缺点是: 由于I/O端口占用了一部分存储器地址空间,因而使用户的存储地址空
4、间相对减小。另外不利于程序阅读。 2、I/O映像的映像的I/O寻址寻址 I/O端口地址与存储单元地址分开编址端口地址与存储单元地址分开编址 存储单元存储单元存储地址空间存储地址空间I/O 端口端口I/O 地址空间地址空间特点n n1、地址线:A15A0n n2、M/IO=1n n3、用I/O指令n这种编址方式的优点是:这种编址方式的优点是: 第一,I/O端口不占用存储器地址,故不会减少用户的存储器地址空间; 第二,采用单独的I/O指令,使程序中I/O操作和其他操作层次清晰,便于理解。n这种编址方式的缺点是:这种编址方式的缺点是: 第一,单独I/O指令的功能有限,只能对端口数据进行输入/输出操作
5、,不能直接进行移位、比较等其他操作; 第二,由于采用了专用的I/O操作时序及I/O控制信号线,因而增加了微处理器本身控制逻辑的复杂性。6.3 输入输入/输出方式输出方式及CPU与外设通 信的接口 1 1、同步传送方式、同步传送方式2 2、异步查询方式、异步查询方式 程序控制传送方式程序控制传送方式3 3、中断方式、中断方式 4 4、直接存储器存取方式、直接存储器存取方式 一、程序控制传送方式一、程序控制传送方式u(一一)、同步传送方式(无条件方式)、同步传送方式(无条件方式) CPU直接与外设传送数据并不需要了直接与外设传送数据并不需要了解外设状态,认为外设已经准备就绪,解外设状态,认为外设已
6、经准备就绪,直接与外设传送数据直接与外设传送数据 CPU译码数据线M/IOWR或门地址线 接口外设输 出CPU译码数据线M/IORD或门地址线 接口外设输 入u(二)、异步查询方式(二)、异步查询方式 在执行输入输出前,要先查询接口中在执行输入输出前,要先查询接口中状态寄存器的状态。状态寄存器的状态。 输入时,状态寄存器的状态指示要输入输入时,状态寄存器的状态指示要输入的数据是否已经准备就绪;的数据是否已经准备就绪; 准备好?准备好?读取状态信息读取状态信息输入数据输入数据是是否否常用的状态线有IBF,READY功能:n n1、输入设备准备好数据,状态线有效;n n2、CPU读数据端口,取走数
7、据后,状态线转换为无效1、STB有效,有效,(1)、输入设备数据进入锁存器;、输入设备数据进入锁存器;(2)、IBF 有有效效2、CPU读状态端口读状态端口3、CPU读数据端口,同时清读数据端口,同时清IBF 输出时,状态寄存器的状态指示输出设输出时,状态寄存器的状态指示输出设备是否空闲。备是否空闲。忙?忙?读取状态信息读取状态信息输出数据输出数据否否是是常用的状态线有empty,busy功能:n n1、输出设备空闲,BUSY无效;n n2、CPU写数据端口,输出设备输出数据,状态线转换为有效/CS1/CS21、CPU读状态端口,查读状态端口,查BUSY线线2、CPU写数据,写数据,(1)、数
8、据进入数据锁存器;、数据进入数据锁存器;(2)、BUSY 有效有效3、输出设备工作完毕,、输出设备工作完毕,busy无效无效n n优点:电路简单n n缺点:降低CPU效率,实时性不强u(三)、中断方式(三)、中断方式 当外设作好传送准备后,主动向当外设作好传送准备后,主动向CPU请求请求中断,中断,CPU响应中断后在中断处理程序中与外响应中断后在中断处理程序中与外设交换数据。设交换数据。 在中断未发生时,在中断未发生时,CPU可以执行其他程序,可以执行其他程序,这样可以提高这样可以提高CPU的利用率。的利用率。主程序中断服务子程序中断信号n n与程序查询方式相比,中断控制方式的数据交与程序查询
9、方式相比,中断控制方式的数据交换具有换具有如下特点如下特点如下特点如下特点: : n n(1) (1) 提高了提高了CPUCPU的工作效率的工作效率; ;n n(2) CPU(2) CPU具有控制外围设备服务的主动权具有控制外围设备服务的主动权; ;n n(3) CPU(3) CPU可以和外设并行工作可以和外设并行工作; ;n n(4) (4) 可适合实时系统对可适合实时系统对I/OI/O处理的要求。处理的要求。二、直接存储器存取方式二、直接存储器存取方式 (DMA) (Direct Memory Access) 。 在高速的外设或成块交换数据的情况,采用程在高速的外设或成块交换数据的情况,采
10、用程序控制方式进行数据的传输,是无法满足要求的。序控制方式进行数据的传输,是无法满足要求的。在这种情况下,采用在这种情况下,采用DMA方式。方式。 DMA方式是在外设与内存间建立起直方式是在外设与内存间建立起直接的通道,接的通道,CPU不再直接参加外设和内存不再直接参加外设和内存间的数据传输。间的数据传输。 当系统需要进行当系统需要进行DMA传输时,将传输时,将CPU对对地址和数据及控制线的管理权交由地址和数据及控制线的管理权交由DMA控控制器进行控制,当完成了一次制器进行控制,当完成了一次DMA数据传数据传输后,再将这个控制权还给输后,再将这个控制权还给CPU,这些工,这些工作都是由硬件自动
11、实现的,并不需要程序作都是由硬件自动实现的,并不需要程序进行控制。进行控制。 CPU外设外设存储器存储器总总线线:执行程序指令的数据传送路径;:执行程序指令的数据传送路径; :DMA方式的数据传送路径方式的数据传送路径内存外设DMAC输出输入外设外设DMAC内存内存DMACDMA传送的几种形式传送的几种形式8086CPU为DMA提供两根信号线1、HOLD 总线保持请求2、HLDA 总线保持响应n nDMA控制器的基本功能控制器的基本功能n n(1) (1) 能接收能接收I/OI/O接口的接口的DMADMA请求,并向请求,并向CPUCPU发出总线请求信号;发出总线请求信号;n n(2) (2)
12、当当CPUCPU发出总线回答信号后,接管对总发出总线回答信号后,接管对总线的控制,进入线的控制,进入DMADMA传送过程;传送过程;n n(3) (3) 能实现有效的寻址,即能输出地址信息能实现有效的寻址,即能输出地址信息并在数据传送过程中自动修改地址;并在数据传送过程中自动修改地址;n(4) 能向存储器和I/O接口发出相应的读/写控制信号;n(5) 能控制数据传送的字节数,控制DMA传送是否结束;n(6) 在DMA传送结束后,能释放总线给CPU,恢复CPU对总线的控制。6.4 8086CPU的输入/输出1、I/O 寻址64K2、8086CPU的IO指令 (1 1) 直接寻址输入输出指令直接寻
13、址输入输出指令( (八位端口地址八位端口地址) ) IN ALIN AL,n (n (字节输入字节输入) ) IN AXIN AX,n (n (字输入字输入) ) OUT nOUT n,AL (AL (字节输出字节输出) ) OUT nOUT n,AX (AX (字输出字输出) ) (2)DX寄存器间接寻址输入(十六位端口地址) IN AL,DX (字节输入) IN AX,DX (字输入) OUT DX,AL (字节输出) OUT DX,AX (字输出)3、有关端口地址问题 a a、8086CPU8086CPU与外设交换数据可以字或字节进行,与外设交换数据可以字或字节进行, b b、当当以以字
14、字节节进进行行时时,偶偶地地址址端端口口的的字字节节数数据据由由低低8 8位位数数据据线线D7D7D0D0位位传传送送,奇奇地地址址端端口口的的字字节节数据由高数据由高8 8位数据线位数据线D15D15D8D8传送,传送, c c、当当用用户户在在安安排排外外设设的的端端口口地地址址时时,如如果果外外设设是是以以8 8位位的的方方式式与与CPUCPU连连接接,就就只只能能将将其其数数据据线线或或者者与与CPUCPU的的低低八八位位或或者者与与高高八八位位连连接接,这这样样同同一一台台外外设设的的所所有有寄寄存存器器端端口口地地址址都都只只能能是是偶偶地地址址或或是奇地址,这时设备的端口地址就会是不连续的。是奇地址,这时设备的端口地址就会是不连续的。