微机原理-第8章-IO接口技术课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《微机原理-第8章-IO接口技术课件.ppt》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 微机 原理 IO 接口 技术 课件
- 资源描述:
-
1、第第8章章 I/O 接口技术接口技术本章主要内容本章主要内容(1)I/O接口的基本概念接口的基本概念(2)I/O控制方式控制方式(3)DMA接口技术接口技术(4)中断系统中断系统8.1 I/O接口概述接口概述8.1.1 I/O接口的基本功能接口的基本功能 (1)数据缓冲数据缓冲 (2)提供联络信息提供联络信息 (3)信号与信息格式的转换信号与信息格式的转换 (4)设备选择设备选择 (5)中断管理中断管理 (6)可编程功能可编程功能8.1.2 I/O接口的基本结构接口的基本结构nI/O接口的基本结构如图接口的基本结构如图8.1所示。所示。cpu外外 围围 设设 备备 数据输入寄存器数据输入寄存器
2、数据输出寄存器数据输出寄存器状态寄存器状态寄存器 控制寄存器控制寄存器中断控制逻辑中断控制逻辑数据总线数据总线地址总线地址总线控制总线控制总线图图8.1 I/O 接口的基本结构接口的基本结构I/O接口接口8.1.3 I/O端口的编址方式端口的编址方式n输入输出接口包含一组称为输入输出接口包含一组称为I/O端口的寄存器。为了让端口的寄存器。为了让CPU能够访问这些能够访问这些I/O端口,每个端口,每个I/O端口都需有自己端口都需有自己的端口地址的端口地址(或端口号或端口号)。n在一个微型计算机系统中,如何编排这些在一个微型计算机系统中,如何编排这些I/O接口的端接口的端口地址,称为口地址,称为I
3、/O端口的编址方式。端口的编址方式。n常见的常见的I/O端口编址方式有两种端口编址方式有两种:n一种是一种是I/O端口和存储器端口和存储器统一编址统一编址,也称存储器映像的,也称存储器映像的I/O(MemoryMapped I/O)方式;方式;n另一种是另一种是I/O端口和存储器端口和存储器分开编址分开编址,也称,也称I/O映像的映像的I/O(I/O Mapped I/O)方式。方式。1.I/O端口和存储器统一编址端口和存储器统一编址 (Memory-mapped I/O)nI/O端口和存储器统一编址的地址空间分布情况如图端口和存储器统一编址的地址空间分布情况如图8.2所示。所示。I/O 端口
4、端口存储单元存储单元I/O 地址空间地址空间存储器地址空间存储器地址空间整个地址空间整个地址空间图图8.2 I/O 端口和存储器统一编址端口和存储器统一编址n这种编址方式的优点是,这种编址方式的优点是,可以用访向存储器的指令来可以用访向存储器的指令来访问访问I/O端口,而访问存储器的指令功能比较强,不仅端口,而访问存储器的指令功能比较强,不仅有一般的传送指令,还有算术、逻辑运算指令,以及有一般的传送指令,还有算术、逻辑运算指令,以及各种移位、比较指令等,并且可以实现直接对各种移位、比较指令等,并且可以实现直接对I/O端口端口内的数据进行处理。内的数据进行处理。n例如,若一个存储器映像的例如,若
5、一个存储器映像的I/O端口地址为端口地址为3000H,n则可以直接用指令则可以直接用指令“ADD AL,DS:3000H”对端口对端口的内容进行算术运算。的内容进行算术运算。n缺点是:缺点是:n由于由于I/O端口占用了一部分存储器地址空间,因而使用端口占用了一部分存储器地址空间,因而使用户的存储地址空间相对减小;户的存储地址空间相对减小;n另外,由于利用访问存储器的指令来进行另外,由于利用访问存储器的指令来进行I/O操作,指操作,指令的长度通常比单独令的长度通常比单独I/O指令要长,因而指令的执行时指令要长,因而指令的执行时间也较长。间也较长。n微处理器微处理器MC6800系列、系列、6502
6、系列以及系列以及MC680 x0系列系列采用这种编址方式。采用这种编址方式。2.I/O端口和存储器单独编址端口和存储器单独编址 (I/O-mapped I/O)nI/O端口和存储器单独编址的地址空间分布如图端口和存储器单独编址的地址空间分布如图8.3所所示。示。存储单元存储单元存储地址空存储地址空间间I/O 端口端口I/O 地址空间地址空间图图8.3 I/O 端口和存储器单独编址端口和存储器单独编址 n这种编址方式的这种编址方式的优点是:优点是:n第一,第一,I/O端口不占用存储器地址,故不会减少用户的端口不占用存储器地址,故不会减少用户的存储器地址空间;存储器地址空间;n第二,单独第二,单独
7、I/O指令的地址码较短,地址译码方便,指令的地址码较短,地址译码方便,I/O指令短,执行速度快;指令短,执行速度快;n第三,采用单独的第三,采用单独的I/O指令,使程序中指令,使程序中I/O操作和其他操作和其他操作层次清晰,便于理解。操作层次清晰,便于理解。n这种编址方式的这种编址方式的缺点是:缺点是:n第一,单独第一,单独I/O指令的功能有限,只能对端口数据进行指令的功能有限,只能对端口数据进行输入输入/输出操作,不能直接进行移位、比较等其他操作;输出操作,不能直接进行移位、比较等其他操作;n第二,由于采用了专用的第二,由于采用了专用的I/O操作时序及操作时序及I/O控制信号控制信号线,因而
8、增加了微处理器本身控制逻辑的复杂性。线,因而增加了微处理器本身控制逻辑的复杂性。n微处理器微处理器Z80系列、系列、Intel 80 x86系列采用了这种编址方系列采用了这种编址方式。式。8.1.4 I/O接口的地址译码及片选信号的产生接口的地址译码及片选信号的产生在一个微机系统中通常具有多台外设,当在一个微机系统中通常具有多台外设,当CPU与外设进与外设进行通信时,需要对各个设备所对应的接口芯片进行逻辑行通信时,需要对各个设备所对应的接口芯片进行逻辑选择,从而实现与相应的设备进行数据交换。选择,从而实现与相应的设备进行数据交换。这种逻辑选择功能是由这种逻辑选择功能是由I/O接口电路中的地址译
9、码器实接口电路中的地址译码器实现的。现的。目前常见的一种做法是目前常见的一种做法是:先通过对:先通过对I/O端口地址的某几端口地址的某几位高位地址进行译码,产生有效的片选信号,从而选中位高位地址进行译码,产生有效的片选信号,从而选中对应的接口芯片,再利用对应的接口芯片,再利用I/O端口地址的低位地址作为端口地址的低位地址作为对接口芯片内部有关寄存器的选择。对接口芯片内部有关寄存器的选择。n例如,在例如,在IBMPC/XT微机中,其系统板上有数片微机中,其系统板上有数片I/O接接口芯片,其中包括口芯片,其中包括DMA控制器控制器8237、中断控制器、中断控制器8259A、并行接口并行接口8255
10、A、计数器、计数器/定时器定时器8253等。等。n这些接口芯片必须是在相应的片选信号有效时才能工作。这些接口芯片必须是在相应的片选信号有效时才能工作。n图图8.4所示的就是在该微机系统中片选信号的产生电路。所示的就是在该微机系统中片选信号的产生电路。A Y0 B Y1 C Y2 Y3 Y4G2B Y5 G2A Y6 G1 Y7A5A6A874LS138A7A9AENPPICST/C CSINTRCSDMACSIOWWRTDMAPG(写写DMA页面寄存器页面寄存器)WRTNMIREG(写(写NMI屏蔽寄存器)屏蔽寄存器)图图8.4 片选信号的产生片选信号的产生8.2 I/O控制方式控制方式n主机
11、与外围设备之间的数据传送控制方式主机与外围设备之间的数据传送控制方式(即即I/O控制控制方式方式)主要有三种:主要有三种:n程序控制方式程序控制方式、中断控制方式中断控制方式和和直接存储器存取直接存储器存取(DMA)方式。方式。8.2.1 程序控制方式程序控制方式n程序控制方式是指在程序控制下进行的数据传送方式。程序控制方式是指在程序控制下进行的数据传送方式。它又分为无条件传送和程序查询传送两种。它又分为无条件传送和程序查询传送两种。1.无条件传送方式无条件传送方式n优点:优点:控制程序简单。控制程序简单。n缺点:缺点:必须是在外设已准备好的情况下才能使用,否必须是在外设已准备好的情况下才能使
12、用,否则,传送就会出错。则,传送就会出错。2.程序查询传送方式程序查询传送方式n优点:优点:比无条件传送要准确和可靠。比无条件传送要准确和可靠。n缺点:缺点:(1)CPU的利用率低;的利用率低;(2)不能满足实时控制系统对)不能满足实时控制系统对I/O处理的要求。处理的要求。准备好?准备好?读取状态信息读取状态信息输入数据输入数据是是否否图图8.5 查询式输入程序流程图查询式输入程序流程图忙?忙?读取状态信息读取状态信息输出数据输出数据否否是是图图8.6 查询式输出程序流程图查询式输出程序流程图8.2.2 中断控制方式中断控制方式n与程序查询方式相比,中断控制方式的数据交换具有与程序查询方式相
13、比,中断控制方式的数据交换具有如下特点如下特点:(1)提高了提高了CPU的工作效率的工作效率;(2)外围设备具有申请服务的主动权外围设备具有申请服务的主动权;(3)CPU可以和外设并行工作可以和外设并行工作;(4)可适合实时系统对可适合实时系统对I/O处理的要求。处理的要求。8.2.3 DMA方式方式1.DMA的基本概念的基本概念n采用程序控制方式以及中断方式进行数据传送时,都采用程序控制方式以及中断方式进行数据传送时,都是靠是靠CPU执行程序指令来实现数据的输入执行程序指令来实现数据的输入/输出的。输出的。n采用程序控制方式及中断方式时,数据的传输率不会采用程序控制方式及中断方式时,数据的传
14、输率不会很高。很高。n对于高速外设对于高速外设,如高速磁盘装置或高速数据采集系统,如高速磁盘装置或高速数据采集系统等,采用这样的传送方式,往往满足不了其数据传输等,采用这样的传送方式,往往满足不了其数据传输率的要求。率的要求。n例如,对于磁盘装置,其数据传输率通常在例如,对于磁盘装置,其数据传输率通常在20万字节万字节/秒以上,即传输一个字节的时间要小于秒以上,即传输一个字节的时间要小于5s。n对于通常的对于通常的PC机来说,执行一条程序指令平均需要几机来说,执行一条程序指令平均需要几s时时间。显然,采用程序控制或中断方式不能满足这种高速外间。显然,采用程序控制或中断方式不能满足这种高速外设的
15、要求。设的要求。n由此产生由此产生不需要不需要CPU干预干预(不需不需CPU执行程序指令执行程序指令),而在,而在专门硬件控制电路控制之下进行的外设与存储器间直接数专门硬件控制电路控制之下进行的外设与存储器间直接数据传送的方式据传送的方式,称为直接存储器存取,称为直接存储器存取(Direct Memory Access),简称简称DMA方式方式。n这一专门的硬件控制电路称为这一专门的硬件控制电路称为DMA控制器,简称控制器,简称DMAC。CPU外设外设存储器存储器总线总线:执行程序指令的数据传送路径;:执行程序指令的数据传送路径;:DMA方式的数据传送路径方式的数据传送路径图图8.7 两种不同
16、的数据传送路径两种不同的数据传送路径2.几种不同形式的几种不同形式的DMA传送传送内存外设DMAC输出输入外设外设DMAC内存内存DMAC图图 8.8 DMA传送的几种形式传送的几种形式8.3 DMA技术技术8.3.1 DMA控制器的基本功能控制器的基本功能 (1)能接收能接收I/O接口的接口的DMA请求,并向请求,并向CPU发出总线请发出总线请求信号;求信号;(2)当当CPU发出总线回答信号后,接管对总线的控制,发出总线回答信号后,接管对总线的控制,进入进入DMA传送过程;传送过程;(3)能实现有效的寻址,即能输出地址信息并在数据传能实现有效的寻址,即能输出地址信息并在数据传送过程中自动修改
17、地址;送过程中自动修改地址;(4)能向存储器和能向存储器和I/O接口发出相应的读接口发出相应的读/写控制信号;写控制信号;(5)能控制数据传送的字节数,控制能控制数据传送的字节数,控制DMA传送是否结束;传送是否结束;(6)在在DMA传送结束后,能释放总线给传送结束后,能释放总线给CPU,恢复,恢复CPU对对总线的控制。总线的控制。8.3.2 DMA控制器的一般结构控制器的一般结构n一个单通道一个单通道DMA控制器的一般结构及其与控制器的一般结构及其与I/O接口的接口的连接如图连接如图8.9所示。所示。n图图8.9的上半部分是的上半部分是I/O接口,下半部分是接口,下半部分是DMA控制器。控制
18、器。计数结束信号计数结束信号(可作为中断请求信号)(可作为中断请求信号)控制寄存器控制寄存器 状态寄存器状态寄存器数据输入寄存器数据输入寄存器数据输出寄存器数据输出寄存器控制寄存器控制寄存器 状态寄存器状态寄存器地址寄存器地址寄存器字节计数寄存器字节计数寄存器数据总线数据总线控制总线控制总线数据总线数据总线控制总线控制总线地址总线地址总线地址总线地址总线地址译地址译码器码器 DMA控制器控制器DMA请求请求DMA响应响应中断请求中断请求外设外设I/O 接口接口总线回答总线回答总线请求总线请求图图8.9 DMA控制器的一般结构及其与控制器的一般结构及其与I/O 接口的连接接口的连接8.3.3 D
19、MA控制器的工作方式控制器的工作方式nDMA控制器的工作方式通常有控制器的工作方式通常有“单字节传输方式单字节传输方式”、“块传输方式块传输方式”以及以及“请求传输方式请求传输方式”等。等。1.单字节传输方式单字节传输方式n在单字节传输方式下,在单字节传输方式下,DMA控制器每次请求总线只传控制器每次请求总线只传送一个字节数据,传送完后即释放总线控制权。送一个字节数据,传送完后即释放总线控制权。n在此方式下,总线控制权处于在此方式下,总线控制权处于CPU与与DMA控制器交替控制器交替控制之中,其间,总线控制权经过多次交换。控制之中,其间,总线控制权经过多次交换。2.块传输方式块传输方式(也称成
20、组传输方式也称成组传输方式)n块传输方式是指块传输方式是指DMA控制器每次请求总线即连续传送控制器每次请求总线即连续传送一个数据块,待整个数据块全部传送完成后再释放总一个数据块,待整个数据块全部传送完成后再释放总线控制权。线控制权。3.请求传输方式请求传输方式n每传输完一个字节,每传输完一个字节,DMA控制器都要检测由控制器都要检测由I/O接口接口发来的发来的“DMA请求请求”信号是否仍然有效,如果该信号信号是否仍然有效,如果该信号仍有效,则继续进行仍有效,则继续进行DMA传输;传输;n否则,就暂停传输,交还总线控制权给否则,就暂停传输,交还总线控制权给CPU,直至,直至“DMA请求请求”信号
21、再次变为有效,数据块传输则从刚信号再次变为有效,数据块传输则从刚才暂停的那一点继续进行下去。才暂停的那一点继续进行下去。8.3.4 DMA工作过程工作过程n在在DMA方式下,往往传送的是一个数据块,但传送这方式下,往往传送的是一个数据块,但传送这个数据块的具体操作方式,可以采用上面介绍的单字个数据块的具体操作方式,可以采用上面介绍的单字节传输方式,也可采用块传输或请求传输方式。节传输方式,也可采用块传输或请求传输方式。n下面先以从下面先以从内存输出一个字节数据到外设内存输出一个字节数据到外设的的DMA传送传送过程为例,具体说明过程为例,具体说明DMA的操作过程。然后再给出的操作过程。然后再给出
22、以以DMA方式输入一个数据块方式输入一个数据块的工作过程。的工作过程。n以以DMA方式从内存输出一个字节数据到外设的具体工方式从内存输出一个字节数据到外设的具体工作过程如图作过程如图8.10中第步所示。中第步所示。(6)内存把数据送数据总线内存把数据送数据总线(7)接口锁存数据接口锁存数据内存内存接口接口DMA控制器控制器I/O 设备设备CPU 和总线和总线控制逻辑控制逻辑HOLD HLDA(1)接口准备就绪,发接口准备就绪,发DMA请求请求(2)发总线请求发总线请求(3)总线允许总线允许 (5)DMA响应响应(9)CPU收回总线控制权收回总线控制权(8)DMA 控制器撤销总线请求控制器撤销总
23、线请求(4)DMA控制器把地址送地址总线控制器把地址送地址总线数据总线数据总线控制总线控制总线地址总线地址总线图图 8.10 以以DMA方式输出一个字节数据的工作过程方式输出一个字节数据的工作过程n若从外设往内存输入一个数据块若从外设往内存输入一个数据块(输入过程输入过程),在,在单字节传输单字节传输方式下方式下,其主要工作过程为:,其主要工作过程为:(1)I/O接口准备就绪,向接口准备就绪,向DMA控制器发控制器发“DMA请求请求”信号;信号;(2)DMA控制器向控制器向CPU发发“总线请求总线请求”信号;信号;(3)CPU向向DMA控制器发控制器发“总线允许总线允许”信号;信号;(4)DM
24、A控制器把地址送到地址总线上;控制器把地址送到地址总线上;(5)DMA控制器向控制器向I/O接口发接口发“DMA响应响应”信号;信号;(6)DMA控制器发读控制器发读I/O接口信号,令接口信号,令I/O接口把数据送接口把数据送到数据总线上;到数据总线上;(7)DMA控制器发写存储器信号,将数据写入由地址控制器发写存储器信号,将数据写入由地址总线上的地址所指向的内存单元;总线上的地址所指向的内存单元;(8)DMA控制器撤销总线请求;控制器撤销总线请求;(9)CPU 收回总线控制权;收回总线控制权;(10)地址寄存器加)地址寄存器加1;(11)字节计数寄存器减)字节计数寄存器减1;(12)如果字节
25、计数寄存器的值不为零,则返回第()如果字节计数寄存器的值不为零,则返回第(1)步,否则结束。步,否则结束。8.3.5 可编程可编程DMA控制器控制器8237nIntel 8237是一种功能很强的可编程是一种功能很强的可编程DMA控制器,目前控制器,目前仍在微机系统中广泛应用(置于南桥芯片中)。采用仍在微机系统中广泛应用(置于南桥芯片中)。采用5MHz时钟时,其传输速率可达时钟时,其传输速率可达1.6MB/s;n一片一片8237内部有内部有4个独立的个独立的DMA通道,每个通道一次通道,每个通道一次DMA传送的最大长度可达传送的最大长度可达64KB;每个通道的;每个通道的DMA请请求都可以分别允
展开阅读全文