cancel
Showing results for 
Search instead for 
Did you mean: 

Prefetch exception after stop/reset with jLink debugger?

mark9
Associate II
Posted on March 07, 2007 at 00:44

Prefetch exception after stop/reset with jLink debugger?

4 REPLIES 4
mark9
Associate II
Posted on May 17, 2011 at 09:39

Sometimes when I try to warm reset a program that is running under the debugger, the processor gets caught in Prefetch exception infinite loop. I know the code does not cause an prefetch exceptions, it only happens after a reset. I'm using a custom port of uC/OS (circa 1992) that modifies the mode bits (is SVC vs SYS vs IRQ), but I wouldn't think that this would affect prefetches, and certainly I would hope that a reset would not *cause* this problem it should be a way out of it. Once the processor gets locked in this situation, I need to either quit the debugger and reflash it, or power cycle it.

Once it gets into this state, I can no longer do anything.

Anyone have experience with prefect exceptions and jlink debugging? I also sometimes seem to get abort exceptions too, although this too is not due to my program -- only after reset.

mark9
Associate II
Posted on May 17, 2011 at 09:39

It is rev D silicon (date code 619 I think). I am using the IAR JLink-KS with IWARM 4.41 (full version). The board is the STR912-SK demo board from IAR.

mark9
Associate II
Posted on May 17, 2011 at 09:39

Hmm. Well, I think the CPU has some other errata. I do have date code 619, so the errata should not apply. Also, I run the FMI clock at 48MHz!

Our product uses date code 646, so I will see if I see the same bug in our product.

mark9
Associate II
Posted on May 17, 2011 at 09:39

I just had the same problem with date code 646 on our custom board. My program just hit a breakpoint, so I did a ''Reset'', then ''Go'', but it wouldn't hit the breakpoint. When I hit ''Break'' it dropped my in the prefetch exception handler. I did another ''Reset'' and this time it worked fine.

So it seems to be flaky and does not require a hard power cycle to exit.