Is the DAP which enable to read CPU registers during JTAG debug session ?

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Is the DAP which enable to read CPU registers during JTAG debug session ?

1,451 Views
fmajeric
Contributor III

Hi all,

I need some precision about JTAG scan chain.

I'm misunderstanding what is the device which halt/run the CPU during a JTAG debug session.

For example when I connect a JTAG debug tool to the JTAG pins, which device on the JTAG daisy-chain enable to read the CPU registers or halt it ?

In the document IMX6SDLRM, Rev. 2, 04/2014:

http://cache.nxp.com/files/32bit/doc/ref_manual/IMX6SDLRM.pdf?fsrch=1&sr=1&pageNum=1

It is explaned (p. 364/5829):

"The SJC module is the bridge between external development and test instrumentation and

the internal JTAG-accessible debug and test resources."

An overview of the JTAG architecture  is given(p. 4914/5829)

SJC2.jpg

On the JTAG daisy-chain there are in particular 2 devices :

- The OnCE (On chip Emulator) of the SDMA

- The DAP (Debug Acces Port)

It is explained (p.366/5829) :

"The SDMA debug features are primarily defined by the OnCE portion of its design."

Please, I need some precision:

[Q1] Does the OnCE portion is used for debugging only the SDMA 32-bit RISC processor ?

[Q2] If I want to halt Cortex-A9 core, read its registers this is the DAP module which work on the JTAG chain ?

Thank you for any help.

Fabien.

2 Replies

1,073 Views
art
NXP Employee
NXP Employee

The answer to both of your questions is "Yes".


Have a great day,
Artur

0 Kudos

1,073 Views
sinanakman
Senior Contributor III

Hi Fabien

[Q1] Does the OnCE portion is used for debugging only the SDMA 32-bit RISC processor ? :

Yes, OnCE is unrelated if you are trying to debug Cortex-A9 core.

[Q2] If I want to halt Cortex-A9 core, read its registers this is the DAP module which work on the JTAG chain ? :

Correct.

To give you an idea, here is the jtag chain description for iMX6Q we use with

our debugger (BDI3000 from Abatron) :

#0 SCANPRED 2 9 ;count for SJC and SDMA

#0 SCANSUCC 0 0 ;no device after DAP

Which tells our debugger to skip the first 2 devices in

the scan chain with a IR length of 9. Your JTAG

debugger might have a different way to describe the

DAP in the chain.

Hope this helps

Regards

Sinan Akman