Philips LPC Series Microprocessors.

Written by Tom on Wednesday 29/11/06

The Philips LPC2100 and LPC2200 series, include (at time of writing):

  • LPC2104, LPC2105, LPC2106
  • LPC2114, LPC2124
  • LPC2119, LPC2129

There is a good website about these here and a fair amount
of information on the processor available online. However what they don't generally tell you is about the
JTAG scanchain.

First some background: these devices use an ARM7TDMI-S processor core, which is a newer
alternative in the ARM7TMDI range. They also contain internal RAM and FLASH memory - something
that makes the devices very attractive (you can have an complete ARM computer system including
all memory, just needing an external crystal and power, in a tiny 44-pin package).

Presumably, the use of internal FLASH memory prompted Philips to choose the -S variant of
the ARM7TDMI. Sepcifically this variant differs in JTAG functionality. It does not have
JTAG scanchain 0 (the one that connected to the bounday scanchain). It only has scanchains
1 and 2 which connect to on-chip debug and emulation block and to the core itself.

Using JTAG and the correct software, you can therefore debug software running on the
device, and even (thorugh a very convoluted route) program flash over JTAG, but you
can NOT program external FLASH or even access any external devices using JTAG - unless
you insert the ARM program to do so word-by-word into the insruction register of the
device. And this is a very tedious process...