《微机原理 第八章 输入输出接口基础与总线.ppt》由会员分享,可在线阅读,更多相关《微机原理 第八章 输入输出接口基础与总线.ppt(50页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、第八章第八章输入输出接口基础与总线输入输出接口基础与总线8.1概述概述微型计算机(主机):微型计算机(主机):CPU,存储器,存储器,I/O接口,总线接口,总线微型计算机系统:微型计算机,外围设备微型计算机系统:微型计算机,外围设备,系统软件,系统软件I/O接口:主机与外围设备之间的缓冲电路接口:主机与外围设备之间的缓冲电路端口:接口内部用于暂存端口:接口内部用于暂存CPU与外设之间传输的信息的寄存器与外设之间传输的信息的寄存器一个接口一般有若干个端口。端口加上控制电路构成接口一个接口一般有若干个端口。端口加上控制电路构成接口主机主机接口接口外围设备外围设备8.1.1外围设备及其信号外围设备及
2、其信号输入设备输入设备1.外围设备外围设备输出设备输出设备I/O复合设备复合设备数字量数字量数据信号数据信号模拟量模拟量2.外围设备的信号外围设备的信号开关量开关量脉冲量脉冲量状态信号状态信号控制信号控制信号8.1.2I/O接口的功能接口的功能u解决解决CPU与外设之间速度不匹配的问题与外设之间速度不匹配的问题u实现信号电平的转换实现信号电平的转换u实现信号格式的转换实现信号格式的转换1.模模/数与数数与数/模转换模转换2.开关量转换开关量转换3.并行并行-串行的转换串行的转换u实现实现CPU与外设的同步与外设的同步u实现实现CPU对端口的选择对端口的选择8.2CPU与端口之间的接口技术与端口
3、之间的接口技术8.2.1最常用的简单最常用的简单I/O接口芯片接口芯片u缓冲器:缓冲器:单向缓冲器和双向缓冲器单向缓冲器和双向缓冲器u锁存器锁存器u译码器译码器(1)单向缓冲器单向缓冲器74LS244(2)双向缓冲器)双向缓冲器74LS245(3)锁存器)锁存器74LS373(4)译码器译码器74LS1388.2.2端口的编址方式端口的编址方式端口:接口内部用于暂存端口:接口内部用于暂存CPU与外设之间传输的数据、与外设之间传输的数据、状态和命令的寄存器状态和命令的寄存器(8位)位)端口的分类:(根据存放的信息)端口的分类:(根据存放的信息)数据端口数据端口命令端口(控制端口)命令端口(控制端
4、口)状态端口状态端口2.I/O端口寻址方式端口寻址方式l统一编址方式统一编址方式把每一个把每一个I/O端口看作一个存储单元,与存储单元一起编端口看作一个存储单元,与存储单元一起编址址优点:优点:1)简化了指令系统设计)简化了指令系统设计2)访问指令多,功能强)访问指令多,功能强3)I/O地址空间可调整地址空间可调整缺点:占用内存空间,缺点:占用内存空间,I/O译码电路复杂;译码电路复杂;输入输出时间较长输入输出时间较长内内存存空空间间I/OI/O空空间间独立编址方式独立编址方式I/O端口地址单独编址,构成端口地址单独编址,构成一个一个I/O空间,具有专用指令空间,具有专用指令(IN,OUT)优
5、点:优点:1)可读性好(专用指令)可读性好(专用指令)2)指令长度短,执行速度快,)指令长度短,执行速度快,占用内存空间少占用内存空间少3)译码电路简单)译码电路简单缺点:指令功能不强缺点:指令功能不强说明:对于说明:对于8086系统,地址总线的低系统,地址总线的低16位用来寻址位用来寻址I/O端口,故最大访问端口,故最大访问216B64KB65536B空间空间I/OI/O空空间间内内存存空空间间8.2.3端口与端口与CPU之间的接口之间的接口1.简单简单I/O接口的组成接口的组成2.地址译码电路地址译码电路l译码电路分成两部分译码电路分成两部分1)接口的选择:)接口的选择:采用采用16位地址
6、码的位地址码的高位地址高位地址,可与,可与CPU的控的控制信号组合,经地址译码器产生制信号组合,经地址译码器产生I/O接口芯片接口芯片的片选信号的片选信号2)接口内端口的选择接口内端口的选择采用采用16位地址码的位地址码的低位地址低位地址,译码实现片内,译码实现片内寻址,即选中片内的端口寻址,即选中片内的端口l译码器译码器1)74LS38译码器译码器三个输入端:三个输入端:C,B,A三个片选条件:三个片选条件:G1,G2A,G2B(G2A,G2B低电平有效)低电平有效)8个译码信号:低电平有效个译码信号:低电平有效当当CBA为为000111,分别在分别在Y0Y7上输出低电平上输出低电平译码器的
7、输入信号:译码器的输入信号:1)地址信号地址信号2)控制信号()控制信号(M/IO,AEN等)等)AY0BY1CY2Y3G1Y4G2AY5G2BY6Y72)译码器的作用:)译码器的作用:a.仅仅参加选片(高位地址参与译码)仅仅参加选片(高位地址参与译码)b.不仅仅选片,而且选端口(高低位地址参不仅仅选片,而且选端口(高低位地址参与译码与译码例例8-1。端口地址连续:端口地址连续:A15A14A13A12A11A10A9A8A7A6A5A4A3A2A1A00000001101111000011011A15A2:取决于高位地址的译码取决于高位地址的译码A1,A0:用于选择接口内的端口用于选择接口内
8、的端口高位地址选片低位地址选端口接口电路设计思想:接口电路设计思想:可利用已有的接口芯片,如译码器可利用已有的接口芯片,如译码器4个端口可连接到译码器的个端口可连接到译码器的4个输入端个输入端Y0Y3当当CBA为为000时,时,Y0端输出低电平,选中端输出低电平,选中A口口001时,时,Y1端输出低电平,选中端输出低电平,选中B口口010时,时,Y2端输出低电平,选中端输出低电平,选中C口口011时,时,Y3端输出电平,选中控制口端输出电平,选中控制口故可让地址线故可让地址线A0,A1分别与译码器的分别与译码器的A端,端,B端端相连相连剩下的剩下的C端端低电平有效,可与低电平有效,可与A2,A
9、7,A10A15中任一中任一相连,本例与相连,本例与A2相连相连剩下剩下13根地址线可通过门电路连接到片选条件端上。根地址线可通过门电路连接到片选条件端上。其中,要求其中,要求A7,A10A15地址线输出低电平有效地址线输出低电平有效A3A6,A8A9地址线输出高电平有效地址线输出高电平有效1)A7,A10A15地址线通过或门连接到地址线通过或门连接到G2A端上端上2)A3A6,A8A9地址线通过与门连接到地址线通过与门连接到G1端上端上3)控制信号)控制信号M/IO也需要参与片选,故连接到也需要参与片选,故连接到G2B上上3.8086CPU与端口之间的硬件接口与端口之间的硬件接口(8位接口电
10、路芯片与位接口电路芯片与16位数据总线的连接)位数据总线的连接)u仅使用偶地址仅使用偶地址u仅使用奇地址仅使用奇地址u使用连续地址使用连续地址1.仅使用仅使用8086偶地址的接口技术偶地址的接口技术I/O接口电路的接口电路的8位数据线与位数据线与8086数据总线的数据总线的低低8位位相连,相连,系统地址总线的系统地址总线的A0不参与片内的端口选择不参与片内的端口选择(而且(而且A0低电低电平有效平有效,参与选片)。而端口的参与选片)。而端口的A0与系统地址总线的与系统地址总线的A1相连。相连。图图7.5只使用偶地址的只使用偶地址的I/O接口地址线连接方法接口地址线连接方法RDWRD0.D7CS
11、A0A1IORCIOWC系统低系统低8位数据线位数据线D0D71&地址地址译码器译码器A0A9A0A1A2接接口口电电路路IBMPC最大模式最大模式A9A8A7A6A5A4A3A2A1A0高位地址选片 低位地址选端口 0 0 0 0 1 0 1 0 0 1 1 02.仅使用仅使用8086奇地址的接口技术奇地址的接口技术I/O接口电路的接口电路的8位数据线与位数据线与8086数据总线的数据总线的高高8位位相相连,系统地址总线的连,系统地址总线的A0不参与片内的端口选择(而不参与片内的端口选择(而且且A0高电平有效)。而端口的高电平有效)。而端口的A0与系统地址总线的与系统地址总线的A1相连。相连
12、。A9A8A7A6A5A4A3A2A1A0高位地址选片 低位地址选端口13.使用连续地址的接口技术使用连续地址的接口技术必须附加必须附加8位数据至位数据至16位数据的转换逻辑电路位数据的转换逻辑电路A0=0,CPU访问偶地址端口,接口的访问偶地址端口,接口的8位数据线位数据线与与CPU的低的低8位数据总线相连位数据总线相连BHE=0,且且A0=1,CPU访问奇地址端口,接口的访问奇地址端口,接口的8位数据线与位数据线与CPU的高的高8位数据总线相连位数据总线相连D0.D7RDCSA0A11地址地址译码器译码器A0A9A0A1接接口口电电路路.1IORCBHED0D7ATOED0D7ATOED1
13、5D8D7D01#82868.3CPU与端口之间的的数据传送方式与端口之间的的数据传送方式u程序控制传送方式程序控制传送方式u中断技术传送方式中断技术传送方式uDMA传送方式传送方式1.程序控制传送方式程序控制传送方式完全通过执行程序实现主机与外设之间的数据交换完全通过执行程序实现主机与外设之间的数据交换两种:两种:无条件传送方式无条件传送方式有条件传送方式(查询传送方式)有条件传送方式(查询传送方式)(1 1)无条件传送方式)无条件传送方式 实现方法实现方法 CPUCPU不查询外设工作状态,不查询外设工作状态,与外设速度的匹配通过在软件上延时完成,与外设速度的匹配通过在软件上延时完成,在程序
14、中直接用在程序中直接用I/OI/O指令,完成与外设的数据传送指令,完成与外设的数据传送 特点特点 1.1.适用于外设动作时间已知,适用于外设动作时间已知,在在CPUCPU与外设进行数据传送时,外设保证已准备好的情况与外设进行数据传送时,外设保证已准备好的情况 2.2.软硬件最简单。软硬件最简单。(2)条件传送方式)条件传送方式实现方法:实现方法:在与外设进行传送数据前,在与外设进行传送数据前,CPU先查询外设状态,先查询外设状态,当外设准备好后,才执行当外设准备好后,才执行I/O指令,实现数据传送指令,实现数据传送特点:特点:1.硬件,需要数据端口和状态端口硬件,需要数据端口和状态端口2.软件
15、,软件,CPU需要不断读取并测试外设的状态需要不断读取并测试外设的状态能保证能保证CPU和外设之间的协调同步,但查询外设状态浪费时间和外设之间的协调同步,但查询外设状态浪费时间 简化流程图简化流程图三三态态缓冲器缓冲器输输入入设设备备数数 据据 线线218HI/O译码译码地址线地址线锁锁存存器器RD R Q D三三态态缓冲器缓冲器+5v21CHSTBRDA15A0D7D0&MOV DX,218HMOV DX,218HIN AL,DXIN AL,DXMOVDX,21CHINAL,DXM/IOCS1CS2(A)查询方式下的输入接口查询方式下的输入接口例:例:假设假设假设假设 外设的状态端口为外设的
16、状态端口为外设的状态端口为外设的状态端口为21CH21CH,其中,其中,其中,其中D4=1D4=1时,表示外设时,表示外设时,表示外设时,表示外设数据准备好。数据准备好。数据准备好。数据准备好。外设的数据端口为外设的数据端口为外设的数据端口为外设的数据端口为218H218H。实现从外设读入实现从外设读入实现从外设读入实现从外设读入50H50H个字节到内存缓冲区个字节到内存缓冲区个字节到内存缓冲区个字节到内存缓冲区bufferbuffer从从21CH状态端口状态端口读入外设状态信息读入外设状态信息从从218H数据端口数据端口读入一个字节数据读入一个字节数据YND4=1,外设准备好否?外设准备好否
17、?N50H个数据个数据传送结束?传送结束?Y .LEADI,bufferLEADI,bufferMOVCX,50HMOVCX,50H;传送个数传送个数传送个数传送个数next:next:MOVDX,21CHMOVDX,21CHaskask:INAL,DXINAL,DX;从状态端口读入状态信息从状态端口读入状态信息从状态端口读入状态信息从状态端口读入状态信息TESTAL,00010000B;TESTAL,00010000B;检测检测检测检测D4D4位位位位 JZaskJZask;D4=0,;D4=0,继续查询继续查询继续查询继续查询MOVDX,218HMOVDX,218HINAL,DX;INAL
18、,DX;从数据端口读入数据从数据端口读入数据从数据端口读入数据从数据端口读入数据MOVDI,AL;MOVDI,AL;送缓冲区送缓冲区送缓冲区送缓冲区 INCDI;INCDI;修改缓冲区指针修改缓冲区指针修改缓冲区指针修改缓冲区指针LOOPnext;LOOPnext;传送下一个传送下一个传送下一个传送下一个.注意:注意:1)当端口地址)当端口地址0FFH(255)时候,对端时候,对端口的访问只能采用间接寻址方式(口的访问只能采用间接寻址方式(DX)2)IN/OUT指令指令INAL/AX,PORT/DXOUTPORT/DX,AL/AXPORT:端口地址(端口地址(0255或或0H0FFH)输输出出
19、设设备备数数 据据 线线219H数据数据端口端口地址地址译码译码地址线地址线锁锁存存器器 RD D Q 三三 态态缓冲器缓冲器+5vACKRDA15A0D7D0WRbusy21CH&MOV DX,219HMOV DX,219HOUT DX,ALOUT DX,ALMOVDX,21CHINAL,DXM/IOCS1CS2(B)B)查询方式下的输出接口查询方式下的输出接口查询方式下的输出接口查询方式下的输出接口C 例:假设外设的状态端口为例:假设外设的状态端口为例:假设外设的状态端口为例:假设外设的状态端口为21CH21CH,其中,其中,其中,其中D0=0D0=0时,表示外时,表示外时,表示外时,表示
20、外设准备好设准备好设准备好设准备好 外设的数据端口为外设的数据端口为外设的数据端口为外设的数据端口为219H219H。编程将缓冲区。编程将缓冲区。编程将缓冲区。编程将缓冲区bufferbuffer的的的的80H80H个字节输出到外设。个字节输出到外设。个字节输出到外设。个字节输出到外设。从从21CH状态端口状态端口读入外设状态信息读入外设状态信息将一字节数据送至将一字节数据送至219H数据端口数据端口YND0=0,外设准备好否?外设准备好否?N80H个数据个数据传送结束?传送结束?Y .LEA SI,buffer LEA SI,buffer MOV CX,80H ;MOV CX,80H ;传送
21、个数传送个数 next:next:MOV DX,21CH MOV DX,21CH askask:IN AL,DX ;IN AL,DX ;从状态端口读入状态信息从状态端口读入状态信息 TEST AL,0000 0001B ;TEST AL,0000 0001B ;检测检测D0D0位位 JNZ ask ;D00,JNZ ask ;D00,继续查询继续查询 MOV AL,SI ;MOV AL,SI ;从缓冲区取数从缓冲区取数 MOV DX,219H MOV DX,219H OUT DX,ALOUT DX,AL ;从数据端口输出数从数据端口输出数据据 INC SI ;INC SI ;修改缓冲区指针修改
22、缓冲区指针 LOOP next ;LOOP next ;输出下一个字节数据输出下一个字节数据 .2.中断技术传送方式中断技术传送方式 实现方法:实现方法:实现方法:实现方法:1.1.1.1.中断请求:当外设准备好,发出中断请求中断请求:当外设准备好,发出中断请求中断请求:当外设准备好,发出中断请求中断请求:当外设准备好,发出中断请求 2.2.2.2.中断判优中断判优中断判优中断判优 3.3.3.3.中断响应:中断响应:中断响应:中断响应:CPUCPUCPUCPU在满足响应中断的条件下,发出中断响应信号在满足响应中断的条件下,发出中断响应信号在满足响应中断的条件下,发出中断响应信号在满足响应中断
23、的条件下,发出中断响应信号 4.4.4.4.中断服务:中断服务:中断服务:中断服务:CPUCPUCPUCPU暂停当前的程序,转去执行中断服务程序,暂停当前的程序,转去执行中断服务程序,暂停当前的程序,转去执行中断服务程序,暂停当前的程序,转去执行中断服务程序,完成与外设的数据传送完成与外设的数据传送完成与外设的数据传送完成与外设的数据传送;5.5.5.5.中断返回:中断返回:中断返回:中断返回:CPUCPUCPUCPU从中断服务程序返回,继续执行被中断的程序从中断服务程序返回,继续执行被中断的程序从中断服务程序返回,继续执行被中断的程序从中断服务程序返回,继续执行被中断的程序特点:特点:特点:
24、特点:1.CPU和外设大部分时间处在并行工作状态和外设大部分时间处在并行工作状态,只在只在CPU响应外响应外设的中断申请后,进入数据传送的过程,具有较好的实时性设的中断申请后,进入数据传送的过程,具有较好的实时性2.中断传送方式提高了中断传送方式提高了CPU的效率的效率3.每一次数据传输都要中断一次,需要保护和恢复现场每一次数据传输都要中断一次,需要保护和恢复现场13.直接存储器存取方式直接存储器存取方式外设和存储器之间直接进行数据传送,而不经过外设和存储器之间直接进行数据传送,而不经过CPUDMA传送方式的特点传送方式的特点1.速度快,数据传送速度只受存储器存取时间的限速度快,数据传送速度只
25、受存储器存取时间的限制。制。适用于在内存与高速外设、或两个高速外设之间进行大批量数据传送。2.需要专门的需要专门的DMAC,电路结构复杂,电路结构复杂外围设备通过外围设备通过DMAC向向CPU申请申请DMA请求请求CPU响应响应DMA请求请求交出总线控制权交出总线控制权从源地址中读取数据从源地址中读取数据将数据写到目标地址将数据写到目标地址DMA结束结束数据传送结束否?数据传送结束否?修修改改地地址址指指针针NYDMAC初始化初始化字节计数器减字节计数器减1DMA传送过程n基本概念(端口,接口等)基本概念(端口,接口等)nI/O端口编址方式端口编址方式两种编址方式,两种寻址方式,两种编址方式,
26、两种寻址方式,IN/OUT指令的用法指令的用法n输入输出基本方法(输入输出基本方法(CPU与端口之间的数据传送方式)与端口之间的数据传送方式)及其特点(三种)及其特点(三种)程序查询方式的流程图以及编程程序查询方式的流程图以及编程n端口与端口与CPU之间的接口之间的接口三种方法三种方法学会阅读译码电路学会阅读译码电路(74LS38译码器)译码器)n系统总线:地址,数据和控制总线系统总线:地址,数据和控制总线8086系统:系统:20个地址线,可直接访问个地址线,可直接访问1MB的地址空间的地址空间等等8.4总线技术总线技术8.4.1概述概述总线:用于微机各部件之间传送信息的公共信号线总线:用于微
27、机各部件之间传送信息的公共信号线1.总线的分类总线的分类(1)芯片内部总线)芯片内部总线(2)元件级总线)元件级总线(3)系统总线(微机总线)系统总线(微机总线)(4)外部总线)外部总线2.总线的特性总线的特性2.总线的特性总线的特性(1)物理特性)物理特性(2)功能特性)功能特性地址总线地址总线数据总线数据总线控制总线控制总线(3)电气特性)电气特性(4)时序特性)时序特性3.总线的操作过程总线的操作过程总线请求阶段总线请求阶段寻址阶段寻址阶段传输阶段传输阶段结束阶段结束阶段4.总线标准总线标准(1)常用的标准系统总线常用的标准系统总线PC总线:总线:8086/8088,PC/XTISA总线
28、总线:80286486,PC/ATPCI总线总线:pentium5S-100总线总线STD总线总线(2)常用的标准外部总线常用的标准外部总线IEEE-488总线总线EIARS-232总线总线8.4.2PC总线总线1.地址总线(输出):地址总线(输出):20条,条,A19A0地址信号来自地址信号来自CPU/DMAC2.数据总线(双向):数据总线(双向):8条,条,D7D03.控制总线:控制总线:21条条可用于表示地址锁存,存储器可用于表示地址锁存,存储器/I/O设备的读写,中设备的读写,中断请求,断请求,DMA请求及响应等控制信号请求及响应等控制信号4.状态线(输入)状态线(输入)5.电源线及其
29、他辅助线电源线及其他辅助线8.4.3ISA总线总线与与PC线兼容,数据总线线兼容,数据总线16条,地址总线条,地址总线24条条特点:特点:8.4.4PCI局部总线局部总线局部总线:介于局部总线:介于CPU总线和系统总线之间的总总线和系统总线之间的总线。高速外设可通过局部总线直接挂在线。高速外设可通过局部总线直接挂在CPU总线上。总线上。特点:器件,扩展卡独立于特点:器件,扩展卡独立于CPU,具有较好的兼具有较好的兼容性。容性。1.PCI总线系统的结构总线系统的结构第一级:第一级:CPU总线,速度最快,连接内存,总线,速度最快,连接内存,Cache第二级:第二级:PCI总线,可连接高速外设总线,可连接高速外设第三级:第三级:ISA,EISA,连接基础连接基础I/OPCI总线,总线,PC设备设备.级与级之间用桥路连接级与级之间用桥路连接2.PCI总线的特点总线的特点(1)高性能高性能(2)低成本)低成本(3)自动配置参数)自动配置参数(4)灵活性和兼容性好)灵活性和兼容性好