Yahoo Groups archive

Lpc2000

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

Thread

JTAG Debugger

JTAG Debugger

2005-10-26 by mark_dell555

Hi,

I have a Agilent E5900B emulation probe that I've been trying to get
working on a LPC2134 with ADS.  It works fine on my AT91 dev board,
but I cant get it to work in ADS with the LPC2134.  Note that this
probe is ARM7TDMI not -S.  I seem to have some success (RESET, STOP,
RUN, and STEP, and poll register etc..) using the telnet interface
when I disconnect the RTCK pin.  But either way I get alot of Data
Aborts in ADS.

I was wondering if anyone has experienced this problem?  I've read a
bit that suggests the problem could be that the probe doesnt support
-S, but I'm unsure, especially since using telnet I can get it to
function.  Also are there any other debuggers that work with this
Agilent probe?  And my final option is to put togather a wiggler type
jtag, and use it.

What do you think I should do?  Just give up on this Agilent probe?

Any help, input, and opinions are welcome.

Thank you,
Mark

Re: [lpc2000] JTAG Debugger

2005-10-26 by Michael Johnson

Hi Mark,

Can you divide the JTAG clock frequency?

Regards
Michael
Show quoted textHide quoted text
>Hi,
>
>I have a Agilent E5900B emulation probe that I've been trying to get
>working on a LPC2134 with ADS.  It works fine on my AT91 dev board,
>but I cant get it to work in ADS with the LPC2134.  Note that this
>probe is ARM7TDMI not -S.  I seem to have some success (RESET, STOP,
>RUN, and STEP, and poll register etc..) using the telnet interface
>when I disconnect the RTCK pin.  But either way I get alot of Data
>Aborts in ADS.
>
>I was wondering if anyone has experienced this problem?  I've read a
>bit that suggests the problem could be that the probe doesnt support
>-S, but I'm unsure, especially since using telnet I can get it to
>function.  Also are there any other debuggers that work with this
>Agilent probe?  And my final option is to put togather a wiggler type
>jtag, and use it.
>
>What do you think I should do?  Just give up on this Agilent probe?
>
>Any help, input, and opinions are welcome.
>
>Thank you,
>Mark
>
>
>
>
>
>
>
> 
>Yahoo! Groups Links
>
>
>
> 
>
>
>  
>

Re: JTAG Debugger

2005-10-26 by mark_dell555

Hi Michael,

Yes.  I can set it anywhere from 500kHz to 10Mhz.  I've been using it
at 500kHZ and 1 Mhz.  I should mention I'm using ADS 1.2.

Thanks,
Mark
Show quoted textHide quoted text
>
> Hi Mark,
> 
> Can you divide the JTAG clock frequency?
> 
> Regards
> Michael

Re: [lpc2000] Re: JTAG Debugger

2005-10-26 by Michael Johnson

A wiggler will do a maximum of 400kHz - I can't remember if we have LPC 
boards that we've had to put a clock divider on to make things reliable 
- so 500kHz may be too fast. Could there be a program in the flash that 
is causing the problem - try erasing the flash using the ISP.

Regards
Michael
Show quoted textHide quoted text
>Hi Michael,
>
>Yes.  I can set it anywhere from 500kHz to 10Mhz.  I've been using it
>at 500kHZ and 1 Mhz.  I should mention I'm using ADS 1.2.
>
>Thanks,
>Mark
>
>  
>
>>Hi Mark,
>>
>>Can you divide the JTAG clock frequency?
>>
>>Regards
>>Michael
>>    
>>
>
>
>
>
>
>
>
> 
>Yahoo! Groups Links
>
>
>
> 
>
>
>  
>

Re: [lpc2000] Re: JTAG Debugger

2005-10-26 by Tom Walsh

Michael Johnson wrote:

>A wiggler will do a maximum of 400kHz - I can't remember if we have LPC 
>boards that we've had to put a clock divider on to make things reliable 
>- so 500kHz may be too fast. Could there be a program in the flash that 
>is causing the problem - try erasing the flash using the ISP.
>
>  
>
I was thinking the same thing, I saw the same prob with Abatron BDI2000 
+ LPC2138.  The processor would give data aborts via the JTAG until I 
erased the Flash.



TomW


>Regards
>Michael
>
>  
>
>>Hi Michael,
>>
>>Yes.  I can set it anywhere from 500kHz to 10Mhz.  I've been using it
>>at 500kHZ and 1 Mhz.  I should mention I'm using ADS 1.2.
>>
>>Thanks,
>>Mark
>>
>> 
>>
>>    
>>
>>>Hi Mark,
>>>
>>>Can you divide the JTAG clock frequency?
>>>
>>>Regards
>>>Michael
>>>   
>>>
>>>      
>>>
>>
>>
>>
>>
>>
>>
>>Yahoo! Groups Links
>>
>>
>>
>>
>>
>>
>> 
>>
>>    
>>
>
>
>
>
> 
>Yahoo! Groups Links
>
>
>
> 
>
>
>  
>


-- 
Tom Walsh - WN3L - Embedded Systems Consultant
http://openhardware.net, http://cyberiansoftware.com
"Windows? No thanks, I have work to do..."
----------------------------------------------------

Re: [lpc2000] JTAG Debugger

2005-10-26 by Rob Jansen

>     Hi,
>
>  I have a Agilent E5900B emulation probe that I've been trying to get
>  working on a LPC2134 with ADS.  It works fine on my AT91 dev board,
>  but I cant get it to work in ADS with the LPC2134.  Note that this
>  probe is ARM7TDMI not -S.  I seem to have some success (RESET, STOP,
>  RUN, and STEP, and poll register etc..) using the telnet interface
>  when I disconnect the RTCK pin.  But either way I get alot of Data
>  Aborts in ADS.

I also had some problems (with a Jeeni). It seems to work sometimes or up
to a certain moment and then strange errors pop up.

Meanwhile I am developing my own JTAG probe - using RTCK I get to about 2
MHz on the jtag clock (14.7 MHz crystal).
There are indeed some differences between the TDMI and the -S version that
may render your TDMI debugger unusable. The TDMI has a third public jtag
chain and (as far as I remember) supports both INTEST and EXTEST.

A wiggler may do OK for you but I don't like the use of the printer port
(apart from not being available on my laptop). Therefor I decided to go
for a debuggerpod that is connected via Ethernet, using the RDI protocol
which makes it suitable for a wider range of debugger software.
Software is not yet finished, I keep running into small problems from time
to time ...

If the Agilent uses RID, try using another debugger (e.g. gdb). I found
that I could do some debugging with the Jeeni via the RealView debugger
but was not able to do anything with GDB. It may be the other way around
for you.

Regards,

    Rob

Re: [lpc2000] JTAG Debugger

2005-10-26 by Michael Rubitschka

Dear Rob

Will you publish your Jtag design or is it commercial ?

Cheers
Michael
Show quoted textHide quoted text
>From: "Rob Jansen" <rob@...>
>Reply-To: lpc2000@yahoogroups.com
>To: lpc2000@yahoogroups.com
>Subject: Re: [lpc2000] JTAG Debugger
>Date: Wed, 26 Oct 2005 15:31:00 +0200 (CEST)
>
> >     Hi,
> >
> >  I have a Agilent E5900B emulation probe that I've been trying to get
> >  working on a LPC2134 with ADS.  It works fine on my AT91 dev board,
> >  but I cant get it to work in ADS with the LPC2134.  Note that this
> >  probe is ARM7TDMI not -S.  I seem to have some success (RESET, STOP,
> >  RUN, and STEP, and poll register etc..) using the telnet interface
> >  when I disconnect the RTCK pin.  But either way I get alot of Data
> >  Aborts in ADS.
>
>I also had some problems (with a Jeeni). It seems to work sometimes or up
>to a certain moment and then strange errors pop up.
>
>Meanwhile I am developing my own JTAG probe - using RTCK I get to about 2
>MHz on the jtag clock (14.7 MHz crystal).
>There are indeed some differences between the TDMI and the -S version that
>may render your TDMI debugger unusable. The TDMI has a third public jtag
>chain and (as far as I remember) supports both INTEST and EXTEST.
>
>A wiggler may do OK for you but I don't like the use of the printer port
>(apart from not being available on my laptop). Therefor I decided to go
>for a debuggerpod that is connected via Ethernet, using the RDI protocol
>which makes it suitable for a wider range of debugger software.
>Software is not yet finished, I keep running into small problems from time
>to time ...
>
>If the Agilent uses RID, try using another debugger (e.g. gdb). I found
>that I could do some debugging with the Jeeni via the RealView debugger
>but was not able to do anything with GDB. It may be the other way around
>for you.
>
>Regards,
>
>     Rob
>

Re: [lpc2000] JTAG Debugger

2005-10-26 by Rob Jansen

>     Dear Rob
>
>  Will you publish your Jtag design or is it commercial ?
>
>  Cheers
>  Michael

I was thinking of releasing the binary version for free and provide the
source code on a commercial basis.

I am using the 10/100 Ethernet board from Embedded Artists as development
platform. This gives home users a fairly cheap RDI based jtag debugger.

Rob

Re: [lpc2000] JTAG Debugger

2005-10-26 by Rob Jansen

>     Dear Rob
>
>  Will you publish your Jtag design or is it commercial ?
>
>  Cheers
>  Michael

I was thinking of releasing the binary version for free and provide the
source code on a commercial basis.

I am using the 10/100 Ethernet board from Embedded Artists as development
platform. This gives home users a fairly cheap RDI based jtag debugger.

Rob

Re: JTAG Debugger

2005-10-27 by mark_dell555

OK, I was able to set the Aglient probe to 391kHz, and erased the
chip.  I can read and write RAM in AXD.  I disabled software
breakpoints on the vectors and SWIs.  Now I'm not getting Data Aborts
anymore.  I created a simple project that just toggles an LED and told
the linker to put everything into RAM (0x40000100+).  It runs now.  I
still get some too many breakpoints errors, possibly because i have
disabled everything except for hardware breakpoints.  I guess the next
step is to try and run some flash code.  The data aborts were probably
generated by AXD trying to set software breakpoints in the vector
table, but they're not remapped to RAM, so it failed.

Thanks for all the help so far.  I'll try debugging flash code, and
loading flash using the JTAG next, although that might be quite a bit
more difficult.


Mark



--- In lpc2000@yahoogroups.com, Michael Johnson <mpj@r...> wrote:
Show quoted textHide quoted text
>
> A wiggler will do a maximum of 400kHz - I can't remember if we have LPC 
> boards that we've had to put a clock divider on to make things reliable 
> - so 500kHz may be too fast. Could there be a program in the flash that 
> is causing the problem - try erasing the flash using the ISP.
> 
> Regards
> Michael
> 
> >Hi Michael,
> >
> >Yes.  I can set it anywhere from 500kHz to 10Mhz.  I've been using it
> >at 500kHZ and 1 Mhz.  I should mention I'm using ADS 1.2.
> >
> >Thanks,
> >Mark
> >
> >  
> >
> >>Hi Mark,
> >>
> >>Can you divide the JTAG clock frequency?
> >>
> >>Regards
> >>Michael
> >>    
> >>
> >
> >
> >
> >
> >
> >
> >
> > 
> >Yahoo! Groups Links
> >
> >
> >
> > 
> >
> >
> >  
> >
>

Re: JTAG Debugger

2005-10-27 by mark_dell555

I noticed another problem with the debugging.  When i just let the
code run, and then hit stop, most of the time it will stop correctly
within the RAM code.  But sometimes it will stop with PC = 0x0000xxxx.
 Ie somewhere in flash.  Flash is clear so there is no code there. 
Interrupts are disabled.  Not sure why but sometimes it messes up when
I tell it to stop.  It will run correctly for a long time, until i
tell it to stop.  Weird.


Mark

Re: [lpc2000] Re: JTAG Debugger

2005-10-27 by Michael Johnson

Sounds like the JTAG is still flaky.

Michael
Show quoted textHide quoted text
>I noticed another problem with the debugging.  When i just let the
>code run, and then hit stop, most of the time it will stop correctly
>within the RAM code.  But sometimes it will stop with PC = 0x0000xxxx.
> Ie somewhere in flash.  Flash is clear so there is no code there. 
>Interrupts are disabled.  Not sure why but sometimes it messes up when
>I tell it to stop.  It will run correctly for a long time, until i
>tell it to stop.  Weird.
>
>
>Mark
>
>
>
>
>
>
>
> 
>Yahoo! Groups Links
>
>
>
> 
>
>
>  
>

Re: JTAG Debugger

2005-10-27 by mark_dell555

Does anyone know how to setup flash jtag programming through the
debugger (AXD) ?


Thanks,
Mark

Re: [lpc2000] Re: JTAG Debugger

2005-10-27 by Rob Jansen

Mark,

>     Does anyone know how to setup flash jtag programming through the
>  debugger (AXD) ?

The LPC2106 user manual states (page 199):

JTAG FLASH PROGRAMMING INTERFACE

There are three possibilities for this interface:
1. Debug tools can write parts of the flash image to the RAM and then
execute the IAP call "Copy RAM to Flash" repeatedly
with proper offset.
2. Debug tools can execute the flash programming code via JTAG port.


I did not see a "3." in the user manual ... but point 1 seems to be simple.
Prepare a command parameter table with command and (optional) parameters
and have r0 point to this table, also have a piece in memory for the
command result table (point r1 to this) and then execute the IAP call.

I'm not sure how control gets back to the debugger so I would write a 2
word program (BL 0x7ffffff1 and a B <self> or NOP) and place a breakpoint
on the second instruction to return to the debugger.

Rob

-- Three is the number one shall count
   One shall not count to two unless to proceed to three ...

Re: [lpc2000] Re: JTAG Debugger

2005-10-27 by Tom Walsh

mark_dell555 wrote:

>Does anyone know how to setup flash jtag programming through the
>debugger (AXD) ?
>
>  
>

Well,  I use an Abatron BDI2000 and that operation is done in the 
firmware of the probe (BDI2000).  I could not correctly program the 
LCP2138 until I got some beta firmware from Abatron.  I don't know if 
Abatron uses their own algorithm or calls the IAP code in Flash...


TomW


-- 
Tom Walsh - WN3L - Embedded Systems Consultant
http://openhardware.net, http://cyberiansoftware.com
"Windows? No thanks, I have work to do..."
----------------------------------------------------

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.