




已阅读5页,还剩72页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
http:/ 现代微机原理与接口技术现代微机原理与接口技术 第5章 中断技术 1 电子发烧友 电子技术论坛 http:/ 现代微机原理与接口技术现代微机原理与接口技术 5.1 中断基本概念 5.1.1 5.1.1 中断基本概念中断基本概念 定义:定义:CPU暂停现行程序,转而处理随机到来 的事件,待处理完后再回到被暂停的程序继续执 行,这个过程就是中断。 中断过程:中断过程: 中断处理的隐操作:中断处理的隐操作:程序状态及程序断点地址 的进栈及出栈。 中断请求 中断响应 中断服务 中断结束 中断处理 2 电子发烧友 电子技术论坛 http:/ 现代微机原理与接口技术现代微机原理与接口技术 中断系统其他功能:中断系统其他功能: 支持多中断源和多种中断源。 支持中断屏蔽处理。 支持中断嵌套处理。 支持中断优先级修改。 支持中断结束方式选择。 3 电子发烧友 电子技术论坛 http:/ 现代微机原理与接口技术现代微机原理与接口技术 5.1.2 5.1.2 中断类型中断类型 1. 1.外部硬件外部硬件( (如键盘、鼠标,串口,并口打印机等)中断如键盘、鼠标,串口,并口打印机等)中断 中断请求:中断请求:多个中断请求的排队和判优由中断控制器完 成,产生的有无中断请求的信号送到CPU的INTR引脚。 中断类型号:中断类型号:通过数据总线送到CPU中。 EFLAGS寄存器的IF位影响CPU对中断请求的响应。 处理器在当前指令执行结束的时候当前指令执行结束的时候启动中断识别INTA 总线周期。 属性:属性:硬件、可屏蔽、向量。 SIO LPC47B27X IRQx 82801BA SERIRQ 82815EP PII/III CPU INTR 中断类型号 PIRQx 4 电子发烧友 电子技术论坛 http:/ 现代微机原理与接口技术现代微机原理与接口技术 2. 2.不可屏蔽中断不可屏蔽中断 中断请求:中断请求:中断请求的信号送到CPU的NMI引脚。 中断类型号:中断类型号:固定为2。 CPU不需要进行中断识别,直接处理中断。 属性:属性:硬件、不可屏蔽、向量。 NMI由0跳变到1以后要维持至少4个连续的处理 器时钟周期的高电平才被识别。 NMI由1跳变到0以后要维持至少4个连续的处理 器时钟周期的低电平,新的NMI中断才能被识别。 5 电子发烧友 电子技术论坛 http:/ 现代微机原理与接口技术现代微机原理与接口技术 3. 3.软件中断软件中断 属性:属性:软件、不可屏蔽、向量。 中断请求:中断请求:指令执行中或程序调用产生。 中断类型号:中断类型号:CPU规定或指令给出。 CPUCPU专用中断:专用中断:除0错(0)、单步(1)、断点中断(3)、溢 出(O(4)、边界越界中断(5)。 BIOSBIOS中断:中断:I/O设备控制、实用服务、特殊中断、专 用参数中断。 DOSDOS中断:中断:公开/未公开、可调用、系统功能。 自由中断:自由中断:未定义(20H3FH中未使用的中断)。 CPU不需要进行中断识别,直接处理中断。 6 电子发烧友 电子技术论坛 http:/ 现代微机原理与接口技术现代微机原理与接口技术 常用的软件中断常用的软件中断 中断号功 能中断号功 能 10H10H视频视频视频视频 服服务务务务中断中断13H13H软软软软硬硬盘盘盘盘控制中断控制中断 14H14H串行口中断串行口中断15H15H各种各种IOIO设备设备设备设备 中断中断 16H16H键盘键盘键盘键盘 中断中断17H17H并行打印口中断并行打印口中断 20H返回DOS21H21HDOSDOS功能功能调调调调用用 23HCtrl+Break处处理24HDOS严严重错误错误 33H鼠标标中断2FH 31H DOS保护护方式接 口 BIOS、DOS、自由中断的汇编调用方式: INT n INT n ; n n为中断向量号,如为中断向量号,如 INT 10HINT 10H、INT 21HINT 21H 7 电子发烧友 电子技术论坛 http:/ 现代微机原理与接口技术现代微机原理与接口技术 4. 4.内部中断和异常内部中断和异常 属性:属性:软件、不可屏蔽、向量。 中断请求:中断请求:指令执行中产生。 中断类型号:中断类型号:CPU规定。 失效:失效:错误在指令完成前错误在指令完成前,错误指令的CS:EIP压栈 。该指令会重做。 陷阱:陷阱:错误在指令完成后错误在指令完成后,错误指令下一指令的CS :EIP压栈。 中止:中止:不保存,重启机器。 CPU不需要进行中断识别,直接处理中断。 8 电子发烧友 电子技术论坛 http:/ 现代微机原理与接口技术现代微机原理与接口技术 5.1.3 5.1.3 中断识别及其优先级中断识别及其优先级 1. 1.中断识别中断识别 只有外部硬件中断需要进行识别,其余不需要识别。 中断识别由中断控制器完成。 2. 2.中断优先级中断优先级 原则:原则:按机器故障、DMA、外围硬件、软件递减。 结果:结果:CPU专用DMA外围硬件BIOSDOS自由。 即基本按中断向量表排序。 外围硬件一般可由用户修改其优先权。 9 电子发烧友 电子技术论坛 http:/ 现代微机原理与接口技术现代微机原理与接口技术 5.1.4 5.1.4 中断响应中断响应 在当前指令结束后,可屏蔽中断根据EFLAGS寄存器IF 位决定是否响应;其他中断给予响应。 中断响应的步骤如下: 1. 1.保护断点保护断点 通过堆栈及相关硬件实现EFLAGS、CS、EIP的保护 。并清除IF和TF。除失效外,其他都是将下条指令的 CS:EIP压栈。 压栈的顺序是EFLAGS、CS、EIP 2. 2.取得中断类型号取得中断类型号 对外部硬件中断通过中断响应周期取得中断类型号。 非外部硬件中断直接取得入口地址,无须第非外部硬件中断直接取得入口地址,无须第2 2步步 10 电子发烧友 电子技术论坛 http:/ 现代微机原理与接口技术现代微机原理与接口技术 4. 4.转入中断处理程序转入中断处理程序 5. 5.返回断点返回断点 恢复断点(EIP、CS、EFLAG顺序出栈)继续执行主 程序。 3. 3.取得中断服务程序入口地址取得中断服务程序入口地址 对向量中断,通过中断类型号查中断向量表或中断描 述符表取得。 从中断处理程序入口地址转到中断处理程序。执行对 中断的处理。 11 电子发烧友 电子技术论坛 http:/ 现代微机原理与接口技术现代微机原理与接口技术 5.1.5 PC5.1.5 PC机中断向量表机中断向量表(IVT(IVT,用于实地址模式用于实地址模式) ) 2. 2.中断向量表中断向量表 位于内存地址0000 : 0000开始的1KB范围内。 按中断类型号顺序存放中断向量的存储区域。 3. 3.中断向量指针中断向量指针 指向存放中断向量地址第一字节的指针。 中断向量指针中断向量指针= =中断类型号中断类型号44。 软件中断中自由中断的中断向量需用户自己装入。 1. 1.中断向量中断向量 对应中断类型号的中断服务程序入口地址。 每个中断向量占4字节。 12 电子发烧友 电子技术论坛 http:/ 现代微机原理与接口技术现代微机原理与接口技术 00000 类型0的IP 类型0的CS 00004 类型1的IP 类型1的CS 4*N 类型N的IP 类型N的CS PentiumPentium的中断向量表在存储区的最低的中断向量表在存储区的最低1KB1KB字节中,字节中, 对应对应256256种中断种中断, ,每个中断向量占每个中断向量占4 4个字节个字节 类型0的中断向量 类型1的中断向量 类型N的中断向量 13 电子发烧友 电子技术论坛 http:/ 现代微机原理与接口技术现代微机原理与接口技术 5.1.6 5.1.6 中断描述符表中断描述符表(IDT(IDT,用于保护模式用于保护模式) ) 1. 1.中断描述符表中断描述符表(IDT(IDT) 表项长度:表项长度:8字节,每个表项对应一个中断类型号。 表项类型:表项类型:任务门、中断门、陷阱门。 通过特征位(b40b44)区分不同类型。 14 电子发烧友 电子技术论坛 http:/ 现代微机原理与接口技术现代微机原理与接口技术 表的长度:表的长度:8字节256=2KB。 表的位置:表的位置:由中断描述符表寄存器(IDTR)指向。 2. 2.中断描述符指针中断描述符指针 指向中断描述符表中的中断描述符的指针。 中断描述符指针中断描述符指针=IDT=IDT基地址基地址+ +中断类型号中断类型号88。 3. 3.中断门中断门/ /陷阱门陷阱门 内容:内容:段选择符、属性和偏移量。 中断门与陷阱门区别:中断门与陷阱门区别: 通过中断门处理时EFLAG的IF被清0,通过陷进门 处理IF不清0。 中断门的优先级比陷阱门高,是面向外部硬件中断的 门,后者面向优先级低的中断。 15 电子发烧友 电子技术论坛 http:/ 现代微机原理与接口技术现代微机原理与接口技术 中断服务子程序入口地址取得中断服务子程序入口地址取得: 偏移 属性 选择符 中断门/ 陷阱门 IDTR IDT 中断类型号 7 0 8 边界 属性 基地址 段描 述符 CS GDT/LDT 线性地址 中断服务 子程序 内存 段基地址 偏移 EIP CS段描述符缓冲器 中断描述符中断描述符 段描述符段描述符 16 电子发烧友 电子技术论坛 http:/ 现代微机原理与接口技术现代微机原理与接口技术 TSS 选择符 任务 门 IDTR IDT 中断类型号 7 0 8 属性 段限 基址 TSS描 述符 TR GDT 线性地址 TSS 基址 TR描述符缓存器 4. 4.任务门任务门 内容:内容:TSS选择符与属性。 TSSTSS取得:取得: 优点:优点:中断任务和被中断任务完全隔离。 缺点:缺点:中断响应过程耗时长。 17 电子发烧友 电子技术论坛 http:/ 现代微机原理与接口技术现代微机原理与接口技术 5.2 Intel 8259A 5.2.1 8259A5.2.1 8259A主要任务主要任务 接受外部的中断请求; 管理所有外部的中断请求(排队、判优、屏蔽、嵌套); 向CPU产生中断请求INTR信号及中断类型号; 进行中断结束处理; 接受CPU命令及返回状态。 18 电子发烧友 电子技术论坛 http:/ 现代微机原理与接口技术现代微机原理与接口技术 5.2.2 8259A5.2.2 8259A引脚及内部结构引脚及内部结构 1.8259A1.8259A引脚引脚 CPUCPU侧:侧: DB0DB7; 外设侧:外设侧: IR0IR7; 级联:级联: CS; RD、WR、A0; SP/EN、 CAS0CAS2 。 INT、INTA; 19 电子发烧友 电子技术论坛 http:/ 现代微机原理与接口技术现代微机原理与接口技术 2.8259A2.8259A内部结构内部结构 20 电子发烧友 电子技术论坛 http:/ 现代微机原理与接口技术现代微机原理与接口技术 内部逻辑:内部逻辑:IRR、IMR、PR、ISR及控制电路。 中断请求过程:中断请求过程:IR-INT。 8259A端口0 INTM01EQU021H;8259A端口1 MOVAL, 00010011B;ICW1:边沿触发,要ICW4; ;单片方式,不要ICW3。 OUTINTM00, AL JMPSHORT $+2;I/O端口延时 MOVAL, 00001000B;ICW2:设置中断向量,起始的 ;中断向量为08H。 OUTINTM01, AL JMPSHORT $+2 MOVAL, 00000001B;ICW4:非缓冲,全嵌套,非自 ;动中断结束(EOI)。 OUTINTM01, AL JMPSHORT $+2 43 电子发烧友 电子技术论坛 http:/ 现代微机原理与接口技术现代微机原理与接口技术 思考题: MOV AL, 12H OUT 20H, AL MOV AL, 08H OUT 21H, AL MOV AL, 02H OUT 21H, AL MOV AL, 13H OUT 20H, AL MOV AL, 08H OUT 21H, AL MOV AL, 02H OUT 21H, AL 问:以上左右两段对问:以上左右两段对82598259的访问程序中,最的访问程序中,最 后一句分别是发的什么命令?后一句分别是发的什么命令? 44 电子发烧友 电子技术论坛 http:/ 现代微机原理与接口技术现代微机原理与接口技术 5.2.4 5.2.4 微机中微机中8259A8259A应用应用 Y0 Y7 A B C G2B G2A G1 15 14 13 12 11 10 9 7 1 2 3 4 5 6 74LS138 A5 A6 A7 A8 A9 AEN 中断控制器中断控制器8259A8259A的端口地址为的端口地址为20H20H、21H21H 1.PC1.PC机系统板上机系统板上8259A8259A的连接的连接 8259A CS DB70 IR70 INTA A0 A0 INT INTA INTR RD WR IOW IOR 接接82888288 接接CPUCPU 接接中断源中断源 接接数据线数据线 接接地址线地址线 45 电子发烧友 电子技术论坛 http:/ 现代微机原理与接口技术现代微机原理与接口技术 2. 2.现代微机中现代微机中82801BA82801BA中中8259A8259A级联级联 注意:注意: 主、从区分; IRQ优先级; 请求与响应。 46 电子发烧友 电子技术论坛 http:/ 现代微机原理与接口技术现代微机原理与接口技术 ; ;对主片对主片8259A8259A的初始化的初始化 INTM00EQU 020H;主8259A端口0 INTM01EQU021H;主8259A端口1 MOVAL, 00010001B ;ICW1:边沿触发,要ICW4;级联方式,要ICW3。 OUT INTM00, AL JMP SHORT $+2;I/O端口延时 MOVAL, 00001000B ;ICW2:设置主片的中断向量,起始的中断向量为08H OUT INTM01, AL JMP SHORT $+2 MOVAL, 00000100B ;ICW3:表示从8259A的INT输出是连接到主片的IR2。 OUT INTM01, AL JMP SHORT $+2 MOVAL, 00010001B ;ICW4:非总线缓冲,特殊全嵌套,非自动EOI OUT INTM01, AL JMP SHORT $+2 47 电子发烧友 电子技术论坛 http:/ 现代微机原理与接口技术现代微机原理与接口技术 ; ;对从片对从片8259A8259A的初始化的初始化 INTS00EQU 0A0H;从8259A端口0 INTS01EQU0A1H;从8259A端口1 MOVAL, 00010001B ;ICW1边沿触发,要ICW4;级联方式,要ICW3。 OUT INTS00, AL JMP SHORT $+2 MOVAL, 01110000B ;ICW2:设置从片的中断向量,起始的中断向量为70H OUT INTS01, AL JMP SHORT $+2 MOVAL, 00000010B ;ICW3:设置从片的识别标志,指定对应主片的IR2。 OUT INTS01, AL JMP SHORT $+2 MOVAL, 00000001B ;ICW4:非总线缓冲,全嵌套,非自动中断结束。 OUT INTS01, AL JMP SHORT $+2 48 电子发烧友 电子技术论坛 http:/ 现代微机原理与接口技术现代微机原理与接口技术 3.3.现代微机中断请求线连接现代微机中断请求线连接 825 9 8259输输 入 典型的中断 源 被连连接的引脚/功能 主 片 0内部内部时钟时钟 /计计数器0的 输输出 1键盘键盘通过过SERIRQ来的 IRQ1 2内部从控制器的级联级联 引脚 3串行端口2通过过SERIRQ来的 IRQ3 4串行端口1通过过SERIRQ来的 IRQ4 5并行端口/普 通 通过过SERIRQ来的 IRQ5 6软软磁盘盘通过过SERIRQ来的 IRQ6 7并行端口/普 通 通过过SERIRQ来的 IRQ7 返回下页 49 电子发烧友 电子技术论坛 http:/ 现代微机原理与接口技术现代微机原理与接口技术 82598259输输入 典型的中断源 被连连接的引脚/功能 从片0内部实时时钟实时时钟内部RTC 1普通通过过SERIRQ来的IRQ9 2普通通过过SERIRQ来的IRQ10 3普通通过过SERIRQ来的IRQ11 4PS/2鼠标标通过过SERIRQ来的IRQ12 5内部基于处处理器FERR#的状态态机输输出 6基本IDE电缆电缆从输输入信号来或通过过SERIRQ来的 IRQ14 7第二IDE电缆电缆从输输入信号来或通过过SERIRQ来的 IRQ15 SIO LPC47B27X IRQx 82801BA SERIRQ CPU INTR IRQ14,15 返回第65页转上页 50 电子发烧友 电子技术论坛 http:/ 现代微机原理与接口技术现代微机原理与接口技术 4.4.现代微机中断控制现代微机中断控制 82801BA 82815EP PII/III CPU PCI INTA INTA 中断类型号 CPU总线 INTR 主8259A从8259A IRQ 内部逻辑 两个 INTA# 51 电子发烧友 电子技术论坛 http:/ 现代微机原理与接口技术现代微机原理与接口技术 在上面的过程中有几点注意: 一个或多个IRQ到来的时候,置中断请求寄存器IRR 的相应位 。如果中断没有被屏蔽,才可以发INTR。 82801BA内部产生两个周期INTA#后,第一个第一个INTA#INTA# 脉冲脉冲,有最高优先级的ISR的相应位被置上,而IRR 的相应位被复位。第一个脉冲的下降沿第一个脉冲的下降沿,主中断控制 器利用内部3根专用线CAS向从中断控制器发送从识 别码。第二个第二个INTA#INTA#脉冲后脉冲后,主或从识别码选中的从 可编程中断控制器返回中断向量。 结束中断响应周期时,如果在自动中断结束(AEOI )模式下,则中断服务寄存器(ISR)的相应位在第第 二个二个INTA#INTA#脉冲的末尾脉冲的末尾被复位,否则ISR相应位保持 置位直到中断处理程序末尾发出EOI命令。 52 电子发烧友 电子技术论坛 http:/ 现代微机原理与接口技术现代微机原理与接口技术 5.3 实模式下中断编程 5.3.1 5.3.1 中断编程注意点中断编程注意点 1. 1.使用正确的中断类型号使用正确的中断类型号 根据中断处理程序要完成的功能,选择好正确的中 断类型号,如:COM1串行通信用0CH号中断, Ctrl+Break键控制中断号是1BH,注意定时器中断一般 不使用08H号,而使用更安全的1CH号中断。 如果是自己定义的软中断,注意不要和系统中断类 型号相重合。 中断编程包括主程序部分和中断处理程序部分。 53 电子发烧友 电子技术论坛 http:/ 现代微机原理与接口技术现代微机原理与接口技术 2. 2.中断服务程序入口地址的正确设置(主程序中完成)中断服务程序入口地址的正确设置(主程序中完成) 有两种设置中断服务程序入口地址(中断向量)的方法: 1)直接写中断向量表(假设中断向量号是0CH) CLI ; 关中断 MOV AX, 0 MOV ES, AX ; ES指向0000H段(中断向量表的段) MOV SI, 0CH*4 ; 一个中断向量4个字节 MOV AX, OFFSET SERVICE ; 中断入口偏移地址 MOV ES:SI, AX MOV AX, SEG SERVICE ; 中断入口的段地址 MOV ES:SI+2, AX STI ; 开中断 ; 中断处理子程序 SERVICE PROC FAR 2)使用DOS功能调用中断 MOV AX, SEG SERVICE MOV DS,AX MOV DX,OFFSET SERVICE MOV AX,250CH INTINT21H21H 54 电子发烧友 电子技术论坛 http:/ 现代微机原理与接口技术现代微机原理与接口技术 4. 4.避免避免非软件中断非软件中断中断处理程序中中断处理程序中DOSDOS重入重入 DOS的重入容易引起系统瘫痪,所以在中断处理程序 中要避免调用DOS功能调用,如果是对外设或屏幕的 操作,改用BIOS中断,如果是文件操作,要到中断处 理程序外的主程序中完成。 5. 5.中断程序执行时间的正确估计中断程序执行时间的正确估计 中断处理程序执行时间要小于中断到来的周期或最短 间隔时间,中断处理程序里不要出现死循环、需要人 工干预的人机交互和时间很长的循环语句。 3. 3.适当地保护现场适当地保护现场 由于中断随时到来,所以中断处理程序中一定要保护 好需要使用的寄存器。如果使用的寄存器多,可以保 护所有寄存器,如果寄存器用的不多,可只将要用的 寄存器压栈。 55 电子发烧友 电子技术论坛 http:/ 现代微机原理与接口技术现代微机原理与接口技术 6. 6.中断的打开与关闭中断的打开与关闭 中断响应的时候系统会自动将IF清0,如果希望中断 能有限嵌套(高级与本级中断能嵌套)则在现场保护 后,用STI指令将中断屏蔽打开。 7. 7.中断结束处理及返回中断结束处理及返回 a) 如果现场保护后,执行过STI,则恢复现场前要执 行CLI关闭中断。 b) 如果是外部硬件中断,恢复现场前应该发中断结束 命令(EOI)。 MOV AL, 20HMOV AL, 20H OUT 20H, AL ; OUT 20H, AL ; 向主向主82598259发发EOIEOI OUT 0A0H, AL ; OUT 0A0H, AL ; 向从向从82598259发发EOIEOI c) 恢复现场,使用和保护现场压栈顺序的逆序将寄存 器的值弹出 d) 使用IRET中断返回指令返回 56 电子发烧友 电子技术论坛 http:/ 现代微机原理与接口技术现代微机原理与接口技术 5.3.2 5.3.2 中断处理程序举例(假设中断类型号是中断处理程序举例(假设中断类型号是0CH0CH) ; 主程序的相关部分 OLD0C DD? CODESEGMENT MOVAX, 350CH; 保存原来的0CH中断向量 INT21H MOVWORD PTR OLD0C,BX MOVWORD PTR OLD0C+2,ES MOVAX, SEG SERVICE ; 写入新的0CH中断向量 MOVDS,AX MOVDX,OFFSET SERVICE MOVAX,250CH INT21H ; 其它程序段 57 电子发烧友 电子技术论坛 http:/ 现代微机原理与接口技术现代微机原理与接口技术 ; 中断处理子程序 SERVICE PROCFAR PUSHA; 保护现场 PUSH DS STI; 打开中断 ; 中断处理程序主体中断处理程序主体 CLI; 关闭中断 MOV AL, 20H OUT 20H, AL ; 发中断结束命令 POP DS; 恢复现场 POPA IRET SERVICEENDP 参见汇编教材P190页上的程序 58 电子发烧友 电子技术论坛 http:/ 现代微机原理与接口技术现代微机原理与接口技术 5.4 PCI中断 5.4.1 PCI5.4.1 PCI中断请求中断请求 PCIPCI中断线:中断线:INTA# INTA#、INTB#、INTC#、INTD#。 PCIPCI中断源中断源:PIRQA#PIRQD#。 PCIPCI中断源连接:中断源连接:通过映射到ISA中断(37,912, 1415)来实现。 转第56页 特点:特点: 当PCI中断被映射到一个ISA的IRQ后,该IRQ不可 再被ISA设备(通过SERIRQ的中断)使用。 PCI中断可与低电平有效的非ISA中断共享同一IRQ。 59 电子发烧友 电子技术论坛 http:/ 现代微机原理与接口技术现代微机原理与接口技术 实现:实现: 设备31的0号功能的60H63H、68H6BH的PIRQ路由 控制寄存器实现PIRQA#PIRQH#与IRQ的映射关系。 PIRQ#路由控制寄存器8bit存放的是IRQ编码。 PCIPCI中断请求中断请求: PCI中断请求必须为低电平触发方式。 不同PIRQ#的优先级由IRQ决定。 同一PIRQ#不同设备INT*的优先级由安装次序决定。 多个PIRQ#信号线能连在同一个IRQ上。 PIRQA# PIRQB# PIRQC# PIRQD# 3 5 7 3 60H63H60H63H 8259A8259A IR0 IR3 IR5 IR7 60 电子发烧友 电子技术论坛 http:/ 现代微机原理与接口技术现代微机原理与接口技术 5.4.2 PCI5.4.2 PCI中断响应中断响应 PCI中断响应为单周期单周期响应。 HOST-PCI桥自动将双中断响应周期转换成单中断响 应周期。 其他中断响应过程与8259A同,中断类型号通过 HOST-PCI桥再返回给处理器。 中断响应周期中可插入等待周期。 中断服务程序入口地址由中断描述符表或中断向来那 个表管理。 61 电子发烧友 电子技术论坛 http:/ 现代微机原理与接口技术现代微机原理与接口技术 图5.14 PCI中断响应周期 CLK FRAME# 123 45 AD C/BE# IRDY# TRDY# 无效向量 0000BE#s(1110) DEVSEL # 地址期没有地址,隐含的目标设备是系统中断控制器。一般它地址期没有地址,隐含的目标设备是系统中断控制器。一般它 负责驱动负责驱动DEVSEL#DEVSEL#,也可由,也可由PCI-ISAPCI-ISA桥进行负向译码。桥进行负向译码。 62 电子发烧友 电子技术论坛 http:/ 现代微机原理与接口技术现代微机原理与接口技术 5.4.3 PCI5.4.3 PCI中断共享中断共享 PCI中断请求信号为漏极开路的。 即:中断向量表中中断向量为同一PIRQ#中最后安 装的设备的中断服务程序入口地址。 同一PIRQ#不同设备的优先级最后安装的最高。 PCI中断的状态位通过中断服务程序读取,并处理。 同一同一PIRQ#PIRQ#中断服务实现方法:中断服务实现方法: 采用链表式处理方法。 方法:方法:PNP配置时将同一PIRQ#的原中断向量存放到 其设备驱动的特定寄存器后才替换为新的中断向量。 中断向量 (描述符) 中断处 理程序 设备2 中断处 理程序 设备1 PIRQA# 63 电子发烧友 电子技术论坛 http:/ 现代微机原理与接口技术现代微机原理与接口技术 5.5 串行中断 5.5.1 5.5.1 串行中断结构串行中断结构 SIO LPC47B27X IRQx 82801BA SERIRQ CPU INTR IRQ14,15PIRQx PIRQx 82801BA 串行中断 驱动部件 SERIRQ 串行中 断分离 部件 2个8259 部件 INTR IRQ14,15 64 电子发烧友 电子技术论坛 http:/ 现代微机原理与接口技术现代微机原理与接口技术 SERIRQ线采用同步单线传输结构。 遵循PCI信号使用的三态协议。 S-S-取样阶段取样阶段 信号为低电平。信号为低电平。 R-R-恢复阶段恢复阶段 信号为高电平。信号为高电平。 T-T-翻转状态翻转状态 信号被释放信号被释放 SERIRQ包含IRQ0, 1, 315, PIRQA#PIRQD#, SMI#和IOCHK#。但实际上 并不支持IRQ0、8、13中断。实际的IRQ14、 IRQ15实际上也不从SERIRQ中传到南桥。 SERIRQ上信息分帧传输。 65 电子发烧友 电子技术论坛 http:/ 现代微机原理与接口技术现代微机原理与接口技术 5.5.2 5.5.2 帧结构帧结构 1. 1.开始帧开始帧 操作模式:操作模式: 连续的(82801BA单独产生开始帧) 静态的(一个串行IRQ设备来启动开始帧) 长度:长度:4、6或8个时钟宽度(设备31的0号功能配置 空间的64H处串行IRQ控制寄存器位1和位0决定). 2. 2.停止帧停止帧 长度:长度:2或3个时钟宽度。(由SERIRQ配置寄存器决定) 含义:含义:2SERIRQ设备触发下次开始帧; 382801BA触发下次开始帧。 66 电子发烧友 电子技术论坛 http:/ 现代微机原理与接口技术现代微机原理与接口技术 3. 3.数据帧数据帧 长度:长度:21个时钟宽度。 驱动:驱动:需请求中断的设备在自己的数据帧中将SERIRQ 驱动: IRQ015在没有中断请求没有中断请求的时候将SERIRQ线驱动 为低电平 PCI INTA:D#,SMI和IOCHK#在有中断请求有中断请求 的时候将SERIRQ线驱动为低电平 否则都将SERIRQ线变为三态,由上拉电阻将他们 驱动到高电平 。 所谓自己的数据帧是指在21个时钟中数据帧号和本 设备的IRQ号码相等那一数据帧。外设要在SERIRQ 的上升沿开始计算帧。 67 电子发烧友 电子技术论坛 http:/ 现代微机原理与接口技术现代微机原理与接口技术 5.6 APIC(自学) 5.6.1 APIC5.6.1 APIC子系统组成子系统组成 1. 1.组成组成 处理器核心 Local APIC 模块 处理器核心 Local APIC 模块 I/O APIC 模块 INTIN 23 INTIN 0 系统中断请求 APIC 时钟 PICD0 PICD1 PICCLK LINT0/ INTR LINT1/ NMI 处理器0处理器1 LINT0/ INTR LINT1/ NMI 返回下页 Local APIC、I/O APIC和APIC总线。 68 电子发烧友 电子技术论坛 http:/ 现代微机原理与接口技术现代微机原理与接口技术 Local APIC Local APIC: 包含了8259A和8254的功能。 转上页 响应的中断:响应的中断: I/O APIC送来的系统中断请求系统中断请求; 经APIC总线送来的处理器间中断请求处理器间中断请求(IPI); 本地的中断请求本地的中断请求(定时、错误、计数、连线)。 I/O APIC I/O APIC: 多达24个中断; 中断优先级与中断号独立; 不需要中断响应周期。 可选择某个或一组处理器中的一个为目标处理器目标处理器。 69 电子发烧友 电子技术论坛 http:/ 现代微机原理与接口技术现代微机原理与接口技术 APICAPIC总线:总线: 组成:组成:APICD0、APICD1、APICCLK。 类型:类型:串行同步总线。 串行时序:串行时序:不同时钟先高位,后低位;同一时钟D1 高位,D0低位。 内容:内容:EOI命令和短消息。 应用:应用:连接的每个模块均有自己的ID(固定); 每个模块均有自己的仲裁仲裁IDID(可变,初值来自模 块ID)。 70 电子发烧友 电子技术论坛 http:/ 现代微机原理与接口技术现代微机原理与接口技术 2.APIC2.APIC中断类型中断类型 系统中断:系统中断: 经I/O APIC模块引脚送入的中断请求。 交中断请求指定的目标处理器处理。 本地中断:本地中断: 定时、计数、错误、INTR及NMI。 只能由本地处理器处理。 处理器间中断:处理器间中断: 电平撤消初始化、初始化、启动、远程读、SMI、 NMI等。 交目标处理器处理。 71 电子发烧友 电子技术论坛 http:/ 现代微机原理与接口技术现代微机原理与接口技术 5.6.2 I/O APIC5.6.2 I/O APIC的的寄存器寄存器 1. 1.直接访问寄存器直接访问寄存器 INDR:R/W存放需访问的间接寄存器编号。 DATR:R/W间接访问寄存器访问结果。 IRQPAR:W存放置位方式产生的中断向量号。 EOIR:W存放正在服务(将结束)的中断向量号。 2. 2.间接访问寄存器间接访问寄存器 IDR:R/W32B存放模块自己的固定的ID。 VERR:R32B存放有无IRQ声明和重定向寄存器数 。 ARBIDR:R32
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- GB/T 45547-2025食品生产追溯体系通用技术规范
- GB/T 45393.1-2025信息技术建筑信息模型(BIM)软件第1部分:通用要求
- 广西壮族自治区柳州市2025年七年级下学期语文期末试卷及答案
- 2025年中考历史单选与多选分类复习题集及答案(原创)
- 医学科研项目培训体系构建
- 城市交通规划案例研究重点基础知识点
- 教师移动端备课实施路径
- 建筑施工资料员培训课件:提升工程档案管理技能
- 《当代企业创新策略》课件
- 轮岗培训工作汇报
- 少年中国说英文版
- 我国大米的市场调查报告
- 通用电子嘉宾礼薄
- 四等水准测量自动生成表格
- 2023全国新高考1卷英语听力
- 《建筑与市政工程防水通用规范》解读培训
- 小学美术-形的魅力教学设计学情分析教材分析课后反思
- 上海建设路桥破碎机图纸目录-成套-CAD-图纸
- 穴位埋线疗法疗法
- 井下动火安全技术措施
- 理解词语句子的方法PPT
评论
0/150
提交评论