AR# 36497

12.1 EDK - Bootloader Fails to Load User Application if it Contains an Interrupt Routine

描述

When my bootloader contains an interrupt routine, the execution halts in a MicroBlaze embedded processor design.

解决方案

This occurs because the MicroBlaze embedded processor has a fixed interrupt vector address, so, when the user application is bootloaded from Flash to DRAM, it overwrites thebootloader's vector address with the user application interrupt vector, which then corrupts thebootloader.

The solutionis to modify the bootloader to copy the vectors at the end, or to convertELF into binary and move the vectors section to the end of the binary file.

链接问答记录

相关答复记录

Answer Number 问答标题 问题版本 已解决问题的版本
25252 14.2 EDK - An error message occurs when I attempt to convert an ".elf" file to binary file using mb-objcopy N/A N/A
AR# 36497
日期 12/15/2012
状态 Active
Type 综合文章
Tools