




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第六章输入/输出libaoping@第六章输入/输出本章内容基本概念接口的作用和功能
I/O端口的编址输入/输出数据的传输控制方式无条件、查询、中断、DMADMA*DMA的基本概念DMA工作过程DMA的三种传输方式 26.1输入/输出接口概述
计算机的输入输出(即I/O)是计算机系统中不可缺少的重要组成部分,没有它,计算机只是一个聪明的“瞎子和哑巴”,既不知道人要它做什么,也不知道把计算机的结果反映出来,没有I/O,再高档的计算机也无法为人服务。现代计算机系统中外部设备种类繁多,各类外部设备不仅结构和工作原理不同,而且与主机的连接方式也可能完全不同。为了方便地将主机与各种外设连接起来,并且避免主机陷入与各种外设打交道的沉重负担之中,我们需要一个信息交换的中间环节,这个主机与外设之间的交接界面就称作输入/输出接口。34什么是I/O接口(电路)?I/O接口是位于系统与外设间、用来协助完成数据传送和控制任务的逻辑电路,I/O接口就是CPU与外设的连接部件。PC机系统板的可编程接口芯片、I/O总线槽的电路板(适配器)都是I/O接口电路CPUI/O接口电路
I/O设备接口在CPU与外设之间5接口:CPU与外设间的中间电路。接口的分类如下图所示:
接口分类基本接口:8259,8237,8254通用接口:8255,8251,usb,1394专用接口:键盘接口,显示器接口6I/O接口要解决的问题信息变换,信号形式匹配(A/D、D/A;串/并,并/串)
速度协调,速度匹配(Buffer)辅助与缓冲7具体地说,I/O接口应具有以下主要功能或其中的一部分功能:
1)寻址功能:对送来的片选信号进行识别。
2)输入/输出功能:根据读/写信号决定当前进行的是输入操作还是输出操作。
3)数据转换功能:A/D转换功能、D/A转换功能、串/并转换功能、并/串转换功能等。
4)联络功能:就绪信号,忙信号等。
5)中断管理:发出中斯请求信号、接收中断响应信号、发送中断类型码的功能。并具有优先级管理功能。6)错误检测:奇偶校验,循环冗余校验,海明码校验。7)可编程:可编程功能意味着I/O接口具有较强的通用性、灵活性和可扩充性,即在不改变硬件设计的条件下,I/O接口可以接收并解释CPU的控制命令,从而改变接口的功能与工作方式。
6)复位:接收复位信号,从而使接口本身以及所连的外设进行重新启动。I/O接口的功能8I/O端口:
I/O信息的三种类型:数据、命令、状态。传送这三类信息的通道分别称为:数据端口(I/O)、状态端口(I)、命令端口(O)。不同外设具有的端口数各不相同,计算机中为每一个端口都赋予一个惟一编号——称为端口地址(或端口号)。端口有两种编址方式:统一编址和独立编址。6.1.2I/O接口的编址方式9I/O接口电路的基本结构主机外设数据缓冲器状态寄存器控制寄存器总线驱动地址译码控制逻辑接CPU一侧接外设一侧DBABCB数据信息控制信息状态信息端口接口I/O端口编址方式:存储器映像或I/O独立编址一个外设可能有多个端口,一个端口也可能属于多个外设主板上的I/O地址:0~0FFH;扩展槽上的I/O地址:100~3FFH10定义把外设接口与内存统一进行编址。各占据统一地址空间的不同部分。优点指令统一,灵活;访问控制信号统一,使用同一组的地址/控制信号。缺点内存可用地址空间减小地址长,指令代码长,相应地读写执行时间也较长例如:
MCS-51单片机0地址空间(共1MB)内存地址(960KB)I/O地址(64KB)FFFFFHEFFFFHF0000H1.统一编址11定义:
外设地址空间和内存地址空间相互独立。优点:内存地址空间不受I/O编址的影响缺点:I/O指令功能较弱,使用不同的读写控制信号00000H内存地址空间内存空间(1MB)I/O空间(64KB)FFFFHFFFFFHI/O地址空间0000H2.独立编址例如:
8088/8086微机系统12MCS-51单片机I/O端口与内存统一编址示意图138088/80862016I/O端口独立编址示意图146.2输入输出数据的传输控制方式I/O接口电路基础:三态缓冲器/锁存器问题:CPU与外设的工作速度不一致,尤其是当外设由其他CPU或时序电路控制时更加明显,应如何解决效率和可靠性。数据传送控制:使两者高效、可靠地进行数据传送(1)
无条件传送方式(2)
条件传送方式(查询方式
)(3)
中断传送方式(4)
DMA传送方式(DirectMemoryAccess)
存储器直接存取方式三种传送方式(程序方式)15无条件传送方式最简单,只需直接使用输入/输出指令即可。相对应用最少。条件传送方式(程序查询)适于与速度不匹配的设备进行数据交换,但CPU必须等待外设准备好,工作效率低。
中断控制高效、实时,但要付出相对较高的硬件代价。
直接存储器存取即DMA方式。无需程序控制,因而速度最快。16无条件程序控制(同步控制)方式一种最简单的I/O控制方式,CPU可以随时根据需要无条件地读写I/O端口外设要求:简单,数据变化缓慢,操作时间固定,如一组开关或LED显示管。外设被认为始终处于就绪状态接口特点CPU的DB→I/O接口(输出锁存器)→外设CPU的DB←I/O接口(输入缓冲器)←外设17无条件传送方式硬件电路图18条件传送方式(查询传送方式)实现方法:在与外设进行传送数据前,CPU先查询外设状态,当外设准备好后,再才执行I/O指令,实现数据传送。特点:1.CPU通过不断查询外设状态,实现与外设的速度匹配;2.CPU的工作效率低,响应速度慢;3.适用于简单、慢速的或实时性要求不高的外设.19一般外设均可以提供一些反映其状态的信号,如对输入设备来说,它能够提供“准备好”(“READY”)信号,“READY”=1表示输入数据已准备好。输出设备则提供“忙”(“BUSY”)信号,“BUSY”=1表示当前时刻不能接收CPU来的数据,只有当“BUSY”=0时,才表明它可以接受来自于CPU的输出数据。条件传送方式(查询传送方式)20过程:输入操作的程序流程如图所示:对READY的状态查询,是通过读状态端口的相应位来实现的,输出的情况亦大致相同,这种传送控制方式的最大优点是,能够保证输入/输出数据的正确性。21查询方式输入接口原理图01022查询方式输出接口原理图0110023例1假设从某输入设备上输入一组数据送缓冲区,接口电路如图6-4,若缓冲区已满则输出一组信息“BOFFEROVERFLOW”,然后结束。设该设备的启动地址为0FCH,数据端口为0F8H,状态端口为0FAH。程序如下:DATASEGMENTMESS1DB‘BUFFEROVERFLOW’,’$’BUFFDB60DUP(?)DATAENDSCODESEGMENTASSUMECS:CODE,DS:DATA24START:MOVAX,DATAMOV DS,AXMOV BX,OFFSETBUFF;送缓冲区指针
MOV CX,60;送计数初值
OUT 0FCH,AL;启动设备
WAIT:IN AL,OFAH;查询状态,若为0,则等待
TEST AL,01HJZ WAITIN AL,0F8H;输入数据
MOV [BX],ALINC BXLOOPWAIT;检测缓冲区是否满,不满再输入
MOV DX,OFFSETMESS1;缓冲区满,输出标志字符串
MOV AH,09HINT 21HMOV AH,4CHINT 21HCODEENDSENDSTART
25轮流查询流程图优先级问题当CPU需对多个设备进行查询时,就出现了所谓的优先级问题,即究竟先为哪个设备服务,一般来讲,在这种情况下都是采用轮流查询的方式来解决,如图所示26中断传送方式
实现方法:
1.当外设准备好,向CPU发出中断请求
2.CPU在满足响应中断的条件下,发出中断响应信号;
3.CPU暂停当前的程序,转去执行中断服务程序,完成与外设的数据传送;
4.CPU从中断服务程序返回,继续执行被中断的程序27中断服务程序发申请中断服务程序发申请中断方式下CPU执行程序流程外设硬件中断---NMI与INTR两根线申请中断(与CALL差别大)软件中断---INTn与INTO指令(与CALL功能类似)时间随机两者无关28中断传送方式(输入接口)29中断优先级当系统中有多个设备提出中断请求时,就有一个该响应谁的问题,也就是一个优先级的问题,解决优先级的问题一般可有三种方法:软件查询法、简单硬件方法及专用硬件方法。
(1)软件查询法30中断优先级(2)简单硬件方法31中断优先级(3)专用硬件方法中断控制器的系统连接32图:中断服务子程序331.CPU和外设大部分时间处在并行工作状态,只在CPU响应外设的中断申请后,进入数据传送的过程。2.中断传送方式提高了CPU的效率。3.对外设的请求能作出实时响应,可处理故障。4.适于实时、快速、复杂的外设,但不适用于大量、高速频繁数据交换
DMA。
中断传送方式的特点34DMA传输方式
前面3种I/O方式共性:
都需要CPU作为中介:
外设
CPU
内存
两个含义:
1)软件:外设与内存之间的数据传送是通过CPU执行程序来完成的(PIO方式);
2)硬件:I/O接口和存储器的读写控制信号、地址信号都是由CPU发出的(总线由CPU控制)。
缺点:程序的执行速度限定了传送的最大速度(约为几十KB/秒)
解决办法:DMA传输外设
内存DMAC35CPUDMACMEMI/OA0~A1536
DMA传送方式(直接存储器存取方式)
实现方法1.由专用接口芯片DMA控制器(称DMAC)控制传送过程,2.当外设需传送数据时,通过
DMAC向CPU发出总线请求HOLD
;3.CPU发出总线响应信号HLDA,释放总线;4.DMAC接管总线,控制外设、内存之间直接数据传送DMA的工作流程图
37DMA控制器的工作过程:1)当外设准备好,可以进行DMA传送时,外设向DMA控制器发出“DMA传送请求”信号(DRQ);2)DMA控制器收到请求后,向CPU发出“总线请求”信号HOLD,表示希望占用总线;3)CPU在完成当前总线周期后会立即对HOLD信号进行响应。响应包括两个动作:一是CPU将数据总线、地址总线和相应的控制信号线均置为高阻态,由此放弃对总线的控制权。另一方面,CPU向DMA控制器发出“总线响应”信号(HLDA)。4)DMA控制器收到HLDA信号后,就开始控制总线,并向外设发出DMA响应信号DACK;38DMA控制器的工作过程(续)5)DMA控制器送出地址信号和相应的控制信号,实现外设与内存或内存与内存之间的直接数据传送;例如,向I/O接口发出读信号,同时往地址总线上发出存储器的地址和存储器写信号和AEN信号,即可从外设向内存传送一个字节。6)DMA控制器自动修改地址和字节计数器,并判断是否需要重复传送操作。当规定的数据传送完后,DMA控制器就撤销发往CPU的HOLD信号。CPU检测到HOLD失效后,紧接着撤销HLDA信号,并在下一时钟周期重新开始控制总线。
39DMAC的结构
数据端口状态/控制端口DMA控制器地址寄存器计数器控制/状态寄存器CPU存储器数据缓冲寄存器DMA请求触发器输入设备DMA响应ReadyDMA请求HOLDHLDADACK,应答信号端口地址选择40A8~A15418237A的工作周期8237A具有两种工作状态空闲周期:作为接口电路,受CPU控制的工作状态有效周期:作为DMAC控制DMA传送的工作状态428237A的工作周期—空闲周期8237A的任一通道都没有DMA请求时8237A由微处理器控制作为一个接口芯片CPU可对8237A编程,或从8237A读取状态8237A采样CS*选片信号,该信号有效,CPU就要对8237A进行读/写操作8237A还采样通道的请求输入信号DREQ,该信号有效,就进入有效周期438237A的工作周期—有效周期8237A采样到外设有DMA请求,就脱离空闲周期进入有效周期8237A作为系统的主控芯片,控制DMA传送操作DMA传送借用系统总线完成,其控制信号以及工作时序类似CPU总线周期44(1)DMA传送-单字节方式每次DMA传送时仅传送一个字节传送一个字节之后,字节数寄存器减1,地址寄存器加1或减1,HRQ变为无效8237A释放系统总线,将控制权还给CPU若传送后使字节数从0减到FFFFH,则终结DMA传送或重新初始化特点:一次传送一个字节,效率略低DMA传送之间CPU有机会重新获取总线控制权DMA传送方式45(2)DMA传送-数据块方式由DREQ启动就连续地传送数据,直到字节数寄存器从0减到FFFFH终止计数,或由外部输入有效信号终结DMA传送DREQ只需维持有效到DACK有效特点:一次请求传送一个数据块,效率高整个DMA传送期间CPU长时间无法控制总线(无法响应其他DMA请求、无法处理中断等)46(3)DMA传送-请求方式DREQ信号有效就连续传送数据DREQ信号无效,DMA传送被暂时中止,8237A释放总线,CPU可继续操作DMA通道的地址和字节数的中间值仍被保持DREQ信号再次有效,DMA传送就继续进行如果字节数寄存器从0减到FFFFH,或者由外部送来一个有效的信号,将终止计数特点:DMA操作可由外设利用DREQ信号控制传送的过程47(4)DMA传送-级连方式用于通过多个8237A级连以扩展通道第二级的HRQ和HLDA信号连到第一级某个通道的DREQ和DACK上第二级芯片的优先权等级与所连通道的优先权相对应第一级只起优先权网络的作用,实际的操作由第二级芯片完成还可由第二级扩展到第三级等48DMA写——把外设输入的数据写入存储器由IOR*有效从外设输入数据,由MEMW*有效把这一数据写入存储器。DMA读——把数据由存储器传送到外设由MEMR*有效从存储器读出数据,由IOW*有效把这一数据写入外设。DMA传输类型49固定使用通道0和通道1通道0的地址寄存器存源区地址通道1的地址寄存器存目的区地址,通道1的字节数寄存器存传送的字节数传送由设置通道0的软件请求启动每传送一字节需用8个时钟周期前4个时钟周期用通道0地址寄存器的地址从源区读数据送入8237A的临时寄存器后4个时钟周期用通道1地址寄存器的地址把临时寄存器中的数据写入目的区存储器到存储器的传送50DMA通道的优先权方式固定优先权方式——优先权固定通道0优先权最高,通道1其次,通道2再次,通道3最低循环优先权方式——优先权循环变化最近一次服务的通道在下次循环中变成最低优先权,其他通道依次轮流相应的优先权DMA传送不存在嵌套511.基地址寄存器
2.基字节数寄存器
3.当前地址寄存器
4.当前字节数寄存器
5.地址暂存寄存器和字节数暂存寄存器8237的内部寄存器52A8~A15536.方式寄存器存放相应通道的方式控制字选择某个DMA通道的工作方式其中用最低2位选择哪个DMA通道请看方式字的格式5400通道001通道110通道211通道300 校验传输01 DMA写10 DMA读11 非法×× 若D7D6=110禁止自动初始化1允许自动初始化0地址增量(加1)1地址减量(减1)方式字格式D7D6D5D4D3D2D1D000请求传输方式01单字节传输方式10数据块传输方式11级联传输方式557.命令寄存器存放8237A的命令字设置8237A芯片的操作方式影响每个DMA通道复位时使命令寄存器清零设置D2=1才使8237A可以作为DMA控制器请看命令字的格式56命令字格式D7D6D5D4D3D2D1D00DACK低电平有效1DACK高电平有效0DREQ高电平有效1DREQ低电平有效0不扩展写1扩展写×若D3=10固定优先权1循环优先权0正常时序1压缩时序×若D0=10启动8237工作1停止8237工作0禁止通道0地址保持1允许通道0地址保持×若D0=00禁止存储器之间传送1允许存储器之间传送578.请求寄存器用于软件控制下产生DMA请求除硬件DMA请求外,当工作在数据块传送方式时也可以通过软件发出DMA请求若是存储器到存储器传送,则必须由软件请求启动通道058请求字格式D7D6D5D4D3D2D1D0无用0复位1置位00通道001通道110通道211通道3599.屏蔽寄存器控制外设硬件DMA请求是否被响应(为0允许),各个通道互相独立。3种方法:单通道屏蔽字只对一个DMA通道屏蔽位进行设置主屏蔽字对4个DMA通道屏蔽位同时进行设置清屏蔽寄存器命令使4个屏蔽位都清零(允许)复位使4个通道全置于屏蔽状态当一个通道的DMA过程结束,如果不是工作在自动初始化方式,则这一通道的屏蔽位置位,必须再次编程为允许,才能进行下次DMA传送60单通道屏蔽字格式D7D6D5D4D3D2D1D0无用0清屏蔽位1置屏蔽位00通道001通道110通道211通道361四通道屏蔽字格式D7D6D5D4D3D2D1D0无用Di=0清通道I屏蔽位Di=1置通道I屏蔽位6210.状态寄存器可由CPU读取低4位反映读命令这个瞬间每个通道是否产生TC(为1,表示该通道传送结束)高4位反映每个通道的DMA请求情况(为1,表示该通道有请求)状态位在复位或被读出后,均被清零6311.暂存寄存器在存储器到存储器的传送方式下,暂存寄存器保存从源存储单元读出的数据,该数据又被写入到目的存储单元传送完成,暂存寄存器只会保留最后一个字节,可由CPU读出复位使暂存寄存器内容为零12.字节指针寄存器641.58237A的编程8327A芯片的初始化编程:只要写入命令寄存器可先输出主清除命令,进行软件复位然后写入命令字命令字影响所有4个通道的操作65选择页寄存器DACK3选择页寄存器DACK2选择页寄存器DACK1选择页寄存器A19~A16DACK0A19~A16A15~A08237DMAC利用页寄存器产生存储器地址66地址低字节总清地址高字节字数低字节字数高字节方式字命令字屏蔽字其他通道参数8237的初始化67PC机中8237的连接68OU
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 北京市中医院胸腰椎椎弓根螺钉置入精准度考核
- 2025年浙江大学医学院附属儿童医院招聘心电图室劳务派遣技师1人模拟试卷及完整答案详解1套
- 衡水市中医院咽部异物取出术考核
- 上海市人民医院安全生产法规与岗位责任制专项考试
- 北京市中医院钙磷代谢紊乱诊疗思维考核
- 2025年西安医学院第二附属医院招聘(84人)模拟试卷及答案详解1套
- 2025河北沧州市海兴县招聘社区工作者27人模拟试卷及答案详解(全优)
- 2025中心医院肿瘤影像诊断考核
- 秦皇岛市中医院便秘综合治疗方案制定考核
- 2025广西-东盟经济技术开发区社会福利院拟聘人员考前自测高频考点模拟试题及答案详解参考
- 2025年高中语文必修上册第二单元大单元教学设计
- 2025年护理质控标准题库及答案
- 2025年农作物植保员岗位技术基础知识考试题库附含答案
- 人力资源中薪酬管理案例分析题及答案
- 驾驶安全培训文案课件
- 采购业务审计培训
- 2025-2026学年冀美版(2024)小学美术二年级上册(全册)教学设计(附目录P284)
- 招聘渠道分析评估表
- 2025年注册安全工程师考试 安全生产法律法规与标准冲刺押题卷
- 服装色彩构成课件
- 2025年华为软件开发工程师招聘面试题库及答案解析
评论
0/150
提交评论