在F281x DSP中采用外设中断扩展模块(Peripheral Interrupt Expansion,PIE)解决上述问题。外设中断扩展模块实质上是将中断向量表范围扩展,使得96个可能产生的中断都有各自独立的29位入口地址。这样,在扩展模块的作用下就会加快中断的响应时间。为了使用PIE,用户必须重新定位中断向量表到Ox 00 0D00地址(如表所列),该地址是一个可变地址空间,在使用前必须初始化。
C28xx器件中,中断向量表可以映射到5个不同的存储空间。在实际应用中,FZSxx只使用PIE中断向量表映射。中断向量映射主要由以下位/信号来控制。
该位在状态寄存器1(ST1)的位3,复位后值为1。可以通过改变ST1的值或使用SETC/CLRC VMAP指令改变WMAP的值,正常操作该位置1。
MOMIMAP该位在状态寄存器1(ST1)的位11,复位后值为1。可以通过改变ST1的值或使用SETC/CLRC MOMIMAP指令改变MOMIMAP的值,正常操作该位置1。MOMIMAP=0为厂家测试使用。
MP/MC 该位在XINTCNF2寄存器的位8。对于有外部接口(XINTF)的器件(如F2812),复位时XMP/MC引脚上的值为该寄存器位的值;对于没有外部接口的器件(如F2810),XMP/MC内部拉低。器件复位后,可以通过调整XINTCNF2寄存器(地址为0x000O 0B34)改变该位的值。
ENPIE 该位在PIECTRL寄存器的位0,复位的默认值为0(PIE被屏蔽)。器件复位后,可以通过调整PIECTRL寄存器(地址为0x00O0 0CE0)改变该位的值。
依据上述控制位的不同设置,中断向量表有不同的映射方式,如表1所列。
表1 中断向量表映射配置表
Ml和MO向量表映射保留,只供TI公司测试使用。当用其他向量表映射时,MO和M1存储器作为RAM使用,可以随意使用而没有任何限制。复位后器件默认的向量映射如表2所列。
表2 复位后中断向量表映射配置表
复位程序引导(Boot)完成后,用户需要重新初始化PIE中断向量表,应用程序使能PIE中断向量表,中断将从PIE向量表中获取向量。当器件复位时,复位向量总是从向量表中获取。复位完成后,PIE向量表将被屏蔽,相应的中断向量分配如图1所示,重新分配方法如图2所示。PIE中断向量的映射关系和中断向量表分别如表3和表4所列。
表3 PIE中断向量映射关系
表4 PIE中断向量表
图1 处理器复位后默认的中断向量分配
图2 中断向垩重新分配方法
欢迎转载,信息来源维库电子市场网(www.dzsc.com)
免责声明: 凡注明来源本网的所有作品,均为本网合法拥有版权或有权使用的作品,欢迎转载,注明出处。非本网作品均来自互联网,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。