Programming mo E200 GPR32个
SPR35个
Exception (type and cause)Reset
asynchronous(AS),imprecise(IP) , by reset input CriticalInterrupt
AS,IP,maskable(M),critical(C), by critint input
MachineCheck
C, by mcp and nmi input DataStorage
synchronous(S),precise(P),non-critical(NC), by d_tea input InstructionStorage
S,P,NC, by i_tea input
N/A
Program
S, P, NC, by illegal and trap instructions
SysCall
S, P, NC, by se_sc instruction Alignment
S, P, NC, by unaligned
lmw,stmw,lwarx or stwcx. Instructions
N/A
Debug
P/IP, by software debug events N/A
ExternalInterrupt
AS, IP, M, NC, by extint input Debug events target instruction address comes
target data address comes
trap instruction comes and valid
branch taken happens
current instruction completed
interrupt taken happens
se_rfi or se_rfci instruction comes
unconditional debug event
by p_ude input
Debug functionshalt
single step
register access
N/A
software breakpoint
N/A
M4匹配结果
16个,R13=stack pointer,R14=link reg,R15=PC 个数不同,功能基本相同7个个数和功能不同Reset asynchronous(AS),imprecise(IP),Priority=-3(C=-3), by reset input 基本相同NoneMaskableInterrupt AS, C=-2, by external interrupt input 基本相同HardFault,
C=-1, by other system error 部分相同需要拆分
需要拆分
MemManage
S, C=configurable(CF), by MPU protection fault UsageFault
S, C=CF, illegal instruction, divide zero 部分相同
SVCall
S,C=CF, by SVC instruction 基本相同N/A
无对应
PendSV
AS,C=CF, by interrupt driven request for system level service N/A
无对应
SysTick
AS,C=CF, by system timer
BusFault
S,P, C=CF, by i/d_tea input
Interrupt
基本相同AS,C=CF, by external interrupt input
机制不同
halt基本相同single step部分相同register access部分相同vector catch无对应unlimited software breakpoint部分相同system memory access无对应
mapping难度低
中
低
低
中
中
中
中
低
高
高
低
高低中中高中高