




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第八章集成可编程中断控制器(IPIC)本章介绍集成可编程中断控制器(IPIC),包括外部信号的定义及其功能。此外,本章 还介绍配置、控制和状态寄存器。注意,本参考手册的每一章都介绍了一个部件的特定的具 体的初始化过程。8.1 绪论本节介绍IPIC中断协议、IPIC单元控制的不同类型的中断源、以及IPIC寄存器及其编程指南。编程模型与 MPC8260的中断控制相似。中断控制器提供中断管理,负责接收来自 不同中断源(内部的和外部的)的硬件产生的中断。它还将中断分为不同的优先级,并将中断交付给CPU,由CPU服务。IPIC区分来自下列控制单元的中断的优先级并管理这些中断:DDR存贮器控制器(DDR)
2、本地总线内存控制器(LBC)PCI1 和 PCI2四通道DMA控制器(DMA)消息单元(MU )双三态Ethernet控制器(TSEC1和TSEC2)DUART通信模块(DUART)USB 2.0 控制器(USB DR 和 USB MPH)安全引擎(SEC)系统总线仲裁器(SBA)周期间隔定时器(PIT)实时时钟定时器(RTC ALR和RTC SEC)八个全局定时器(GTM1 GTM8 )软件看门狗定时器(WDT )2I C控制器(I2C1和I2C2)SPI控制器(SPI)电源管理控制器(PMC)两个通用I/O控制器(GPIO1和GPIO2)外部引脚(/IRQ0:7)IPIC单元控制的中断源引
3、起处理器核内部的异常。内部中断(/int)信号是从IPIC到核的主要中断输出信号,它引起常规中断异常。/cint是从IPIC到处理器核的紧急中断输出信号,它引起紧急中断异常。/smi信号是从IPIC到处理器核的系统管理中断输出信号,它引起系统管理中断异常。 机器检查异常由IPIC产生的内部/mcp引起,通知主处理器出现错误、 外部/IRQ0机器检查请求有效(在 SEMSRSIRQO = 1时允许)、以及其他情况。表8-1列出了各种功能部件和设备的外部信号与IPIC单元的关系。IPIC接收来自下列两个地方的中断请求信号:该集成设备的外部该集成设备的内部该单元从当前所有的中断中选择最高优先级的中断
4、,并将它交给内部处理器核,或片外,在外部服务中断。IPIC还管理内部不可屏蔽机器检查处理器(/mcp )信号和片外中断源产生的中断(/IRQ0:7)。IPIC的中断发送程序监控内部配置寄存器的输出。若某个收到的中断信号的优先级最高,IPIC就将某个中断未决寄存器中的对应位置位一一系统内部中断未决寄存器(SIPNR)/系统外部中断未决寄存器(SEPNR)。如果该中断未被屏蔽,IPIC就宣告/int信号有效,向 处理器指示中断请求。若处理器正在运行特定/int、/cint或/smi的中断处理程序代码,则处理器必须通过显式(用软件)读取相应的中断向量寄存器(SIVCR、SCVCR或SMVCR),将外
5、部中断处理程序向量化。读取后,IPIC单元将向量(与中断源相关)返回给中断处理程序例程。此外,处理程序可以将不同分支的中断处理向量化图8-1 中断源结构图IPIC可以接收来自下列不同中断域的中断:8个外部一一片外信号(/IRQ0:7)35个内部片上中断信号。中断源为DDR MEMC、LB、PCI1、PCI2、DMA、MU、2TSEC1、TSEC2、DUART、USB、SEC、系统总线仲裁器、PIT、RTC、GTM、I C1、2I C2、SPI、GPI01、GPIO2 和 PMC1个外部和5个内部一一片上/mcp中断信号。中断源为 /IRQ0、软件看门狗定时器(WDT )、PCI1、PCI2、M
6、U和系统总线仲裁器(SBA)中断控制器提供了屏蔽每个中断源的能力,还可以屏蔽GPIO、SEC或SBA外围事件中的多个事件。当收到一个内部或外部中断时,IPIC检查其配置寄存器,确定应将中断发送到片外(到外部/INTA),还是作为正常外部中断由处理器核服务(通过 /int信号)。第三种方法是,女口 果进来的中断已经被配置为紧急中断或系统管理中断,IPIC就向核宣告/cint或/smi有效,完成该中断的处理。至U核的/cint或/smi信号有效会把中断分别作为紧急或系统管理中断来服 务。8.2 特性IPIC单元实现了下列特性:与MPC8260中断控制器在功能和编程方面兼容支持8个外部和35个内部离
7、散向量化中断源支持1外部个和5个内部/mcp中断源可编程最高优先级请求(可被编程,以支持紧急( /cint)或系统管理(/smi)中断) 两个可编程优先级混合组,每组4个片上和4个外部中断信号,两种优先级方案:分组的(grouped)和分散的(spread)两个可编程优先级内部组,每组8个片上中断信号,两种优先级方案:分组的(grouped)和分散的(spread)每组可以安排两个最高优先级的中断,以支持紧急或系统管理中断类型夕卜部和内部中断可以定向到主处理器每个中断源的向量号唯一8.3 操作模式IPIC单元可以运行在核允许模式或核禁止模式。8.3.1 核允许模式在核允许模式中,所有的内部中断
8、(包括来自PCI1和PCI2部件的那些中断)都被送到IPIC,或源自IPIC,将中断发送给 PowerPC核。DMA控制器可以随意(根据 DMA寄存 器的设计)将其中断通过 INTA信号送给PCI主机。在该模式中,IPIC搜集所有的机器检查中断,并将它们发送给PowerPC核。如果设备作为PCI主机操作,那么应将其他PCI代理(age nt)的中断连接到实现(设备)的 /IRQ信号,并将它们当作正常外部中断对待(发送给核)。8.3.2 核禁止模式在核禁止模式中,所有的内部中断(包括来自PCI1和PCI2部件的那些中断)都被送到IPIC,或源自IPIC,然后将中断通过/INTA信号发送给PCI主
9、机的CPU。注意,核中断 信号被屏蔽。在该模式中,用户应仅使用 /int输出中断类型(不能使用/cint或/smi输出中断 类型)读取更新了的SIVCR。(参见8.5.7节“系统内部中断控制寄存器 (SICNR) ”和8.5.12 节“系统外部中断控制寄存器( SECNR) ”。)在该模式中,在 /INTA 上或/MCP_OUT 上驱动的机器检查中断是电平敏感中断。 SERCRMCPR(见8.5.15节“系统错误控制寄存器(SERCR)”)控制使用哪个外部信号。8.4 外部信号说明下面几节概述并详细说明了IPIC信号8.4.1 概述该设备有8个不同的外部中断请求输入信号(/IRQ0:7)和一个
10、中断请求输出信号(/INTA )。IPIC接口信号在表 8-1中定义。表8-1 IPIC信号属性名字端口功能I/O复位需要上拉/IRQ0:7/IRQ0:7外部中断I一是/INTA/INTA中断请求输出OZ是/MCP OUT/MCP OUT中断请求输出OZ是8.4.2 详细信号说明表8-2提供了外部IPIC信号的详细说明表8-2 IPIC外部一一详细信号说明信号I/O说明/IRQ0:7I中断请求0 7。每一个信号的检测(电平或边沿)都是可编程的。 所有这些输入都可以被完全异步驱动。状态含义有效一一当外部中断请求信号有效时(根据规定 的极性),IPIC单元检查优先级,有条件地将中断 传给处理器。无
11、效一一没有来自那个源的中断。时序有效可以被完全异步地旦告所有输入有效。无效一一规定为电平敏感的中断在被服务之前必 须保持有效。/INTAOD中断请求输出。低有效,开漏极。若将IPIC设置为核禁止模式,则该输出反映的是片上中断源产生的原始中断。细节参见8.3节“操作模式”。状态含义有效当前正在向外部系统报告至少一个中断。无效一一指示当前没有发向 /IRQ OUT的中断源。时序因为外部中断是异步的,不考虑系统时钟,所以 /IRQ_OUT的有效和无效可以异步出现,与中断 源无关。这里给出的所有时序都是近似的。有效内部中断源:中断发生后的3个系统总线时钟周期。外部中断源:中断发生后的4个周期。无效一一
12、中断源无效后,后面跟下列延迟:内部中断源:3个系统总线时钟周期。 外部中断源:4 个周期。/MCP_OUTOD不可屏蔽中断请求(机器检查)输出。低有效,开漏极。若将IPIC设置为核禁止模式, 则该输出反映的是片上中断源产生的 /mcp中断。 细节参见8.3节“操作模式”。状态含义有效一一当前正在向外部系统报告至少一个机器 检查中断。无效一一指示当前没有发向/MCP_OUT的中断源。时序因为外部中断是异步的,不考虑系统时钟,所以 /MCP_OUT的有效和无效可以异步出现,与中断 源无关。这里给出的所有定时时间都是近似的。 有效内部中断源:中断发生后的2个系统总线时钟周期。外部中断源:中断发生后的
13、4个周期。无效一一中断源无效后,后面跟下列延迟:内部 中断源:2个系统总线时钟周期。 外部中断源:4 个周期。8.5 内存映射/寄存器定义IPIC可编程寄存器映射占用256个字节的内存空间。读取内存映射的未定义部分返回全零,写入无效。所有的IPIC寄存器都为32位宽,位于32位地址边界。软件可以对所有IPIC寄存器执 行字节、半字或字访问。本章使用的所有地址都是距IPIC基址的偏移量,如第二章“内存映射”所定义的。表8-3列出了 IPIC单元的内存映射。表8-3 IPIC寄存器地址映射偏移量寄存器访问复位值节/页0x00系统全局中断配置寄存器(SICFR)R/W0x0000_00008.5.1
14、/8-8(需调整)0x04系统常规中断向量寄存器(SIVCR)R0x0000_00008.5.2/8-8(需调整)0x08系统内部中断未决寄存器(SIPNR H)R0x0000_00008.5.3/8-80x0C系统内部中断未决寄存器(SIPNR L)R0x0000_00008.5.3/8-80x10系统内部中断组 A优先级寄存器(SIPRR A)R/W0x0530_97708.5.4/8-80x14保留一一一0x18保留一8.5.5/8-80x1C系统内部中断组 D优先级寄存器(SIPRR_D)R/W0x0530_97708.5.5/8-80x20系统内部中断屏蔽寄存器(SIMSR_H)R/
15、W0x0000_00008.5.6/8-80x24系统内部中断屏蔽寄存器(SIMSR_L)R/W0x0000_00008.5.6/8-80x28系统内部中断控制寄存器(SICNR)R/W0x0000_00008.5.7/8-80x2C系统外部中断未决寄存器(SEPNR)R/W特殊8.5.8/8-80x30系统混合中断组 A优先级寄存器(SMPRR A)R/W0x0530_97708.5.9/8-80x34系统混合中断组 B优先级寄存器(SMPRR_B)R/W0x0530_97708.5.10/8-80x38系统外部中断屏蔽寄存器(SEMSR)R/W0x0000_00008.5.11/8-80x
16、3C系统外部中断控制寄存器(SECNR)R/W0x0000_00008.5.12/8-80x40系统错误状态寄存器(SERSR)R/W0x0000_00008.5.13/8-80x44系统错误屏蔽寄存器(SERMR)R/W0xFF00_00008.5.14/8-80x40系统错误控制寄存器 (SERCR)R/W0x0000_00008.5.15/8-80x4C 0x4F保留0x50系统内部中断强制寄存器(SIFCR H)R/W0x0000_00008.5.16/8-80x54系统内部中断强制寄存器(SIFCR L)R/W0x0000_00008.5.16/8-80x58系统外部中断强制寄存器(
17、SEFCR)R/W0x0000_00008.5.17/8-80x5C系统错误强制寄存器(SERFR)R/W0x0000_00008.5.18/8-80x60系统紧急中断向量寄存器(SCVCR)R0x0000_00008.5.19/8-80x64系统管理中断向量寄存器(SMVCR)R0x0000_00008.5.20/8-80x680xFF保留一一一8.5.1 系统全局中断配置寄存器( SICFR System Global Interrupt Configuration Register )SICFR如图8-2所示,它定义最高优先级中断,以及中断在优先级表中是分组的还是分散的。更多信息见表 8
18、-4。偏移OzOO访何:读坞O 169101112!131415ia21 22 233*HPIMPSBMP&AIPSDIPSAHprr复位全0图8-2 系统全局中断配置寄存器(SICFR)表8-4定义了 SICFR的位字段。表8-4 SICFR字段说明位名字说明0一写忽略,读=01 7HPI最高优先级中断。指定一个中断控制器中断源的 7位唯一 中断号/向量(见表8-6),将该中断源提升为IPIC优先级 表(见表8-31 )中的最高优先级。可以动态修改 HPI。8一写忽略,读=09MPSB组B的混合中断优先级方案。选择相应的MIXB优先级方案。不能动态修改。0 分组的。在表顶部按优先级分
19、组MIXB。1分散的。在表中按优先级分散MIXB。10MPSA组A的混合中断优先级方案。选择相应的MIXA优先级方案。不能动态修改。0 分组的。在表顶部按优先级分组MIXA。1分散的。在表中按优先级分散MIXA。11一写忽略,读=012IPSD组D的内部中断优先级方案。选择相应的SYSD优先级方案。不能动态修改。0分组的。在表顶部按优先级分组SYSD。1分散的。在表中按优先级分散SYSD。13 14一写忽略,读=015IPSA组A的内部中断优先级方案。选择相应的SYSA优先级方案。不能动态修改。0 分组的(grouped )。在表顶部按优先级分组 SYSA。 1分散的(spread)。在表中按
20、优先级分散 SYSA。16 21一写忽略,读=022 23HPITHPI优先级位置IPIC输出中断类型。定义在 HPI优先级 位置中,哪种类型的IPIC输出中断信号(/int、/cint或/smi) 向核旦告其请求有效。不能动态修改这些位。(如果软件确实要修改,软件必须确认相应中断源已被屏蔽,或者在修改时不会发生中断)。HPIT的定义如下:00 HPI到核的/int请求有效。 01 HPI到核的/smi请求有效。10 HPI到核的/cint请求有效。11 保留。24 - 31写忽略,读=08.5.2系统常规中断向量寄存器(SIVCR如图8-3所示,它包括在核禁止模式中,用户只能使用 用 SCV
21、CR 和 SMVCR )。SIVCR System Regular In terrupt Vector Register)7位编码,表示最高优先级上的常规未屏蔽中断源(/INT )。注意偏移0x04RW复位062426S1IVBCjcIVEC达问:只读图8-3 系统常规中断向量寄存器(SIVCR)SIVCR,以便读取更新了的中断向量寄存器(不应使表8-5定义了 SIVCR的位字段。表8-5 SIVCR字段说明位名字说明0 5IVECx向后(MPC8260)兼容的常规中断向量。指定核未决的、 IPIC最高优先级常规中断源的6位唯一中断号。在出现常规中断请求时,可以读取SIVCR。如果有多个常规中
22、断源,SIVCR锁存最高优先级的常规中断。注意,IVECx字段仅正确反映前 64个中断向量(细节见表 8-6)。读取 时,不能修改SIVEC的值。6 24写忽略,读=025 31IVEC常规中断向量。指定核未决的、IPIC最高优先级常规中断源的7位唯一中断号。注意,在出现常规中断请求时, 可以读取SIVCR。如果有多个常规中断源,SIVCR锁存最高优先级的常规中断。注意,IVEC字段正确反映所有的中断向量(细节见表 8-6)。读取时,不能修改SIVCR(SIVEC ?)的值。表8-6给出了 IVEC的定义。表 8-6 IVEC/CVEC/MVEC 字段定义中断ID号中断含义中断向量0:错误(无
23、中断)0b000 00001 8保留0b000 0000 0b000 10009UART1ObOOO_1OO110UART2ObOOO_1O1O11SECObOOO 1O1112- 13保留ObOOO_11OOObOOO_11O114I2C1ObOOO 111O15I2C2ObOOO 111116SPIObOO1_OOOO17ipp_i nd_ext-i nt1ObOO1_OOO118ipp i nd ext-i nt2ObOO1 OO1O19ipp i nd ext-i nt3ObOO1 OO1120IRQ4ObOO1 O1OO21IRQ5ObOO1 O1O122IRQ6ObOO1 O11O
24、23IRQ7ObOO1 O11124 - 31保留ObOO1_1OOO 0b001_111132TSEC1 TxObO1O OOOO33TSEC1 RxObO1O OOO134TSEC1 ErrObO1O OO1O35TSEC2 TxObO1O OO1136TSEC2 RxObO1O O1OO37TSEC2 ErrObO1O O1O138USB DRObO1O O11O39USB MPHObO1O O11140- 47保留ObO1O 1OOO 0b010 111148ipp i nd ext-i ntOObO11 OOOO49-63保留ObO11 OOO1 0b011 111164ipp i
25、nd ext-i nt32Ob1OO OOOO65ipp i nd ext-i nt330b100 000166ipp i nd ext-i nt340b100 001067ipp i nd ext-i nt350b100 001168RTC ALR0b100 010069USB MPH0b100 010170SBA0b100 011071USB MPH0b100 011172GTM40b100 100073GTM80b100 100174GPIO10b100 101075GPIO20b100 101176DDR0b100 110077LBC0b100 110178GTM20b100 1110
26、79GTM60b100 111180PMC0b101 000081 - 83保留0b101_0001 - 0b101_001184GTM30b101_010085GTM70b101 010186 - 89:保留0b101_0110-0b101_100190GTM10b101 101091GTM50b101 101192 - 127保留0b101_1100-0b111_11118.5.3 系统内部中断未决寄存器 (SIPNR_H 和 L System Internal Interrupt Pending Register )SIPNR_H和SIPNR_L中的每一位都对应一个内部中断源,如图8-4
27、和8-5所示。(表8-7列出了已实现了的位。)当收到中断请求时,中断控制器置位对应的SIPNR位。在处理完未决中断后,通过清除对应的事件寄存器位,用户可以清除SIPNR位。注意,SIPNR位的状态不会依相对优先级改变。偏穆oxOe谊闻*只读01234 日 B 卩|日 30 11 |l?13 tJ 1三| tfl FT 帕 lac n ae 23 I 2J 2E 茨 £7 I 朗 2030 剧INT旗女现了的垃在聶"中列出)W复±5图8-4 系统内部中断挂起寄存器(SIPNR_H)表8-7列出了实现的 SIPNR_H位。表 8-7 SIPNR H/SIFCR H/S
28、IMSR H 分配位字段0TSEC1 Tx1TSEC1 Rx2TSEC1 Err3TSEC2 Tx4TSEC2 Rx5TSEC2 Err6USB DR7USB MPH8 2324UART125UART226SEC27- 2829I2C130I2C231SPI表8-8定义了 SIPNR H的位字段。表8-8 SIPNR_H字段说明位名字说明0 31INT n每个已实现了的位(表 8-7中列出)都对应一个内部中断 源。当收到中断请求时,中断控制器置位对应的SIPNR位。在处理完未决中断后,通过清除对应的事件寄存器位, 用户可以清除SIPNR位。SIPNR位疋只读的。与入该寄存器无用。 注意,SIP
29、NR位的状态不会依相对优先级变化。对于未实现的位,写忽略,读=0。SIPNR_L如图8-4所示。偏移OxOC谊问:只读2346 fl 7 | 0 e IQ 1l| l2|17 IB IBZ1 22 23 24 2S 26 27 丨西拥鮒 310 1R啊旗实现了的位8-9中列出)复垃全D图8-5系统内部中断未决寄存器(SIPNR_L )表8-9列出了实现的 SIPNR_L位。表 8-9 SIPNR_L/SIFCR_L/SIMSR_L 分配位字段0RTC SEC1PIT2PCI13ipi i nt i nternal354RTC ALR5MU6SBA7DMA8GTM49GTM810GPIO111G
30、PIO212DDR13LBC14GTM215GTM616PMC17 19一20GTM321GTM722- 2526GTM127GTM528- 3031表8-10定义了 SIPNR_L的位字段。表8-10 SIPNR_L字段说明位名字说明0 31INT n每个已实现了的位(表 8-7中列出)都对应一个内部中断 源。当收到中断请求时,中断控制器置位对应的SIPNR位。在处理完未决中断后,通过清除对应的事件寄存器位, 用户可以清除SIPNR位。SIPNR位是只读的。写入该寄存器无效。 注意,SIPNR位的状态不会依相对优先级变化。对于未实现的位,写忽略,读=0。8.5.4 系统内部中断组A 优先级寄
31、存器(SIPRR_A System Internal Interrupt Group APriority Register)SIPRR_A女口图8-6所示,它定义TSEC1发送请求(TSEC1 Tx )、TSEC1接收请求(TSEC1 Rx )、TSEC1 发送 /接收错误(TSEC1 Err )、TSEC2 发送请求(TSEC2 Tx )、TSEC2 接收请 求(TSEC2 Rx )、TSEC2发送/接收错误(TSEC2 Err )、USB DR和USB MPH内部中断信号 之间的优先级。更多信息参见8.6.3节“内部中断组相对优先级”偏移0x10決间:读街0236 Q I 耳 P 11惟1
32、SW14 10 |21 2224 2S即羽31RW3YSA0PSYSA1PSYSA2PSYSA3PSYSA4PSYSA5PSYSA6PSYSA7P-宣位0 0 Q 00 1 0 1 I 0 0 1 10 0 0 010 0 010 110 1110 0 0 0图8-6 系统内部中断组 A优先级寄存器(SIPRR_A)表8-11定义了 SIPRR_A的位字段。表8-11 SIPRR A字段说明位名字说明0 2SYSA0PSYSA0优先级顺序。定义哪个中断源在 SYSA0优先级位 置中宣告其请求有效。用户不能为多个优先级位置 (0- 7) 规定相同的编码。可以动态改变这些位。SYSA0P的定义如下
33、:000 TSEC1 Tx在SYSA0优先级位置中宣告其请求。 001 TSEC1 Rx在SYSA0优先级位置中宣告其请求。010 TSEC1 Err在SYSA0优先级位置中宣告其请求。011 TSEC2 x在SYSA0优先级位置中宣告其请求。100 TSEC2 Rx在SYSA0优先级位置中宣告其请求。101 TSEC2 Err在SYSA0优先级位置中宣告其请求。110 USB DR在SYSA0优先级位置中宣告其请求。111 USB MPH在SYSA0优先级位置中宣告其请求。3 11, 16 27SYSA1PSYSA7P与SYSA0P相同,但为 SYSA1P SYSA7P定义12 15, 28
34、31写忽略,读=0更多信息参见863节“内部中断组相对优先级”8.5.5 系统内部中断组 D 优先级寄存器(SIPRR_D System Internal Interrupt Group D Priority Register)SIPRR_D如图8-7所示,它定义表 8-12列出的中断源之间的优先级。偏移OxiC访间:读脅0 235b| ean1215ieia if22 24 isS720禹RSYSDOPWSYSD1PSY5D3P&YSD4P&YSD5PSYSD6PSYSD7P复垃0 0 0Q Q 10 1 | 0Q 111ooo01 0 001 01 1 01 1 10 0
35、0 0图8-7 系统内部中断组 D优先级寄存器(SIPRR_D)表8-12定义了 SIPRR_D的位字段。表8-12 SIPRR_D字段说明位名字说明0 2SYSD0PSYSD0优先级顺序。定义哪个中断源在 SYSD0优先级位 置中宣告其请求有效。用户不能为多个优先级位置 (0- 7) 规定相同的编码。可以动态改变这些位。SYSD0P的定义 如下:000 UART1在SYSD0优先级位置中宣告其请求。001 USRT2在SYSD0优先级位置中宣告其请求。010 SEC在SYSD0优先级位置中宣告其请求。011 保留100 保留101 I2C1在SYSD0优先级位置中宣告其请求。110 I2C2
36、在SYSD0优先级位置中宣告其请求。111 SPI在SYSD0优先级位置中宣告其请求。3 11, 16SYSD1P与SYSD0P相同,但为 SYSD1P SYSD7P定义27SYSD7P12- 15, 2831写忽略,读=08.5.6 系统内部中断屏蔽寄存器( SIMSR_H 和 SIMSR_L System Internal Interrupt Mask Register)SIMSR_H和SIMSR_L实现的每一位都对应一个内部中断源,如图8-8和8-9所示。用户通过清除对应的 SIMSR位屏蔽中断。当出现中断请求时, 无论SIMSR位的设置如何,对 应的SIPNR位都会被置位。但是,如果对
37、应的SIMSR位是清除的,则不将中断请求传给核。如果用户在对应中断源请求中断服务的同时清除SIMSR位,则请求停止。如果用户稍后置位SIMSR位,则核根据其优先级处理所有未决的对应的中断请求。偏杼0x20访问:读简弟INTP (实现了的位在表&阿列出)宜位金D图8-8系统内部中断屏蔽寄存器(SIMSR_H)表8-13定义了 SIMSR_H的位字段。表8-13 SIMSR H字段说明位名字:说明0 31INT n每个实现了的位(表 8-9中列出)内部中断源。用户通过 清除对应的SIMSR位屏蔽中断,置位对应的SIMSR位则 不屏蔽(允许)中断。用户可在任何时候读取SIMSR。注意:SIM
38、SR位的状态不会依相对优先级变化。用户只能通过清除对应事件寄存器中的所有未屏蔽 事件,来清除由多个中断事件置位的未决寄存器位。 如果在对应SIPNR位引起到核的中断请求的同时, SIMSR位是屏蔽的,则发出错误向量(如果无其他 未决中断)。所以用户应永远包括一个错误向量例程, 即使该例程仅包括一条 rfi指令。不能屏敝错误向量。 对于未实现的位,即图 8-8中显示为保留的位,写忽略, 读=0。SIMSR_L如图8-9所示。偏琢0x24W复位NTP (实现了的位在表盹中列出)So图8-9系统内部中断屏蔽寄存器(SIMSR_L )表8-14定义了 SIMSR_L的位字段。表8-14 SIMSR L
39、字段说明位名字说明0 31INT n每个实现了的位(表8-9中列出)都对应一个内部中断源。 用户通过清除对应的SIMSR位屏蔽中断,置位对应的SIMSR位则不屏蔽(允许)中断。用户可在任何时候读 取 SIMSR。注意:SIMSR位的状态不会依相对优先级变化。用户只能通过清除对应事件寄存器中的所有未屏蔽 事件,来清除由多个中断事件置位的未决寄存器位。 如果在对应SIPNR位引起到核的中断请求的同时, SIMSR位是屏蔽的,则发出错误向量(如果无其他 中断挂起)。所以用户应永远包括一个错误向量例程, 即使该例程仅包括一条 rfi指令。不能屏敝错误向量。 对于未实现的位,即图 8-9中显示为保留的位
40、,写忽略, 读=0。8.5.7 系统内部中断控制寄存器( SICNR System Internal Interrupt Control Register ) SICNR女口图8-10所示,它定义IPIC在SYSA0 SYSA1和SYSD0 SYSD1状态中的 输出中断类型(/int、/cint或/smi)。所有其他优先级位置向核宣告/int有效。注意,在核禁止模式中,用户应使用/int输出中断类型(不应使用/cint或/smi)来读取更新了的SIVCR。访间:读厲01 , 2312S2426»37加31SYSD0TS¥SD 仃SYSAQTSYSA1T宣位金0图8-10 系
41、统内部中断控制寄存器(SICNR )表8-15定义了 SICNR的位字段。表8-15 SICNR字段说明说明位名字0 1SYSD0TSYSD0优先级位置IPIC输出中断类型。定义在SYSD0优先级位置中,哪种类型的IPIC输出中断信号(/int、/cint 或/smi)向核旦告其请求有效。不能动态修改这些位。(要 修改它,软件必须确保对应中断源被屏蔽,或在修改期间不会发生中断)。SYSD0T定义如下:00 SYSD0的/int请求对核有效。01 SYSD0的/cint请求对核有效。10 SYSD0的/smi请求对核有效。11 保留2 3SYSD1T与SYSD0T相同,但为 SYSD1T定义4
42、23一写忽略,读=024 25SYSA0TSYSA0优先级位置IPIC输出中断类型。定义在SYSA0优先级位置中,哪种类型的IPIC输出中断信号(/int、/cint 或/smi)向核旦告其请求有效。不能动态修改这些位。(要 修改它,软件必须确保对应中断源被屏蔽,或在修改期间不会发生中断)。SYSA0T定义如下:00 SYSA0的/int请求对核有效。01 SYSA0的/cint请求对核有效。10 SYSA0的/smi请求对核有效。11 保留26 27SYSA1T与SYSA0T相同,但为 SYSA1T定义28 31一写忽略,读=08.5.8 系统外部中断未决寄存器( SEPNR System
43、External Interrupt Pending Register )SEPNR中的每一位都对应一个外部中断源,如图8-11所示。当收到中断时,中断寄存器置位相应的 SEPNR位。偏務0jc2C访円:读坯该位仅在将ipp_ind_ext_intO信号配置为外部可屏蔽中断(用户应在复位无效之前将所有的IRQ输入都驱动为无效状态SEMSRSipp_ind_ext_intO=O)时才有效图8-11系统外部中断挂起寄存器(SEPNR)表8-16定义了 SEPNR的位字段。表8-16 SEPNR位字段说明位名字说明0 7IRQ n每一位都对应一个外部中断源。当收到中断时,中断寄存器置位相应的 SEP
44、NR位。在处理未决中断时,用户必须清除对应的SEPNR位。对于电平触发的情况,软件需要将 /IRQn置为无效,这样可 以自动清除SEPNR中的位。对于边沿触发的情况,软件 需要清除SEPNR中的位。将SEPNR位置为1可以清除SEPNR位。因为用户只能 清除该寄存器中的位,因此向该寄存器写入0无效。8 31一写忽略,读=08.5.9 系统混合中断组A 优先级寄存器(SMPRR_A System Mixed Interrupt Group APriority Register )SMPRR_A如图8-12所示,它定义表 8-17所列出的中断源之间的优先级。偏穆0300访问:读垢B235* 110
45、 111215T41»1±1住24 25W2431AMIXA0PMIXA1PMIXA2P-MIXA4PMIXA5PMIXA6PMIXA7P0 0 00 0 10屮0 1 1|o 00 01 0 Q川01 1 | 01 1 10 0 0 0图8-12 系统混合中断组A优先级寄存器(SMPRR_A)表8-17定义了 SMPRR_A的位字段。表8-17SMPRR A字段说明位名字说明0 2MIXA0PMIXA0优先级顺序。定义哪个中断源在 MIXA0优先级位 置中宣告其请求有效。用户不能为多个优先级位置 (0- 7) 规定相同的编码。可以动态改变这些位。MIXA0P的定义 如下:
46、000 ipi int internal32在MIXA0P 优先级位置中宣告其 请求有效。001 ipi int internal33在MIXA0P 优先级位置中宣告其 请求有效。010 ipi int internal34在 MIXA0P 优先级位置中宣告其 请求有效。011 ipi int internal35在 MIXA0P 优先级位置中宣告其 请求有效。100 ipp ind ext int 0在MIXA0P 优先级位置中宣告其 请求有效。在将ipp_ind_ext_int 0信号配置为外部可屏敝 中断(SEMSRS ipp ind ext int 0= 0)时,MIXA0 位置的该字
47、段才有效(不能被忽略)。101 ipp ind ext int 1在MIXA0P 优先级位置中宣告其 请求有效。110 ipp ind ext int 2在MIXA0P 优先级位置中宣告其 请求有效。111 ipp ind ext int 3在MIXA0P 优先级位置中宣告其 请求有效。3 11, 1627MIXA1PMIXA 7P与MIXA 0P相同,但为 MIXA 1P MIXA 7P定义12 15, 2831写忽略,读=08.5.10 系统混合中断组 B 优先级寄存器(SMPRR_B System Mixed Interrupt Group BPriority Register )SMP
48、RR_B如图8-13所示,它定义表 8-18所列出的中断源之间的优先级。0x34访月:读母& 23 56 1 $0 11IE擁1S柑|2122! US5灯濟31WMIXB0PMKB4PMIX B2PMIXB3PMIXB4PMIXB5PMIXB6PMOB7P0 0 00 0 t0屮0 1 100 0 01 0 0小01 1 01 1 10 0 0 0图8-13 系统混合中断组 B优先级寄存器(SMPRR_B)表8-18定义了 SMPRR_B的位字段。表8-17 SMPRR_A字段说明位名字说明0 2, 3 11, 16 17MIXB nPMIXB n优先级顺序。定义哪个中断源在 MIXB
49、 n优先级位 置中宣告其请求有效。用户不能为多个优先级位置 (0- 7) 规定相同的编码。可以动态改变这些位。MIXB n的定义如下:000 RTC ALR在MIXB n优先级位置中宣告其请求有效。001 MU在MIXB n优先级位置中宣告其请求有效。010 SBA在MIXB n优先级位置中宣告其请求有效。011 DMA在MIXB n优先级位置中宣告其请求有效。100 IRQ4在MIXB n优先级位置中宣告其请求有效。101 IRQ5在MIXB n优先级位置中宣告其请求有效。110 IRQ6在MIXB n优先级位置中宣告其请求有效。111 IRQ7在MIXB n优先级位置中宣告其请求有效。12
50、 15, 2831写忽略,读=08.5.11 系统外部中断屏蔽寄存器( SEMSR System External Interrupt Mask Register)系统外部中断屏蔽寄存器(SEMSR)中的每一位都对应一个外部中断源,如图8-11所示。用户通过清除对应的 SEMSR位屏蔽中断,置位对应的SEMSR位不屏蔽(允许)中断。当出现外部中断请求时, 不论SEMSR位的设置如何,对应的SEPNR位都置位。但是, 如果对应的SEMSR位是清除的,则不将中断请求传给核。如果用户在中断源请求中断服务的同时清除SEMSR位,则请求停止。如果用户稍后置位SEMSR位,则核根据分配的优先级处理先前未决的中断请求。用户可以随时读取 SEMSR。偏務0珀e访円:读坯该位仅在将ipp_ind_ext_intO信号配置为外部可屏蔽中断(用户应在复位无效之前将所有的IRQ输入都驱动为无效状态SEMSRSipp_ind_ext_intO=O)时才有效图8-14 系统外部中断屏蔽寄存器(SEMSR)表8-19定义了 SEMSR的位字段。表8-19 SEMSR字段说明位名字说明0 7每一位都对应一个外部中断源。用户通过清除对应的 SEMSR位
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 企业内训课程设计与开发方案
- 销售团队绩效考核方案及激励措施
- 现代物流仓库自动化管理方案
- 2025-2030免漆门行业产能布局与供应链优化研究报告
- 2025-2030免漆门电商直播销售数据与运营方法论研究报告
- 2025-2030免漆门产品隔音性能测试与改进方案报告
- 2025-2030免漆门产品耐用性测试与质量提升方案报告
- 2025-2030免漆门产品技术创新与渠道布局深度研究报告
- 2025-2030免漆门产业协同创新与产学研合作模式报告
- 寒假作业设计与趣味教学方案
- 海南矿产资源概况
- 幻影桌面云管理平台实践指导手册
- 沪教牛津版英语4A M3U1 In our school:animal school优质课课件
- (通用版)水利安全员考试试题库及答案
- 编版一年级下册 《荷叶圆圆》2022年小学语文作业设计
- 施工现场安全检查记录表(周)以及详细记录
- 汽车配件购销合同集合
- 雨污水管道表格全全套资料
- 石库门——中西合璧建筑的典范
- 数独比赛六宫练习题96道练习
- (高清正版)T_CAGHP 006—2018泥石流灾害防治工程勘查规范(试行)
评论
0/150
提交评论