
8259a-中文说明书.doc
12页8259A中文说明书intel 8259a 可编程中断控制器在能力与知识结构方面,要求学生应具有扎实的专业和日语语言基础,熟练掌握日语听、说、读、写、译的基本技能;了解日本社会及日本文化等方面的基本知识,熟悉日本国情,具有一定的日本人文知识及运用这些知识与日本人进行交流的能力●8086,8088兼容●MCS-80,MCS-85兼容●8位优先级控制●可扩展至64级●可编辑中断模式●独立中断请求屏蔽功能●单电源+5v,无时钟●28脚DIP或PLCC封装●高速-标准温度范围 -扩展温度范围intel 8259a 可编程中断控制器可以为CPU处理8位优先级中断,而且,无须额外电路即可级联扩展至64位优先级中断处理28脚DIP封装,使用NMOS技术,电路是静态的,无须时钟信号输入8259a被设计用来减少软件和实时处理的多级优先级中断它有多种模式,满足系统的多种需要的最佳化8259a全面向上兼容intel8259原先为8259所写的软件,可以使用8259a代替(MCS-80.85,无缓冲边沿触发)图一.模块框图图二管脚配置表一管脚描述符号管脚号类型名字和功能VCC28I电源:+5VGND14I地CS1I芯片使能:低电压时,允许CPU与8259a之间/RD、/WR的通信。
但INTA功能与它独立WR2I写:低电压且CS亦为低电压时,8259a接受来自CPU的命令字RD3I读:它与CS皆为低电压时,允许8259a将状态通过数据总线发到CPUD7-D04-11I/O双向数据总线:控制,状态和中断向量信息通过此传输CAS0-CAS212,13,15I/O级联线:CAS线组成8259a的私有总线以控制多8259a架构对主片为输出,对从片为输入SP/EN16I/O从编程/缓冲器允许信号:这是一个双功能管脚当缓冲模式时,它可作为输出到缓冲接收器(EN)当非缓冲模式,作为输入以指定是否是主/从片(SP=1时主片)INT17O中断:当一个有效的中断请求判定出时,该管脚变为高电平;用于给cpu中断IR0-IR718-25I中断请求:异步输入当如下情况时,被判定为中断请求:出现上升沿电压且保持高电压直至被识别(边沿触发模式),或者高电平触发INTA26I中断响应:用于允许8259a中断向量数据传输到数据总线,由其定序A027IA0地址线:与/CS,/WR,/RD配合使用用于解析来自cpu的不同信息和cpu想要读出的状态一般与a0线相接(8086时A1)功能说明书微机系统上的中断微机系统设计需要I/O设备,诸如键盘,显示器,传感器,和其他部件,并且以一种有效的方式接受I/O设备的服务,这样在整个过程中,微机才可以承担大量的系统任务而无所影响。
最常用的使用这些设备的方法是检测法此即处理器必需以一定次序检测每一个设备,并且询问它需要服务的每一个设备显而易见,主程序的很大一部分被这些持续的检测循环所占据,而且这种方法对系统有着严重的影响,限制了微机能够成带的任务,减少了使用这些设备的性价比一个更好的方法是,能够允许微处理器执行主程序并且只有当周边设备请求时才停下来去处理(周边设备的请求)确实,这种方法将提供一个外部的异步输入,以通知处理器结束当前正被执行的指令,取得服务请求设备的子程序一旦这个服务结束,处理器将重新继续放下的任务这种方法叫做中断显然,系统效能大大增加,这样处理器可以承担更多的任务,进一步的提高其性价比可编程中断控制器(PIC)功能上是中断驱动系统环境下的总管家,决定那一个输入优先级最高,确定输入请求是否拥有比当前服务级别更高的优先级,并且将决定出的中断通知cpu每一个周边设备或者架构通常都有一个与其特殊功能或工作要求相关联的程序,他被称为服务程序PIC给CPU中断后,必须输入给CPU信息,以指出程序响应与请求设备相关的服务程序这个指针是一个位表地址,并会被经常访问8259a8259a是一个专门用在实时中断驱动的微机系统。
它管理8级优先级或中断请求并可与其他8259a芯片级联(可达64级)它被系统软件当做周边I/O设备来操作编程者可以选择8259a的工作方式,以满足系统需要优先级模式可以在主程序之间随时更改这意味着整个中断结构可以根据系统需要而定义中断请求寄存器(IRR)和中断服务寄存器(ISR)输入的中断由两个级联的寄存器IRR、ISR处理IRR用来储存所有请求的中断,ISR用来储存所有正在服务的中断请求优先权裁决器(PR)该逻辑模块决定IRR各位的优先级最高优先级的中断请求被选取并在/INTA脉冲期间映射到ISR的相应位中断屏蔽寄存器(IMR)IMR储存需要屏蔽的位IMR操作IRR屏蔽高优先级输入并不影响低优先级INT:它直接输出到CPU中断输入端 Voh完全兼容8080a,8085a和8086输入电平/INTA(中断响应)/INTA脉冲将引起8259a向数据总线释放位信息数据格式取决于8259a的系统模式(uPM)数据总线缓冲器这是一个三态双向8位缓冲器,是8259a与系统数据总线之间的接口控制字和状态信息通过它来传输读写控制逻辑本模块的功能是接受CPU的输出命令它包括初始化命令字(ICW)寄存器和操作命令字(OCW)寄存器,储存着多种设备操作的控制格式。
该功能模块也可以允许将8259a的状态传送到数据总线/CS低电压有效否则,不允许读写芯片操作/WR低电压有效,允许向8259a写入ICWs AND OCWs/RD低电压有效,发送IRR ISR IMR 或者中断号到数据总线A0这个输入信号与/WR /RD 信号关联,以写入命令给不同的命令寄存器、以及读取不同状态寄存器,可以直接与地址总线的某根相连级联缓冲器/比较器该功能模块存储和比较系统中所有8259a的ID相关的三根I/O管脚(CAS0-2),当8259a是主片时,作为输出;当8259a是从片时,作为输入作为主片时,8249a发送请求中断的从片ID到CAS0-2上这样选中的从片,将在下一个或两个连续的/INTA脉冲中,发送预先编辑好的子程序的地址到数据总线上(详见“8259a的级联”部分)中断流程在微机系统中,8259a最强大的的特征是可编程性和中断程序地址功能后者允许直接或间接跳转到相应中断服务程序,而无须检测设备中断事件的一般流程取决与所用CPU的类型当为MCS-80/85系统时:1.有一个或多个中断请求,IRR相应位置位2.8259a处理这些请求,并向CPU发送中断请求INT3.CPU识别INT信号,并发出响应脉冲/INTA。
4.根据来自CPU的/INTA信号,置位最高优先级的ISR位,并将相应的IRR位复位8259a也会通过D7-0向8位数据总线释放一个CALL指令代码()5.这个CALL指令将会引起使cpu向8259发送另外两个/INTA脉冲6.这两个/INTA脉冲允许8259a释放它的预编辑程序地址到数据总线上低八位地址在第一个/INTA脉冲发送,高八位地址在第二个/INTA脉冲发送7.这个由8259a释放3字节CALL指令完成在自动中断结束模式(AEOI)时,在第三个/INTA脉冲的末尾,ISR位复位;否则,ISR位将保持“1”直到终端流程最后处理相应EOI命令在8086系统中,在第四步之前,终端流程是一样的4.根据来自CPU的/INTA信号,最高优先级的ISR位置位,并且相应的IRR位复位在此脉冲期间内,8259a并不驱动数据总线5.8086发送第二个/INTA脉冲在此期间,8259a向数据总线释放一个供CPU读取的八位指针6这样就结束了中断周期AEOI模式时,在第二个/INTA脉冲结束时,ISR位复位否则,ISR位将保持“1”直到在程序结尾相应的EOI命令被处理如果到第四步时没有中断请求(换言之,中断请求持续时间太短),8259a将处理中断级别7.向量字节和CAS线将看起来像是中断输入端7请求中断。
当8259a PIC接收到中断信号时,INT管脚激活并且开始响应周期如果一个更高优先级的中断在这两个/INTA周期内发生,INT管脚在第二个/IINTA脉冲后立即失效(变为低电平)再过一段不定时间后,INT管脚重新激活以识别等待服务的更高级别的中断请求沉寂时间(inactive time)不是固定的,且在一个区间内变动设计人员在使用8259a时,应当考虑这点鉴于此,我们推荐设计相应的异步技术中断流程输出MCS-80,MCS-85该序列由三个/INTA脉冲定时在第一个/INTA脉冲时,CALL代码被放到数据总线上表2.第一个中断向量内容CALL代码 在第二个/INTA脉冲时,相应服务程序的低位地址放到数据总线上当interval=4位时,A5-A7是可编辑的,A0-A4是由8259a自动插入当interval=8,只有A6和A7可编辑,A0-A5自动插入表3.第二个中断向量内容IRInterval=4Interval=8 D7 D6 D5 D4 D3 D2 D1 D0 D7 D6 D5 D4 D3 D2 D1 D07A7 A6 A5 1 1 1 0 0A7 A6 1 1 1 0 0 06A7 A6 A5 1 1 0 0 0A7 A6 1 1 0 0 0 05A7 A6 A5 1 0 1 0 0A7 A6 1 0 1 0 0 04A7 A6 A5 1 0 0 0 0A7 A6 1 0 0 0 0 03A7 A6 A5 0 1 1 0 0A7 A6 0 1 1 0 0 02A7 A6 A5 0 1 0 0 0A7 A6 0 1 0 0 0 01A7 A6 A5 0 0 1 0 0A7 A6 0 0 1 0 0 00A7 A6 A5 0 0 0 0 0A7 A6 0 0 0 0 0 0 在/INTA脉冲期间,预先编辑好的子程序的高位地址,作为初始化次流程的字节2(A8-A15),被释放到总线上。
中断向量的第三个字节内容如下表示:D7D6D5D4D3D2D1D0A15A14A13A12A11A10A9A8 8086,80888086模式与MCS-80模式相似,除了只有两个由处理器完成的中断响应周期,并且没有CALL操作码被送到处理器第一个中断响应周期与mcs-80,85系统相似,都是在内部冻结中断状态以等待优先级处理作为主片,8259处理在此脉冲结束时,处理级联线上的中断编码在第一个周期,他不处理任何数据给处理器,且此时的数据总线缓冲器是禁用的在8086模式下的第二个中断响应周期,主片(或设定的从片)将发送给处理器一个字节大小的中断号,它的编码如下图(注意ADI模式控制被忽略,8086模式下A5-A11不用)D7D6D5D4D3D2D1D0IR7T7T6T5T4T3111IR6T7T6T5T4T3110IR5T7T6T5T4T3101IR4T7T6T5T4T3100IR3T7。
