Yahoo Groups archive

Lpc2000

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

Message

Re: [lpc2000] Re: JTAG commands are secret?

2005-11-04 by piotr.zbysinski@ep.com.pl

>> :) Really? If so, how can you load SRAM via JTAG if TAP in JTAG (as
>> : IEEE1149
>> standard says) recognizes _only_ 5 commands (used _only_ for testing)? In
>> devices with JTAG used for other than testing purposes  (like SRAM/Flash
>> loading, debugging etc.) are special commands with codes different than 5
>> standard commands (like ISP_xxx in PLDs). There is no way to use JTAG in
>> other way than standard 16 states without _special_ codes.
>
> ARM debugging uses optional/private instructions in conjunction with the
> public INTEST instruction. These are documented in the ARM datasheets.
>

OK, thanks. I'll try to find them once more. As I remeber this information 
(command codes) is not there included, but maybe my memory is poor?

>>
>> Executing instruction is possible after loading. You say "through" - I
>> agree, but my question is: how to say to JTAG "through"?
>>
> Again, this is documented in the ARM datasheets. All ARM7 cores behave 
> similar
> (there are differences, but you can work around those) as far as debugging 
> is
> concerned. Using the scan chain select register (which is selected by the
> SCAN_N JTAG instruction) you read/write the Embedded-ICE scan chain and 
> the
> Core scan chain.
>
>> > so you execute this way small code
>> > which do writes to your SRAM the information you want to write to the
>> > flash (learn ARM assembler first for the data store commands ;) then
>> > small code which calls Flash write IAP and you are set
>>
>> Sure, all of this is possible _after_ loading. My question is: "how to 
>> load
>> SRAM"?
>
> You scan the proper instruction to write core registers into the 
> processor,
> followed by a "store multiple" instruction that is flagged to be executed 
> at
> "system speed". Then you select the RESTART JTAG instruction, the core
> synchronises back to system speed (from debug mode), writes the memory, 
> and
> reenters debug. Repeat those steps until all your data is in SRAM.
>
>> Thank you for "learn" suggestion ;-)
>> Piotr
>
> Regards, Dominic
>

Thanks a lot!
Piotr

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.