- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
这种译码电路应用非常广泛,常用的比较器有四
位比较器74LS85和八位比较器74LS688。
比较器译码
锁存和缓冲
输入接口的锁存和缓冲
Q D C Q D C 缓冲器 锁存器 Q D C 外 部 数 据 引 脚
内 部 数 据 总 线
选通
锁存控制
锁存和缓冲
输出接口的锁存和缓冲
D Q C D Q C D Q C
查询传送方式
查询传送方式输入
查询传送方式输入
例:设接口电路中状态端口的地址为STATUS,数 据端口的地址为DATA,则CPU读取输入设备的 数据应执行下列程序段: POLL: IN AL, STATUS ;① TEST AL, 80H ;② JE POLL ;③ IN AL, DATA ;④
I/O接口
I/O的功能 – 输入输出数据的缓冲和锁存 输出接口有锁存环节 输入接口有缓冲环节 – 信号形式和数据格式的变换 – I/O端口寻址、控制信号产生 – 电气特性匹配 I/O信息 • 数据信息:数字量、模拟量、开关量 • 状态信息 • 控制信息
I/O接口的构成
端口: I/O接口通常设置有若干个寄存器,用来暂存CPU和外设之
中断响应过程
内部中断响应过程
(1)将类型号乘4,计算出中断向量的地址 (2)CPU的标志寄存器入栈 (3)清除IF和TF标志,屏蔽新的INTR中断和单步中断 (4)保存断点,即把断点处的IP和CS值压入堆栈,先压入CS值,再 压入IP值 (5)根据第一步计算出来的地址从中断向量表中取出中断服务程序 的入口地址(段和偏移),分别送至CS和IP中 (6)转入中断服务程序执行
链式电路判优
处于链条前端的优先权更高(p239, 图6-24)
中断的嵌套
6.4 80X86/Pentium中断系统
中断类型
内部中断(软件中断) • 除零中断(n=0) • 单步中断(n=1) 条件:TF=1且IF=1 • 断点中断(n=3) • 溢出中断(n=4) 条件:OF=1 • 中断指令 INT n 外部中断(硬件中断) • 非屏蔽中断(n=2) • 可屏蔽中断 条件:IF=1 中断优先权(高低)
中断控制的输入输出
含义:在中断方式下,外设掌握向CPU申请服务的主动权,
当输入设备将数据准备好,或者输出设备已做好接收数据 的准备时,向CPU发出中断请求信号,要求CPU为其服务。 若此时中断允许触发器是开放的,则CPU暂停目前的工作, 与外设进行一次数据传输,等I/O操作完成以后,CPU继续 执行原来的程序。 优点:保证了CPU对外设的实时服务,又不会因对各I/O设 备的随时关照而花费CPU太多的机时,使高速运行的CPU与 速度参差不齐的各种外设之间形成了良好的匹配(并行工 作)关系,确保了CPU的高效率。 缺点:为了实现中断传送,要求在CPU与外设之间设置中断 控制器,增加了硬件开销。
译码器译码
若接口电路中需使用多个端口地址,则采
用译码器译码比较方便。
译码器的型号很多,如3-8译码器74LS138;
4-16译码器74LS154;双2-4译码器 74LS139、74LS155等。
这些译码器通常由三个部分组成:译码控
制端,选择输入端,译码输出端。
译码器译码
当端口地址信 号为: A9 A8 A7 A6 A5 A4 A3 A2 A1 A0 1 0 0 0 0 1 1 0 0 0 即 218H时,Y0 输出 0 , I/O 接 口的CS有效
6.3 中断技术
中断源 中断处理过程 中断服务子程序
中断系统的功能: 1、正确识别中断请求,实现中断响应、中断处理及中断返 回 2、实现中断优先级排队 3、实现中断嵌套
中断的分类
中断分为内部中断和外部中断,每种又包
含几种类型,中断时产生一条INT n指令, n表示不同的中断类型号。
中断向量表
例2: MOV MOV MOV MOV AX,00H ES,AX BX,60H*4 ;中断号×4→BX AX,OFFSET_INTR ;中断服务程序偏移值 →AX MOV ES:[BX],AX ;装入偏移地址 MOV AX,SEG_INTR ;中断服务程序的段基址 →AX MOV ES:[BX+2],AX ;装入段基址
查询传送方式输出
查询传送方式输出
例:设接口电路中状态端口的地址为STATUS,数 据端口的地址为DATA,则CPU将内存STORE单 元的内容送至输出设备应执行下列程序段: POLL: IN AL, STATUS ;① TEST AL, 80H ;② JNE POLL ;③ MOV AL, STORE ;④ OUT DATA, AL ;⑤
内 部 数 据 总 线
外 部 数 据 引 脚
锁存控制
读数据
6.2 输入输出的传送方式
程序控制的输入输出 – 无条件传送 – 查询传送 中断控制的输入输出 直接存储器访问方式(DMA)
无条件传送方式
所谓无条件,就是假设外设已处于就绪状态,数
据传送时,程序就不必再去查询外设的状态,而 直接执行I/O指令进行数据传输,如LED等。 当简单外设作为输入设备时,其输入数据的保持 时间相对于 CPU的处理时间要长得多,所以可直 接使用三态缓冲器与系统数据总线相连。 当简单外设作为输出设备时,由于外设的速度较 慢, CPU送出的数据必须在接口中保持一段时间, 以适应外设的动作,因此输出采用锁存器。
CLI CLD MOV AX,0 MOV ES,AX MOV DI,60H*4 MOV AX,OFFSET_INTR STOSW MOV AX,SEG_INTR STOSW STI ;关中断 ;内存地址加1 ;给ES赋值为0 ;中断向量指针→DI ;中断服务程序偏移值→AX ;AX→[DI][DI+1]中,然后DI+2 ;中断服务程序的段基址→AX ;AX→[DI+2][DI+3] ;关中断
门电路译码
【例】设计端口地址为218H的译码电路 分析:
CPU执行IN/OUT指令时,发出端口的地址信号 MOV DX, 218H IN AL, DX 或 OUT DX, AL 对应218H端口的地址信号为(只取A9~A0): A9 A8 A7 A6 A5 A4 A3 A2 A1 A0 (地址信号) 1 0 0 0 0 1 1 0 0 0 B 2 1 8 H 只要满足此地址取值的译码电路均可
门电路译码
译码电路部分满足: 只当地址信号A9~ A0为:
A9 A8 A7 A6 A5 A4 A3 A2 A1 A0 1 0 0 0 0 1 1 0 0 0
即218H时,输出“0 ” , 使I/O接口的CS有效 否则输出“1 ” 使I/O接口的CS无效
地址重叠(16根地址线): 64个地址重叠区,如218, 618, A18,E18 等等
比较器译码
将比较器的A(或B)输入端输入地址信号,B(或A)
端接一组DIP(Dual In-line Package)开关。地址 总线所送的地址与DIP所设置的地址相等时,产生 一选通信号输出。 特点:
–可以通过改变DIP开关的设置,很容易地改变接口的地 址。 –不但同一功能的模块在不同微型计算机应用中可以被 分配不同的地址,而且即使在同一微型计算机系统中, 也可通过改变DIP开关的设置而控制不同的设备.。
间传输的数据、状态和控制信息,接口内的寄存器通常被称为端口。 根据寄存器内暂存信息的类型,分别称为数据端口、控制端口和状 态端口 每个端口有一个独立的地址,CPU可以用端口地址代码来区别各个 不同的端口,并对它们分别进行读/写操作
I/O端口
IN AL, 21H
I/O端口
OUT 43H, AL
I/O接口的编址
独立编址 统一编址
端口地址译码
门电路译码 – 门电路译码是最基本的也是最简单的地址译码 方法,通常采用各种门电路,如与门、或门、 非门等电路的组合。 – 设计时首先分配好地址,然后写成二进制形式, 再根据地址总线数分配各与非门输入管脚地址。 – 门电路译码需要芯片较多,且译出的端口地址 单一,接口中用到的端口地址不能更改
中断向量表
中断向量并非常驻内存,而是开机上电时,
由程序装入内存指定的中断向量表中。 系统配置和使用的中断所对应的中断向量 由系统软件负责装入。 若系统中(如单板机)未配置系统软件, 就要由用户自行装入中断向量。
中断向量表
例1:假设中断向量号为60H,中断服务程序的段基址是 SEG_INTR,偏移地址是OFFSET_INTR
中断控制的输入输出
中断控制的输入输出
直接存储器访问(DMA)
DMA控制器从CPU完全接管对总线的控制,
数据交换不经过CPU,而直接在内存和I/O 设备之间进行。 优点:传送速率很高,这对高速度大批量数 据传送特别有用。 缺点:要求设置DMA控制器,电路结构复杂, 硬件开销大
直接存储器访问(DMA)
除零中断、INT n、INTO、NMI、INTR、单步中断
中断向量表
中断向量是中断服务程序
的入口地址。 把系统中所有的中断向量 集中起来放到存储器的某 一区域内,这个存放中断 向量的存储区就叫中断向 量表或中断服务程序入口 地址表。 中断向量表的每一个向量 的序号就是中断类型号, 共256个中断类型。 中断向量地址=中断类型 号×4 中断矢量表地址0~3FFH (1KB)
第6章 输入/输出和中断技术
6.1 6.2 6.3 6.4 6.5 6.6 输入输出及接口 输入和输出的传送方式 中断技术 80X86/Pentium中断系统 8259A可编程中断控制器 中断程序设计
6.1 输入输出及接口
接口
I/O接口是位于系统与外设间、用来协助完成数 据传送和控制任务的逻辑电路,它不仅包括接口 的电路,还包括接口电路的管理驱动程序。 为什么需要I/O接口 • I/O设备工作速度不同 • I/O设备数据字长不同 • I/0设备可能是模拟或数字的 • I/O设备的控制信号不同
内部中断和外部中断
内部中断(软件中断) CPU内部执行程序时自身产生的中断 如被0除、溢出、INT n等 外部中断(硬件中断) CPU以外的设备、部件产生的中断 • 非屏蔽中断 如电源掉电、内存奇偶错等故障中断 • 可屏蔽中断 如打印机、CRT、磁盘等输入输出设备中断
中断处理过程
中断请求 中断判优 中断响应 中断处理 中断返回
中断的百度文库先权
软件排优 硬件排优
– 链式电路判优 – 可编程中断控制器
软件查询判优
软件查询判优
查询程序两种安排方式
(1)屏蔽法 MOV DX, 380H IN AL,DX TEST AL, 80H JNZ AlS TEST AL, 40H JNZ BIS TEST AL, 20H JNZ CIS …… (2)位移法 MOV DX, 380H IN AL,DX RCL AL, 1 JC AIS RCL AL, 1 JC BIS RCL AL, 1 JC CIS ……
无条件传送方式
无条件传送方式
查询传送方式
查询传送方式在传送数据前先查询外设的状态,
当外设准备好时,CPU执行I/O指令传送数据;若 未准备好时,则CPU等待。 要求 CPU 与外设间的接口电路需要两个端口:数 据端口和状态端口。 优点:能较好地协调外设与 CPU 之间的定时关系, 因而比无条件传送方式容易实现准确传送。 缺点:该方式需要不断查询外设的状态,大量时间 花在等待循环中,当主机与中、低速外设交换信 息时,大大降低了CPU利用率。
I/O接口的编址
存储器映象编址 属性 统一编址 应用 motorola的M6800系列,
iMCS51系列
I/O单独编址 单独编址
80X86 ,MCS96系列, Z80系列
特点
1.I/O端口相当于内存的一部分, 1.端口与存储器分别独立编 使内存容量减小 址,端口不占用内存空间 2.对I/O端口的读/写与对存储 2.设有专门的 I/O指令对端 器的读/写相同,所有可对内存 口进行读写,内存操作的指 操作的指令对I/O端口均可使用 令不能用于I/O端口 3.指令系统中不专设I/O指令