
AT32UC3L016/32/64
4.5.3
超级用户调用
在AVR32指令集提供了一个超级用户模式调用指令。该
SCALL
指令
设计成使得特权的例程可以从任何上下文中调用。这有利于共享
不同的执行模式之间的代码。该
SCALL
机构被设计成使最小
执行时间从主管例程调用时,执行周期开销的经历
关键的事件处理程序。
该
SCALL
指令的行为有所不同,这取决于模式,它是由调用。该behav-
iour详见指令集的参考。为了使
SCALL
例程返回到
正确的情况下,从管理程序调用返回指令,
可再生能源技术,
被实现。在AVR32UC
中央处理器,
SCALL
和
RETS
使用系统堆栈来存储返回地址和状态寄存器。
4.5.4
调试请求
在AVR32架构定义了专门的调试模式。当接收到由一个调试请求
核心,调试模式进入。进入调试模式可以通过在该DM位被屏蔽
状态寄存器。在进入调试模式,硬件设置SR.D位并跳转到
调试异常处理程序。默认情况下,调试模式中的异常的上下文中执行,但与
专用的返回地址寄存器和返回状态寄存器。这些专用寄存器
不再需要用于存储该数据到系统堆栈,从而提高可调试。该
在状态寄存器的位模式可以自由操纵在调试模式下,观察寄存器
在任何情况下,同时保持充分的特权。
调试模式是通过执行退出
RETD
指令。这将返回到以前的上下文。
4.5.5
切入点活动
几个不同的事件处理程序的入口点存在。在AVR32UC ,复位地址是
为0x80000000 。这会将复位地址在引导闪存区域。
TLB缺失异常和
SCALL
有一个专门的空间相对EVBA ,他们的活动han-
dler可以放置。这将加快执行,不再需要跳转指令放在
在程序的地址由硬件事件跳楼。所有其他异常有一个专门的
事件例程入口点位于相对EVBA 。该处理程序例程的地址标识
异常源直接。
AVR32UC使用ITLB和DTLB保护的例外情况预示着MPU保护冲突。
ITLB和DTLB小姐异常用于通知的访问地址没有映射到任何的
在MPU的条目。 TLB多重命中异常指示访问地址并映射到
多TLB项,发出错误信号。
所有的中断请求都位于偏移相对EVBA入口点。这种自动向量化摘
由中断控制器所指定组。程序员必须确保没有的
自动向量化的偏移干扰放置其他代码。该自动向量化的偏移有14个
地址位,布施一个最大16384个字节的偏移量。
用指针装载EVBA时特别注意事项应作出。由于安全CON-
siderations ,该事件处理程序应设在非可写快闪存储器,或任选地在
优越的内存保护区域,如果一个MPU存在。
如果发生在相同的指令数的事件,它们在一个优先的方式进行处理。优先级
排序列于
表4-4第31页。
如果发生在不同的几个事件的说明
在管道中的位置,在最老的指令的事件之前的任何总是处理
在任何较年轻的指令的事件,即使在年轻的指令具有更高优先级的事件
29
32099HS–12/2011