Yahoo Groups archive

Lpc2000

Index last updated: 2026-04-28 23:31 UTC

Message

Re: Data Abort

2004-12-22 by tah2k

Yes.
I went back to the ADSv1.2 tools and saw the same issue. I fixed the 
bug, and was able to run just fine in ADSv1.2. However, when I build 
and load the same application using RealView v2.1, Arms' latest 
toolchain, I still get the data abort immediately when I single step 
from the reset vector. The reason I didn't catch the bug you 
mentioned below is because it never gets past the reset vector 
without a data abort. I hate to blame the tools, but I m leaning 
that way. It runs fine with ADSv1.2, but not RealView v2.1.

Do you have the RealView toolset?

Also, how did you generate the line causing the abort?

-Tim


--- In lpc2000@yahoogroups.com, "Amit" <emailakb@y...> wrote:
> 
> Hi Tim,
> 
> The code generates the Data Abort after executing the instruction 
at 
> 0x68.
> 
>  0x00000068:    34823004    .0.4    STRCC    r3,[r2],#4
> 
> Before this instruction is executed the value of r2 is 0x04000000
> 
> After this instruction is executed the value of r2 is 0x04000004
> 
> Now both these memory locations are not in the RAM or Flash space 
and 
> hence the data abort.
> 
> It should have been 0x40000000 and 0x40000004
> 
> As a sanity check, before executing the instruction at 0x68, I 
> changed the value of r2 to 0x40000000 and the execution continued 
> with no problems.
> 
> Amit
> 
> --- In lpc2000@yahoogroups.com, "tah2k" <tah2k@y...> wrote:
> > 
> > I forwarded additional info via email.
> > Thanks-
> > Tim
> > 
> > --- In lpc2000@yahoogroups.com, "Amit" <emailakb@y...> wrote:
> > > 
> > > Hi,
> > > 
> > > I just tried the same procedure and used the Flash ISP to load 
> the 
> > > code. I then used the AxD to load the debug symbols. 
Everything 
> > seems 
> > > to be working fine. I can single step, run at full speed...etc
> > > 
> > > If you have a small blinky application just send it to my 
email 
> > > address and I can check it in my enviornment. 
> > > 
> > > amit
> > > 
> > > --- In lpc2000@yahoogroups.com, "tah2k" <tah2k@y...> wrote:
> > > > 
> > > > Multi-Ice autodetects the core based on the macrocell. It 
> > detects 
> > > > ARM7TDMI-S ETM. This looks right to me. To verify memory 
> > contents, 
> > > I 
> > > > downloaded the flash image using Philips Flash Utility, and 
it 
> > > > matches my code perfectly. 
> > > > 
> > > > --- In lpc2000@yahoogroups.com, "ian48harry" <ahi93@d...> 
wrote:
> > > > > 
> > > > > Have you "told" Multi-ICE what chip you are dealing with?  
> The 
> > > > AT91 
> > > > > is plain ARM7TDMI, the LPC2000 is -S.  Other tools allow 
> > specific 
> > > > > selection of chips rather than basic core types.
> > > > > 
> > > > > Ian
> > > > > 
> > > > > --- In lpc2000@yahoogroups.com, "tah2k" <tah2k@y...> wrote:
> > > > > > 
> > > > > > I understand where you are coming from, but I am trying 
to 
> > > > prevent 
> > > > > > buying more tools. From what I understand, the keil 
tools 
> > > > require 
> > > > > > their own emulator to actually run the debugger, and I 
> > already 
> > > > have 
> > > > > > 3 multi-ice. 
> > > > > > 
> > > > > > I am missing something, this should be trivial. If I 
reload 
> > the 
> > > > > > blinky application, it works just fine.
> > > > > > 
> > > > > > I have also got a keil mcb2100 board and I have the same 
> > issue.
> > > > > > 
> > > > > > 
> > > > > > --- In lpc2000@yahoogroups.com, "Dan Beadle" 
> > <dan.beadle@i...> 
> > > > > wrote:
> > > > > > > I suggest you download the Keil tools.  
> > > > > > > 
> > > > > > >  
> > > > > > > 
> > > > > > > Download their demos.  That will verify that 
everything 
> is 
> > > > > working 
> > > > > > properly.
> > > > > > > 
> > > > > > > 
> > > > > > >  
> > > > > > > 
> > > > > > > From there, you could try the ARM tools with the Keil 
elf 
> > > > > output.  
> > > > > > At that
> > > > > > > point, you know that the board and the code are good.  
So 
> > you 
> > > > > > would only be
> > > > > > > working one problem.
> > > > > > > 
> > > > > > >  
> > > > > > > 
> > > > > > >  
> > > > > > > 
> > > > > > >  
> > > > > > > 
> > > > > > >   _____  
> > > > > > > 
> > > > > > > From: tah2k [mailto:tah2k@y...] 
> > > > > > > Sent: Monday, December 20, 2004 4:15 PM
> > > > > > > To: lpc2000@yahoogroups.com
> > > > > > > Subject: [lpc2000] Data Aborts
> > > > > > > 
> > > > > > >  
> > > > > > > 
> > > > > > > 
> > > > > > > Still not up and running with my Arm tools and the 
Keil 
> > > > MCB2130.
> > > > > > > 
> > > > > > > I setup the Arm AXD debugger to run the following 
script 
> > on 
> > > > > > startup:
> > > > > > > 
> > > > > > > loadsymbols C:\Projects\Sampler_2138
> > > > \AppFlash\Output\AppFlash.axf
> > > > > > > setpc 0x0
> > > > > > > sreg cpsr 0xd3
> > > > > > > spp vector_catch 0
> > > > > > > spp semihosting_enabled 0
> > > > > > > 
> > > > > > > It basically loads the debug symbols for the image in 
the 
> > > 2138 
> > > > > > > flash, initializes the CPSR, sets the pc to 0, and 
> > disables 
> > > > > > > breakpoints at the Arm exceptions.
> > > > > > > 
> > > > > > > The debugger loads the source file correctly and the 
PC 
> is 
> > > set 
> > > > at 
> > > > > > > 0x0 which is a branch to my startup handler at 0x20. 
> > However, 
> > > > if 
> > > > > I 
> > > > > > > run, or singlestep, or do anything, I get a "Data 
abort".
> > > > > > > 
> > > > > > > Also, if I try and display memory starting at 0x0, the 
> > > > debugger 
> > > > > > > gives an error "Memory access failed" and only gives 
the 
> > > > contents 
> > > > > > of 
> > > > > > > addresses 0-20, the rest 0's.
> > > > > > > 
> > > > > > > I thought perhaps the data abort had something to do 
with 
> > the 
> > > > > > > remapping done by the Philips boot loader, but I 
checked 
> > the 
> > > > > > MEMMAP 
> > > > > > > flag and it is set to 1, so I am running the flash at 
0. 
> > > > > > > 
> > > > > > > I'm new to the part and evaluating it against the AT91 
> > > > pocessors, 
> > > > > > > and I am fresh out of ideas. The memory bus is 
internal 
> so 
> > > its 
> > > > > not 
> > > > > > > like I can hook up my logic analyzer too get some 
ideas.
> > > > > > > 
> > > > > > > Is it possible the Philips memory accelerator is 
partly 
> to 
> > > > blame? 
> > > > > > > Tehre must be otehrs using Arm tools with this part so 
I 
> > am 
> > > > > hoping 
> > > > > > > it is something trivial.
> > > > > > > 
> > > > > > > Any ideas are appreciated.
> > > > > > > Tim
> > > > > > > 
> > > > > > > 
> > > > > > > 
> > > > > > > 
> > > > > > > 
> > > > > > > 
> > > > > > > 
> > > > > > > 
> > > > > > > 
> > > > > > > Yahoo! Groups Sponsor
> > > > > > > 
> > > > > > > 
> > > > > > > 
> > > > > > > ADVERTISEMENT
> > > > > > >  
> > > > > > > 
> > > > > > 
> > > > > 
> > > > 
> > > 
> > 
> 
<http://us.ard.yahoo.com/SIG=1297jigje/M=295196.4901138.6071305.30011
> > > > > > 76/D=gr
> > > > > > > 
> > > > > > 
> > > > > 
> > > > 
> > > 
> > 
> 
oups/S=1706554205:HM/EXP=1103674517/A=2128215/R=0/SIG=10se96mf6/*http
> > > > > > :/compa
> > > > > > > nion.yahoo.com> click here
> > > > > > > 
> > > > > > > 
> > > > > > >  
> > > > > > > <http://us.adserver.yahoo.com/l?
> > > > > > M=295196.4901138.6071305.3001176/D=groups/S=
> > > > > > > :HM/A=2128215/rand=272492819> 
> > > > > > > 
> > > > > > >  
> > > > > > > 
> > > > > > >   _____  
> > > > > > > 
> > > > > > > Yahoo! Groups Links
> > > > > > > 
> > > > > > > *	To visit your group on the web, go to:
> > > > > > > http://groups.yahoo.com/group/lpc2000/
> > > > > > >   
> > > > > > > *	To unsubscribe from this group, send an email to:
> > > > > > > lpc2000-unsubscribe@yahoogroups.com
> > > > > > > <mailto:lpc2000-unsubscribe@yahoogroups.com?
> > > > subject=Unsubscribe> 
> > > > > > >   
> > > > > > > *	Your use of Yahoo! Groups is subject to the Yahoo!
> > > > > > > <http://docs.yahoo.com/info/terms/>  Terms of Service. 
> > > > > > > 
> > > > > > > 
> > > > > > > 
> > > > > > > [Non-text portions of this message have been removed]

Attachments

Move to quarantaine

This moves the raw source file on disk only. The archive index is not changed automatically, so you still need to run a manual refresh afterward.