微机原理讲义(第5章计算机和外设数据传输W6)_第1页
微机原理讲义(第5章计算机和外设数据传输W6)_第2页
微机原理讲义(第5章计算机和外设数据传输W6)_第3页
微机原理讲义(第5章计算机和外设数据传输W6)_第4页
微机原理讲义(第5章计算机和外设数据传输W6)_第5页
已阅读5页,还剩87页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

微机原理讲义(第5章计算机和外设数据传输W6)第一页,共94页。逻辑地址转换为线性地址的步骤?第二页,共94页。GDTR(TI=0)/LDTR(TI=1)索引TIRPL偏移量虚拟地址(48位)段描述符……段基址索引×8线形地址GDT/LDT表基址描述符索引TIGDTR(TI=0)/LDTR(TI=1)GDT/LDT段描述符偏移量(32b)逻辑地址转换为线性地址线形地址第三页,共94页。线性地址转换物理地址的步骤?第四页,共94页。页目录索引页表项索引页目录项低12位补0为页表基址页目录项地址高20位页表项高20位的页码页表项低12位补0为页基址表码补0得32位表基址第五页,共94页。本章内容为什么要用接口电路接口部件的I/O端口接口的功能以及在系统中的连接CPU和输入/输出设备之间的信号CPU和外设之间的数据传输方式第六页,共94页。为什么要用接口;CPU和输入/输出设备之间的信号;接口的功能以及在系统中的连接;中断传输的原理;DMA方式的原理;输入/输出过程中接口部件和地址总线错位连接的原理。本章重点第七页,共94页。观看接口视频第八页,共94页。知识点回顾,一下分别是什么寻址方式?8086cpu的寻址方式MOVAX,3000HMOVAX,BXMOVAX,[3000H]MOVAX,[BX+2000H]INAL,30HOUT30H,AL第九页,共94页。I/O接口概述接口电路按功能可分为两类:使微处理器正常工作所需的辅助电路输入输出接口电路输入输出接口电路是为了解决计算机和外设之间的信息变换和缓冲问题而提出来的。接口技术专门研究CPU和外设之间的数据传送方式、接口电路的工作原理和使用方法。CPU接口电路

I/O设备接口在CPU与外设之间第十页,共94页。外部设备功能多种多样,原理各不相同,而存储器功能单一外部设备的信息既有数字式,又有模拟式,需要A/D或者D/A接口转换多个外设共享总线,信息有串行和并行,而CPU只能接收和发送并行信息外设速度低且各不相同,需要接口电路对I/O过程实现缓冲和联络大家想一想,为什么需要I/O接口(电路)?第十一页,共94页。

总之,对输入设备而言,接口的目的是将输入设备送来的信息变换成CPU能接收的格式(信息变换),并将其放在缓冲器中让CPU来接收(缓冲)。

对输出设备而言,接口将CPU送来的数据放到缓冲器中(缓冲),并将它变成外部设备所需要的信息形式(信息变换)。

第十二页,共94页。5.2CPU和输入输出设备之间的信号CPU和输入输出设备之间有以下几类信号:

数据信息状态信息控制信息信号数字量模拟量开关量第十三页,共94页。CPU和输入/输出设备之间的信号数据信息数字量:二进制形式数据或以ASCII码表示的数据和字符模拟量:用于控制的计算机系统中,一般要进行A/D转换和D/A转换开关量:表示两个状态,如开关的接通和断开、电机的运转和停止、阀门的打开和关闭等第十四页,共94页。状态信息:反映当前外设的工作状态,如READY、BUSY信号控制信息:CPU通过接口传送给外设,控制外设的工作。如外设的启动和停止信号状态信息和控制信息被广义的看成数据信息,即状态信息作为输入数据,控制信息作为输出信息,因而这两种信息也通过数据总线传送。以上三种信息在接口中,被存入不同的寄存器中。数据信息放在接口的数据缓冲器中;控制信息送到接口的控制寄存器中;状态信息放在接口的状态寄存器中;第十五页,共94页。I/O接口中都包含一组能被CPU直接访问的一些寄存器,这些寄存器就称为I/O端口。每个寄存器称为I/O接口电路的一个端口,每个端口都有一个端口地址。一、I/O端口5.3接口部件的I/O端口第十六页,共94页。共用同一端口地址数据输入、输出寄存器:缓存数据控制寄存器:存放CPU发出的命令和控制信息状态寄存器:存放外部设备或者接口本身的状态共用同一端口地址外设通过接口和系统的连接Cpu对外设进行输入输出操作对接口芯片中各端口进行读写操作第十七页,共94页。两种编址方式:与存储器统一编址:访问内存的指令也可访问I/O端口I/O端口独立编址:通过控制总线确定CPU是访问内存还是I/O端口,需要专用的输入/输出指令第十八页,共94页。第十九页,共94页。第二十页,共94页。第二十一页,共94页。第二十二页,共94页。说明输入、输出是站在CPU角度来讲的不管是输入还是输出,所用的地址总是对端口而言一个双向工作接口芯片有4个端口:数据输入端口、数据输出端口、状态端口和控制端口数据输入端口和状态端口是“只读”的(为什么??)数据输出端口和控制端口是“只写”的(为什么??)数据输入和输出共用一个端口,状态和控制共用一个端口数据口(输入/输出):双向状态口:只能由CPU读入。控制口:只能由CPU写出。第二十三页,共94页。5.4接口的功能以及在系统中的连接寻址功能输入/输出功能数据转换功能联络功能中断管理功能复位功能可编程功能错误检测功能接口的功能第二十四页,共94页。接口的基本功能基本功能:在系统总线和I/O设备之间传输信号,提供信号变换和缓冲作用。

第二十五页,共94页。6.4接口的功能以及在系统中的连接1.寻址功能识别区别存储器和I/O的信号识别片选信号选择接口中的寄存器第二十六页,共94页。6.4接口的功能以及在系统中的连接根据读写信号判断传输方向;传输数据、控制和状态信息。2.输入输出功能3.数据转换功能把CPU的并行数据转换成一些外设所需的串行数据;把外设的串行信息转换成并行数据送往CPU。第二十七页,共94页。6.4接口的功能以及在系统中的连接发送中断请求和接收中断响应发送中断类型号优先级管理功能4.联络功能当数据传送完后,能通知CPU。

5.中断管理功能第二十八页,共94页。6.4接口的功能以及在系统中的连接6.复位功能

接收复位信号7.可编程功能可以用软件使其工作于不同的方式用软件来设置控制信号第二十九页,共94页。传输错误:接口与设备之间的连线受到各种干扰

采用奇/偶校验对传输错误进行检测

发现错误后对状态寄存器中的相应位置位覆盖错误:输入时,CPU还没有从数据输入寄存器取走数据,输入寄存器又装上了新数据。

发现错误后对状态寄存器中的相应位置位。

8.错误检测功能当前多数可编程接口芯片能检测下列两类错误: 传输错误;覆盖错误第三十页,共94页。I/O接口和外部连接示意图接口部件组成:与I/O设备相连与系统总线相连逻辑电路把相应的控制信号转换成接口的联络信号将总线提供的地址转换成片选信号第三十一页,共94页。用地址译码器中的1~2低位地址结合读/写信号对接口内部寄存器的寻址。即是用读信号、写信号和地址A0区分4个寄存器第三十二页,共94页。5.4CPU和外设之间的数据传送方式主机与外围设备之间的数据传送控制方式主要有三种:程序方式无条件传送查询式传送中断方式DMA方式第三十三页,共94页。程序方式指在程序控制下进行信息传送。1.无条件传送方式

适用于总是处于准备好状态的外设。以下外设可采用无条件传送方式:开关发光器件(如发光二极管、7段数码管、灯泡等)继电器步进电机优点:软件及接口硬件简单缺点:只适用于简单外设,适应范围较窄说明:①传送不能太频繁,以保证每次传送时,外设处于就绪状态。②此方式用得较少,只用在对一些简单外调的操作。6.5.1程序方式——无条件传送第三十四页,共94页。无条件传送方式输出时,M/IO和WR有效?使得CPU送来的数据在输出端保持和外设动作相应的时间输入指令时,RD有效?IO有效,输入缓冲器被选定,将输入数据进入DB,再到达CPU。6.5.1程序方式——无条件传送第三十五页,共94页。例1:输入:INAL,80H;将80H端口的内容送AL。

IO/M=0,RD=0,AL=10H例2:输出:OUT82H,AL;AL=10H

将AL中的内容送82H端口。

IO/M=?,WR=?,AL=?,[82H]=?6.5.1程序方式-无条件传送方式第三十六页,共94页。无条件传送流程返回第三十七页,共94页。2.条件传送方式——查询式传送(1)条件传送的概念CPU通过执行程序不断读取并测试外设的状态,如果外设处于准备好状态(输入设备)或空闲状态(输出设备),则CPU执行输入指令或输出指令与外设交换信息。

(2)条件传送的三个环节:CPU从接口中读取状态字CPU检测状态字的对应位判别外设是否就绪传送数据(3)适用场合:外设并不总是准备好,对传送速率和效率要求不高。第三十八页,共94页。条件传送的3个环节:查询状态环节CPU寻址状态口,读取状态字检测是否满足“就绪”条件如果不满足,回到第一步读取状态字;数据传送环节外设已处于“就绪”状态,寻址数据口是输入,通过输入指令从数据端口读入数据是输出,通过输出指令向数据端口输出数据输入状态就绪?数据交换YN流程5.5.1程序方式-条件传送方式输入指令测试转移指令传送指令第三十九页,共94页。2.条件传送方式CPU从接口中读取状态字CPU检测状态字,若未“就绪”,则转1如“就绪”状态,则传送数据图6.4查询式输入的接口触发器第四十页,共94页。图6.5查询式输出的接口第四十一页,共94页。

查询式输入过程的流程图查询式输入/输出操作小结:CPU查询外设状态是否忙,不忙,表示已有数据准备输入到CPU或者接口准备好从CPU接收数据时,可以执行输入/输出操作;否则等待。第四十二页,共94页。查询传送流程返回第四十三页,共94页。查询传送方式小结CPU需要先了解(查询)外设的工作状态,然后在外设可以交换信息的情况下(就绪)实现数据输入或输出,否则等待对多个外设的情况,则CPU按一定顺序依次查询(轮询)。先查询的外设将优先进行数据交换查询传送的特点是:工作可靠,适用面宽,但传送效率低第四十四页,共94页。6.4CPU和外设之间的数据传送方式主机与外围设备之间的数据传送控制方式主要有三种:程序方式无条件传送查询式传送中断方式DMA方式第四十五页,共94页。I/O中断的产生以打印机为例发中断请求空闲接收数据接收数据准备发中断请求打印打印打印机执行主程序继续执行主程序继续执行主程序响应中断中断返回响应中断中断返回启动打印机传送数据传送数据CPUCPU与打印机并行工作第四十六页,共94页。6.4.2中断方式断点主程序中断服务程序中断请求对外设进行处理继续执行返回断点CPU在执行程序中,被内部或外部的事件所打断,转去执行一段预先安排好的中断服务程序;服务结束后,又返回原来的断点,继续执行原来的程序流程第四十七页,共94页。中断方式即为外设中断CPU的工作,外设具有主动权。CPU不必在两次输入/输出之间对接口进行状态测试和等待,而可做别的处理工作。该种方式下,CPU和外设处于并行工作状态。中断方式大大提高了CPU的工作效率。中断方式第四十八页,共94页。

中断方式输入的接口电路中断请求信号,Pentium中断引脚为NMI和INTR当IF位为1时,才会产生该信号中断屏蔽触发器的状态为1还是0决定是否允许本接口发出中断请求第四十九页,共94页。图5.8可屏蔽中断的响应和执行(P190)请先自学并且讲解!第五十页,共94页。W8-2第五十一页,共94页。外部设备功能多种多样,原理各不相同,而存储器功能单一外部设备的信息既有数字式,又有模拟式,需要A/D或者D/A接口转换多个外设共享总线,信息有串行和并行,而CPU只能接收和发送并行信息外设速度低且各不相同,需要接口电路对I/O过程实现缓冲和联络为什么需要I/O接口(电路)?第五十二页,共94页。CPU和输入输出设备之间的信号有哪几类?

第五十三页,共94页。CPU和输入输出设备之间的信号有哪几类?

数据信息状态信息控制信息信号数字量模拟量开关量第五十四页,共94页。一个双向工作接口芯片有几个端口?其工作状态分别是什么?第五十五页,共94页。说明输入、输出是站在CPU角度来讲的!不管是输入还是输出,所用的地址总是对端口而言!一个双向工作接口芯片有4个端口:数据输入端口、数据输出端口、状态端口和控制端口。数据输入端口和状态端口是“只读”的数据输出端口和控制端口是“只写”的数据输入和输出共用一个端口,状态和控制共用一个端口数据口(输入/输出):双向状态口:只能由CPU读入。控制口:只能由CPU写出。第五十六页,共94页。寻址功能输入/输出功能数据转换功能联络功能中断管理功能复位功能可编程功能错误检测功能接口的功能有哪些?第五十七页,共94页。2.中断优先级问题的解决多个中断源产生中断,CPU首先为谁服务? ——中断优先级排队问题。(1)解决中断优先级的三种办法:软件查询方式简单硬件方式——菊花链法专用硬件方式——可编程的中断控制器

第五十八页,共94页。(2)三种方法的原理软件查询方式:利用带优先级的查询程序优点——硬件电路简单;缺点——转入服务程序花费时间较长。简单硬件方式——菊花链法:在每个外设对应的接口上连接一个逻辑电路,这些逻辑电路构成一个菊花链。2.中断优先级问题的解决第五十九页,共94页。中断优先级菊花链及其逻辑电路(a)菊花链线路图

菊花链法是解决中断优先级的一个简单硬件方法。其做法是在每个外设对应的接口上连接一个逻辑电路,这些逻辑电路构成一个链,称为菊花链。由菊花链来控制中断回答信号的通路。第六十页,共94页。(b)菊花链逻辑电路线路图说明:菊花链从硬件的角度根据接口在链中的位置决定了它们的优先级,越靠近CPU的接口,优先级越高。第六十一页,共94页。③专用硬件方式当前,在微型机系统中解决中断优先级管理的最常用办法是采用可编程的中断控制器。由于其可进行软件控制,使用灵活。第六十二页,共94页。

图典型的可编程中断控制器第六十三页,共94页。5.5.3DMA方式1.DMA传送方式的提出2.DMA控制器的功能和DMA传送原理3.DMA控制器的工作特点第六十四页,共94页。1、DMA方式的提出数据传送中存在问题采用程序控制方式以及中断方式进行数据传送时,都是靠CPU执行指令来实现数据的传输。通过指令控制时,要经过取指、识别、取操作数、执行4个过程,数据的传输率不会很高。对于高速外设,如高速磁盘装置或高速数据采集系统等,采用这样的传送方式,往往满足不了其数据传输率的要求。第六十五页,共94页。由此产生不需要CPU干预(不需CPU执行程序指令),而在专门硬件电路控制之下,在外设与存储器间建立直接通道,进行数据直接传送,称为直接存储器存取(DirectMemoryAccess),简称DMA方式。这一专门的硬件控制电路称为DMA控制器,简称DMAC。第六十六页,共94页。执行指令的数据传送路径;DMA方式的数据传送路径两种不同的数据传送路径不需要CPU干预(执行指令),而在专门硬件电路控制之下,在外设与存储器间建立直接通道,直接传送指令控制时,要经过取指、识别、取操作数、执行4个过程,传输率不很高第六十七页,共94页。DMA传送方式希望克服程序控制传送的不足:外设→CPU→存储器外设←CPU←存储器存储器直接存取DMA方式:外设→存储器外设←存储器CPU释放总线,由DMA控制器管理第六十八页,共94页。5.5.3DMA方式特点:大批量的数据传输。CPU让出总线控制权。DMA控制器(DMAC)接管这些总线。全硬件控制方式。第六十九页,共94页。DMA传送的工作过程⑴CPU对DMA控制器进行初始化设置⑵外设、DMAC和CPU三者通过应答信号建立联系:CPU将总线交给DMAC控制⑶DMA传送DMA读存储器:存储器→外设DMA写存储器:存储器←外设⑷自动增减地址和计数,判断传送完成否第七十页,共94页。

DMA控制器的功能: 向CPU发总线请求信号

实行对三大总线的控制

修改所用的存储器或接口的地址指针

发RW控制信号

字节计数器(存放数据长度直至为0)

交还总线控制权2、DMA控制器的功能第七十一页,共94页。2.DMA传送的原理图

用DMA方式传输单个数据(输出过程)DMA方式下,外设在DMA控制器的作用下,直接和存储器进行数据传输,无需CPU的干预,不必进行现场保护与恢复之类的操作。数据速率基本上取决与外设和存储器的速度。第七十二页,共94页。从接口往内存传输一个数据块的过程:①接口往DMA控制器发一个DMA请求②得到总线控制权③地址寄存器的内容送地址总线④通知接口将数据送到数据总线⑤数据送到所指单元⑥地址寄存器的值加1⑦字节计数器的值减1⑧如字节计数器的值不为0,则回到①;否则结束第七十三页,共94页。2.DMA控制器的内部最小配置和接口要求单向双向第七十四页,共94页。DMA传输对接口的要求:①控制寄存器有1位指出数据传输方向②控制寄存器有1位用来启动I/O操作③状态寄存器有1位指出设备当前是否处于忙状态第七十五页,共94页。对DMA控制寄存器的要求:①控制寄存器有1位作为DMA允许位②控制寄存器有1位用来确定DMA方向③控制寄存器有1位决定进行一次传输后放弃还是维持对总线的控制权④状态寄存器有1位表示数据块传输是否结束第七十六页,共94页。对DMA控制器和接口部件预置的信息:①往DMA控制器的字节计数器设置初值(指出数据传输长度)②往DMA控制器的地址寄存器中设置地址初值(指出存储区的首地址)③对DMA控制器设置控制字并启动DMA操作(指出传输方向、是否为块传输)④对接口部件设置控制字并启动I/O操作

第七十七页,共94页。中断优先级问题怎么解决?多个中断源产生中断,CPU首先为谁服务? ——中断优先级排队问题。(1)解决中断优先级的三种办法:软件查询方式简单硬件方式——菊花链法专用硬件方式——可编程的中断控制器

第七十八页,共94页。DMA传送的工作过程?⑴CPU对DMA控制器进行初始化设置⑵外设、DMAC和CPU三者通过应答信号建立联系:CPU将总线交给DMAC控制⑶DMA传送数据DMA读存储器:存储器→外设DMA写存储器:存储器←外设⑷自动增减地址和计数,判断传送完成否第七十九页,共94页。

DMA控制器的6大功能: 向CPU发总线请求信号

实行对三大总线的控制

修改所用的存储器或接口的地址指针

发RW控制信号

字节计数器(存放数据长度直至为0)

交还总线控制权2、DMA控制器的功能有哪些?第八十页,共94页。DMA传输对接口的要求有哪些?①控制寄存器有1位指出数据传输方向②控制寄存器有1位用来启动I/O操作③状态寄存器有1位指出设备当前是否处于忙状态第八十一页,共94页。DMA方式下对DMAC的要求有哪些?①控制寄存器有1位作为DMA允许位②控制寄存器有1位用来确定DMA方向③控制寄存器有1位决定进行一次传输后放弃还是维持对总线的控制权④状态寄存器有1位表示数据块传输是否结束第八十二页,共94页。DMA传输对DMAC和接口部件预置的信息如何?①往DMA控制器的字节计数器设置初值(指出数据传输长度)②往DMA控制器的地址寄存器中设置地址初值(指出存储区的首地址)③对DMA控制器设置控制字并启动DMA操作(指出传输方向、是否为块传输)④对接口部件设置控制字并启动I/O操作

第八十三页,共94页。启动数据块输入举例P195INTSTAT接口状态寄存器INTCON接口控制寄存器DMACONDMAC控制寄存器BYTE_REG/ADD_REGDMAC的字节计数器和地址寄存器INTSTAT第2位I/O设备的忙位INTCON第0位数据传输方向INTCON第2位I/O操作允许位DMACON第0位传输方向控制位DMACON第3位DMA控制器允许位DMACON第6位放弃总线控制权位第八十四页,共94页。(2)AND逻辑与指令(乘——置0)指令格式:AND目的,源指令功能:对两个操作数进行按位逻辑与操作,结果送回目的操作数。★主要用于使操作数的某些位保留(和‘1’相与),而使某些位清除(和‘0’相与)。(3)OR逻辑或指令(加——置1)指令格式:OR目的,源指令功能:对两个操作数进行按位逻辑或操作,结果送回目的操作数。★主要用于使操作数的某些位保留(和‘0’相或),而使某些位置1(和‘1’相或)。复习第八十五页,共94页。(4)XOR异或操作指令指令格式:XOR目的,源指令功能:对两个操作数进行按位逻辑异或操作,结果送回目的操作数。★主要用于使操作数的某些位保留(和‘0’相异或),而使某些位取反(和‘1’相异或)。相同为假,不同为真(5)TEST测试指令指令格式:TEST目的,源指令功能:对两个操作数进行按位逻辑与操作,并修改标志位,但不送回结果到目的,即指令执行后,两个操作数都不变,仅影响标志位。第八十六页,共94页。启动数据块输入的程序段:IDLE: IN AL,INTSTAT TEST AL,04 ;检测设备是否处于忙状态

JNZ IDLE ;若忙,则等待

MOV AX,COUNT ;设置计数值

OUT BYTE-REG,AX LEA A

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论