中断接口器件功能演示的可视化设计
摘 要
中断是计算机系统中十分重要的一种机制。它是解决外部设备和系统连接的很好途径,有效地实现了外部设备与CPU的并行工作。在实际应用中,除了要考虑如何对中断控制器编程进行的问题,还要对采用中断方式进行I/O控制的接口电路进行设计。中断是一种信号,它告诉微处理器已发生了某种需要特别注意的事件,需要去处理或为其服务。在本课题中我们深刻的了解到了8259A的工作方式,工作原理和工作状况;同时知道了中断存在的重要意义,中断通俗的理解可以认为是“异常”,在有异常发生的情况下产生的情况,在两件摆在眼前的事物中选择更需要立刻执行响应的程序,即是在中断中所说的优先级。我们运用编程技术,将8259A芯片仿真式的展现出来,用C++结合程序结构,编程演示其内部的工作机理。利用程序的设计,将芯片的工作原理通过实验平台给大家一个直观的演示,以便对中断的概念理解得更透彻。http://www.16sheji8.cn/
关键词:8259A;优先级;状态机;可视化;仿真
The Design of Interrupt Controller Functional Demo of Visual Design
Abstract
The interruption is a important function in each computer system. Interruption is the solution of external equipment and systems is a good way to connect, it availably carried out exterior equipments and proceed together of CPU a work.In physically appliedly, in addition to want to consider how to break off a controller plait the distance carry on of problem, also want to break off a way to carry on I/O to control to the adoption of connect a people's electric circuit to carry on a design.The interruption is a kind of signal, it tells that the microprocessor has already taken place a certain demand specially notices of affairs, need a whereabouts reason or contribute efforts to it.We deeply understood the work method with 8259A in this topic, work principle and work condition;Knew to break off existent important meaning in the meantime, break off the popular comprehension can think to be a "abnormality", under the sistuation that have excrescent occurrence output circumstance, at two procedures which put in the at present thing to win election to choose to even need to immediately carry out to respond to, is in the interruption say of have the initiative class.Our usage weaves a distance technique, 8259A the chip imitate the display of true type to come out and use C++combine procedure structure, weave a distance to play to show it inner part of work mechanism.Make use of the design of procedure, pass the work principle of chip experiment terrace to everyone's a consciousness which keeps a view, make everyone to understand the mean of interruption more very clear..http://www.16sheji8.cn/
Key words: 8259A;priority; state machine;visual; emulation
目 录
论文总页数:29页
1 引言 1
1.1 实验台的现状说明和设计目标 1
1.2 8259A的外部引脚图 2
1.3 8259A的内部结构 4
1.4 中断优先级分析器的工作原理 5
1.5 8259A的工作原理 6
1.6 该课题的主要研究方向和研究方法 7
2 对该课题的部分概念的重点说明 7
2.1 可视化的理解说明 7
2.2 访真式编程的理解说明 9
2.3 状态机的理解说明 9
2.4 CPU与8259A之间的转换方式 10
3 代码的编写工作以及说明 11
3.1 对代码的初步设计工作 11
3.2 对基类和派生类的主要函数的解释说明 12
3.2.1 对基类中部分函数的解说 12
3.2.2 对派生类中部分函数的解说 13http://www.16sheji8.cn/
3.3 对各器件的初始化编程 14
3.4 对部分代码的说明 19
3.4.1 固定值的定义方式 20
3.4.2 与CPU之间的连接线定义方式 21
3.4.3 判断优先级的引脚设定 22
3.4.5 读写信号的设定 24
3.5 实现中断要求的程序解说 24
4 测试结果与工作总结 25
结 论 26
参 考 文 献 27
致 谢 28http://www.16sheji8.cn/
声 明 29
1 引言
1.1 实验台的现状说明和设计目标
现今社会,计算机越来越普及,我们只知道计算机的外部结构和某部分软件是远远不够的,至少我们要对和我们日常生活打交道的朋友的一些重要内部情况。计算机有着许多的寄存器、接口器件、分析器等等。其中中断接口是特别重要的一个概念。每敲击一次键盘都相当于一次中断信号。而主管这个中断信号的就是计算机中的8259芯片。它最突出的特别是具有对中断服务程序入口地址的寻址能力,也就是当CPU响应中断申请后,通过8259A提供的中断类型号可以找到中断服务程序的入口地址,转移到中断服务程序去执行。我们只有对8259A了解后才能进一步了解计算机系统。http://www.16sheji8.cn/
而我们在最开始了解到的计算机系统中只是知道可一些表面上的东西,实质上计算机是如何工作、我们为什么能通过键盘向计算机发出命令、打印机是怎么打印文件的等都不明白,通过这个仿真式的实验我们对计算机的内部系统等做个详细的剖析。键盘上的每一次击打键入都相当于一次信号的发出,对于计算机来说这每击一键都发出了一个中断信号,告诉CPU有“键盘输入”事件发生,要求CPU读入该键的键值;而打印每一个字符也是一次中断的过程。这些都需要中断控制器8259A协助CPU进行中断处理和完成工作的。中断方法是解决外部设备和系统连接的很好途径,它有效地实现了外部设备与CPU的并行工作。在实际应用中,除了要考虑如何对中断控制器编程进行的问题,还要对采用中断方式进行I/O控制的接口电路进行设计。
目前仿真式成为计算机实验的一个发展方向,因为它不需要硬件平台,避免了器件的磨损和开销,同时没有实验环境的时空限制,使演示更加生动,以便更好理解电路运行原理。
我们采用实验台这个平台将程序的运行状况直观的展现出来,实验台的设计是通过纯软件的形式模仿硬件接口实验台的逻辑功能,而软件模仿结果与真实硬件实验台的结果是一致的,形象的显示出实验的过程与结果。它分为器件和连线两个部分:对于器件,先是设计一个器件基类,然后由他派生出许多不同的器件类;对于连线,每一个连线可能有很多分支,程序中我们用树的结构表示。同时,我们用测试程序来作为该器件的电路上层程序。来管理器件和连线。在设计中,信号在连线上流动。我们的程序中对连线森林中对应的连线树进行遍历来实现信号流动的动态显示,当遍历到树的节点时,则是一个器件的引脚。我们得到器件对象,然后调用该对象的器件基类的虚函数。对应器件类的这个函数可以实现对该信号的逻辑处理。http://www.16sheji8.cn/
我们需要对目前的这个实验台进行改进,在执行显示器件的条件下,能同时将该器件的内部逻辑框图展现出来,基本完全实现了上层电路层,基本实现四个常用的大规模集成接口器件的内部逻辑并能够灵活设置电路图,模仿正确及错误的结果。在8259A芯片中,我们通过OutSig函数对该器件的引脚和其得到的输入信号值来确定在某个时候该器件的哪个引脚得到什么信号,而对此信号做出怎样的响应。这样真正的将8259A的仿真式编程所得到的器件直观的展现出来,得到可视化的视图。
1.2 8259A的外部引脚图
8259A为28脚双列直插式芯片,可分为三组。
⑴. 面向CPU的信号线:数据线(D0-D7)、地址线(CS、A0)和控制线(WR、RD、INT、INTA);
⑵.面向I/O设备的信号线:中断请求线(UR0-IR7);
⑶.面向同类芯片的信号线:级联控制线(SP/EN、CAS0-CAS2)。
8259A有下列工作特点:
1、1片8259A能管理8级中断,并且,在基本不增加其他电路的情况下,可以用9片8259A来构成64级的主从式中断系统。http://www.16sheji8.cn/
2、由于8259A是可编程的,所以使用起来非常灵活。实际系统中,可以通过编程使8259A工作在多种不同的方式。
3、8259A用NMOS工艺制造,只需要一组5V电源。
8259A具有以下主要功能:
①具有8级优先权控制,通过级联可扩展至64级优先权控制;
②每一级中断都可以屏蔽或允许;
③在中断响应周期,8259A可提供相应的中断向量,从而能迅速转入中断服务程序;
④8259A有几种中断管理模式,可以通过编程进行选择。
其外部引脚图如1-1所示。http://www.16sheji8.cn/