输入输出方式及其中断处理(精)
微机原理和汇编语言 第7章 输入输出和中断.ppt
7.1 I/O接口概述
7.1.1 I/O接口的作用
1. I/O接口
微处理器与存储器构成了微型计算机系统的 主机部分,为了使微型计算机工作,还必须配上 各种外部设备,简称外设,将外设中主要用来实 现数据的输入/输出、实现人机联系的设备称为 输入/输出设备,即I/O设备。
当要把外设与微处理器相连时,往往需 要配上相应的电路。通常把介于主机和外设之间 的一种缓冲电路称为I/O接口电路,简称I/O接口。
(1) 数据信息:它是CPU与外设之间传送的 主要信息,可分为数字量、模拟量和开关量三种 形式。
(2) 状态信息:是外设通过接口送往CPU的 信息,作为外设与CPU之间交换数据的联络信号, 反映了当前外设所处的工作状态。
(3) 控制信息:是CPU通过接口传送给外设 的信息,用来设置外设(包括接口)的工作方式、 控制外设的工作等。
数据信息
DB
状态信息
CPU
I/O接口
外设
控制信息
图7.2 CPU与外设交换的信息
7.1.3 I/O接口的基本结构(接口与端口) 接口(Interface):介与主机和外设之间的 缓冲电路。 端口(Port):接口中可以进行寻址读写的 寄存器,简称口。 一个接口往往含有几个端口,CPU通过输入 输出指令向这些端口取或存信息。端口主要有三 类:一类为状态口,一类为命令口(或控制口), 一类是数据口。 CPU通过输入指令从状态口获取外设的状态 信息,通过输出指令从命令口发出控制命令,控 制外设的工作。通过输入输出指令可以从数据端 口与外设交换数据。因此说,计算机主机与外设 之间交换信息都是通过接口中的端口来实现的。
CPU
I/O 接口
外设
图7.1 主机与外设的连接
输入输出控制方式
1.3 DMA方式
• 1.DMA传送方式的提出 • 与程序查询方式相比,利用中断方式进行数据传送可以大大提高CPU的工作效率。
但在中断方式中,仍然是通过CPU执行程序来实现数据传送的,每传送一个字节 (或一个字)CPU都必须把主程序停下来,转去执行中断服务程序。而每进入一次 中断服务程序,CPU都要保护断点和转入中断服务程序,上述几方面的因素造成中 断方式下的传输效率仍然不是很高。 • 如果I/O设备的数据传输率较高,那么CPU和这样的外部设备进行数据传输时,即使 尽量压缩程序查询方式和中断方式中的非数据传输时间,也仍然不能满足要求。这 是因为在这两种方式下,还存在另外一个影响传输速度的原因,即它们都是按字节 或字来进行传输的。为了解决这个问题,实现按数据块传输,就需要改变传输方式, 为此,提出了在外设和内存之间直接传送数据的方式,这就是直接存储器传输方式, 即DMA方式。
• I/O处理机有自己的指令系统,也能独立地执行程序,能承担原来由CPU处理的全部 输入/输出操作。如对外设进行控制、对输入/输出过程进行管理,并能完成字与字 之间的装配和拆卸、码制的转换、数据块的错误检测和纠错,以及格式变换等操作。 同时它还可以向CPU报告外设和外设控制器的状态,对状态进行分析,并对输入/输 出系统出现的各种情况进行处理。上述操作都是同CPU程序并行执行的。为了使 CPU的操作与输入/输出操作并行进行,必须使外设工作所需要的各种控制命令和定 时信号与CPU无关,由I/O处理机独立形成。
3
1.无条件传送方式
4
2.查询输入传送方式7
8
1.2 程序中断方式
• 无条件传送方式和查询传送方式的缺点是CPU和外设只能串行工作,各外设之间也 只能串行工作。为了使CPU和外设以及外设和外设之间能并行工作,提高系统的工 作效率,充分发挥CPU高速运算的能力,在微机系统中引入了中断技术,利用中断 来实现CPU与外设之间的数据传送,这就是程序中断传送方式。
第九课 输入输出控制方式
第九课输入输出控制方式[课题] 输入输出控制方式[课型] 新课[授课课时][教学目标]理解输入输出控制方式的基本概念,理解中断的执行过程[教学重点]中断的执行过程[教学难点]中断的执行过程[教学过程]一、输入输出控制方式CPU控制输入输出设备工作的方式有三种:程序查询方式、中断方式和直接存储器访问方式。
二、程序查询方式程序查询方式是在程序控制下CPU与外设之间交换数据。
其工作过程首先是用程序向外设发出进行数据传送的控制信号,然后从外设读取外设状态,检查是否可以进行数据传送,若外设准备就绪,则进行数据传送;否则反复读外设状态并检查,直到外设准备就绪再进行数据传送。
程序查询方式主要用软件方式实现,它的特点是CPU工作效率低。
三、中断方式中断是主机在执行程序过程、中,遇到突发事件而中断程序的政党执行,转去对突发事件的处理,待处理完成后返回原程序继续执行。
计算机中使用中断方式由软件和硬件共同实现。
软件部分指中断处理程序。
硬件部分指中断控制电路,其作用是负责对中断请求、中断响应等进行相应的处理,保证中断过程的政党进行。
中断过程包括中断请求、中断响应、中断处理、中断返回等步骤。
(1)中断请求。
中断源向CPU中的控制器发出中断请求。
(2)中断响应。
中断响应过程中把被中断的程序的断点地址保存起来,把中断处理程序入口地址送入指令指针寄存器,开始执行中断处理程序。
(3)中断处理。
根据不同的中断原因,中断处理程序执行相应的处理,中断处理程序运行结束后转入中断返回。
(4)中断返回。
中断返回就是恢复断点。
四、直接存储器访问方式直接存储器访问方式(DMA)指高速外设与内存之间直接进行数据交换,不通过CPU,并且CPU不参加数据交换的控制。
DMA方式下高速外设和内存之间进行数据传输需要使用总线,所以DMA方式下要解决的问题主要是总线使用权的转移。
总线使用权一般情况下由CPU掌握,在DMA期间总线使用权交给DMA控制器。
DMA方式由硬件实现。
输入输出中断总结
输入输出中断总结概述输入输出中断是计算机系统中一种重要的机制,用于处理外设与计算机之间的数据传输。
本文将对输入输出中断的概念、作用、分类和处理流程进行详细的总结和讲解。
什么是输入输出中断?输入输出中断是指当外设需要与计算机进行数据传输时,外设向计算机发出中断请求,使得计算机在完成当前操作后,立即转向处理该中断请求的机制。
在计算机体系结构中,输入输出设备(I/O设备)通常与主机(CPU和内存)通过输入输出接口进行连接。
通过输入输出中断,I/O设备可以在计算机执行其他任务的同时,与主机进行数据交换。
输入输出中断的作用输入输出中断通过降低计算机与I/O设备之间的耦合,使得计算机可以更高效地处理多个外设设备。
同时,输入输出中断还可以提高系统的吞吐量和响应速度,提高计算机系统的整体性能。
主要作用如下:1.提高系统的可靠性:通过中断机制,可以实现I/O设备与主机之间的异步工作,减少了死锁和饥饿等问题。
2.简化I/O设备驱动程序:输入输出中断可以简化驱动程序的设计和开发,减少了编程的复杂性和工作量。
3.提高系统的并发性:输入输出中断可以允许多个外设同时工作,并且可以在计算机执行其他任务时进行数据传输。
4.降低计算机与I/O设备之间的耦合度:通过中断机制,可以将I/O设备和主机解耦,实现I/O设备的独立操作和管理。
输入输出中断的分类根据中断处理的方式,输入输出中断可以分为以下几类:1.外部中断:外部中断是由外部事件或设备引起的中断,例如键盘输入、鼠标点击等。
外部中断通常由外部设备向CPU发出中断请求信号,从而引起中断处理程序的执行。
2.内部中断:内部中断是由CPU内部事件或异常引起的中断,例如溢出、除零错误等。
内部中断通常由CPU自身引发,并且由CPU内部的中断控制器进行处理。
3.软件中断:软件中断是由正在执行的程序通过软件指令触发的中断。
软件中断通常用于系统调用、异常处理等。
输入输出中断的处理流程输入输出中断的处理流程通常包括以下几个步骤:1.中断请求:外设向计算机发出中断请求信号,请求处理器处理中断。
单片机的中断处理机制
单片机的中断处理机制单片机(Microcontroller)是一种集成了CPU、内存、输入输出接口及定时器等功能的微型计算机系统。
在单片机的运行过程中,中断(Interrupt)机制起到了重要作用。
本文将介绍单片机的中断处理机制及其原理。
一、中断的概念和分类中断是指在程序执行过程中,由硬件或软件发出的请求,使CPU暂时中止当前的工作,去响应新的任务。
中断可以分为硬件中断和软件中断两类。
硬件中断是由外部设备发出信号(如I/O设备、定时器、串口等)请求CPU响应的。
硬件中断的触发可能是边沿触发(上升沿或下降沿)或电平触发。
当硬件中断触发后,CPU会跳转到相应的中断服务程序(Interrupt Service Routine, ISR)执行,并保留现场。
软件中断是通过软件指令(软中断指令)触发的一种中断,由程序员自己编写的程序中的特殊指令引起。
软件中断一般用于实现程序调用和异常处理等功能。
二、中断优先级与嵌套在单片机中,不同的中断源可能会同时触发,此时中断优先级的设置非常重要,以确保高优先级中断能够被及时响应。
通常情况下,单片机的中断源分为多个级别,每个级别对应一个中断优先级。
当多个中断源同时触发时,单片机会根据中断优先级来判断哪个中断需要被优先处理。
高优先级的中断会打断低优先级的中断,直到高优先级的中断处理完成。
除了中断优先级的设置外,中断的嵌套也是单片机中断处理机制的重要概念。
当一个中断正在被处理时,如果同时有更高优先级的中断触发,CPU会暂停当前中断的处理,转而去处理更高优先级的中断。
待高优先级中断处理完毕后,CPU会回到原来的中断处理流程继续执行。
三、中断向量表和中断服务程序在单片机的中断处理机制中,中断向量表(Interrupt Vector Table)起到了关键作用。
中断向量表是一张存储了各个中断服务程序入口地址的表格,用于指示当某个中断发生时,CPU应该跳转到哪个中断服务程序执行。
中断向量表的每个表项对应一个中断源,表项中存储的是相应中断服务程序的入口地址。
输入输出和中断
DMA操作的基本方法
周期挪用(Cycle Stealing)
周期扩散
CPU停机方式
DMA(直接存储器存取)传递方式
周期挪用(Cycle Stealing )
添加标题
利用CPU不访问存储器的那些周期来实现DMA操作,此时DMAC可以使用总线而不用通知CPU也不会妨碍CPU的工作。这种方法的关键是如何识别合适的可挪用的周期,以避免同CPU的操作发生重叠。
在8086/8088系统中,通过执行中断指令或由CPU本身启动的中断称为内部中断(也称软件中断)。除单步中断外,内部中断无法用软件禁止,即不受中断允许标志IF的影响。 0型中断——除法出错中断 1型中断——单步中断 3型中断——断点中断 4型中断——溢出中断 INT n指令中断
内部中断——软中断
05
7.1.1 数据信息
●在微型机中,数据大致为三种基本类型:
数字量
模拟量
开关量
7.1
外设接口的一般结构
状态信息
READY(准备好信号)表示输入设备已经准备好信息,CPU可执行输入指令从该外设输入数据。 BUSY(忙信号)表示输出设备正在输出信息,即在“忙”着,同时也等于指示CPU等待。
状态信息表示外设当前所处的工作状态
1.中断分类
8086/8088CPU可以处理256种类型的中断源,这些中断源可分为硬件中断和软件中断两大类。
2.中断向量表
在8086系统中,允许引入256种类型中断源(类型码为0~255),相应有256个中断服务程序首址。存放中断地址的一段内存空间称中断向量表。
7.4.1 中断结构 4
1.内部中断的类型
图7-16 ICW3的格式
图7-17 ICW4 的格式
计算机基础知识什么是输入输出(IO)操作
计算机基础知识什么是输入输出(IO)操作计算机基础知识:什么是输入输出(IO)操作计算机是一种用于处理数据的工具,而输入输出(IO)操作是计算机与外部世界进行数据交流的方式。
通过输入,我们可以将外部的数据传递给计算机进行处理,而输出则是将计算机处理后的数据传递给外部环境。
在本文中,我们将探讨输入输出操作的基础知识。
一、输入输出(IO)的概念输入输出是计算机与外部环境进行数据交流的方式。
输入是指将外部数据传递给计算机,供计算机进行处理和分析;输出则是将计算机处理后的数据传递给外部环境,供人们观察和使用。
在计算机系统中,输入输出设备起到了极为重要的作用。
例如,键盘、鼠标和触摸屏等输入设备用于接收用户的命令和数据,显示器、打印机等输出设备则用于向用户展示计算机处理的结果。
二、输入输出的分类1. 人机交互输入输出:这种输入输出方式主要是通过外部设备与人进行交互。
例如,使用键盘输入文字、鼠标点击图标进行操作、触摸屏选择菜单等。
同时,显示器将结果输出给人们观察。
2. 设备驱动程序输入输出:这种输入输出方式是通过设备驱动程序进行的。
计算机通过设备驱动程序与各类外部设备进行通信。
例如,打印机通过打印机驱动程序与计算机通信,将计算机处理的文档输出。
3. 文件输入输出:文件是计算机中存储数据的一种形式,也是计算机与外部世界交流的一种方式。
我们可以将数据存储在文件中,进行读取和写入操作。
三、输入输出的基本操作在计算机基础中,我们了解到输入输出操作的基本函数包括读取和写入。
读取是指从外部获取数据并传递给计算机进行处理;写入则是将计算机处理的结果传递给外部。
读取函数的基本形式如下:input(data):从外部读取数据,存储在变量data中。
写入函数的基本形式如下:output(data):将变量data中的数据写入外部设备,供外部环境使用。
四、输入输出的应用输入输出操作在计算机中得到了广泛的应用。
以下是一些常见的输入输出操作应用场景:1. 数据采集:许多科学实验、气象观测等需要收集大量外部数据,通过输入输出操作,这些数据可以传递给计算机进行进一步的分析和处理。
第9章_输入输出方法及常用的接口电路
DB
CPU
CB
MEMR MEMW 控制逻辑
可以对端口进行算术运算,逻辑运算以及移位操作等。 可以对端口进行算术运算,逻辑运算以及移位操作等。 I/O端口空间不受限制 I/O端口空间不受限制 缺点:是I/O端口占用了内存空间,减少了内存容量 缺点: I/O端口占用了内存空间, 端口占用了内存空间
二、专门的I/O编址方式 专门的 编址方式
9.1.4 I/O端口的编址方式 端口的编址方式
端口是接口电路中能被CPU直接访问的寄存器的地 端口是接口电路中能被CPU直接访问的寄存器的地 CPU 由于有的寄存器寄存的二进制信息专门用来被CPU 址。由于有的寄存器寄存的二进制信息专门用来被CPU 读取,有的寄存器用于专门接收CPU发出来的数据, CPU发出来的数据 读取,有的寄存器用于专门接收CPU发出来的数据,因 CPU访问的寄存器的地址分为输入端口和输出端 此,被CPU访问的寄存器的地址分为输入端口和输出端 故称为I/O I/O端口 口,故称为I/O端口 CPU同外设之间的信息传送实质上是对这些寄存器 CPU同外设之间的信息传送实质上是对这些寄存器 进行“ 操作。 进行“读”或“写”操作。
[电脑基础知识]第四章 输入输出系统
1、异步性
外围设备相对于处理机通常是异步工作的。 输入输出设备的工作在很大程度上独立于处理机之外,通常不使用 统一的中央时钟,各个设备按照自己的时钟工作,但又要在某些时 刻接受处理机的控制。 外围设备的工作过程通常是这样的,当设备准备好与处理机交往时 (对于输入设备是指数据寄存器满,对于输出设备是指数据寄存器 空),要向处理机申请服务。对于处理机来说,这个时刻一般随机 的,两次申请之间可能要经过恒长时间,这就造成了输入输出相对 于处理机的异步性和时间的任意性。 当一个处理机管理多台外围设备时,必须做到在任意两次处理机与 设备交往的时刻之间,处理机仍然能够全速运行它本身的程序,或 者管理其它外围设备,从而保证处理机与外围设备之间,外围设备 与外围设备之间能够并行工作,无需互相等待。为了能够实现一个 处理机与多台外围设备并行工作,必须采用中断输入输出方式或直
方式2:中断输入输出方式
中断输入输出方式:当出现来自系统外部,机 器内部,甚至处理机本身的任何例外的,或者 虽然是事先安排的,但出现在现行程序的什么 地方是事先不知道的事件时,CPU暂停执行现 行程序,转去处理这些事件,等处理完成后再 返回来继续执行原先的工作。 2、能够处理例外事件。例如,电源掉电、非法指令、 地址越界、数据溢出、数据校验错、页面失效等。 另外两个特点与程序控制输入输出方式相同。 3、数据的输入和输出都要经过CPU,要在程序的控制 下完成从输入设备中读入数据到主存储器,或者把主存 储器中的数据输出到输出设备中去。因此,中断输入输 出方式与程序控制输入输出方式一样具有灵活性好的特 点。 4、一般用于连接低速外围设备。这是因为每输入或输 出一个数据都必须执行一段程序才能完成。
4.1.2 输入输出系统的组织方式
输入输出设备的异步性、实时性、与设备无关性 三个特点是现代计算机系统必须具备的共同特性。 异步性体现了输入输出系统相对于处理机的独立 自主关系。实时性反映了按照不同设备响应时间 的不同要求,划分和实现输入输出系统内部不同 功能之间的关系。设备无关性贯彻了输入输出系 统标准化接口与非标准外围设备之间的关系。根 据各种外围设备的不同特点处理好这三方面的关 系,就成为输入输出系统组织的基本内容。输入 输出系统组织的具体内容主要包括:针对异步性, 采用自治控制的方法,针对实时性,采用层次结 构的方法,针对与设备无关性,采用分类处理的 方法。
第6章 输入输出及终端系统
51
状态端口地址:0000 0011 1111 1011 数据端口地址:0000 0011 1111 1000
外设应提供设备状态信息 接口应具备状态端口
48
查询工作方式流程图
开始
读入并测试外设状态
N
READY?
Y
进行一次 数据交换
N
每满足一次 条件只能进 行一次数据 传送
传送完?
Y
结束
防止死循环 超时?
N Y
读入并测试外设状态
N
超时错
READY?
Y
复位计时器
N
与外设进 行数据交换 传送完?
Y
结束
查询工作方式例
N 进行一次传送
修改地址指针
N
传送完否?
Y
结 束
查询工作方式
优点:
软硬件比较简单 CPU效率低,数据 传送的实时性差, 速度较慢
1号外设 准备就绪? N 2号外设 准备就绪? N 3号外设 准备就绪? N
Y
对1号外设服务
缺点:
Y
对2号外设服务
Y
对3号外设服务
┇
n号外设 准备就绪? N
Y
对n号外设服务
按传输信息的类型分类:
模拟接口
并行接口 串行接口
33
按传输信息的方式分类:
接口特点
输入接口:
第3章 中断与输入输出系统
在多用户应用环境下,应用程序要想进行一次输入 / 输出,可在目态程序中安排要求进行输入 / 输出的访管指 令,并带上所用之设备号、设备与主存要交换的字节数、 与主存交换信息的起始地址等参数。
CPU 执行到访管指令时,按其提供的入口地址,将 管理程序调出来执行。此管理程序的任务是利用所带的参 数来编制通道程序。 这样,一次输入 / 输出的过程中, CPU 只需要两次进 入管态,使之减少了输入 / 输出对目态程序的干扰,也使 CPU和外部设备及多台设备之间可以并行的工作。
4、中断的响应和中断的处理 中断响应是允许中断源能够中断 CPU 现行程序的运 行,转去对该中断请求进行预处理,包括保存好断点和 关键性的断点现场,调出相应的中断处理程序,准备对 其执行。在大多数机器中,中断响应是通过采用交换新 旧程序状态字的办法来完成的。 中断处理是通过具体执行中断服务程序来对中断源 进行处理的过程。中断服务程序内部根据情况还需要保 存其它一些断点现场,并在返回中断点前加以现场恢复。
机器校验类中断;管理程序调用类总断;程序性中断;
外部中断;输入/输出中断;重新启动中断
机器校验中断是告诉程序发生了设备故障; 管理程序调用中断是用户程序需要操作系统介入时,通过 执行“访管”指令时发生的; 程序性中断是包括指令和数据的格式错、程序执行中出现 异常(非法指令、目态下使用管态指令、主存访问方式保 护、寻址超过主存容量、各种溢出、除数为“0”、有效 位为“0”等)以及程序的事件记录、监督程序对事件的 监测引起的中断等;
在考虑通道对设备所发出的传送字节数据请求 优先响应谁的问题时,一般都采取让设备速率越高 的,其响应和处理的优先级越高;同一速率的各个 设备,则可由系统指定一个优先级,例如,让设备 号越小的,其响应和处理的优先级越高。
微机原理第六章 输入输出和中断技术 part 2 (2)
中断处理的一般过程
6.4.3 8088/8086中断系统
8086/8088为每个中断源分配 一个中断类型码(中断向量码),其取值范围为 0~255,实际可处理56种中断。其中包括软件中断,系统占用的中断,已经开放 给用户使用的中断。所有中断又可分为两大类:内部中断和外部中断。
内部中断
6.4.2 中断处理的一般过程
1. 中断请求 2. 中断源识别及中断判优 3. 中断响应 4. 中断处理(服务) 5. 中断返回
1. 中断请求 ➢ INTR中断请求信号应保持到中断被处理为止 ➢ CPU响应中断后,中断请求信号应及时撤销
2. 中断源识别 ➢ 软件判优:由软件来安排中断源的优先级别。顺序查询中断请求,先查询的
➢ (4)能向存储器或外设发出读/写命令。 ➢ (5)能决定传送的字节数,并判断DMA传送是否结束。 ➢ (6)在DMA过程结束后,能向CPU发出DMA结束信号,将总线控制权交
还给CPU。
2. DMA控制器的工作过程 ➢ (1)当外设准备好,可以进行DMA传送时,外设向DMA控制器发出
“DMA传送请求”信号DRQ ➢ (2)DMA控制器收到请求后,向CPU发出“总线请求”信号HOLD ➢ (3)CPU在完成当前总线周期后会立即发出HLDA信号,对HOLD信号进
➢ (2)单步中断——1型中断,标志寄存器中有一位陷阱标志TF。 ➢ (3)断点中断——3型中断,专用于设置断点的指令INT 3,用于程序中设
置断点来调试程序。
➢ (4)溢出中断——4型中断,在算数指令的执行过程发出溢出 ➢ (5)用户自定义的软件中断——n型中断,执行中断指令INT n引起内部中
断。
需要时,CPU回到原来被中断的地方继续执行自己的程序。 优点: ➢ CPU效率高,实时性好 缺点 ➢ 程序编制相对较为复杂
单片机指令的输入输出控制方法与技巧
单片机指令的输入输出控制方法与技巧单片机作为嵌入式系统中的核心部件,具备强大的控制能力和广泛的应用领域。
在实际应用中,单片机的输入输出控制是非常重要的一部分,对于系统的性能和功能起着决定性的作用。
本文将介绍单片机指令的输入输出控制方法与技巧,帮助读者更好地理解和应用单片机。
1. 输入控制方法与技巧单片机的输入控制主要涉及外部信号的接收和处理。
以下是一些常用的输入控制方法和技巧:1.1. GPIO口输入通用输入输出口(GPIO)是单片机常用的输入输出方式。
通过配置GPIO引脚的工作模式和输入电平,可以实现外部信号的输入。
在编程时,可以使用相应的指令读取GPIO口的状态,从而获取外部信号。
1.2. 外部中断单片机通常提供多个外部中断引脚,可以用于处理外部触发的事件。
通过配置中断触发方式和优先级,可以在特定条件下触发中断服务程序,实现对外部信号的即时响应。
1.3. 定时器输入捕获某些单片机具备输入捕获功能,可以用于测量外部信号的频率、脉宽等参数。
通过配置定时器的工作模式和捕获触发条件,可以准确获取外部信号的时序信息。
2. 输出控制方法与技巧单片机的输出控制主要涉及外部设备的驱动和控制。
以下是一些常用的输出控制方法和技巧:2.1. GPIO口输出与GPIO口的输入类似,通过配置GPIO引脚的工作模式和输出电平,可以实现对外部设备的控制。
在编程时,可以使用相应的指令改变GPIO口的状态,从而控制外部设备。
2.2. PWM输出脉冲宽度调制(PWM)输出常用于控制模拟量设备,如电机速度调节、LED亮度调节等。
通过配置定时器和PWM相关寄存器,可以生成不同占空比的PWM信号,实现对外部设备的精确控制。
2.3. DAC输出数模转换器(DAC)可以将数字信号转换为模拟信号输出。
通过配置DAC相关寄存器和数据缓存,可以实现对外部模拟设备的控制,如音频输出、电压输出等。
3. 控制方法与技巧除了上述的输入输出控制方法和技巧之外,还有一些常用的控制方法和技巧,可以提高单片机系统的性能和可靠性。
2019年全国计算机考试四级复习纲要:输入与输出系统
2019年全国计算机考试四级复习纲要:输入与输出系统九、输入与输出系统1.输入输出系统的发展输入输出系统的发展大致分为五种方式,即程序控制的输入输出方式、中断方式,DMA方式、输入/输出通道方式和I/O处理机等五种方式。
程序查询方式和程序中断方式适用于数据传输率比较低的外部设备。
而DMA方式、通道方式和I/O处理机方式适用于数据传输率比较高的设备。
当前,小型机和微型机大都采用程序查询方式、程序中断方式和DMA方式。
通道方式I/O处理机方式大都用在中、大型计算机中。
为了介绍方便,我们把通道方式和I/O处理机方式视为一种方式。
2.程序查询方式程序查询方式又叫程序控制I/O方式。
在这种方式中,数据在CPU和外部设备之间的传送完全靠计算机程序控制,是在CPU主动控制下实行的,当输入/输出时,CPU暂停执行主程序,转去执行输入/输出的服务程序,根据服务程序中的I/O指令实行数据传送。
这是一种最简单、最经济的输入/输出方式。
它只需很少的硬件,所以几乎所有的机器都具有程序查询方式。
特别是在微、小型机中,常用程序查询方式来实现低速设备的输入输出管理。
3.程序中断方式“中断”概念的提出,是计算机系统结构设计中的一个重大变革。
在程序中断方式中,某一外设的数据准备就绪后,它“主动”向CPU发请求中断的信号,请求CPU暂时中断当前的工作而实行数据交换。
当CPU响应这个中断时,便暂停运行主程序,并自动转移到该设备的中断服务程序。
当中断服务程序结束以后,CPU又回到原来的主程序。
其原理和调用子程序相仿,不过,这里要求转移到中断服务子程序的请求是由外部设备发出的。
中断方式特别适合于随机出现的服务。
4.DMA方式(1)DMA方式的基本概念直接访问内存DMA方式,是一种完全由硬件执行I/O交换的工作方式。
在这种方式中,DMA控制器从CPU中完全接管对总线的控制,数据交换不经过CPU,而直接在内存储器和I/O设备之间实行。
DMA方式一般用于高速地传送成组的数据。
第06章-IO系统设计ppt课件(全)
A1 A2 …
B1 B2 …
通道 A1 A2 … B1 B2 … C1 C2 …
C1 C2 …
图6.16 选择通道传送方式示意图
(3)数组多路通道
◦ 综合前两种通道的优点,可连接多台高速设备,允许几 台设备并行工作,以成组交叉方式传送。每个外设都有 数据缓冲区。
硬件中断(硬中断):是一个异步信号,表明需要注意、 或需要改变执行一个同步事件。
软件中断(软中断):是利用硬件中断的概念,用软件方 式进行模拟,实现宏观上的异步执行效果。
外部中断:一般是指由计算机外设发出的中断请求,如: 键盘中断、打印机中断、定时器中断等。外部中断是可以 屏蔽的中断。
内部中断:是指因硬件出错(如突然掉电、奇偶校验错等) 或运算出错(除数为零、运算溢出、单步中断等)所引起 的中断。内部中断是不可屏蔽的中断。
主存
…
12H JMP 200 向量地址 13H JMP 300
14H JMP 400
入口地址 200 打印机服务程序
入口地址 300 显示器服务程序
… ……
图6.10 通过向量地址寻找入口地址
图6.12 链式排队线路和设备编码器
直接存储器访问方式(Direct Memory Access,DMA), 是一种直接依靠硬件在主存与I/O设备间进行数据传送,且 在 数 据 传 送 过 程 中 不 需 CPU 干 预 的 I/O 数 据 传 送 控 制 方 式 。 CPU与接口的数据传送的具体过程由硬件(DMA Controller, DMAC,DMA控制器)完成,传送速度比通过CPU快。 (1)CPU暂停方式 (2)周期挪用方式(周期窃取方式) (3)交替访问内存方式
实验二_单片机P1口输入输出及中断实验
单片机P1口输入输出及外部中断实验一、实验目的1、学习P1口的使用方法。
2、学习延时子程序的编写和使用。
3、熟练在汇编软件环境下编写、修改、调试、和运行硬件程序4、熟悉汇编语言二、实验说明1、P1口做输出口,接八只发光二极管,编写程序,使发光二极管循环点亮。
2、P1.0,P1.1作输入口接两个拨动开关,P1.2,P1.3作输出口,接两个发光二极管,编写程序读取开关状态,将此状态,在发光二极管上显示出来。
编程时应注意P1.0,P1.1作为输入口时应先置1,才能正确读入值。
3、用单次脉冲申请中断,在中断处理程序中使P1.0的输出状态发生反转,并通过发光二极管观察P1.0的电平。
三、实验仪器计算机伟福软件(lab2000P )四、实验内容1、P1口是准双向口。
它作为输出口时与一般的双向口使用方法相同。
由准双向口结构可知当P1口用为输入口时,必须先对它置“1”。
若不先对它置“1”,读入的数据是不正确的。
2、8051延时子程序的延时计算问题,计算和估算延时子程序的时间。
3、保护进入中断时的状态,并在退出中断之前恢复进入时的状态。
4、必须在中断程序中设定是否允许中断重入,即设置EXO位。
1> 关于延时子程序的时间计算,查指令表可知MOV和DJNZ指令均需用两个机器周期,在6MHz晶振时,一个机器周期时间长度为12/6MHZ,所以上面延时子程序该的执行时间为:(256×255+2)×2×12÷6 ≈261ms2>采用P1口作输出P1口是准双向口,它作为输出口使用时具有锁存功能。
实验所需要LED电平显示电路如图所示。
3>采用P1口作输入和输出由P1口的准双向口结构可知,当作为输入口时,必须先对它置“1”。
若不先对它置“1”,读入的数据是不正确的。
实验所需要LED电平显示电路和逻辑电平开关电路如图所示。
思考题1、改变延时时间,变快或者变慢,观察效果;2、第2个实验在每个端口增加软件延时,延时时间变快或者变慢,观察拨动开关响应效果;3、改变流水灯的运行方向;4、改变流水灯的运行模式,双灯对跑,双灯一起跑。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
• 由开关可选的地址译码
A9 A8 A7 A6 A5 A4 A3 A2 A1 A0 “2-6”: 1 0 1 1 1 1 1 × × × —— 2F8H – 2FFH “4-8”: 1 1 1 1 1 1 1 × × × —— 3F8H – 3FFH
2018/10/5
AEN A3 A4 A5 A6 A7 A9 A8
中断请求 INTR
中断源
中断服务程序1
IRET
断点 使用堆栈 保护断点
2018/10/5
中断请求 INTR
中断服务程序2
IRET
6
3. DMA方式(直接存储器存取方式)
• 当外设的速度相对很高,且一次传送的数据量 很大时,中断方式的效率就很低。例如,对磁 盘的读写操作,一般的文件都有几十K,几百K, 甚至几兆,通过 DMA 方式利用专门的接口控制 电路,在存储器与高速的外设之间进行大量的 数据交换,而不需要CPU的参与。 • DMA控制器-DMAC,除了具有一般接口的特点 外,CPU可以通过对DMAC相应端口的读/写操作 来控制DMA的工作方式;DMAC在得到总线控制 权后,能够像CPU一样提供相应的控制信号来 控制系统总线,从而实现外设与内存之间高速 大量的数据传输。一般接口电路不具备控制总 线的能力。
2018/10/5 8
1、I/O接口电路的基本结构
从编程角度看,接口内部主要包括一个或多个
CPU可以进行读/写操作的寄存器,又称为I/O端口。
各I/O端口由端口地址区分。
AB
C P U
DB
地址 译码 数据 缓冲 控制 电路
பைடு நூலகம்
I/O端口1
外
I/O端口2
CB
I/O端口3
设
2018/10/5
9
2、I/O接口电路编址方式
1. 微机系统与外部设备进行数据交换常用的I/O方法√ ——程序直接传送/中断控制/DMA
2. I/O接口基本结构以及与内存编址方法√
3. 中断的基本概念√ ——中断源/向量中断/中断优先级/中断嵌套 ——中断请求与中断响应 4. 8086微机系统的中断结构√
——内部与外部中断/中断类型码/软件中断INT
取状态信息
取状态信息
满足条件否?
N
满足条件否?
N
AL,80H ;若最高位=1,为满足条件 DONE ;不满足条件,则退出
Y
输入信息
Y
输入信息
AL,D_PORT;满足条件输入信息
(a) (b)
2018/10/5
5
2. 中断方式
• 中断的概念 -中断请求(Interrupt Request) -中断响应(Interrupt Acknowledge) 主程序
在80386/486CPU中,内部中断及异常软件中断优 先级高,硬件中断优先级低。
2018/10/5 22
比较:中断控制与子程序调用 中断控制
程序进入方式 程序进入时刻 保护/恢复现场 保护/恢复断点 返回主程序指令 参数传递 外部随机请求
当前指令执行后
2018/10/5 19
图6-14
中断 类型码 0 1 2 3 4 5 …… n …… 255
2018/10/5
8086中断类型与中断向量(p.264)
RAM 类型0 CS:IP 类型1 CS:IP 类型2 CS:IP 类型3 CS:IP 类型4 CS:IP 类型5 CS:IP …… 类型n CS:IP …… 类型255 CS:IP 中断向量 存储地址(H) 00000 00004 00008 0000C 00010 00014 …… n×4 …… 003FC
图6-12
2 6
4 8 11
6.3 80X86的中断系统
1. 80X86系统中断类别 • 中断——由外部事件(通过硬件产生)通 过CPU的NMI、INTR提出中断请求。 NMI: 非屏蔽中断,用于紧急处理。 INTR:可屏蔽中断,用于一般用户程序。 • 异常——386/486CPU在指令执行的内 部过程中,检测到不正常或非法的情况, 并由此要求进行相应的处理。
2018/10/5
14
3)中断的控制功能 • CPU响应INTR中断的条件
– 外部有中断请求,且该中断请求没有被屏蔽 – CPU开中断,在当前指令结束后响应中断
• 中断响应、转向中断处理程序和中断返回
– 按矢量中断方式进行
• 中断优先级排队
– 对具有不同优先级中断源,发生同时请求中断的处 理方式,即,高优先级的先处理。
第6章 输入输出方式及其中断处理
1. 2. 3. 4. I/O方式概论√ I/O接口基本结构及编址方式√ 80x86中断系统√ 可编程中断控制器8259A
存 储 器
地址总线 AB
CPU
I/O 接 口
输 入 设 备
I/O 接 口
输 出 设 备
数据总线 DB 控制总线 CB
2018/10/5
1
第6章知识点及教学要求
2018/10/5 12
• 8086中断
1) 外 部 中 断 : 由 外 部 硬 件 引 起 的 中 断 。 8086 的中断系统,外部中断请求由非屏蔽 中断NMI和可屏蔽中断INTR两个引脚引入。 2) 内部中断: ①内部硬件中断:硬件出错,除数为 0 ,溢 出错误,单步中断,断点中断。 ②内部软件中断:以指令 INT n 调用的中断, n为中断类型码。实际上调用的是系统软件 (主要是操作系统)中的子程序。
2018/10/5
N
取得下一条指令
p.263 是当前指令最图6-13
后一个T ?
Y N
INTR=1?
Y N
IF=1?
Flags入栈 清除IF、TF CS、IP入栈
取得中断向量并转向执 行用户中断处理程序
Y
CS、IP出栈 Flags出栈
17
(3)中断响应
• NMI中断——CPU无法屏蔽,自动转向中断类型2处 理过程。 • INTR中断——CPU将产生两个中断响应的总线周期 (p.123),自动保护断点(Flags入栈;IF和TF清 零;CS、IP入栈),进行向量中断处理。 • 向量中断——在中断响应的总线周期中,中断源 的相应接口把中断类型码n放到CPU的DB上,n×4 即为中断向量在中断向量表中的存储地址。CPU转 向从中断向量表取得的中断向量(即,中断服务程 序首地址),并进入相应的中断服务子程序执行过 程。
2018/10/5
21
(4)中断的优先权(Priority)
优先权的管理原则 所谓优先权就是当有多个中断申请 时,根据轻重缓急,规定一个中断响应的次序。优先 权管理原则主要处理下面几个问题: 8086中断优先级 ①不同优先级级中断源同时 优先级 中断/异常 申请中断; ②较低级的正在执行中断服务 内部中断及异常 高 软件中断 程序中,又有较高级的申请; ③较高级的正在执行中断服 NMI中断 低 INTR中断 务程序中,又有较低级的申请; ④ 同级中断的同时申请处理
2018/10/5 18
向量中断,又称矢量中断。由中断源负责提供中 断服务程序入口地址的有关信息,即中断源通过 接口电路直接提供入口地址或中断源的标识码。 (3)中断向量表 在8086系统中,内存最低端的1K字节地址范 围内(从00000-003FFH),放置256个中断的中 断向量(入口地址),即称为中断向量表。每个 中断矢量在表中占据4个字节,地址较高的两个 字节放入口地址的段地址,地址较低的两个字节 放偏移地址。 中断向量表中的存储地址=中断类型码n×4
20
用途 除法错误(保留) 调试异常(保留) NMI中断(保留) 单字节中断(保留) 溢出中断(保留) 数组边界检查
*:以上为部分已定义的中断类型,其余为操作系统或用户定义的中断类型。
• INTR中断响应过程
CPU接受请求后,进入中断响应总线周期: 1)在中断响应的总线周期中,CPU自动完成保护断 点、关中断 保护断点:(SP)←(SP)-2,((SS):(SP))←(FR) (SP)←(SP)-2,((SS):(SP))←(CS) (SP)←(SP)-2,((SS):(SP))←(IP) 关中断: (IF)←0 (TF)←0
2018/10/5 10
3、I/O接口地址译码方法
• 直接地址译码——用译码器及部分逻辑器件组成
图6-11
A5
A6 A7 A8 74LS138
A
B C G2B G2A G1
A9
AEN IOW
Y0 Y1 Y2 Y3 Y4 Y5 Y6 Y7
A9 A8 A7 A6 A5 A4 A3 A2 A1 A0 0 0 0 0 0 × × × ××
——中断向量及其在中断向量表中的存储地址 5. 中断控制器8259A组成原理与编程应用
2018/10/5 2
6.1 I/O方式概论
• (p.168) I/O指令: – 输入指令: IN AL,PORT IN AL,DX – 输出指令: OUT PORT,AL OUT DX,AL • PORT: 端口地址
2018/10/5
4
例:有条件地从输入口取数
;设S_PORT为已定义的状态口地址 ;设D_PORT为已定义的数据口地址 (a) WAIT:IN AL,S_PORT ;取状态信息 TEST AL,80H ;若最高位=1,为满足条件 JZ WAIT ;不满足条件,则循环等待 IN AL,D_PORT ;满足条件输入信息 (b) CHECK: IN TEST JZ IN DONE:RET AL,S_PORT ;取状态信息 WAIT CHECK
2018/10/5 13
p.420 附录中关于中断的指令 ; (IF)←0,关中断,禁止INTR中断 ; (IF)←1,开中断,允许INTR中断 ; 中断返回(IP) ←((SS):(SP)), (CS)←((SS):(SP+2)), ; (FR)←((SS):(SP+4)), (SP)←((SP)+6) INT n ;软件中断指令 INTO ;溢出中断(= INT 4) INT ;单字节中断,也称断点中断(INT 3) …………………… CLI STI IRET