Yahoo Groups archive

Lpc2000

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

Message

Re: [lpc2000] Re: Which pins of P1 can be used simultaneously with JTAG?

2005-12-18 by Tom Walsh

rtstofer wrote:

>I had to kiss off JTAG for my LPC2106 project for two reasons: I 
>didn't have enough pins even with I2C bus I/O ports and, frankly, 
>OCDRemote doesn't work often enough to put up with the aggravation.
>
>  
>
It's the wigglers. From my experience with them, they can be really 
tempermental.  I found that if I plugged the wiggler directly into the 
printer port, then kept the wire length down to 10 inches, then it 
wasn't too bad.  You have to spend some serious time with an 
oscilloscope fine tuning the electronics of the interface, caps + 
resistors + inductors on the signal lines.  But, they still can be a 
PITA.  The electronics of them is so simple that there isn't any signal 
conditioning of the JTAG signals. It is so easy to pump an extra bit due 
to noise, or have a TDI/TDO signal skewed in phase relation with the TCLK.

I've been there.  I don't have deep pockets being a self employed 
consultant, however, the $2700 expense of a BDI2000 has been well worth 
the investment.  If you are serious about your software / hardware 
development, I highly recommend that you get yourself one.  This is 
truely a case of "you get what you pay for" when selecting a JTAG solution!

IMHO, wigglers are toys that get your feet wet, they are good for doing 
simple tasks like programming Flash or checking out new hardware.  They 
are an inexpensive solution for a Test Department that needs to find a 
short / open / bad chip on a PCB, or download a small boot loader.  
However, I don't need a wiggler to fail me when I'm deep into tracing 
into a problem with software!

Today, the rate at which I'm now able to do code development is truly 
amazing!  I'm about 2/3 done with the initial software release, 
currently, the LPC2106 binary image is 45K and the LPC2138 is 154K.  
This is all in the past 5 weeks!  Admittedly, a significant amount of 
the code for the LPC2138 has been from the old product and the RDCF2 
filesystem...

The LPC2000 series is truely liberating to work with after so many years 
of 8051 coding!  It's tough to implement high-level ideas into a 
processor that struggles to overcome the 64K limitation, which keeping 
within the power budget.  The LPC2000 parts offer huge amounts of 
codespace at a reduced power consumption.  Hard to argue against that!

My development setup is: GNU gcc-3.4.3, bintools-2.15, newlib-1.13, 
Insight-6.1, and an Abatron BDI2000.  All but the BDI2000 cost me 
nothing but time to setup.  GNU gcc emits some really tight code when 
-O2 is turned on, but is nearly impossible to debug.  The BDI2000 
doesn't care whether I debug from Flash or RAM, it just plain works and 
is entirely transparent to Insight.  I program the LPC2000 devices via 
the BDI2000 using a telnet session I keep open for that purpose.  When I 
need to see / set raw RAM data / LPC2000 registers, I find it most 
convenient to do this from within the telnet session and use the BDI2000 
for this.

JTAG is now the most reliable part of my development cycle.

There seems to be a lot of interest on this list at developing an open 
source wiggler gdb tcp server.  Something to replace the OCDaemon.  
While I find that an intriguing idea with a lot of merit, the weakest 
point is still the wiggler electronics and that of the parallel port 
electronics.  The parallel port of a computer is a relatively low-speed 
device, it is not required of it to run megabits of data down to a 
printer.  Therefore, IMO, the chipsets used for a parallel port are 
garbage-variety electronics.

What I do think that could be done is an open-source JTAG pod.  Start 
out with something like a Revely RMS101 
(http://www.revely.com/RMS101/AboutRMS101.htm) board, or other low cost 
ARM board which has an ethernet.  Develop the electronics necessary to 
provide good signal conditioning to the Device Under Test's JTAG port.  
Then using that board, build up an open-source jtag solution.  While 
this would cost more than $10 for the electronics, I feel that it would 
be far superior to a wiggler, but still at a fraction of the cost of a 
commercial JTAG unit?  Software of this caliber would then not be 
limited to just one board electronics, others may decide (maybe 
SparkFun?) to further streamline the electronics and offer it at an even 
lower cost?


Regards,

TomW


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

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.