版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第5章 数字量输入输出5.1 概述1.I/O信号形式通常有以下4种类型:(1) 数字量: 二进制形式的数据,最小单位为“位”(bit),8位称为一个字节(BYTE)。(2) 模拟量:(3) 开关量: 用一位二进制数表示。(4) 脉冲量:I/O接口的功能1) 信号的形式变换2) 电平转换与放大3) 锁存与缓冲(输入口必须有三态门特性,输出口必须有锁存功能)4) 信息流的方向控制5) 并行与串行的转换 2. I/O接口I/O信息的三种类型:数据、命令、状态。传送这三类信息的通道分别称为:数据端口(I、O)、控制端口(O)、 状态端口(I)。3. I/O接口的编址方式不同外设具有的端口数各不相同,计
2、算机中为每一个端口都赋予一个惟一编号称为端口地址(或端口号)。端口有两种编址方式:统一编址和独立编址。 1. 统一编址把外设接口与内存统一进行编址。各占据统一地址空间的不同部分。优点指令统一,灵活;访问控制信号统一,使用同一组的地址/控制信号。 缺点内存可用地址空间减小0地址空间(共1MB)内存地址(960KB)I/O地址(64KB)FFFFFHEFFFFHF0000H 2. 独立编址外设地址空间和内存地址空间相互独立。优点:内存地址空间不受I/O编址的影响缺点:I/O指令功能较弱,使用不同的读写控制信号00000H内存地址空间内存空间(1MB)I/O空间(64KB)FFFFHFFFFFHI/
3、O地址空间0000H 8088/8086 CPU的I/O编址方式采用I/O独立编址方式(但地址线与存储器共用)地址线上的地址信号用 来区分: 时为I/O地址I/O操作只使用20根地址线中的16根: A15 A0可寻址的I/O端口数为64K(65536)个I/O地址范围为0FFFFHIBM PC只使用了1024个I/O地址(03FFH)I/O控制方式 主机与外设之间数据传送的控制方式有以下四种:直接传送方式(无条件传送)查询式传送中断方式传送直接存储器存取(DMA, Direct Memory Access)直接传送方式适用于总是处于准备好状态的外设以下外设可采用无条件传送方式:开关发光器件(如
4、发光二极管、7段数码管、灯泡等)继电器步进电机优点:软件及接口硬件简单缺点:只适用于简单外设,适应范围较窄查询方式传送适用于外设并不总是准备好,而且对传送速率、传送效率要求不高的场合。CPU在与外设交换数据前必须询问外设状态 “你准备好没有?”对外设的要求:应提供设备状态信息对接口的要求:需要提供状态端口优点:软件比较简单缺点:CPU效率低,数据传送的实时性差,速度较慢查询方式的流程图超时?READY?与外设进行数据交换超时错读入并测试外设状态YNYN传送完?防止死循环复位计时器NY中断方式传送CPU无需循环查询外设状态,而是外部设备在需要进行数据传送时才中断CPU正在进行的工作,让CPU来为
5、其服务。即CPU在没有外设请求时可以去做更重要的事情,有请求时才去传输数据,从而大大提高了CPU的利用率。优点:CPU效率高,实时性好,速度快。缺点:程序编制较为复杂。DMA传输 前面三种I/O方式都需要CPU作为中介: 外设 CPU 内存 两个含义:1)软件:外设与内存之间的数据传送是通过CPU执行程序来完成的(PIO方式);2)硬件:I/O接口和存储器的读写控制信号、地址信号都是由CPU发出的(总线由CPU控制)。 缺点:程序的执行速度限定了传送的最大速度(约为几十KB/秒)解决:DMA传输5.2 系统总线及接口5.2.1 概述1 总线的特性: 多信号源 被分时使用 有主设备控制2 总线的
6、分级 片内总线 系统级总线 设备级总线5.2.2 系统总线标准(1)PCXT总线 PC/XT总线是一种开放式结构的计算机总线。该底板总线有62个引脚,支持8位双向数据传输和20位寻址空间,有8个接地和电源引脚、25个控制信号引脚、1个保留引脚。总线底板上有5个系统插槽,用于I/O设备与PC机连接。该总线的特点是把CPU视为总线的惟一主控设备,其余外围设备均为从属设备。(2)ISA总线 IBM公司在PC总线基础上增加36个引脚,形成了AT总线。 即从1982年以后,逐步确立的IBM公司工业标准体系结构,简称为ISA ( Industry Standard Architecture)总线,有时也称
7、为PC/AT总线。(3)EISA总线 为了打破IBM的垄断,1988年9月,Compaq,AST,Epson,HP,Olivetti,NEC等9家公司联合起来,推出了一种兼容性更优越的总线,即EISA总线。 (4) PCI总线(5) AGP总线5.2.3 总线信号与接口的连接数据信号的连接地址信号的连接:译码信号控制信号的连接例1、简单的输入接口举例常用芯片:74LS244应用例子:开关接口&11+5V例2、 简单的输出接口举例输出端口应具备锁存器功能.常用芯片:74LS27374LS374(具有三态输出的锁存器)应用例子:发光二极管接口.译码器=1=1.+5VRD0D7CPQ0Q7.D0D7
8、A0A15M/IO74LS373RWRI/O接口综合应用例根据开关状态在7段数码管上显示数字或符号设输出接口的地址为F0H设输入接口地址为F1H当开关的状态分别为00001111时,在7段数码管上对应显示0F符号形状7段码.gfedcba符号形状7段码.gfedcba000111111801111111100000110901100111201011011A01110111301001111B01111100401100110C00111001501101101D01011110601111101E01111001700000111F01110001O1 I1O2 I2O3 I3O4 I4E1
9、 K0K3+5VGG2AG2BCBA174LS244D0 Q0 | Q1D7 Q2 Q3 Q4CP Q5 Q6 Q7 abcdefgDP7406反相器74LS273Rx8174LS138D0D7IOW#IOR#Y0Y1F0H = 0000 0000 1111 0000F1H = 0000 0000 1111 0001&1A7A4A15A8A3A2A1A0D0D1D2D3译码器I/O接口综合应用例 程序段Seg7 DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,67H,77H,7CH,39H,5EH,79H,71H LEA BX, Seg7 MOV AH, 0 GO
10、:MOVDX, 0F1H INAL, DX AND AL, 0FH MOV SI, AX MOV AL, BX+SI MOV DX, 0F0H OUT DX, AL JMP GO5.3 中断控制系统 5.3.1 中断的基本概念 1. 中断:CPU执行程序时,由于发生了某种随机的事件(外部或内部),引起CPU暂时中断正在运行的程序,转去执行一段特殊的服务程序(称为中断服务程序或中断处理程序),以处理该事件,该事件处理完后又返回被中断的程序继续执行,这一过程称为中断。正在看书电话铃响接电话继续看书执行程序事件发生事件处理继续执行程序中断处理中断请求及响应实际场景计算机中断返回与生活场景的比较引入中
11、断的原因提高数据传输率;避免了CPU不断检测外设状态的过程,提高了CPU的利用率。实现对特殊事件的实时响应。2. 中断系统的功能中断请求中断判优及中断源识别中断响应中断处理(服务)中断返回5.3.2 8088的中断系统 与中断有关的控制线为:NMI、INTR、INTA8088系统的中断源内部中断除除数为0 :类型号0,商大于目的操作数所能表达的范围时产生。单步中断:类型号1,TF=1时产生(当前指令需执行完)断点中断:类型号3,这是一个软件中断,即INT 3指令。溢出中断:类型号4,这是一个软件中断,即INTO指令。软件中断:即INT n指令,类型号n(0-255)。外部中断非屏蔽中断NMI:
12、类型号2,不可用软件屏蔽,CPU必须响应它。可屏蔽中断INTR:类型号由PIC提供。IF=1时CPU才能响应。NMI 为边沿请求INTR 为电平请求中断请求信号应保持到中断被处理为止;CPU响应中断后,中断请求信号应及时撤销。当有多个中断源同时产生中断申请时,CPU先响应优先权最高的中断源,再响应优先级较低的中断源。8088CPU的中断优先权优先级 高 低 内中断 ( 除零,INT 指令,断点,INTO指令 ) 非屏蔽中断 可屏蔽中断 低 内中断( 单步 ) 中断源的识别8088系统采用中断类型码来识别不同的中断源,每个中断源都有一个与它相对应的中断类型码 。溢出、断点、除数为0、单步、非屏蔽
13、中断的类型码为固定值软件中断的类型码由指令给出可屏蔽中断的类型码由可编程中断控制器8259给出中断向量表(IVT) 存放各类中断的中断服务程序的入口地址(段和偏移)中断向量 表的地址位于内存的00000H003FFH,大小为1KB,共256个中断向量每个中断向量占用4 Bytes,低字为段内偏移,高字为段基址根据中断类型号获得中断服务程序入口的方法: (n为中断类型号)中断向量在IVT中的存放地址4n中断向量表的初始化初始化将中断服务程序的入口地址放入向量表 例:中断类型码为48H的中断处理子程序的名字为int 48h,编写程序段将该中断处理子程序的入口地址放入向量表。中断向量表的初始化 CL
14、I MOV AX,0 MOV DS,AX MOV SI,48H*4 MOV AX,OFFSET int48h MOV SI,AX MOV AX,SEG int48h MOV SI+2,AX STI8086/8088 CPU的中断响应过程 内部中断响应过程 无INTA周期中断类型码固定或由指令给出响应过程主要步骤: PUSH FLAG IF=0 PUSH CS PUSH IP 取中断向量送入IP和CS中断响应过程(续)外部中断响应过程非屏蔽中断,与内部中断响应过程类似 可屏蔽中断 INTA(1),中断控制器进行优先级排队判优处理 INTA(2),中断控制器把中断类型码放到DB上,CPU读入 PU
15、SH FLAG IF=0 PUSH CS PUSH IP 取中断向量送入IP和CS与内部中断一样中断处理中断服务子程序的特点:为“远过程”用IRET指令返回保护现场开中断(STI)中断处理关中断(CLI)恢复现场中断返回中断服务子程序完成的工作中断返回执行中断返回指令IRETIRET指令将使CPU把堆栈内保存的断点信息弹出到IP、CS和FLAG中,保证被中断的程序从断点处能够继续往下执行。IPLIPHCSLCSHFLAGLFLAGHSPIPLIPHCSLCSHFLAGLFLAGHSPIPCSFLAG进入中断服务程序时中断返回后NYNYNNNNNYY执行指令执行完否?取指令IF=1?内部中断?N
16、MI?INTR?TF=1?类型码=0255类型码=2类型码=1中断响应,读回类型码FLAG入栈TEMPTFTF=TF=0CS、IP入栈计算向量表地址高字CS低字IP执行中断服务程序NMI?TEMP=1?转入中断服务程序恢复CS和IP恢复FLAGS返回被中断的程序YYYYNIRET指令的操作8086/8088的中断处理流程5.3.3 可编程中断控制器8259A可对8个中断源实现优先级控制 可扩展至对64个中断源实现优先级控制 可编程设置不同工作方式根据中断源向x86提供不同中断类型码引脚分配及功能见教材图1. 数据总线缓冲器一个双向8位3态缓冲器,是8259A与CPU之间的数据接口。读/写控制电
17、路A0:端口选择,输入。 CS:片选信号,输入。WR:写信号输入。 RD:读信号,输入。级联缓冲/比较器 多片8259A级联使用,构成主从关系。 对于主8259A,级联信号CAS2CAS0是输出信号。 对于从8259A,CAS2CAS0是输入信号。一、8259A的内部结构中断请求寄存器IRR(8位寄存器) 存放由外部输入的中断请求信号IR7IR0,当某一个IRi端呈现高电平时,该寄存器的相应位置“1”。中断服务寄存器ISR(8位寄存器) 当任何一级中断被响应,CPU正在执行它的中断服务程序时,ISR寄存器中相应位置“1”,一直保持到该级中断处理过程结束为止。中断屏蔽寄存器IMR(8位寄存器)
18、当该寄存器中某一位置“1”时,表示禁止这一级中断请求进入系统。7. 优先权判别器PR (8位寄存器)用来识别各中断请求信号的优先级别。控制电路向CPU发出中断请求信号INT接收来自CPU的中断响应信号INTA8259A的工作过程8259A对中断请求的处理过程如下:当某IRi有效时,IRR相应位置1若有效的IRi未被屏蔽,则向CPU发出中断请求检测到第1个INTA#信号后,置ISRi=1,IRRi=0 检测到第2个INTA#信号后,把ISRi=1中最高优先级的中断类型码放到DB上若工作在AEOI方式,在第2个INTA#结束时,使ISRi复位;否则由CPU发出EOI命令使ISRi复位二、8259A
19、芯片的工作方式8259A有两种中断触发方式:电平触发方式和边沿触发方式电平触发方式:从IR7IR0输入的有效信号应为高电平( IRi信号应保持有效到响应它的第一个INTA信号的前沿,确保响应该中断;但是也不允许太长,避免出现重复中断现象。)边沿触发方式:IRi端上出现由低电平到高电平的正跳变时,表示中断请求信号有效,最好用负脉冲的后沿来实现。8259A优先权级管理方式:优先权级别固定分配和循环设置。可概括为完全嵌套方式、自动循环方式和中断屏蔽方式。完全嵌套方式固定的中断级别:IR0具有最高优先级,IR7具有最低优先级。最大的中断嵌套深度为8。1.要求堆栈的容量比较大2.CPU每响应一次中断进入
20、中断服务程序后,应安排开中断指令(STI)将IF标志位置“1”。3.中断处理完毕,CPU应向8259A回送结束命令(EOI)。(1) 普通EOI方式: 8259A收到EOI命令后,自动将ISR寄存器中级别最高的置“1”位清“0”。(2) 特殊EOI方式: 8259A收到EOI命令后, 8259A将ISR寄存器中指定级别的相应位清“0”。(3) 自动EOI方式: 任何一级中断被响应后,ISR寄存器中相应位置“1”,CPU将进入中断响应总线周期,在第2个中断响应信号(INTA)结束时,自动将ISR寄存器中相应位清“0”。有可能出现低级中断打断高级中断或同级中断相互打断的不合理现象。CPU响应中断进
21、入中断服务程序,将相应的ISR寄存器置位。自动循环方式其基本思想是:每当任何一级中断被处理完,它的优先级别就被改变为最低级,而将最高优先级赋给原来比它低一级的中断请求。普通EOI循环方式: 当任何一级中断被处理完后,CPU给8259A回送普通EOI命令,8259A接收到这一命令后将ISR寄存器中优先级最高的置“1”位清“0”,并赋给它最低优先级,而将最高优先级赋给原来比它低一级的中断请求,其他中断请求的优先级别以循环方式类推。(2) 自动EOI循环方式:任何一级中断响应后,在中断响应总线周期中,由第2个中断响应信号 INTA 的后沿自动将ISR寄存器中相应位清“0”,并立即改变各级中断的优先级
22、别。(3) 特殊EOI循环方式:用户可在主程序或中断服务程序中利用置位优先权命令把最低优先级赋给某一中断源IRi,于是最高优先级便赋给IRi+1,其他各级按循环方式类推。必须使用特殊EOI方式,3. 中断屏蔽方式清除中断标志指令(CLI),将中断标志位清“0”,CPU将禁止所有可屏蔽中断请求。(1) 普通屏蔽方式: 将中断屏蔽寄存器IMR中的某一位或某几位置“1”,即可将相应级的中断请求屏蔽掉。(2) 特殊屏蔽方式: 当CPU正在处理某级中断时,要求仅对本级中断进行屏蔽,而允许其他优先级比它高或低的中断进入系统。三、8259A芯片的控制字及其工作方式8259A包含两个内部端口地址,一个偶地址端
23、口(A0=0),一个奇地址端口(A01)。1) 初始化编程由CPU向8259A送初始化命令字ICW,使其处于准备就绪状态。2) 工作方式编程由CPU向8259A送工作命令字OCW以规定8259A的工作方式。1. 8259A的初始化编程ICW1 芯片控制ICW2 中断类型号ICW3 主从片关系ICW4 方式控制1) 写初始化命令字ICW1芯片控制字A0D7D6D5D4D3D2D1D00 x x x 1LTIMx SNGLIC4LTIM: 触发方式=1 高电平触发=0 上升沿触发SNGL: 级连控制=1 单片=0 级连IC4: ICW4控制=1 要写ICW4=0 不写ICW4(默认ICW4为全0)
24、2) 写初始化命令字ICW2中断类型控制字A0D7D6D5D4D3D2D1D01T7 T6 T5 T4T3x xxT7T3: 中断向量码的高5位T2T0: 最低3位为中断源的序号IRn 000111分别对应IR0IR7由8259A根据中断源的序号自动填入 例如:若ICW2命令字为48H,则IR0的中断向量码为48H,IR7的中断向量码为4FH,等等。3) 写初始化命令字ICW3级联控制字特征:ICW1的D1=0时,才需要ICW3。A0D7D6D5D4D3D2D1D01S7 S6 S5 S4S3S2S1S0主片的级联控制字 Si=1 对应IRi线上连接了从片 A0D7D6D5D4D3D2D1D0
25、10 0 000ID2ID1ID0从片的级联控制字 ID2ID0 标识码,说明本从片连接到主片的哪个IR引脚上。 000111分别对应IR0IR7。ICW3必须与主从片的连接关系一致: 例如,主片的IR4与从片的INT线连接,则主片的ICW3=10H,从片的ICW3=04H。4) ICW4方式控制字特征:ICW1的D0=1时,需要写入ICW4A0D7D6D5D4D3D2D1D0100 0 SFNMBUFM/SAEOI1SFNM: 特殊嵌套1 特殊嵌套方式0 一般嵌套方式AEOI: 规定中断结束的方式,即ISRi是否有自动复位功能1 自动EOI方式0 非自动EOI方式BUF: 缓冲方式 M/S:
26、 主/从缓冲选择BUF M/S 1 1 缓冲方式/主PIC 1 0 缓冲方式/从PIC 0 x 非缓冲方式/正常写ICW1(偶地址)写ICW2(奇地址)级联?写ICW3(奇地址)需ICW4?写ICW4(奇地址)NNYY当8088系统中8259A单级使用,其端口地址为80H和81H,可用下面的初始化程序段来写入预置命令字ICW1ICW4:MOV AL,13H定义ICW1OUT 80H,AL;MOV AL,18H定义ICW2OUT 81H,AL;MOV AL,01H定义ICW4OUT 81H,AL;8级中断的中断类型码为18H1FH。2. 8259A的操作命令字OCW 1. OCW1中断屏蔽字(奇
27、地址)A0D7D6D5D4D3D2D1D01M7M6M5 M4M3M2M1M0Mi =1 中断请求线IRi被屏蔽(不允许中断) =0 允许该IRi中断 OCW1将写入IMR寄存器。A0=1时读OCW1可读出设置的IMR内容。2. OCW2中断结束和优先级循环 (偶地址)功能:设置中断优先级的循环方式和发出EOI命令。A0D7D6D5D4D3D2D1D00RSLEOI 00L2L1L0L2L0: 优先级编码R: 优先级是否自动循环 =1,优先级循环 =0,非循环方式SL: 是否指定优先级 =1,L0L2有效 =0,L0L2无效 EOI: 结束中断命令R,SL,EOI的不同组合决定8259A的工作
28、方式L2L1L0:在优先级循环方式下,指出循环开始时最低优先级编码;在设置中断命令结束时,指明要清除当前ISR中的那一位。3. OCW3屏蔽方式和读出控制字(偶地址)A0D7D6D5D4D3D2D1D000ESMMSMM 01PRRRISESMM: 允许使能特殊屏蔽方式SMM: 特殊屏蔽方式ESMM SMM1 1 特殊屏蔽方式置位1 0 特殊屏蔽方式复位0 x 非特殊屏蔽方式P(Polling): =1 查询方式 =0 非查询方式读状态字:偶地址RR: 读寄存器RIS: ISR/IRR选择RR RIS1 1 读ISR1 0 读IRR0 x 无效读偶地址A0D7D6D5D4D3D2D1D00Ix
29、x xxW2W1W08259A内部寄存器的寻址方法需要CS#、A0、RD#、WR#和D4、D3的配合A0D4D3RD#WR#CS#操作01*001100读出IRR、ISR读出IMR0001001*01*111100000000写OCW2写OCW3写ICW1顺序写ICW2,ICW3,ICW4,OCW1*1*1*01无操作断开四、8259A芯片的级联使用一片8259A芯片只能管理8级中断,在多于8级中断的系统中,必须将多片8259A级联使用。最简单的级联方式为两级,两级级联可管理的中断源最多为64级。优先级管理:完全嵌套方式:2从8259A引入的中断请求优先级别高于1从8259A引入的中断请求。1
30、从8259A的IR0端接收到一个新的中断请求时,应该允许IR0中断请求进入,将从8259AISR寄存器中第0位置“1”,向主8259A的IR6端再次发出请求。1从8259A的IR7端接收到一个中断请求,从ISR寄存器中第7位置“1”,向主8259A的IR6端发出请求,主8259A中ISR寄存器的第6位置“1”。 但这时由于主8259A中ISR寄存器的第6位早已置“1”,不允许这一级中断再进入。显然是不合理。特殊完全嵌套方式:能有效的解决以上问题在级联方式下主8259A初始化时,应定义为特殊完全嵌套方式。当从8259A引入的中断处理过程结束时,CPU应能送出两个EOI结束命令:一个送给主8259
31、A,用来将主8259A中的ISR寄存器的相应位清“0”;另一个送给从8259A,用来将从8259A中的ISR寄存器相应位清“0”,才标志一次中断处理过程的结束。5.3.3 8259的应用接线:见 P305各寄存器的读写地址 写入 20H: ICW1 , OCW2, OCW3 21H: ICW2 , ICW3 , ICW4 , OCW1 读取 20H: IRR, ISR, 状态字 21H: IMR1 初始化编程例1 在IBM PC/XT机中,只有一片8259A,其端口地址为20H,21H对8259A的初始化规定:边沿触发,缓冲方式,中断结束为EOI方式,中断优先权管理采用全嵌套方式;8级中断源类型码为08H0FH,允许时钟、键盘、异步通信卡中断。ICW1=0001 0011B=13H 芯片控制字ICW2=0000 1000B=08H 中断类型控制字ICW4=0000 1001B=09
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 网络运营维护服务合同二篇
- 2026中国危化品物流园区安全管理评估及标准化建设案例与风险防控报告
- 2026基因编辑医学研究进展与商业化潜力预测报告
- 光动力疗法妇科应用手册读书札记
- 2026年煤矿文秘考试模拟试卷(含答案)
- 河北双创科技有限公司介绍企业发展分析报告模板
- 2026年上海公务员考试(行政职业能力测验)模拟题试卷(A卷)及答案详解
- 2026年校级美术考试模拟试卷(含答案)
- 2026年职高团员模拟试卷(含答案)
- 2026年技师磨工模拟试卷(含答案)
- 2026年全国英语等级考试(PETS)三级模拟试题及答案二
- 《宁夏闽宁镇》课件
- 2025年中国理光粉市场调查研究报告
- 订单交付延迟原因解释函8篇
- 2026年宣传思想工作知识竞赛题库及答案
- XX中学2025-2026学年春季学期校园教育高质量发展方案
- 粤教版初中美术艺术鉴赏评估试题及答案
- 钢筋除锈工程专项施工方案
- 履带运输车安全操作规程
- 全国港口与航道布局规划
- GB/T 17456.2-2025球墨铸铁管、管件和附件外表面锌基涂层第2部分:带终饰层的富锌涂料涂层
评论
0/150
提交评论