[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Gdb] debugging timer interrupt
From: |
Charles Manning |
Subject: |
Re: [Gdb] debugging timer interrupt |
Date: |
Sun, 10 Oct 2004 20:15:26 +1300 |
The JTAG is just a communications channel to the Embedded ICE macrocell in
the ARM CPU. The best way to find out more about how this works is to read
the ARM7 or ARM9 specification from www.arm.com.
On Friday 08 October 2004 16:39, ravi prasad wrote:
> hi!!,
> I am using JTAGICE from Atmel with TinyOS. It uses
> GDB along with JTAG interface to do on chip debugging.
> With reference to it can you please answer my
> following questions.
> ** Only hardware breakpoint and hardware watch point
> available in my case**
>
> ** The following problems arised as I need to debug a
> program with timer interrupts handled in it**
>
>
> #. How does the JTAG work? Does Jtag simply makes a
> snapshot of the system when required, say for example
> to view the stack at a breakpoint it just snaps the
> stack and displays it and the original program
> execution in the system is not halted. Or the
> breakpoint means the program execution is halted and
> then Jtag extracts information whichever required.
Place a breakpoint at the start of the interrupt routine.
When the CPU breaks, then the debugger reads the registers etc that it needs
to.
>
> #. How the interrupts are handle by the JTAG? For
> examle a timer fire interrupt. If a breakpoint is
> included in the program then whether at the
> break point the timer also stops Or the timer counts
> and fires as without break point.
The Embedded ICE triggers a watrchpoint match and goes into debug mode.
>
> #. In continuity of above question what if we click
> for next instruction? Then does it means next
> instruction after breakpoint.Or the instruction
> executing at that instant in the system if it was not
> halted.
The debugger looks at the instruction and determines where the next
instruction will be and moves the breakpoint there. The CPU is restarted and
the instrcution where the break happened will be executed and the CPU will
reenter debug mode on the next instruction..
-- CHarles