ARM Cortex R4F User Manual

Page 325

Advertising
background image

Debug

ARM DDI 0363E

Copyright © 2009 ARM Limited. All rights reserved.

11-56

ID013010

Non-Confidential, Unrestricted Access

Software access to the DCC

Software running on the processor that sends data to the debugger through the target-to-host
channel can use the sequence of instructions that Example 11-2 shows.

Example 11-2 Target to host data transfer (target end)

; r0 -> word to send to the debugger

WriteDCC

MRC

p14, 0, PC, c0, c1, 0

BEQ

WriteDCC

MCR

p14, 0, Rd, c0, c5, 0

BX

lr

Example 11-3 shows the sequence of instructions for sending data to the debugger through the
host-to-target channel.

Example 11-3 Host to target data transfer (target end)

; r0 -> word sent by the debugger

ReadDCC

MRC

p14, 0, PC, c0, c1, 0

BCC

ReadDCC

MRC

p14, 0, Rd, c0, c5, 0

BX

lr

Debugger access to the DCC

When not in debug state, a debugger can access the DCC through the external interface. The
following examples show the pseudo-code operations for these accesses.

Example 11-4 shows the code for target-to-host data transfer.

Example 11-4 Target to host data transfer (host end)

uint32

ReadDCC()

{

// Step 1. Poll DSCR until DTRTXfull is set to 1.
repeat
{

dscr := ReadDebugRegister(34);

}
until (dscr & (1<<29));
// Step 2. Read the value from DTRTX.
dtr_val := ReadDebugRegister(35);

return dtr_val;

}

Example 11-5 shows the code for host-to-target data transfer.

Example 11-5 Host to target data transfer (host end)

WriteDCC(uint32 dtr_val)

Advertising
This manual is related to the following products: