Hi,
I am trying to program my flash memory via the JTAG interface.
However, I am unable to find enough documentation on the JTAG interface.
Can anyone give me a kickstart?
I am trying to flash in two ways:
1) From the flash itself (Firmware update).
2) Externally (initial flash).
Ad 1)
This is the most important one for me.
To achieve this I need to execute my firmware update code in RAM (and
make sure that interrupt vectors and such reside there as well).
I believe I have to use IAP. JTAG is also a serial interface, but I
don't think it is possible to connect ISP and JTAG (UART only). IAP is
not really a problem, but I do not know how to connect my IAP
implementation to the JTAG interface. So basically: How do I copy data
over the JTAG interface to RAM?
Ad 2)
I can use the Philips ISP flash tool to flash via the UART interface or
any commercially available tool via the JTAG interface. But I want to
be able to batch this process (and maybe configure it). I must use the
JTAG interface and I am the only budget available. :-)
Thanks in advance for any help,
Greetz,
David

(You need to be a member of lpc2000 -- send a blank email to lpc2000-subscribe@yahoogroups.com )
ovidearistide wrote:
>Hi,
>
>I am trying to program my flash memory via the JTAG interface.
>However, I am unable to find enough documentation on the JTAG interface.
>Can anyone give me a kickstart?
>
>I am trying to flash in two ways:
>1) From the flash itself (Firmware update).
>2) Externally (initial flash).
>
>Ad 1)
>This is the most important one for me.
>To achieve this I need to execute my firmware update code in RAM (and=20
>make sure that interrupt vectors and such reside there as well).
>I believe I have to use IAP. JTAG is also a serial interface, but I=20
>don't think it is possible to connect ISP and JTAG (UART only). IAP is=20
>not really a problem, but I do not know how to connect my IAP=20
>implementation to the JTAG interface. So basically: How do I copy data=20
>over the JTAG interface to RAM?
>=20=20
>
In itsy-bitsy steps. JTAG is merely a series of very long shift=20
register chains. These shift registers allow access to the=20
micro-internals of the CPU.
Historically, JTAG was devised to meet two needs:
1. Auto Test Engineering (ATE) was faced with higher and higher density=20
boards that they needed to test. The old "bed of nails" vacuum fixtures=20
were no longer able to work on these board.
2. Software / Hardware engineers found it difficult to use clumsy pods=20
to either clamp onto or replace the new surface mounted CPU chips.
So, JTAG was born.
There is a lot of information regarding JTAG on the net, it is an IEEE=20
standard. You can purchase the document, or, find various tutorials +=20
docs for free on the net, or, you can take apart / work with JTAG=20
software as found on sourceforge and other sites offering OSS.
>Ad 2)
>I can use the Philips ISP flash tool to flash via the UART interface or=20
>any commercially available tool via the JTAG interface. But I want to=20
>be able to batch this process (and maybe configure it). I must use the=20
>JTAG interface and I am the only budget available. :-)
>
>=20=20
>
Well, you can save money, but you will spend time, lots of it, writing a=20
TAP controller to run the JTAG.
Regards,
TomW
--=20
Tom Walsh - WN3L - Embedded Systems Consultant
http://openhardware.net, http://cyberiansoftware.com
"Windows? No thanks, I have work to do..."
----------------------------------------------------
=20
=20
=20

(You need to be a member of lpc2000 -- send a blank email to lpc2000-subscribe@yahoogroups.com )