|
cpu:at91rm9200 <br /><br />加载u-boot后,用ads来单步调试我的裸机程序,发现0x00000000地址如下:<br /><br />00000000 [0xea000007] b 0x24<br />00000004 [0xeafffffe] b 0x4<br />00000008 [0xeafffffe] b 0x8<br />0000000c [0xeafffffe] b 0xc<br />00000010 [0xeafffffe] b 0x10<br />00000014 [0xeafffffe] b 0x14<br />00000018 [0xe51fff20] ldr pc,0xfffff100 ; = #0x00200218<br />0000001c [0xeafffffe] b 0x1c<br />00000020 [0x00105448] andeqs r5,r0,r8,asr #8<br />00000024 [0xe59f1130] ldr r1,0x0000015c ; = #0xfffffc00<br />00000028 [0xe3e00000] mvn r0,#0<br />0000002c [0xe5810064] str r0,[r1,#0x64]<br />00000030 [0xe3e00001] mvn r0,#1<br />00000034 [0xe5810004] str r0,[r1,#4]<br />00000038 [0xe3e00000] mvn r0,#0<br />0000003c [0xe5810014] str r0,[r1,#0x14]<br />00000040 [0xe3a00000] mov r0,#0<br />00000044 [0xe5810030] str r0,[r1,#0x30]<br />00000048 [0xe3a00001] mov r0,#1<br />0000004c [0xe5810000] str r0,[r1,#0]<br />00000050 [0xe59f0108] ldr r0,0x00000160 ; = #0x0000ff01<br /><br />而0x20000000的内容如下:<br />__ENTRY [0xea000009] b InitReset<br />undefvec [0xeafffffe] b undefvec<br />swivec [0xe59ff010] ldr pc,SWI_Addr ; = #SWI_Addr<br />pabtvec [0xe59ff010] ldr pc,PrefetchAddr ; = #PrefetchAddr<br />dabtvec [0xe59ff010] ldr pc,DataAbortAddr ; = #DataAbortAddr<br />rsvdvec [0xeafffffe] b rsvdvec<br />irqvec [0xe51fff20] ldr pc,0x1ffff100 ; = #0xffffffff<br />fiqvec [0xeafffffe] b fiqvec<br />SWI_Addr [0x20007860] dcd 0x20007860 `x. <br />PrefetchAddr [0x200000e8] dcd 0x200000e8 ... <br />DataAbortAddr [0x200000ec] dcd 0x200000ec ... <br />InitReset [0xe59f10dc] ldr r1,0x20000110 ; = #0x20008514<br />20000030 [0xe3c11003] bic r1,r1,#3<br />20000034 [0xe1a0d001] mov r13,r1<br />20000038 [0xe59f00d4] ldr r0,0x20000114 ; = #0x2000448c<br />2000003c [0xe1a0e00f] mov r14,pc<br />20000040 [0xe12fff10] bx r0<br />20000044 [0xe28f004c] add r0,pc,#0x4c ; #0x20000098<br />20000048 [0xe890007e] ldmia r0,{r1-r6}<br />2000004c [0xe321f0d3] msr cpsr_c,#0xd3<br />20000050 [0xe3c11003] bic r1,r1,#3<br /><br /><br />按理说0x00000000地址的内容应该和0x20000000的内容相匹配才是,请问是哪里不对呢,我应该从哪里着手?<br /> |