I am porting freeRTOS for AT91SAM9260.Now i encount a problem. In my portAMS.s I am using keil+jlink debug the program into SDRAM. AT91C_BASE_AIC EQU 0xfffff000 AIC_EOICR EQU 0x130 vPreemptiveTick PRESERVE8 portSAVE_CONTEXT ; Save the context of the current task. LDR R0, =vTaskIncrementTick ; Increment the tick count. MOV LR, PC ; This may make a delayed task ready BX R0 ; to run. LDR R0, =vTaskSwitchContext ; Find the highest priority task that MOV LR, PC ; is ready to run. LDR LR, =AT91C_BASE_AIC ;acknowlege the interrupt STR LR, [R14, #AIC_EOICR]; portRESTORE_CONTEXT ; Restore the context of the highest ; priority task that is ready to run. END The code Acknowlege the interrupt causes data abort. Please help me. Data abort,but the R14's value is 20002f64. I don't understand. This address is in SDARAM controller memory map.It shouldn't happen.