中断技术与中断控制器
微机原理第7章 8086中断系统和中断控制器

3)高级中断源能中断低级的中断处理
中断嵌套 当CPU正在响应某一中断源的请求,执行为其服务的中断服务程序时, 如果有优先级更高的中断源发出请求,CPU将中止正在执行的中断服务程 序而转入为新的中断源服务,等新的中断服务程序执行完后,再返回到被 1 中止的中断服务程序,这一过程称为中断嵌套。 • 中断嵌套可以有多级,具体级数原则上不限,只取决于堆栈深度。
外部中断 非屏蔽中断 可屏蔽中断
可屏蔽中断源
CPU 中断逻辑
INTR
8259A 中断 INTA 控制器
INT N 指令
INTO 指令
除法 错误
单步 中断
IR0 IR1 IR2 IR3 IR4 IR5 IR6 IR7
外 设 中 断 源
内部中断: 除法错中断 指令中断 溢出中断 单步中断
硬件(外部)中断 非屏蔽中断请求 INT 2 NMI(17号引脚) 中 断 逻 辑 可屏蔽中断请求 中断类型号32~255 INTR(18号引脚)
中断指令 INT n N=32~255
溢出中断 INTO INT 4
断点 中断 INT 3
单步中断 (TF=1) INT 1
除法 错误 INT 0
软件(内部)中断
8086/8088中断源
1.软件中断(内部中断) 8086/8088的软件中断主要有三类共五种。 (1) 处理运算过程中某些错误的中断 执行程序时,为及时处理运算中的某些错误 ,CPU以中断方式中止正在运行的程序,提醒程 序员改错。 ① 除法错中断(中断类型号为0)。在8086 /8088 CPU执行除法指令(DIV/IDIV)时,若发现 除数为0,或所得的商超过了CPU中有关寄存器所 能表示的最大值,则立即产生一个类型号为0的 内部中断,CPU转去执行除法错中断处理程序。
第三章中断技术

专用 中断向量 (5 个)
00008H 00004H
0 号向量(除法错)
00000H
CS IP
16 位
3.2.5 8086/8088系统的中断过程
中断指令译码或查询中断 形成或取得中断类型码 查向量表 保护现场 TF非0时保存TF 清IF、TF 转向中断服务程序 执行中断服务程序 恢复断点返回
3.2.4
中断服务程序的入口地址称为中断向量。在 IBM PC机中,存储器的最低地址区的1024个 字节(地址从00000H到003FFH)为中断向 量表,其中存放着256种类型中断服务程序的 入口地址(中断向量)。由于每个中断向量占 有4个字节单元,所以中断指令中指定的类型 号N需要自乘以4才能取得所指定类型的中断 向量,例如如果类型号为9,则与其相应的中 断向量存放在00024-00027单元中。除非特 别注明,类型号是以十六进制数形式表示的。
中断操作编程
3.3.3 8259A的控制字和初始化编程
需要CS#、A0、RD#、WR#和D4、D3的配合
内部寄存器的访问方法如下表:
CPU对8259A的读/写操作除信号作读取中断类型号的特殊 读操作之外,一般的读/写操作都是由、、、A0 这几个输 入信号控制。该部件的功能是接收CPU送来的命令,包括 初始化命令字和操作命令字,并把它们保存到有关的寄存 器中。该部件还能将8259A的状态信息传送到数据总线上。
⑦命令寄存器
8259A内部有7个8位的命令寄存器,被分为两组,第一组 命令寄存器共有4个,用来存储初始化命令字(ICW—— Initialization Command Word),分别称为ICW1~ICW4,这 4个初始化命令字用来对8259A工作方式和工作条件的设 置,要在上电时由程序设置好,在以后的工作过程中一般 就不再改变;第二组命令寄存器有3个,用来存储操作命 令字(OCW——Operation Command word),分别称为 OCW1~OCW3 ,这3个操作命令字用来动态地控制中断处 理过程,比如对中断的屏蔽操作等,并且它们可以被多次 设置。
第7章 中断处理

多道程序或多重任务的运行:分时中断处理。 多道程序或多重任务的运行:分时中断处理。
4. 中断源 任何能够引发CPU中断的事件都称为中 中断的事件都称为中 任何能够引发 中断的事件 断源。 断源。
二、多中断源情况下的特殊问题
1. 中断源的识别
对于软件中断而言,CPU对中断源的识别靠 对于软件中断而言, 对中断源的识别靠 软件中断指令( 来识别, 软件中断指令(INT n)中的中断号 来识别,并 )中的中断号n来识别 转到响应中断服务程序去执行。 转到响应中断服务程序去执行。 对于硬件中断,CPU只有一个 只有一个NMI和INTR引 对于硬件中断,CPU只有一个NMI和INTR引 当有多个外设要申请中断时, 脚,当有多个外设要申请中断时,就必须通过中 断接口电路来连接, 断接口电路来连接,同时给每个中断外设编排一 个中断号( 系统称为中断类型码)。 个中断号(8086系统称为中断类型码)。当任一 系统称为中断类型码)。当任一 外设有中断申请时, 外设有中断申请时,通过中断接口电路将外设中 断信号转发给CPU,然后再由 断信号转发给 ,然后再由CPU从中断接口电 从中断接口电 路读取该中断源的编号。 路读取该中断源的编号。
中 断 控 制 器
IRQ0 IRQ1
外设0 外设1
IRQn
外设n
软硬件结合的简易中断控制器
≥1
2. 中断优先级 对于多中断源而言, 对于多中断源而言,存在各中断源的优先级别 问题。当两个及以上的中断源同时申请中断时, 问题。当两个及以上的中断源同时申请中断时,最 先响应哪个中断源的中断请求, 先响应哪个中断源的中断请求,则由它们的优先级 别决定。 别决定。 可屏蔽中断源的优先级别由中断控制器决定。 可屏蔽中断源的优先级别由中断控制器决定。 8086系统中各类中断的优先级别如下: 系统中各类中断的优先级别如下: 系统中各类中断的优先级别如下
09 外部中断和中断控制器介绍

3.3 通用I/O端口(GPIO) 3.4复位、系统时钟和定时器 3.5外部中断和中断控制器 3.6 USART串口
3.7 看门狗
向量中断控制器简称NVIC,与处理器核的接口紧密相 连。
◦ ◦ ◦ ◦ ◦ 68个可屏蔽中断通道 16个可编程的优先等级 低延迟的异常和中断处理 电源管理控制 系统控制寄存器的实现
外部中断/事件线路映射
◦ ◦ ◦ ◦
通用I/O端口连接到16个外部中断/事件线上(EXTI0~EXTI15) EXTI16连接到PVD输出 EXTI17连接到RTC闹钟事件 EXTI18连接到USB唤醒事件
在misc.h和misc.c中。 void NVIC_PriorityGroupConfig(uint32_t NVIC_PriorityGroup);//设置优先级分组 void NVIC_Init(NVIC_InitTypeDef* NVIC_InitStruct);//初始化外设寄存器 void NVIC_SetVectorTable(uint32_t NVIC_VectTab, uint32_t Offset);//设置向量表 的位置和偏
void EXTI_DeInit(void);//将外设EXTI寄存器重设为默认值 void EXTI_Init(EXTI_InitTypeDef* EXTI_InitStruct);//初 始化外设EXTI寄存器 void EXTI_StructInit(EXTI_InitTypeDef* EXTI_InitStruct); void EXTI_GenerateSWInterrupt(uint32_t EXTI_Line); FlagStatus EXTI_GetFlagStatus(uint32_t EXTI_Line);// 检查指定的EXTI线路标志位设置与否 void EXTI_ClearFlag(uint32_t EXTI_Line);//清除EXTI线 路挂起标志位 ITStatus EXTI_GetITStatus(uint32_t EXTI_Line);//检查 指定的EXTI线路触发请求发生与否 void EXTI_ClearITPendingBit(uint32_t EXTI_Line);
中断技术、DMA控制器及定时器计数器

编 称为DMA控制器(DMAC)。需要数据
程 传送时,DMAC向CPU提出申请,CPU DMA 让出总线控制权,由DMAC直接控制
控 地址总线、数据总线和控制总线,
制 让存储器与高速的外部设备直接交
器
换数据,CPU不再干预,这样大大减 少了中间过程,提高了数据传送速
8237A
度。
8237A的结构和功能 可 ❖引脚信号 编 程
理
中断过程
中
包括:中断请求,中断判优,中断响 应,中断处理,中断返回五个过程。
断
的
中断优先权
基
❖软件查询法
本
是在CPU响应中断后,用软件查询以确定是 哪些外设申请中断,并判断它们的优先权
原
理
❖硬件优先权排队电路
▪ 中断优先权排队电路
中
可用硬件编码器和比较器组成的优先权
断
排队电路
的
基
本
原
理
❖硬件优先权排队电路
DMA
控 制 器
8237A
❖内部结构
可
8237A有4个独立的DMA通道,24个内部寄存器。
编
程
DMA
控
制
器
8237A
可 编 程
DMA
控 制 器
8237A
▪ 内部寄存器
基址寄存器和当前地址寄存器 基字节计数寄存器和当前字节计数寄存器 暂时地址寄存器 状态寄存器 命令寄存器 暂存寄存器 方式寄存器 屏蔽寄存器 请求寄存器
定
为低电平作为初始电平,并且在计数值到达0 之前一直保持低电平。当计数到达0时,输出
时
端OUT为高电平,并且一直保持高电平,除非
器
写入新的计数值。
微机原理与接口技术(第三版) 第7章

4) 中断请求的检测 CPU在每条指令执行的最后一个时钟周期,检测其中断 请求引脚(INTR)有无中断请求信号。如果有中断请求信号, 就把内部的中断锁存器置“1”,在下一个总线周期到来时, 进入中断响应状态。
2. CPU对中断的响应 当CPU响应外设的中断后,还要具体完成一些工作。 1) 关中断 当响应中断后,首先要进行关中断操作。对8086微处理 器,CPU在发出中断响应信号的同时,在内部自动完成关中 断操作。 2) 断点保护 当CPU响应中断源的中断请求后,将停止下一条指令的 执行,把当前相关寄存器的内容压入堆栈,为中断返回做好 准备。
3) 中断的开放 在CPU内部有一个中断允许触发器,用来决定是否响应 CPU中断请求引脚(INTR)送来的中断请求。当中断开放(触 发器为“1”)时,CPU才能响应中断;当关闭中断(触发器 为“0”)时,CPU不响应中断请求。这个中断允许触发器的 状态可以用STI和CLI指令来改变。在CPU复位或是当中断 响应后,CPU就处于中断关闭状态,这样就必须在中断服务 程序中用STI指令来让中断开放。
1. 分时操作 中断技术实现了CPU和外部的并行工作,从而消除了 CPU的等待时间,提高了CPU的利用率。另外,CPU可同时 管理多个外部设备的工作,提高了输入/输出数据的吞吐量。 2. 实时处理 在实时控制系统中,现场定时或随机地产生各种参数、 信息,要求CPU立即响应。利用中断机制,计算机就能实时 地进行处理,特别是对紧急事件能进行实时处理。 3.故障处理 计算机运行过程中,如果出现某些故障,如电源掉电、 运算溢出等,.2 中断的响应过程 1.中断源 所谓中断源,就是引起中断的原因或者发出中断请求的
设备。中断源一般分为两类:内部中断源和外部中断源。内 部中断源即中断源在微处理器内部。
中断系统及中断控制器

详细描述
根据来源不同,中断可分为硬件中断和软件中断。硬件 中断是由硬件设备产生的,如键盘输入、时钟中断等; 软件中断则是由程序中的特定指令或异常条件触发的。 根据是否可屏蔽,中断可分为可屏蔽中断和不可屏蔽中 断。可屏蔽中断可以被允许或禁止,而不可屏蔽中断则 无法被禁止。根据优先级是否可变,中断可分为优先级 可变中断和优先级固定中断。优先级可变中断的优先级 可以在运行时动态改变,而优先级固定中断的优先级是 固定的。
中断优先级通常由硬件设备或操作系统进行设置和管理,以确保系统的正 常运行。
中断优先级的管理对于系统的性能和稳定性至关重要,不当的设置可能导 致系统崩溃或性能下降。
中断向量表
中断向量表是计算机系统中用于映射中断信号和处理 程序的表格,它包含了不同中断的地址信息,以便在
中断发生时快速找到相应的处理程序。
流量控制
中断在网络通信和可靠性。
05 中断技术的发展趋势
可编程中断控制器的发展
早期中断控制器
采用硬件连线方式实现中断优先级分配,功能较为简单。
可编程中断控制器
允许通过软件编程实现中断优先级、向量表等配置,提高了中断控制器的灵活性和可扩展 性。
资源管理
中断用于实时系统中的资源管理,如内存分配、设备驱动等,确 保资源的高效利用和合理分配。
中断在网络通信中的应用
数据传输
中断在网络通信中用于数据传输控制,如 TCP/IP协议中的数据包接收和发送,确保数 据的可靠传输。
事件处理
中断用于处理网络通信中的事件,如连接建立、数 据包丢失等,实现快速响应和恢复。
可编程中断控制器的发展趋势
随着技术的进步,可编程中断控制器将进一步集成更多的功能,如中断共享、中断嵌套等 ,以满足复杂系统的需求。
微机原理--第八章-中断系统

裁决器
0
IR6
0
IR7
选 CS 译 码
RD
WR
INTA INT
ICW1 芯片控制 A0
A0
1 × I3 I4 0 1 0 0 1 0 1 0 0 1
ICW2 中断类型号 1
ICW3 主从片连接关系
1 ICW4 方式控制
1
OCW1 中断屏蔽寄存器 IMR
00
0
SP/EN
CA0
OCW2 优先级设置、发EOI
上有中断申请,则将IRR相应位置1;
总线
D0 ~ D7 A0
A5 ~ A9
IOR IOW INTA INTR
数据线 D0 ~ D7
A0
ISR 0
当前 0
中断 服务
• 非屏蔽中断 – 由NMI引脚引起的中断,称非屏蔽中断。 – 当NMI引脚上产生上升沿信号,CPU必响应此中断请 求,即NMI引脚上的中断请求不受IF标志的控制, – IF不能屏蔽NMI引脚上的中断请求。
8086/8088CPU的中断分类图
中断源
外部中断 内部中断
非屏蔽中断 可屏蔽中断 内部硬件中断
SP/EN CA0 CA1 CA2
GND
+ 5V
电子钟时间基准
键盘 保留 串 口2 串 口1 硬盘 软盘 打印机
用于多片 8259A
级连情况
7.3.4 8259A的控制字
8259A中断控制器
处理部分
0
ISR 0
当前 0
中断 0
服务 0
寄存器
0 0
0
IRR
中断申请
0 0
寄存器 0
0
PR
0
优先级
中断控制实验实验报告

一、实验目的1. 理解中断控制的基本原理,掌握中断控制器的功能和工作方式。
2. 学习在嵌入式系统中实现中断控制的方法,提高嵌入式系统设计的实践能力。
3. 通过实验,掌握中断优先级设置、中断服务程序编写以及中断嵌套等关键技术。
二、实验原理中断控制是嵌入式系统设计中常见的一种技术,它能够使CPU在执行当前程序时,响应来自外部设备的中断请求,从而实现实时处理。
中断控制器(如8259、PIC等)是中断控制的核心部件,它负责接收中断请求、判断中断优先级、选择中断服务程序等。
三、实验设备1. 嵌入式开发板:如STM32、AVR等。
2. 调试器:如ST-Link、JTAG等。
3. 示波器:用于观察信号波形。
4. 相关开发软件:如Keil、IAR等。
四、实验内容1. 中断控制器初始化根据所使用的开发板和中断控制器型号,编写初始化代码,配置中断控制器的工作模式、中断优先级等。
2. 中断服务程序编写编写中断服务程序,实现对中断事件的响应和处理。
根据实际需求,编写中断服务程序的内容,如读取传感器数据、控制执行器动作等。
3. 中断优先级设置根据系统需求,设置中断优先级。
例如,高优先级的中断请求应优先处理,以保证系统的实时性。
4. 中断嵌套实现中断嵌套功能,允许高优先级的中断请求打断低优先级的中断服务程序。
5. 实验验证编写测试程序,验证中断控制功能是否正常。
使用示波器观察信号波形,确保中断请求、中断服务程序等环节正确执行。
五、实验步骤1. 搭建实验环境将开发板、调试器、示波器等设备连接好,并启动相关开发软件。
2. 编写初始化代码根据开发板和中断控制器型号,编写初始化代码,配置中断控制器的工作模式、中断优先级等。
3. 编写中断服务程序根据实际需求,编写中断服务程序,实现对中断事件的响应和处理。
4. 设置中断优先级根据系统需求,设置中断优先级。
5. 实现中断嵌套实现中断嵌套功能,允许高优先级的中断请求打断低优先级的中断服务程序。
计算机组成原理中断控制器的基本功能

计算机组成原理中断控制器的基本功能中断控制器是计算机系统中的一个重要组成部分,主要用于处理各种中断信号并将其传递给相应的处理器或设备。
其基本功能包括中断信号的检测、中断优先级的判断、中断信号的分发与转发、中断处理程序的调度与执行以及中断屏蔽与使能等。
1.中断信号的检测中断控制器首先需要检测各个设备或外部信号源是否发出了中断请求信号。
这通常通过轮询、屏蔽位检测或中断请求线检测等方式实现。
一旦检测到中断请求信号,控制器将会对其进行处理。
2.中断优先级的判断系统中可能出现多个中断信号同时请求的情况,此时中断控制器需要对这些中断信号进行优先级判断,以确定应该先处理哪个中断信号。
一般来说,中断信号的优先级是在设备或外部信号源中预设的,较高优先级的中断将被优先处理。
3.中断信号的分发与转发中断控制器需要将检测到的中断信号传递给相应的处理器或设备。
对于多处理器系统,中断控制器需要将中断请求转发给特定的处理器,以确保正确地处理中断。
对于单处理器系统,中断控制器会将中断请求传递给处理器的中断请求线。
4.中断处理程序的调度与执行当中断信号被传递给处理器后,处理器会根据中断向量或中断号查找相应的中断处理程序,并执行该程序。
中断处理程序会对中断请求进行实际处理,包括保存寄存器状态、执行中断服务例程、清除中断状态等操作。
5.中断屏蔽与使能为了避免一些中断的干扰或过多的中断请求导致系统性能下降,中断控制器提供了中断屏蔽与使能功能。
这意味着系统可以根据需要屏蔽或使能一些中断信号,以控制中断的发生与处理。
总的来说,中断控制器在计算机系统中起到了重要的作用,能够有效处理各种中断信号,并将其传递给相应的处理器或设备。
它的基本功能包括中断信号的检测、中断优先级的判断、中断信号的分发与转发、中断处理程序的调度与执行以及中断屏蔽与使能等。
通过这些功能的支持,系统能够及时响应各种中断请求,并进行相应的处理,从而保证计算机系统的正常运行。
微机原理与接口技术第六章_8259A练习题与答案

中断技术和中断控制器8259A练习题及答案一、填空题1.8088微处理器最多能处理256种不同类型的中断。
2.8088系统的中断向量表位于从内存地址 00000H 开始,占1K字节存储单元。
3.8088CPU响应INTR中断时,将PSW(或标志寄存器内容)和断点(或CS:IP)进堆栈保存。
4.8259A可管理8级优先级中断源,通过级联,最多可管理 64 级优先级中断源。
5.若8259A的IRR(中断请求寄存器)的内容为10H,说明IR4请求中断。
二、选择题6.8088CPU的标志寄存器中IF=1时,表示允许CPU响应______中断。
CA.内部中断B.外部中断C.可屏蔽中断D.不可屏蔽中断7.CPU在响应中断时,保存断点是指______。
DA.将用户设置的程序指令地址入栈保存B.将中断服务程序的入口地址入栈保存C.将程序状态字PSW入栈保存D.将返回地址即程序计数器PC(CS:IP)的内容入栈保存8.8088的中断向量表用于存放______。
BA.中断类型号B.中断服务程序的入口地址C.中断服务程序的返回地址D.断点地址三、判断题9.8086的可屏蔽中断的优先级高于不可屏蔽中断。
[ ] ×10.通常8259A芯片中的IR0优先级最低,IR7的优先级最高。
[ ]×11.在8088系统中,所谓中断向量就是中断服务程序入口地址。
[ ] √四、简答题12.CPU响应INTR中断的条件是什么?答:(1)INTR信号为有效电平(2)当前指令执行完毕(3)CPU开中断(IF=1)(4)没有更高级的请求(RESET , HOLD ,NMI)13.一般CPU响应中断时自动做哪些工作? 8088CPU呢?答:一般CPU在响应中断时,关中断,保存断点,识别中断源,找到中断服务程序入口地址,转入中断服务程序。
8080CPU在响应中断时,首先把PSW(或标志寄存器内容)入栈保存,其余同一般CPU.14.8088CPU在执行中断返回指令IRET时,执行什么操作?答:(1)弹出断点送CS:IP(2)弹出PSW送标志寄存器15.中断控制器8259A中下列寄存器的作用是什么?(1) IRR (中断请求寄存器) :保存中断源的中断请求(2) IMR (中断屏蔽寄存器) :屏蔽/允许中断源请求中断,由程序写入,1为屏蔽,0为允许(3) ISR (中断服务寄存器): 记录CPU正在为哪些中断源服务(4) IVR (中断向量寄存器): 保存中断向量号16、初使化时设置为非自动结束方式,那么在中断服务程序将结束时必须设置什么操作命令?如果不设置这种命令会发生什么现象?答案:当中断服务程序将结束时,必须发0CW2=20H为中断结束命令,执行此命令即撤消正在服务的中断请求和服务标志;否则,即使返回主程序但未退出此中断,造成中断响应的混乱。
pcie中断方法和系统与流程

pcie中断方法和系统与流程PCIe是一种高速串行总线接口技术,它在计算机硬件领域中被广泛应用于主板与扩展卡之间的高速数据传输。
PCIe中断是指当PCIe设备需要向主机发送信号时,通过中断方式将信息传送给主机。
本文将介绍PCIe中断的方法、系统与流程。
一、PCIe中断方法PCIe中断有两种方法:MSI(Message-Signaled Interrupts)和MSI-X(Message Signaled Interrupts eXtended)。
1.MSI方法MSI是一种简化中断传输机制的技术。
它将中断传递方式从传统的基于总线的IRQ方式转变为基于消息的方式。
MSI使用一个32位的消息寄存器将中断请求通过总线发送给主机。
主机收到中断请求后,使用特定的寄存器来处理中断。
2.MSI-X方法MSI-X是对MSI方法的扩展,它进一步提升了中断传输的性能和功能。
MSI-X支持多个消息寄存器和多个中断向量,使得多个设备可以同时发送中断请求。
这种方法在多核处理器中非常有用,可以提高系统的性能和可扩展性。
PCIe中断系统通常由PCIe设备、主机和中断控制器组成。
下面是PCIe中断系统的一般流程:1.设备初始化PCIe设备在初始化时会配置中断寄存器,并向主机注册中断。
2.中断请求当设备需要发送中断给主机时,它会写入中断寄存器,触发中断请求。
3.中断控制器操作中断控制器会监听PCIe总线上的中断请求,并将请求传送给主机。
4.中断服务例程主机收到中断请求后,会调用相应的中断服务例程来处理中断请求。
中断服务例程是由操作系统提供的,用于处理特定中断类型的代码段。
5.中断处理中断服务例程会执行一系列操作,如保存寄存器的状态、响应中断请求并执行相应的处理程序。
6.中断恢复中断服务例程处理完成后,会向设备发送中断恢复命令,告知设备中断已被处理。
7.响应确认设备接收到中断恢复命令后,会向主机发送中断响应确认,告知主机中断已被处理。
中断 技术

上一页 下一页 返回
第 3 章 综合布线系统设计与施工
• 3.1 综合布线系统设计基础 • 3.2 设计前的准备 • 3.3 综合布线系统设计原则与步骤 • 3.4 工作区子系统设计 • 3.5 水平干线子系统的设计 • 3.6 垂直干线子系统的设计
上一页 下一页 返回
3.1 综合布线系统设计基础
• 2. 综合布线系统信道的组成 • 综合布线系统铜缆信道应由最长 90 的水平缆线、最长 10 m 的跳
线和设备缆线及最多4 个连接器件组成。A、B、C、D、E 级永久链 路则由 90 m 的水平缆线及 3 个连接器件组成,F 级的永久链路仅包 括 90 m 的水平缆线和 2 个连接器件(不包括 CP 连接器件)。连接 方式如图 3−6 所示。 • 3. 光纤信道的分级 • 综合布线的光纤信道分为 OF−300、OF−500 和 OF−2000 三个等级 ,各等级光纤信道支持的应用长度不应小于 300 m、500 m 及 2 000 m。将光纤信道分为三个等级主要是为适应不同的工程应用。
下一页 返回
3.1 综合布线系统设计基础
• 3.1.1 综合布线系统结构 • 1. 综合布线系统基本构成 • 综合布线系统基本构成应符合图 3−3 所示的要求。 • 注意:配线子系统中可以设置集合点(CP),也可不设置集合点。 • 集合点用于完成开放式办公环境中水平布线与到工作区插座的线缆之
间的互连。它同时适用于光纤与双绞线,并可以提供在办公室家具变 动时取消连接与再连接的灵活性。模块化组件使配置变得更容易,插 入式安装使系统再配置既灵活又方便。
• (2)陷阱 • 陷阱是在引起异常的指令执行之后触发的一种情况。当控制转移到异
中断技术

4.中断返回 中断服务程序结束,执行中断返回. ①自动交保存在堆栈中的标志FR,断点(IP,CS)依次 弹出并装入. ②回到中断前的地址开始继续执行.
三,中断源,中断识别,优先级
中断源:发出中断请求的外设或引起中断的内部原因称 为中断源. 中断识别:CPU响应中断后,只知道有中断请求但不知道 是哪一个中断源,寻找中断源的操作过程称为中断识别. 中断识别的目的:形成该中断服务程序的入口地址.
1.中断请求触发方式的设定(ICW1) 功能:设定中断请求的触发方式,是电平触发还是边 没触发. ICW1的格式:
A0 ICW1 0 D7 D6 0 0 D5 0 D4 1 D3 LTIM D2 ADI D1 SNGL D0 IC4
16位无效
特征位电平触发无效 单片使用 需要ICW4
例.若8259A采用电平触发,单片使用,需要ICW4,则 MOV OUT AL,00011011B 20H,AL ;ICW1的内容 ;写入ICW1端口( 11 12 13 14 15 3 4 5 6 7
标准应用
奇偶校验错,I/O检测错中断 定时器OUT0中断 键盘输入中断 接收从片8359A的中断请求INT 实时钟中断 改向INT0AH(以IRQ2出现) 保留 保留 保留 协处理器中断 硬磁盘控制器中断 保留 串行通信(COM2)中断 串行通信(COM1)中断 打印机(LPT2)中断 软磁盘控制器中断 打印机(LPT1)中断
例:PC机,000003FF共1024
03FF 中断 向量表 0BA9 0125 0000 存放256个向量
1024个 单元
2.中断向量指针与中断类型号 什么叫"中断向量指针"? 指出中断向量存放在中断向量表的位置(或地址).
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
§9.2.2 8086/8088的中断系统
8086/8088的中断源分类:
非屏蔽中断
外部中断 (硬件中断) 可屏蔽中断
内部硬件中断 内部中断 除法出错 单步跟踪 断点中断 溢出中断
内部软件中断:INT n
8086/8088的中断系统
1. 8086/8088的中断系统结构 8086/8088的中断系统结构如图9.1所示。
则:中断服务程序的入口地 址为
图9.2 IBM PC/XT的硬件中断控制逻辑
地 址 0~3 4~7 8~B C~F 10~13 14~17 18~1B 1C~1F 20~23 24~27 28~2B 2C~2F 30~33 34~37 38~3B 3C~3F 40~43 44~47 48~4B 4C~4F 50~53 54~57 58~5B 5C~5F 类型码 0 1 2 3 4 5 6 7 8 9 A B C D E F 10 11 12 13 14 15 16 17 中断名称 除法出错 单步 不可屏蔽 断点 溢出 打印屏蔽 保留 保留 定时器 键盘 保留 通信口 2 通信口 1 硬盘 软盘 打印机 视频显示 I/O 调用 装置检查调用 存储器容量检查调用 软盘/硬盘/I/O 调用 通信 I/O 调用 盒式磁带 I/O 调用 键盘 I/O 调用 打印机 I/O 调用 地 址 60~63 64~67 68~6B 6C~6F 70~73 74~77 78~7B 7C~7F 80~83 84~87 88~8B 8C~8F 90~93 94~97 98~9B 9C~9F A0~FF 100~17F 180~19F 1A0~1FF 200~217 218~2C3 3C4~3FF 类型码 18 19 1A 1B 1C 1D 1E 1F 20 21 22 23 24 25 26 27 28~3F 40~5F 60~67 68~7F 80~85 86~F0 F1~FF 中断名称 常驻 BASIC 入口 引导程序入口 时间调用 键盘 CTR-BREAK 控制 定时器报时 显示器参数表 软盘参数表 字符点阵结构参数 程序结束,返回 DOS 系统功能调用 结束地址 CTRL-BREAK 退出地址 标准错误出口地址 绝对磁盘读 绝对磁盘写 程序结束,驻留内存 为 DOS 保留 保留 为用户软中断 不用 BASIC 使用 BASIC 解释程序 未用
§9.1.5 中断隐操作和中断向量
中断隐操作:
隐操作把CPU引向中断服务程序
CPU响应中断时,由内部硬件执行的一系列处理过程。
中断类型、中断向量、中断向量表:
中断类型:中断源的编号 中断向量:中断服务程序的入口地址 中断向量表:内存中存放中断向量的区域 以上三者关系: 中断向量在中断向量表中第一个单元的地址=中断类型×4
1) 2) 3) 4) 5) 82C59A内部结构和外部引脚与8259A完全兼容。 单一正5V电源,全静态工作(无需外加时钟)。 该芯片集中断源识别、判优、提供中断类型号于一体。 每片82C59A能管理8级中断。 每片82C59A可送出8个8位的中断类型号(自动中断向量转 移功能)。 6) 能用软件屏蔽中断请求输入,通过编程可选择多种不同的工 作方式,以适应各种系统的要求。 7) 通过82C59A级联,在不增加外部电路的情况下,最多可用9 片82C59A级连管理64级中断。
8086/8088的中断系统
中断向量在中断向量表的存放次序: 是按中断类型号顺序存放,共占4个单元。每个中断向量存放的 首地址=中断类型号×4。
4N(该中断向量所占4个字节单元的第一个字节单元的地址)。 CPU响应中断时,需把中断类型号N乘以4,得到中断向量的对应地址
中断向量的装入: 两个低字节单元的内容装入IP寄存器: IP= (4N,4N+1), 两个高字节单元的内容装入CS寄存器:CS = (4N+2,4N+3)。 外部(NMI、INTR):由接口提供 中断类型号N的来源: 硬件中断:由内部硬件提供 内部 软件中断:由中断指令提供
8086/8088的中断系统
例1:若中断类型号为3,则由中断类型号取 得中断服务入口地址的过程如下图所示:
内存 00000H 00001H
…….
中断类型号3×4
=000CH
低地址
0000CH (0000:000CH)
00(IPL)
0A(IPH) 00(CSL) 1E(CSH) 1E00 0 H + 0A0 0 H 1EA0 0 H 高地址
8259A 非屏蔽中断请求 NMI 中断逻辑
INTR
INTn 指令
INTO 指令
8086/8088CPU
可屏蔽中断请求
除法 出错
单步 中断
8086/8088的中断系统
2. 中断类型码与中断向量表 中断类型码—8086/8088为每个中断源指定的一个 编号。 中断向量—中断服务程序的入口地址。 中断向量表—把系统中所有的中断向量按中断类 型码从小到大的顺序放到存储器的某一个区域所 形成的一个表 每个中断向量占用4个存储单元 ,8086/8088CPU 的中断系统最多能处理256个中断源。 8086/8088CPU以存储器的00000H~003FFH共1024个 单元作为中断向量存储表
中断请求
INT1
CPU INTR
菊花链 逻辑电路
INTA
+5V
INT1+INT2+INT3
集电极开路门(OC门)
中断请求
INTA INTR
• INTR=INT1+INT2+INT3
• 当INTA信号沿菊花链行进时,最靠近CPU并发出INT 请求的接口将首先拦截住INTA信号,并送出中断类 型码,进入相应的中断处理程序;在服务完成后撤销 其请求(解除对下一级的阻塞和封锁)。
数据总线
控制总线
CPU和总线 控制逻辑 IP CS PSW
地址总线
3
中断类型号N送CPU
1 5
接口发中断请求信号 清除IF和TF 接口
6 (4*N)作为IP
(4*N+2)作为CS 内存
2
当前指令执行完 后CPU进行中断应 答 按中断的程序
7
中断子程序执行 中断子程序
新(IP) 新(CS)
中断向量
„
1EA00H (1E00:0A00H)
…....
FFFFFH
中断服务程序
8086/8088的中断系统
例2.中断类型号为20H,中断服务程序的入口地址 存放在0000:0080H开始的4个单元中。若:
(0080H)=10H (0081H)=20H (0082H)=30H (0083H)=40H
指内部屏蔽
§9.1.4 中断服务程序
中断服务程序:为完成中断源所期望的功能而编写的程序 。 中断服务程序的主要内容:在中断服务程序中,主要是进行 输入/输出操作 或发出一系列控制信号 ,这些具体操作构成 了中断服务程序的主体。另外还有一些附加操作,因此: 中断服务程序的主要内容有: 保护现场 开中断 具体中断处理 关中断 恢复现场 开中断、中断返回
中断源及其优先级
(1)软件查询法
把各个外设的中断请求信号“相或”,产生一个 总的INT信号 当CPU响应中断后,进入中断处理程序,在中断 处理程序的开始部分安排一段查询程序。
优点:省硬件 缺点:中断响应慢
中断源及其优先级
(2)菊花链优先级排队电路
设备1 设备2 设备3
接口
中断回答
接口
接口 INT2 INT3
§9.1.3 中断请求与中断屏蔽
1. 中断请求 CPU在执行完每条指令后,自动检测中断请求输入线,以确 定是否有外部发来的中断请求信号。 2. 中断屏蔽
内部屏蔽: CPU不响应中断(关中断)
中断屏蔽: 外部屏蔽:中断请求信号不能送到CPU
可屏蔽中断 :受IF控制 (IF为“1”时中断允许,IF为“0”时中断屏蔽) 非屏蔽中断:不受IF控制 (无论IF为“1”或“0” 都允许中断) (但可设计外部屏蔽电路进行屏蔽)
„
4 当前的PSW、CS
和IP压入堆栈
STI
8
开中断
„
„
9
旧(IP) 旧(CS) 旧(PSW) IRET指令使IP﹑CS 和PSW弹出堆栈
堆栈
10
返回被中断的程序
图9.3
8086/8088可屏蔽中断的响应过程
8086/8088的中断系统
4. 内部中断
内部中断都是非屏蔽型的
除法出错中断是类型0
§9.2
8086/8088中断系统
中断系统:实现中断的软件和硬件的总和。
§9.2.1 中断系统的基本功能 要求能判断中断源的优先级,并按优先权的 高低决定中断响应的顺序。 要求中断系统能实现中断和返回。 要求中断系统能实现中断嵌套,即高优先级 中断源的中断请求能中断低优先级中断源的 中断服务。
单步中断为类型1
断点中断是类型3 溢出中断是类型4 指令中断INT n
8086/8088的中断系统
8086/8088中断的优先权
优先权按从高到低的顺序排列为: 除法出错中断→INT n→溢出中断 →NMI→INTR→断点中断→单步。
属于中断源的外部屏蔽
§9.3 可编程中断控制器82C59A
§9.3.1 82C59A的主要特性
第1条可执行指令的 第1个字节的地址
§9.1.6 中断响应过程
对于可屏蔽中断,当CPU检测到有中断请求时,如果 满足响应条件就要予以响应。具体过程如下: 关中断、保护断点 属于隐操作 保护现场 可选择 开中断 具体中断处理 主 体 属于中断服务程序 关中断 可选择 恢复现场 开中断、中断返回