第8章中断系统
第8章中断系统-4(中断请求的撤消外部中断扩充)
中断程序的设计与应用
中断应用举例 例8.1(P194) 利用定时器T0定时,在P1.0端输出方 利用定时器T0定时, P1.0端输出方 T0定时 其周期为20ms 20ms, 波,其周期为20ms,已知晶振频率为 12MHz。 12MHz。
ቤተ መጻሕፍቲ ባይዱ
中断程序的设计与应用
的中断服务程序入口地址为000BH, 解:T0的中断服务程序入口地址为 的中断服务程序入口地址为 , 定时器T0的初值 的初值: 定时器 的初值: X=65536-10000=55536=D8F0H ORG 0000H LJMP MAIN …… ORG 000BH LJMP SUB1 ……
中断程序的设计与应用
ORG MAIN:MOV : MOV MOV MOV SETB HERE:SJMP : …… 30H TMOD,#01H , TH0,#0D8H , TL0,#0F0H , IE,#82H , TR0 HERE
中断程序的设计与应用
SUB1:MOV TH0,#0D8H : , MOV TL0,#0F0H , CPL P1.0 RETI ……
单片机原理与应用
第8章 中断系统
中断处理过程
中断请求的撤销 CPU响应某中断请求后, CPU响应某中断请求后,在中断 响应某中断请求后 返回前,应该撤消该中断请求, 返回前,应该撤消该中断请求, 否则会引起另一次中断。 否则会引起另一次中断。
中断请求的撤销
MCS—51各中断源请求撤消的方法 MCS 51各中断源请求撤消的方法 51 各不相同。 各不相同。 1.定时中断请求的撤销 1.定时中断请求的撤销 定时中断 2.脉冲方式外部中断请求的撤销 2.脉冲方式外部中断请求的撤销 脉冲方式外部中断 3.电平方式外部中断请求的撤销 3.电平方式外部中断请求的撤销 电平方式外部中断 4. 串行中断软件撤销 串行中断软件撤销 软件
计算机组成原理第8章习题指导
第8章CPU的结构和功能例8.1假设指令流水线分取指(IF)、译码(ID)、执行(EX)、回写(WR)四个过程段,共有10条指令连续输入此流水线。
(1)画出指令周期流程。
(2)画出非流水线时空图。
(3)画出流水线时空图。
(4)假设时钟周期为100ns,求流水线的实际吞吐率。
(5)求该流水处理器的加速比。
解:(1)根据指令周期包括IF、ID、EX、WR四个子过程,图8.1(a)为指令周期流程图。
(2)非流水线时空图如图8.1(b)所示。
假设一个时间单位为一个时钟周期,则每隔4个时钟周期才有一个输出结果。
(3)流水线时空图如图8.1(c)所示。
由图可见,第一条指令出结果需要4个时钟周期。
当流水线满载时,以后每一个时钟周期可以出一个结果,即执行完一条指令。
(a)指令周期流程(b) 非流水线时空图(c) 标准流水线时空图图8.1 例8.1答图(4)由图8.1(c)所示的10条指令进入流水线的时空图可见,在13个时钟周期结束时,CPU执行完10条指令,故实际吞吐率为:10/(100ns×13) ≈ 0.77×107条指令/秒(5)在流水处理器中,当任务饱满时,指令不断输入流水线,不论是几级流水线,每隔一个时钟周期都输出一个结果。
对于本题四级流水线而言,处理10条指令所需的时钟周期数为T4 = 4 +(10 −1)= 13。
而非流水线处理10条指令需4×10 = 40个时钟周期。
故该流水处理器的加速比为40 ÷13 ≈ 3.08 例8.2设某机有四个中断源1、2、3、4,其硬件排队优先次序按1→2→3→4降序排列,各中断源的服务程序中所对应的屏蔽字如表8.1所示。
表8.1 例8.2各中断源对应的屏蔽字中断源 屏蔽字1 2 3 41 1 1 0 12 0 1 0 03 1 1 1 14 0 1 0 1(1)给出上述四个中断源的中断处理次序。
(2)若四个中断源同时有中断请求,画出CPU执行程序的轨迹。
第8章 中断系统
中断执行示意图如下:
第18页
2012年6月11日星期一
第8章
结束当前指令?
内部中断?
中断系统
①
关中断 标志寄存器入栈 TEMP=TF(暂存) 清除IF、TF标志 断点(CS,IP)入栈 取中断向量 进入中断服务程序 开中断 执行中断服务程序 Y
N
有NMI?
有
无 N
无
有INTR?
有
IF=1?
Y Y
TF= N 1? 取中断类型码
第8页 2012年6月11日星期一
第8章
8.2.2 中断处理
中断系统
1.中断的处理过程 ⑴关中断。目的:在现场保护过程中,CPU不应该 响应更高级的中断源申请。 ⑵保存断点和现场。即将现行状态字和断点地址相 继压入堆栈。目的:在中断处理完后返回主程序时, 恢复原程序运行状态。 ⑶开中断。目的:允许更高级中断请求能够及时得 到响应,实现中断嵌套。 ⑷转入中断服务程序。目的:完成的最终目的。 ⑸ 退出中断。返回到主程序的执行。
第20页 2012年6月11日星期一
第8章
8.3.4 软件中断
中断系统
软件中断有如下特点: 1.INT n 指令,中断类型码是 n。 2.不执行中断响应总线周期,不读取中断类型码。 3.软件中断不受IF的影响。 4.可进行中断嵌套,即可以响应非屏蔽中断;当被软 件中断调用的中断处理子程序使IF=1时,那么也可响 应屏蔽中断的高优先级请求。 5.软件中断没有随机性,这是因为软件中断是由程序 中的中断指令引起的,何时执行,是事先知道的,所 以软件中断失去了随机性。
第21页 2012年6月11日星期一
第8章
8.4 中断控制器8259A
一、引言
中断系统
微机原理与接口技术习题答案
第3章8086/8088指令系统与寻址方式习题3.3 8086系统中,设DS=1000H,ES=2000H,SS=1200H,BX=0300H,SI=0200H,BP=0100H,VAR的偏移量为0600H,请指出下列指令的目标操作数的寻址方式,若目标操作数为存储器操作数,计算它们的物理地址。
(1)MOV BX,12 ;目标操作数为寄存器寻址(2)MOV [BX],12 ;目标操作数为寄存器间址 PA=10300H(3)MOV ES:[SI],AX ;目标操作数为寄存器间址 PA=20200H(4)MOV VAR,8 ;目标操作数为存储器直接寻址 PA=10600H(5)MOV [BX][SI],AX ;目标操作数为基址加变址寻址 PA=10500H(6)MOV 6[BP][SI],AL ;目标操作数为相对的基址加变址寻址 PA=12306H (7)MOV [1000H],DX ;目标操作数为存储器直接寻址 PA=11000H(8)MOV 6[BX],CX ;目标操作数为寄存器相对寻址 PA=10306H(9)MOV VAR+5,AX ;目标操作数为存储器直接寻址 PA=10605H3.4 下面这些指令中哪些是正确的?那些是错误的?如果是错误的,请说明原因。
(1)XCHG CS,AX ;错,CS不能参与交换(2)MOV [BX],[1000] ;错,存储器之不能交换(3)XCHG BX,IP ;错,IP不能参与交换(4)PUSH CS(5)POP CS ;错,不能将数据弹到CS中(6)IN BX,DX ;输入/输出只能通过AL/AX(7)MOV BYTE[BX],1000 ;1000大于255,不能装入字节单元(8)MOV CS,[1000] ;CS不能作为目标寄存器(9)MOV BX,OFFSET VAR[SI] ;OFFSET只能取变量的偏移地址(10)MOV AX,[SI][DI] ;SI、DI不能成为基址加变址(11)MOV COUNT[BX][SI],ES:AX ;AX是寄存器,不能加段前缀3.7 设当前 SS=2010H,SP=FE00H,BX=3457H,计算当前栈顶的地址为多少?当执行PUSH BX 指令后,栈顶地址和栈顶2个字节的内容分别是什么?当前栈顶的地址=2FF00H当执行PUSH BX 指令后,栈顶地址=2FEFEH(2FEFEH)=57H(2FEFFH)=34H3.8 设DX=78C5H,CL=5,CF=1,确定下列各条指令执行后,DX和CF中的值。
第八章中断系统第九章DMA控制器
为CPU专用;一部分是由磁盘操作系统DOS保留为 系统使用,用户可以使用200个左右中断。
§8.5 IBM PC/XT的中断方式
第九章 DMA控制器
DMA:direct memory access
直接存储器访问技术,适合高速的数据交换
2. 硬件优先权排队电路
(1)中断优先权编码电路
若有8个中断源,当任意一个有中断请求时,通过或门, 即可有一个中断请求信号产生,能否送至CPU的中断请 求线,还要受比较器的控制。
(2)雏菊花环(Daisy Chain)式或称为链式优先权排队电 路
§8.3 中断优先权及多重中断
中断响应(来自CPU)
§8.3 中断优先权及多重中断
8.3.1 中断优先权
(2)移位法 XOR AL,AL IN AL,[20H] RCL AL, 1 JC PWF RCL AL, 1 JC DISS ……
;输入中断请求触发器的状态 ;外设A中断服务程序 ;外设B中断服务程序
§8.3 中断优先权及多重中断
8.3.1 中断优先权
§8.4 8086/8088的中断方式
3.中断向量表 o 每一种中断类型对应一个中断向量; o 每个中断向量占4个字节,前两个字节存放中断处 理子程序入口地址的偏移量(IP),后两个字节存放 中断处理子程序入口地址的段地址(CS); o 256个中断中:0-4为专用中断,5-31为系统保留 (21个),32以上共224个为用户自定义中断。
内部中断
INT n指令—类型为n的中断指令
软件中断 INT 3指令—断点中断指令 INT0指令—溢出中断指令
IRET指令—中断返回
第八章CPU的结构和..
三、指令流水原理
1.顺序执行方式:串行执行
取指令 i
t取指令i
分析 i
t分析i
执行 i 取指令 i+1 分析 i+1
t执行i
执行 i+1
假设1:取指令、分析指令和执行指令所需时间分 别为t取指令、t分析和t执行。
结果1:执行n条指令所花的时间
T
(t
i 1
n
取指令i
t分析i t执行i )
取指令i 分 析i 取指令i+1 执 行i 分 析i+1 取指令i+2
t
执 行i+1 分 析i+2
t
t
执 行i+2
t
t
假设:如果指令执行的3个阶段所需时间均为△t。 结果: 二次重叠方式执行n条指令所需要的时间为:
T= 3△t+(n-1)△t =(2+n)△t
(3)指令执行阶段重叠执行,必须解决两个问题: 必须有独立的取指令部件、指令分析部件和指令 执行部件。 要解决访问主存冲突问题,通常有3种方法: 主存分成两个独立编址的存储器:一个是指 令存储器,专门存放指令;另一个是数据存储器, 专门存放数据。 主存采用低位交叉编址的并行存储器,在一个 存储周期中可以访问多个存储单元。 采用先行控制技术,这是解决访问冲突的根 本方法
SP →MAR →AB →M,PC →MDR →DB →M,入口地址→PC
地 址 总 线 MAR 数 据 总 线 控 制 总 线
CPU PC
存储器
CU
MDR
8.3
1. 2. 3.
指 令 流 水
一、如何提高机器速度 提高访存速度 高速芯片 Cache 中断 DMA 通道 改进算法 多体并行 I/O 处理机 快速进位链 多总线
计算机硬件基础——第八章(中断系统)
AJMP MAIN
AJMP IT0P MAIN: MOV SP,#60H MOV TMOD, #01H MOV TH0 ,#M
DJNZ R7,DD2
DJNZ R5,DD1 RET
MOV TL0,#N
SETB TR0 SETB EA SETB ET0 SJMP $
从上例可看出中断大大提高了CPU的工作效率。
中建立堆栈。 ②在中断服务程序的开始应有保护现场的指令。 即将中断服务程序中用到的各寄存器的内容压入堆栈保存,在中 断结束之前弹回恢复,然后返回。这样就能保证返回原断点时各
寄存器内容与中断服务前相同,使原程序能正确运行。
③中断与调用子程序的异同: 中断过程中由主程序转向中断服务程序的请求是由外部设备提出 的,发生中断的时刻不确定,而在何处调用子程序则是由程序确 定的。
3
一.8031的中断请求源
有5个中断源,它们是:串行口 T1 INT1 T0 INT0
TCON (88H)中相应的位锁存它们的中断标志:
TF1 其中:
TR1
TF0
TR0
IE1
IT1
IE0
IT0
IT0 :INT0触发方式选择,0:低电平触发,1:负跳变触发
IE0 :INT0选择负跳变触发时的中断标志,0:INT0未申请中断, 1:INT0申请中断 INT0选择低电平触发时此标志无用。 IT1、IE1同上定义对INT1控制。
10
例
8000H
MOV A, #06H
①
8002H
8005H
MOV B, #05H
MUL AB MOV IE , #05H MOV R0 , #30H …………….
②
8006H 8009H 800BH
计算机硬件技术--中断技术知识考试题
第八章习题参考答案8.1 什么是中断?采用中断技术有哪些好处?答:中断是指由CPU内/外部事件引起或由程序的预先安排,使CPU中断正在运行的正常程序(主程序),而转到为该内部/外部事件或预先安排的事件服务程序,待服务完毕,再返回被暂时中断的正常程序处继续执行正常程序的过程。
采用中断技术,可以使计算机方便地实现如下一些操作:(1)分时操作。
有了中断系统,CPU可以命令多个外部设备同时工作,CPU分时控制这些外设,大大提高了CPU的吞吐率。
(2)实现实时处理。
当计算机用于实时控制,系统要求计算机为它服务的时间是随机的,而中断系统中这种请求--响应模式正好迎合了实时系统的需求。
(3)故障处理。
计算机在运行过程中,往往会出现一些故障,如电源掉电、存储出错、运算溢出等。
有了中断系统,当出现上述情况时,CPU可以随时转去执行故障处理程序,自行处理故障而不必停机。
随着微型计算机的发展,中断系统不断增加新的功能,中断系统甚至可以实现计算机系统中软硬件资源的自动管理。
8.2 什么叫中断系统?它具备哪些功能?答:把能够实现中断全部功能的软件、硬件的总称称为中断系统。
不同计算机的中断系统,其具体实现可能不尽一样,但中断系统的基本功能是相同的。
中断系统的基本功能如下:1.能实现中断响应、中断处理(服务)、中断返回和中断屏蔽。
这是中断系统最基本的功能。
2.能实现中断优先级排队(管理)。
即当有多个中断源同时申请中断时,CPU如何能够优先响应最紧急的中断申请。
3.能实现中断嵌套。
即当CPU正在为优先级较低的中断源服务时,具有较高优先级的中断源提出中断申请,此时中断系统应当允许较高优先级的中断源中断较低优先级的中断源,待较高优先级的中断处理完成后,再接着处理较低优先级的中断,这种中断服务程序再被中断的过程称为中断嵌套。
8.3 何谓非屏蔽中断和可屏蔽中断?答:非屏蔽中断是指用户不能用软件屏蔽的中断。
它是通过8086的NMI引脚进入。
8.1 中断
安徽理工大学
8.1 中断
第8章 中断和8259A
2.8086的中断响应与处理
重点介绍从INTR引脚引入的可屏蔽中断的类型码是如 何形成的。CPU响应INTR中断后,要执行两个连续的 中断响应INTA总线周期,其时序图如图8.8
8086可处理256(0~FFH)类中断,每类中断有一个入 口地址(中断向量),包含CS和IP,共4个字节。因此 存 储 256 个 地 址 , 需 要 占 用 1K 字 节 , 它 们 位 于 内 存 00000~003FFH的区域中。
将中断类型号n乘以4就能找到规定类型的中断向量,规 定IP在前,CS在后。
安徽理工大学
8.1 中断
第8章 中断和8259A
8.1.1 中断概念和分类
1.中断的定义和功能
中断定义:
计算机在执行正常程序过程中,暂时中止当前程 序的运行,转到中断处理程序去处理临时发生的事 件,处理完后又恢复原来程序的运行,这个过程称 为中断(Interrupt)。
安徽理工大学
8.1 中断
然后找到中断服务程序的入口地址,转去执行相 应的中断服务程序。
中断服务程序结束时,执行中断返回指令IRET 返回正常程序继续执行。
如何寻找中断服务程序的入口地址,是中断处理 过程中的一个重要环节。
安徽理工大学
8.1 中断
3.中断向量表
第8章 中断和8259A
2)中断向量表
中断向量表用来存放中断服务程序的入口地址。
安徽理工大学
8.1ቤተ መጻሕፍቲ ባይዱ中断
第8章 中断和8259A
计算机组成原理唐朔飞PPT 第8章 CPU 的结构和功能
解决办法
• 停顿 指令 1 与指令 4 冲突 指令1、指令3、指令 6 冲突 • 指令存储器和数据存储器分开 … 指令 2 与指令 5 冲突 • 指令预取技术 (适用于访存周期短的情况)
8.3 指令流水
2. 数据相关
四、影响指令流水线性能的因素
不同指令因重叠操作,可能改变操作数的 读/写 访问顺序
R3 R3
;(R4)+(R5)
;(R2)× (R1) ;(R4) (R5) • 采用 旁路技术
解决办法
• 后推法
(定向技术、相关专用通路技术)
8.3 指令流水
3. 控制相关
由转移指令引起
LDA LDX M ADD INX CPX BNE DIV STA #N M #N ANS #0 #0 X, D
三、指令流水原理
2
DI FI
3
CO DI FI
4
FO CO DI FI
5
6
7
8
9
10
11
12 13
14
EI WO FO EI WO CO DI FI FO DI FI EI CO DI FI WO EI WO FO DI FI EI CO DI FI WO EI FO CO DI WO EI WO FO EI WO EI WO CO FO CO FO CO FO
5. 指令周期流程
取指周期 是
一、 基本概念
有间址吗? 否 执行周期
间址周期
有中断吗? 否
是 中断周期
8.2 指令周期
6. CPU 工作周期的标志
CPU 访存有四种性质
取 指令 取 地址 取 操作数 存 程序断点 FE
D CLK
一、 基本概念
第8章习题参考答案
第8章习题参考答案1.如果认为CPU等待设备的状态信号是处于非工作状态(即踏步等待),那么在下面几种主机与设备之间的数据传送中: A 主机与设备是串行工作的;B 主机与设备是并行工作的,C 主程序与设备是并行运行的。
A.程序查询方式B.程序中断方式C.DMA方式2.中断向量地址是 B 。
A.子程序入口地址B.中断服务程序入口地址C.中断服务程序入口地址指示器D.例行程序入口地址3.利用微型机制作了对输入数据进行采样处理的系统。
在该系统中,每抽取一个输入数据就要中断CPU一次,中断处理程序接收采样的数据,将其放到主存的缓冲区内。
该中断处理需时x秒,另一方面缓冲区内每存储n个数据,主程序就将其取出进行处理,这种处理需时y秒。
因此该系统可以跟踪到每秒 A 次的中断请求。
A.n/(n×x+y) B.n/(x+y)·n C.min(1/x,n/y)4.采用DMA方式传送数据时,每传送一个数据就要占用一个 C 的时间。
A.指令周期B.机器周期C.存储周期D.总线周期5.通道的功能是:(1) 控制外围设备,(2) 组织外围设备和内存之间进行数据传输。
按通道的工作方式分,通道有选择通道、数组多路通道和字节多路通道三种类型。
6.在图8.9中,当CPU对设备B的中断请求进行服务时,如设备A提出请求,CPU能够响应吗?为什么?如果设备B一提出请求总能立即得到服务,问怎样调整才能满足此要求? 答:不能,因为A、B是同级别的中断。
要使设备B一提出请求总能立即得到服务,除非将B提高到上一级,并令IM3=0,即构成一个3级IR。
7.在图8.9中,假定CPU取指并执行一条指令的时间为t1,保护现场需t2,恢复现场需t3,中断周期需t4,每个设备的设备服务时间为t A,t B,…,t G。
试计算只有设备A,D,G 时的系统中断饱和时间。
答:依次处理设备A,设备D,设备G的时间为:T1 =t1+t2+t3+t4+t AT2 = t1+t2+t3+t4+t DT3 = t1+t2+t3+t4+t G总时间为T = T1+T2+T3 = 3*( t1+t2+t3+t4)+ t A + t D + t G8.设某机有5级中断;L0,L1,L2,L3,L4,其中断响应优先次序为:L0最高,L1次之,L4最低。
微机原理 第8章 中断控制器8259A 习题及参考
第八章中断控制器8259A1. 8259A的初始化命令字和操作命令字在设置上有什么不同?答:初始化命令字:是在计算机系统启动时,由初始化程序设置的,且一旦设定,一般在系统工作过程中就不再改变。
操作命令字:是由应用程序设定的,用来对中断处理过程作动态控制。
在系统运行过程中,可被多次设置。
2. 8259A中的中断屏蔽寄存器(IMR)与8086的中断允许标志(IF)有何差别?在中断响应过程中,它们是怎样配合工作的?答:差别有三:差别1——IMR中的某位为1时,说明对应此位的中断请求当前是受到屏蔽的;而IF位为0时,说明可屏蔽中断请求是受到屏蔽的。
差别2——IMR可以屏蔽部分中断请求;而IF为0时,屏蔽的是所有可屏蔽中断请求。
差别3——IMR是8259A中的一个8位寄存器;而IF是CPU中16位标志寄存器中的1位控制标志。
配合:只有当IMR中的某位为0且IF=1时,CPU才有可能响应对应此位的中断请求。
具体过程是:由中断请求寄存器(IRR)接收外部的中断请求并锁存中断请求,IMR中的对应位决定是否让这些请求通过。
如果IMR的对应位为1,则说明此中断当前受到屏蔽,即对它进行了封锁,而不让其进入优先级裁决器(PR);如果IMR的对应位为0,则PR把新进入的中断请求与当前服务寄存器(ISR)中指示的当前正在处理的中断作比较,若判断出新进入的中断请求具有足够高的优先级,则PR通过相应的逻辑电路使8259A的INT端为1,从而向CPU发出一个中断请求;如果此时CPU的IF=1,则CPU执行完当前指令后,就会响应该中断请求;否则,若IF=0,则CPU不予响应。
3. 8259A的全嵌套工作方式与特殊全嵌套工作方式有何不同?答:工作在全嵌套方式下,当处理某一级中断时,只有当优先级更高的中断请求到来,才会实施中断嵌套。
当同级中断请求到来时,不会给予响应;而工作在特殊全嵌套方式下,当处理某一级中断时,若有同级的中断请求到来,也会给予响应,从而实现对同级中断请求的特殊嵌套。
微机原理及单片机应用技术第8章 80C51的中断与定时计数器
定时/计数器的结构
T1引脚
TH1
TL1
TH0
T0引脚
TL0
机器周 期脉冲
TH1、TL1
内部总线
TH0、TL0
TF1 TR1 TF0 TR0 GATE C/T M1 M0 GATE C/T M1 M0
TCON
TMOD
TCON
外部中断相关位
T1方式
T0方式
TMOD
2020/10/27
21
计数脉冲源
定时/计数器的工作原理
76543210
TCON TF1 TR1 TF0 TR0
字节地址:88H
TFx:Tx溢出标志位。响应中断后TFx有硬件自动清0。 用软件设置TFx可产生同硬件置1或清0同样的效果。
TRx:Tx运行控制位。置1时开始工作;清0时停止工作。 TRx要由软件置1或清0(即启动与停止要由软件控制)。
2020/10/27
2020/10/27
24
定时/计数器的控制示意图
M1M0 工作方式
说
明
00 方式0 13位定时/计数器
01 方式1 16位定时/计数器
10 方式2 8位自动重装定时/计数器
11
方式3
T0分成两个独立的8位定时/计数器; T1此方式停止计数
注意:TMOD不能进行位寻址
2020/10/27
26
控制寄存器TCON
第八章 80C51的中断系统与定时计数器
8.1 80C51单片机的中断系统 8.2 80C51中断处理过程 8.3 80C51单片机的串行口
8.1 80C51单片机的中断系统
5.1.1 80C51中断系统的结构
中断的概念
与子程序调用相似 但有本质的区别
微机原理--第八章-中断系统
裁决器
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
优先级
微机原理与接口技术(楼顺天第二版)第六章习题解答
微机原理与接口技术(楼顺天第二版)习题解答第6章总线及其形成6.1答:内存储器按其工作方式的不同,可以分为随机存取存储器(简称随机存储器或RAM)和只读存储器(简称ROM)。
随机存储器。
随机存储器允许随机的按任意指定地址向内存单元存入或从该单元取出信息,对任一地址的存取时间都是相同的。
由于信息是通过电信号写入存储器的,所以断电时RAM中的信息就会消失。
计算机工作时使用的程序和数据等都存储在RAM中,如果对程序或数据进行了修改之后,应该将它存储到外存储器中,否则关机后信息将丢失。
通常所说的内存大小就是指RAM的大小,一般以KB或MB为单位。
只读存储器。
只读存储器是只能读出而不能随意写入信息的存储器。
ROM中的内容是由厂家制造时用特殊方法写入的,或者要利用特殊的写入器才能写入。
当计算机断电后,ROM 中的信息不会丢失。
当计算机重新被加电后,其中的信息保持原来的不变,仍可被读出。
ROM 适宜存放计算机启动的引导程序、启动后的检测程序、系统最基本的输入输出程序、时钟控制程序以及计算机的系统配置和磁盘参数等重要信息。
6.2 答:存储器的主要技术指标有:存储容量、读写速度、非易失性、可靠性等。
6.3答:在选择存储器芯片时应注意是否与微处理器的总线周期时序匹配。
作为一种保守的估计,在存储器芯片的手册中可以查得最小读出周期t cyc(R)(Read Cycle Time)和最小写周期t cyc(W)(Write Cycle Time)。
如果根据计算,微处理器对存储器的读写周期都比存储器芯片手册中的最小读写周期大,那么我们认为该存储器芯片是符合要求的,否则要另选速度更高的存储器芯片。
8086CPU对存储器的读写周期需要4个时钟周期(一个基本的总线周期)。
因此,作为一种保守的工程估计,存储器芯片的最小读出时间应满足如下表达式:t cyc(R)<4T-t da-t D-T其中:T为8086微处理器的时钟周期;t da为8086微处理器的地址总线延时时间;t D为各种因素引起的总线附加延时。
微机原理第八章:中断技术讲解
1.中断源识别
★ 软件查询法:
★ 中断矢量法:中断源提供中断类型号,CPU根据类型确定中断源 2.中断判优
★ 对同时产生的中断,首先处理优先级别较高的中断;
若优先级别相同,则按先来先服务的原则。
★ 对非同时产生的中断:
低优先级的中断程序允许被高优先级的中断源所中断
1.中断服务子程序的特点: 为“远过程”,用 IRET 指令返回
2.中断服务程序完成的工作
1)保护现场(通用寄存器的内容)
2)开中断(STI)
3)中断处理
4)关中断(CLI)
5)恢复现场 6)IRET
中断服务程序结构
保护有关寄存器内容 开中断
执行中断服务程序 关中断
恢复有关寄存器内容 执行IRET
精品资料
④ 执行 IRET 指令
4.退出中断(zhōngduàn) ① 关中断(zhōngduàn)
退
出
② 恢复现场中
③ 恢复断点 ④ 开中断(zhōngduàn) 断
精品资料
关中断 保存断点,保存现场
判别中断源 转入中断服务程序 保护寄存器、开中断 执行中断服务程序
IRET
关中断 恢复现场,恢复断点
开中断
STOSW
;串存储(字)
;AX→ES∶[DI]、 [DI+1]
MOV AX,SEG_INTR
;中断服务程序段基址送AX
STOSW
;串存储(字)
STI
;开中断
精品资料
2.用 MOV将直接(zhíjiē)中断向量写入中断向量表中
;将中断向量直接(zhíjiē)写入中断向量表中的程序段为
第8章 几种典型的单片机
态锁存器将复用的地址与数据信号分离(见图8―7),这
样就可获得扩展外存与外设所需的全部总线信号。
第8章 几种典型的单片机
图8―7 8098系统总线形成电路
第8章 几种典型的单片机
4. 芯片配置寄存器CCR
为了使外接电路尽可能简化,8098提供了多种总 线控制方式与就绪控制方式,以便使用户可以有选择 地定义总线控制信号及选择插入总线周期中等待状态 周期数。这些方式的选择取决于CCR的设置。 CCR是1个独立于SFR的重要寄存器,它不能直接 寻址。当系统复位时,片内RAM2018H单元中的芯片 配置字节被自动送入到CCR中。CCR的数据格式如图
ROM/EPROM的8098、带8KB片内掩膜ROM的8398及 带8KB片内EPROM的8798。
1.内部结构
8098单片机内部结构如图8―1所示。它包含16位
CPU、片内8KBROM/EPROM(8398或8798)、高速输入
/输出(HSI/HSO)口、4个多用途I/O口、全双工串行口、 4路10位A/D转换器、脉宽调制(PWM)器、1个16位
第8章 几种典型的单片机
·P0口4位高输入阻抗端口,可作为数字量输入口(4
位 P0.4~P0.7) , 也 可 作 为 模 拟 量 输 入 口 (4 路 ACH4~ACH7)。无论用P0口作数字输入还是模拟输入, 都应通过VREF向P0口提供电源。 ·P2口4位多功能口,可作为数据输入/输出口(P2.0、 P2.1、P2.2、P2.5),还可用作其他控制(P2.0可用作串 口发送端TXD,P2.1可用作串口接收端RXD,P2.2可 用 作 外 中 断 输 入 端 EXTINT , P2.5 可 用 作 脉 宽 调 制
第8章 几种典型的单片机
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
8.3.2 8259A的中断工作过程
5)CPU(8086/8088和80X86)输出第二个INTA信号, 启动第二个中断响应周期。在此周期中,8259A 向数据总线输送一个8位的中断类型号(也叫指针 或向量号);CPU读取此类型号后将它乘以4(左移 2位),即可从中断服务程序向量表(即入口地址 表)中取出中断服务程序的入口地址,包括段地 址和段内偏移地址,据此CPU便可转入中断服务 程序。 6)如8259A工作在AEOI模式,则在第二个INTA脉 冲信号结束时,将使被响应的中断源在ISR中的 对应位清"0",否则,直至中断服务程序结束, 发出EOI命令才使ISR中的对应位清"0"。
D6
D5
D4
D3
D2 D1 D0
A15/T7 A14/T6 A13/T5 A12/T4 A11/T3 A10 A9 A8
8080/8085模式下
A15~A8中断向量地址
8086/8088模式下 T7~T3中断向量地址
8.3.3 8259A的应用编程
③写初始化命令字ICW3 目的:用于定义8259A 8根中断请求线上有无级 联8259A从片 若系统只有一片8259A,则不用ICW3,若有 多片8259A级联,则每一片8259A都必须使用ICW3, 且主、从片的ICW3格式不同。
1 M7 M6 M5 M4 M3 M2 M1 M0
1--IRQi线上有从片 0--IRQi线上无从片
8.3.3 8259A的应用编程
④写初始化命令字ICW4 目的:定义8259A工作时用8080/8085模式还是 8086/8088模式,以及中断服务程序是否要送出EOI 命令,以清除中断服务寄存器ISR,允许其他中断。 格式:
中断响应的一般过程
中断请求
中断源识别及中断判优 中断响应 中断处理(服务)
(保护现场;开中断;中断处理;关中断, 恢复现场;返回)
中断请求
NMI 外部非可屏蔽中断请求输入信号
INTR 外部可屏蔽中断请求输入信号
中断请求信号应保持到中断被处理为止; CPU响应中断后,中断请求信号应及时撤 销。
例:
中断向量表的初始化
MOV AX,0000H MOV DS,AX MOV SI,0120H(?) MOV BX,OFFSET TIMER MOV [SI],BX MOV BX,SEG TIMER MOV [SI+2],BX
§ 8.3 8259A可编程中断控制 器
内部结构与引脚功能
软件中断
非屏蔽中断
外部中断
可屏蔽中断ຫໍສະໝຸດ 086中断源类型:软件中断指令 n 2 NMI 4 3 中断逻辑
溢出中断
断点中断 除法错
非屏蔽中断请 求
中断控 制器 8259A PIC
0 1 INTR
单步中断 8086/8088CPU内部逻辑
可 屏 蔽 中 断 请 求
各类中断的优先级: 除法错误中断、INTn和INTO指令的优先级最高 其次为不可屏蔽中断NMI 再者为可屏蔽中断INTR 单步中断优先级最低
执行中断服务子程序 中断服务子程序的特点:
为“远过程” 用IRET指令返回
中断服务子程序完成的工作
关中断,保护现场,保护断点,找入口地 址 保护软件现场(参数) 开中断(STI) 中断处理 关中断(CLI) 恢复现场 中断返回
中断返回
执行IRET指令,使IP、CS和PSW从堆栈弹 出
ICW4 D7 D6 D5 D4 D3 D2 D1 D0 A0
1
0
0
0
SFNM BUF M/S AEOI PM 1--8086/8088 模式 0--8080/8085 模式
1--自动EOI 0--正常EOI
1--特殊全嵌套方式 0--一般全嵌套方式
0 × 非缓冲方式 1 0 缓冲方式/从控制器 1 1 缓冲方式/主控制器
ICW1 ICW2 ICW3 ICW4
初始化 命令寄 存器组
中断屏蔽寄存器(IMR) 内 部 总 线
OCW1 OCW2 OCW3
操作命令 寄存器组
8.3.1 8259A的内部结构与引脚功能
级联缓冲器/比较器有关引脚功能: SP/EN(从编程/使能缓冲线)--输入/输出线, 作输入用时,用于区别主从8259A芯片:主片使 SP=1;从片使SP=0。作输出用时,用于选通 8259A至CPU之间的数据总线缓冲器。 CAS0、CAS1、CAS2(级联线)--输入/输出线, 当8259A是主片时,CAS0~CAS2是输出线,在 CPU响应中断时用来输出级联选择代码,选出请 求中断的从片;当8259A为从片(SP=0) 时,CAS0~CAS2是输入线,接收主片送来的选择 代码。
8.3.3 8259A的应用编程
①写操作命令字OCW1 目的:用来设置/清除对中断源的屏蔽 格式:
A0
1
D7
D6
D5
M5
D4
D3 D2
M2
D1
M1
D0
M0
M7 M6
M4 M3
0--中断请求被开放 1--中断请求被屏蔽
8.3.3 8259A的应用编程
②写操作命令字OCW2 目的:设置中断优先级是否循环,循环的方式及 中断结束的方式 格式:
这项工作一定要在8259A 开始工作之前完成,用于建立 基本工作条件,写入后一般不 再改变。 对初始化编程要注意两点: 写ICW的流程必须按规
写ICW1 写ICW2 N 级联? Y 写ICW3 N 要ICW4? Y 写ICW4 初始化完成
定顺序写,不能颠倒。
各ICW的格式/功能
8.3.3 8259A的应用编程
LTIM A
中断向量地址,仅在 8080/8085模式下用 0--边沿触发 1--电位触发
8.3.3 8259A的应用编程
②初始化命令字ICW2 设定8080/8085模式系统的中断向量地址 高8位A15~A8或8086/8088模式系统的中断向 量号高5位T7~T3 格式:
A0 1 ICW2
D7
中断工作过程
应用编程
8.3.1 8259A的内部结构与引脚功能
D7~D0 数据总线 缓冲器 RD WR A0 CS CAS0 CAS1 CAS2 SP/EN
INTA INT
控制逻辑
读写电路
级联缓冲器/ 比较器
中断 服务 寄存 器 (ISR)
优先 级分 析器
中断 请求 寄存 器 (IRR)
IR0 IR1 IR2 • • • IR7
8.3.2 8259A的中断工作过程
8259A进入工作状态的先决条件是必须按要求 对其初始化,使其处于准备就绪状态。
8259A对外部中断请求的响应和处理过程如下: 1)当中断请求输入线IR0~IR7中有一条或多条变高时, 则中断请求寄存器IRR的相应位置"1"。 2)若中断请求线中至少有一条是中断允许的,则8259A由 INT引脚向CPU发出中断请求信号。 3)如CPU是处于开中断状态,则在当前指令执行完后,用 INTA信号作为响应。 4)8259A在接收到CPU的INTA信号后,使最高优先级的ISR 位置“1”,而相应的IRR位清“0”,但在该中断响应周期 中,8259A并不向系统总线送任何内容。
内存 中断类 型号n 0000:4n+0 0000:4n+1 0000:4n+2 0000:4n+3 00 10 00 20 IP 1000 2000 CS
×4
中断向量表的初始化
将用户自定义的中断服务程序入口地址放入 向量表 注意点:
向量表所在的段地址=0 存放子程序入口的单元的偏移地址=n×4 将中断向量码为48H的服务程序入口地址放入向 量表
8.3.3 8259A的应用编程
2.操作方式编程
---有选择地写操作命令字OCW1~OCW3到操作命 令寄存器组 这项工作可在8259A已经初始化后的任何时 候进行,目的是对中断处理过程实现动态控制。
如果不写操作命令字,8259A就按初始化编 程所设置好的方式和模式工作,工作于IR0优先 级最高,从IR0~IR7优先级依次降低的固定优 先级的全嵌套工作方式。 如需改变初始化时设置的中断控制方式,或 屏蔽某些中断级,读出一些状态信息,就必须在 8259A进入工作之前或工作过程中酌情写入操作 命令字OCW。
中断源
引起CPU中断的事件,发出中断请求的来 源。
异常中断 内部中断
异常事件引起 中断指令引起
INTR中断 NMI中断
软件中断
可屏蔽中断 外部中断 非屏蔽中断
中断类型号:中断源的编号 中断断点:由于中断而没执行的那条指令 中断服务程序:处理中断事件的程序段 中断系统:硬件与软件的集合
软件判优
顺序查询中断请求,先查询的先服务
即先查询的优先级别高
硬件判优
链式判优、并行判优(中断向量法)
中断响应
向中断源发出INTA中断响应信号; 关中断 保护硬件现场
将PSW压入堆栈
保护断点
将CS、IP压入堆栈
由 硬 件 系 统 完 成
获得中断服务程序入口地址
中断处理
恢复断点和硬件现场
中断处理过程流程
中断请求 开中断
识别中断源
执行中断服务程序
关中断
关中断
保护硬件现场
恢复软件现场
保护断点
恢复断点
确定中断服务 程序入口地址
恢复硬件现场
开中断 保护软件现场 中断返回
§ 8.2 8086中断系统