多级嵌套的中断试验

上传人:汽*** 文档编号:498190892 上传时间:2023-03-16 格式:DOCX 页数:6 大小:75.11KB
返回 下载 相关 举报
多级嵌套的中断试验_第1页
第1页 / 共6页
多级嵌套的中断试验_第2页
第2页 / 共6页
多级嵌套的中断试验_第3页
第3页 / 共6页
多级嵌套的中断试验_第4页
第4页 / 共6页
多级嵌套的中断试验_第5页
第5页 / 共6页
点击查看更多>>
资源描述

《多级嵌套的中断试验》由会员分享,可在线阅读,更多相关《多级嵌套的中断试验(6页珍藏版)》请在金锄头文库上搜索。

1、一实验目的(1)掌握中断在计算机系统中的作用;(2)了解可以响应中断请求的条件和时刻,响应中断的过程和实现方案;理 解使用中断隐指令的必要性;(3)了解中断处理的完整过程,开中断,关中断操作的作用,保存现场信息 和恢复现场信息必须确保完整完成的含义和可行措施;(4)掌握确定中断向量,设计中断处理程序的操作步骤和实现方法; 二实验原理1.1 中断电路TH-union 教学机中断电路的总体组成,如下图所示:图中 IRQ0IRQ2 是 3 个中断请求源信号,分别对应实验箱上的三个中断请求 按钮,实验时,按下某个按钮表示发出相应的中断请求信号。这三级中断的 优先次序从低到高为 IRQ0 到 IRQ2。

2、1.2 中断处理在教学机中的具体实现教学机的中断线路主要包括2片GAL、3个无锁按键、2片74LS374和若 干插针。下面分别对这几部分进行简要介绍。(1)3 个无锁按键,提供中断请求的源信号 教学机支持3级中断发,这3 个无锁按键作为3个中断源,从右到左依次为一、二、三级中断,对应的中断优先级编码Pl、P0依次为01、10、11,优先级 也依次升高。这3个无锁按键的引脚作为INTS GAL和INTP GAL的输入。(2)INTS GAL,接受并记忆通过无锁按键给出的中断请求源信号该芯片的输入信号除了 3个无锁按键的 6个引脚外,还有控制信号 DC23、 /GIR及系统时钟CK1。输出信号只有

3、3个分别表示取指时3个无锁按键是否被 按下,如果被按下,则相应的输出信号为高电平,否则为低电平。这3个输出信 号被送至INTP GAL。该芯片实现的功能是,在每次取指前一拍(用DC2-3=1指示),将3个输出 信号全部置零;在每次取指时(/GIR信号指示),都检测是否有中断请求(即是 否有无锁按键被下),并用这3个输出引脚表示;在取指后以及整个指令执行过 程中,这3个输出信号都将保持不变。(3)INTP GAL,在条件成立时,向CPU发出中断请求信号/INT (低电平 有效)该芯片实现的功能是 :1)对INTS GAL送来的3个信号进行中断优先级编码,得到新请求的中断 优先级,并与当前中断优先

4、级P1、P0比较;2)设置中断允许位INTE,该信号高电平表示允许中断,低电平表示禁止中 断。当控制信号DC12DC10=110时,INTE被置为1; DC12DC10=111 时,INTE被置为0。3)产生中断请求信号/INT,该信号低电平表示有(更高优先级)中断请求 需要响应。在中断允许位INTE=1时,如果新的中断优先级比当前中断优先级高,则给出中 断请求信号/INT=0,否则/INT=1。P1、P0也是状态寄存器的2个输入信号,可随同状态标志(C、Z、V、S) 压入/弹出栈。P1、P0也是INTVTL74LS374的2个输入信号,用来形成当前中断优先级在中 断向量表中的首地址。4)通过

5、中断向量寄存器INTVTH 74LS374、INTVTL 74LS374硬性设置的 中断向量分别为16进制的2104、2108和210C,对应的中断优先级分别是1、2、 3。三实验内容及步骤1. 实验内容(1)读懂教材中有关中断的概念,中断响应和中断处理的内容,了解这些功 能在教学计算机中是如何实现的;(2)如果所用的教学计算机的基本指令集合中尚未实现中断隐指令,与处理 中断有关的 EI,DI 和 IRET 三条指令,则需要首先实现中断隐指令和扩 展这三条指令;如果在基本指令集中已经实现了上述内容,则直接跳过 这一实验步骤。(3)确定中断向量表地址。这个向量表是以 XXX4 为首地址的一段内存

6、区(为每一个中断保留4个字的空间),用于存放对应每一个中断源的中 断处理程序的首地址,要在中断隐指令中把这里的选定的一个地址传送 到程序计数器 PC 中,之后就进入响应中断处理程序的执行过程。常用 的可行方案是在这里保存一条转移指令,实现依据不同的中断源转移到 不同的中断处理程序。教学机设置了3个中断源并为每个中断源分配了 不同的优先级,则3个终端程序入口地址分别为16进制的XXX4,XXX8 和 XXXC。(4)设计对应每一个中断的处理程序,例如显示对应各自中断优先级的一个 数字符,重复显示 80 或 160 次。设计一个死循环程序并执行,例如反复先是大写字母M。在这个程序运行过程 中,通过

7、按用作为中断请求源的3个不同按钮,则屏幕上会显示不同的字符序列, 可以清楚的看到中断嵌套的运行情况。2、实验步骤(1)填写中断向量表TH-union教学机3级中断的中断向量为2104H、2108H、210CH,填写中断表的步骤如下:A2104JR 2120A2108JR 2130A210CJR 2140(2)编写中断服务程序A2420PUSHR0PUSHR3MVRDR3, 31JR 2450A2430PUSHR0PUSHR3MVRDR3, 32JR 2450A2440PUSH R0PUSH R3MVRD R3, 33JR 2450A2450EIMVRD R0 ,0042CALA2200MVRD

8、R0 ,0049CALA2200MVRRR0 , R3CALA2200IN 81SHRR0SHRR0JRNC245CIN 80MVRDR0 , 0045CALA2200MVRDR0 , 0049CALA2200MVRRR0 , R3CALA2200POPR3POPR0IRETA2200PUSHR0IN 81SHR R0JRNC 2201POP R0OUT 80RET注:各中断服务程序中,EI与IRET为扩展指令,不可用A命令输入,只能用E 命令输入其机器码,即在输入中断服务程序时,遇到EI与IRET命令使,略过不 输入,在程序输入结束后,再执行如下命令:E21506E00E216EEF00(3

9、)编写主程序A2000EIMVRDR0, 0036CALA2200MVRDR0, 4000DECR0JRNZ2007JR 2001RET注:主程序中的 EI 指令的处理方法如上。(4)运行主程序:在命令行提示符状态下输入:G2000屏幕将连续显示“6”。在程序执行过程中按下教学机右下放任意一个无 锁按键。此时,教学机转向执行本级中断服务程序,在屏幕上显示 BI 以及 按下的键对应的中断优先级。在按收键盘一个字符后,显示该字符并退出当 前级的中断服务程序,恢复中断现场,接着执行断点处的程序。若在接受字 符前,又有更高一级的中断请求,则教学机转向执行高一级的中断服务程序 执行完后接着执行低级中断,然后退出执行主程序。需要注意的是若当前中 断为高级的中断,则不会响应低级中断。指导教师签字:年月日

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 学术论文 > 其它学术论文

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号