(Trace32) Debugger rh850
(Trace32) Debugger rh850
Release 09.2023
MANUAL
RH850 Debugger and Trace
TRACE32 Directory
TRACE32 Index
RH850 .......................................................................................................................................
History ................................................................................................................................ 7
Introduction ....................................................................................................................... 7
Available Tools 7
Debugger 8
Software-only Debugger for XCP 8
SFT Trace 8
On-chip Trace 8
High-Speed Serial Off-chip Trace (Aurora NEXUS) 9
Parallel Off-chip Trace (parallel NEXUS) 9
Co-Processor Debugging (GTM) 9
Multicore Debugging 9
Software Installation 10
Related Documents 10
Demo and Start-up Scripts 11
Brief Overview of Documents for New Users 11
Warning .............................................................................................................................. 12
Configuration ..................................................................................................................... 16
System Overview 16
Troubleshooting ................................................................................................................ 20
SYStem.Up Errors 20
FAQ ..................................................................................................................................... 20
Debugging .......................................................................................................................... 21
RH850 Debug Interface Modes 21
JTAG Mode 21
LPD4 Mode 21
LPD1 Mode 22
UART Mode 22
Breakpoints 24
Software Breakpoints 24
Onchip Breakpoints 24
Breakpoint in ROM 25
Example for Breakpoints 25
Access Classes 26
Access Classes to Memory and Memory Mapped Resources 26
Access Classes to Other Addressable Core and Peripheral Resources 27
Support for Peripheral Modules 29
Runtime Measurement 29
Multicore Debugging 30
SMP Debugging 30
AMP Debugging 32
Tracing ............................................................................................................................... 36
SFT Trace via LPD4 36
NEXUS On-chip Trace 36
External Trace Ports (Parallel NEXUS/Aurora NEXUS) 36
Tracing the Program Flow 37
Tracing of Data (read/write) Transactions 38
Example: Data Trace with Address Range 38
Trace Filtering and Triggering with Debug Events 39
Event Breakpoints 39
Overview 39
Example: Selective Program Tracing 40
Example: Event Controlled Program/Data Trace Start and End 41
Example: Event Controlled Trace Recording 42
Example: Event Controlled Trigger Signals 42
Example: Event Counter 43
Tracing Peripheral Modules / Bus Masters 43
Version 10-Oct-2023
History
Introduction
This document describes the processor specific settings and features for RENESAS RH850.
Please keep in mind that only the Processor Architecture Manual (the document you are reading at the
moment) is CPU specific, while all other parts of the online help are generic for all CPUs supported by
Lauterbach. So if there are questions related to the CPU, the Processor Architecture Manual should be your
first choice.
If some of the described functions, options, signals or connections in this Processor Architecture Manual are
only valid for a single CPU or for specific family lines, the name(s) of the family/families is/are added in
brackets.
Available Tools
This chapter gives an overview over available Lauterbach tools for the RH850 processors.
Furthermore it is required to use a Debug Module from the POWER series, e.g.
The DEBUG INTERFACE (LA-7701) does not support this processor series.
TRACE32 supports debugging over a 3rd-party tool using the XCP protocol. For details see “XCP Debug
Back-End” (backend_xcp.pdf).
SFT Trace
SFT trace (software trace) requires no extra Lauterbach hardware. Trace data can be saved to the On-chip
trace or it can be streamed to the debug box in real time (LPD4 mode only). In streaming mode up to
32MRec of trace data can be recorded.
SFT-trace requires code instrumentation which typically is provided by the compiler tool. TRACE32 reads all
SFT-trace symbol information from the loaded ELF file (currently only supported for Greenhills compiler).
Beside the display of SFT string messages, the display of function charts and calculation of runtime-
statistics is supported.
On-chip Trace
On-chip tracing requires no extra Lauterbach hardware, it can be configured and read out with the regular
debug hardware. On-chip tracing requires a trace license (LA-3734X).
Tracing requires the parallel preprocessor and a POWER TRACE II / POWER TRACE III module.
Debugging the RH850 coprocessors GTM is included free of charge, i.e. there is no additional license
required.
For details about coprocessor debugging, see the specific Processor Architecture Manuals:
Multicore Debugging
Lauterbach offers multicore debugging and tracing solutions, which can be done in two different setups:
Symmetric Multiprocessing (SMP) and Asymmetric Multiprocessing (AMP). For details see chapter
Multicore Debugging.
Multicore debugging of multiple RH850 cores requires the License for Multicore Debugging (MULTICORE).
Please follow chapter “Software Installation” (icd_quick_installation.pdf) on how to install the TRACE32
software:
• For a complete installation of TRACE32 under Linux, see “PC_LINUX” in TRACE32 Installation
Guide, page 23 (installation.pdf).
Related Documents
• “GTM Debugger and Trace” (debugger_gtm.pdf): Debugging and tracing the Generic Timer
Module (GTM).
• “Onchip/NOR FLASH Programming User’s Guide” (norflash.pdf): Onchip FLASH and off-chip
NOR FLASH programming.
• “XCP Debug Back-End” (backend_xcp.pdf): Debugging over a 3rd-party tool using the XCP
protocol.
Lauterbach provides ready-to-run start-up scripts for known hardware that is based on RH850.
You can also manually navigate in the ~~/demo/rh850/ subfolder of the system directory of TRACE32.
Architecture-independent information:
• “Training Basic Debugging” (training_debugger.pdf): Get familiar with the basic features of a
TRACE32 debugger.
Architecture-specific information:
• “Processor Architecture Manuals”: These manuals describe commands that are specific for the
processor architecture supported by your Debug Cable. To access the manual for your processor
architecture, proceed as follows:
• “OS Awareness Manuals” (rtos_<os>.pdf): TRACE32 PowerView can be extended for operating
system-aware debugging. The appropriate OS Awareness manual informs you how to enable the
OS-aware debugging.
• “XCP Debug Back-End” (backend_xcp.pdf): This manual describes how to debug a target over a
3rd-party tool using the XCP protocol.
Signal Level
The debugger output voltage follows the target voltage level. It supports a voltage range of 0.4 … 5.2 V.
ESD Protection
1. Disconnect the Debug Cable from the target while the target power is
off.
2. Connect the host system, the TRACE32 hardware and the Debug
Cable.
Power down:
Before TRACE32 can get control of the RH850, the cpu already has started the application startup code.
This is a restriction of the RH850 core!
It depends on the executed startup code which peripherals are initialized and if this can cause trouble for the
debugging session. E.g.
• enable watchdog
• ECC errors …
To prevent unexpected side effects of unwanted code execution at SYStem.Up, an idle-loop should
be placed to the reset exception handler.
What to do:
• Add some “NOP” instructions to the beginning of your “reset exception handler”
The “NOP” instructions are just place holders and can stay in your application code.
Patching example:
FLASH.ReProgram ALL
Data.LOAD.Elf <file> /<options> ; load application code
Data.Assemble NOP-lable JR $-0 ; patch jump-to-itself
FLASH.Reprogram OFF
• The compiler can generates HLL line information which points to odd addresses. For TRACE32
the HLL line information and its address has priority, so it can happen the disassembly of certain
code lines is terminated. In this case “/////////” is displayed. As workaround TRACE32 can ignore
such HLL line information. Use command: sYmbol.CLEANUP.MidInstLines
• The compiler can generate bitfields in inverted order. Unfortunately the ELF files does not
contain any information about the bit order in use. In case of wrong bit-variable display please
use the option /ALTBITFIELDS when loading the code.
Locate the debug connector as close as possible to the processor to minimize the capacitive influence of the
trace length and cross coupling of noise onto the debug signals.
Reset Line
Ensure that the debugger signal RESET is connected directly to the RESET of the processor. This will
provide the ability for the debugger to drive and sense the status of RESET.
Ensure the application sets the register WUFMSK0[31] to “0” to enable the TDI debug line as a wake-up
factor. This becomes important if the debugger should attach to an already running application which has
entered the STOP- or DeepSTOP mode.
TRACE32 displays the message “running (stopmode)” in the state line if the RH850 device enters the
STOP- or DeepSTOP-mode. The message will switch to “running (stop occurred)” as soon as there is a
wake-up event.
Typically the wake-up is done by the application. Additionally there are several wake-up conditions which are
caused by the debugger:
• Break (Break.direct)
System Overview
This figure shows an example of how to connect the TRACE32 hardware to your PC and your target board.
PC or
Workstation
Target
USB
Connector
Cable
Debug
POWER DEBUG INTERFACE / USB 3
In this section:
1. Select the device prompt B: for the ICD Debugger, if the device prompt is not active after the
TRACE32 software was started.
B:
SYStem.CPU R7F701035
3. If the TRACE32-ICD hardware is installed properly, the following CPU is the default setting:
MAP.BOnchip 0x00000000++0x7FFFF
SYStem.Up
This command resets the CPU and enters debug mode. After this command is executed, it is possible
to access the registers. Set the chip selects to get access to the target memory.
Data.Set…
The start-up can be automated using the programming language PRACTICE. A typical start sequence is
shown below. This sequence can be written to a PRACTICE script file (*.cmm, ASCII format) and executed
with the command DO <file>.
*) These commands open windows on the screen. The window position can be specified with the WinPOS
command.
Hot plug-in is only supported for JTAG and LPD4 debug mode. Follow these steps to attach the debugger to
a running system:
1. Select the right debug-interface mode, set the Debug Cable to tri-state mode and connect it to
the target.
SYStem.CONFIG.DEBUGPORTTYPE LPD4
SYStem.Mode.NoDebug
SYStem.CPU R7F701035
SYStem.Mode.Attach
Break
List
For information about SMP and AMP debugging, see “Multicore Debugging”, page 30.
SYStem.Up Errors
The SYStem.Up command is the first command of a debug session where communication with the target is
required. If you receive error messages while executing this command this may have the following reasons.
FAQ
The RH850 offers three Debug Interface Modes (JTAG, LPD1, LPD4) plus the SerialFlashProgramming
mode by use of the same debug connection.
• The DebugInterface modes are selected by the setting of the CPU OptionBytes.
If TRACE32 can not connect to the CPU it might be necessary to modify the Option-Byte settings or
the TRACE32 “DebugPortType” setting. Option Byte programming can be done in
SerialFlashProgramming mode only (see below).
JTAG Mode
• Full debug/trace support
LPD4 Mode
• Same functions/limitations as in JTAG mode
• There are RH850 CPU versions which do not support LPD1 mode!
UART Mode
• For serial flash programming and OptionByte programming (no debugging!)
• SYStem.Mode Prepare
The script opens a dialog window which asks for some target-specific parameters
In the scripts you can find some example setting which were working well with the Renesas evaluation
boards.
Before flash and/or Option-Byte programming, please verify serial communication works well.
Check communication
• The SIGNATURE line shows the detected CPU type (e.g. “R7F701Z00”).
• If the SIGNATURE is wrong --> check clock and baud rate settings and try again.
The Option-Bytes are described in the CPU User Manual. For programming use command:
SYStem.Option.OPBT <opbt0>....<opbt7>
The Option-Bytes are programmed immediately, they become effective at the next RESET (SYStem.Up).
There are two types of breakpoints available: Software breakpoints (SW-BP) and on-chip breakpoints (HW-
BP).
Software Breakpoints
Software breakpoints are the default breakpoints. A special breakcode is patched to memory so it only can
be used in RAM or FLASH areas.There is no restriction in the number of software breakpoints.
Onchip Breakpoints
Each core of a RH850 device is equipped with 12 Onchip breakpoints. These breakpoints only can be set if
the RH850 has stopped program execution.
The following list gives an overview of the usage of the on-chip breakpoints by TRACE32:
With the command MAP.BOnchip <range> it is possible to inform the debugger about ROM
(FLASH,EPROM) address ranges in target. If a breakpoint is set within the specified address range the
debugger automatically uses the available on-chip breakpoints.
Software breakpoints:
On-chip breakpoints:
Access classes are used to specify how TRACE32 PowerView accesses memory, registers of
peripheral modules, addressable core resources, coprocessor registers and the TRACE32 Virtual
Memory.
• An access class, which consists of one or more letters/numbers followed by a colon (:)
Command: Effect:
Examples of usage:
Command: Effect:
The following access class is used to access system registers which are not mapped into the processor’s
memory address space.
The RH850 supports 256 System Registers which are divided into 8 groups (selID) with 32 registers (regID)
each.
Using the SR: access class the System Register address is defined by:
• Addressbit(4..0) = regID
• Addressbit(7..5) = selID
The following access class is used to access chip internal debug registers. Use this only if requested by
Lauterbach! Accessing debug registers (read or write) without the background knowledge of their
functionality may have bad influence for debugging up to TRACE32 crash.
• Address bit(27) = select broadcast access to all assigned cores (for write access only)
TRACE32 supports access to the memory mapped registers of all peripheral modules. The peripheral
register description files (*.per, so-called PER-files) for the on-chip peripherals are included in TRACE32.
PER files for recent processors are usually not included in updates, but are available upon request.
For external peripherals and/or custom peripherals, it is possible to create additional PER files with custom
content. See “Peripheral Files Programming” (per_prog.pdf) for details.
Runtime Measurement
If the device is equipped with an Onchip- or Offchip-Trace then typically the trace recordings are used for
function-run-time and function-nesting analysis.
For devices without any trace, the Onchip BenchMarkCounters can be used for core-clock accurate
measurements of the min-, max- and average- runtimes. It is also possible to stop the program execution if
the runtime exceeds a predefined min- or max- value.
Beside that, the debuggers RunTime.state window gives detailed information about the complete runtime
of the application code and the runtime since the last Go, Step, Step.Over command. Runtime
measurement is done with a resolution of about 5 µs.
One or more cores (RENESAS terminology: “ProcessorElement” or “PEx”) can be assigned to a TRACE32
PowerView instance. The cores are referred to by it’s “ProcessorElement” index PE1 to PE6
TRACE32 supports either controlling each core with a separate PowerView instance (AMP debugging) or
controlling multiple cores with a single PowerView instance (SMP debugging). SMP debugging is only
possible for cores of the same architecture.
TRACE32 also supports mixed AMP/SMP operation. E.g. RH850/P1x-C devices can be controlled with two
PowerView instances, one for PE5_core (ICU-M) and one controlling PE1_core and PE2_core in SMP
mode.
SMP Debugging
In TRACE32 terminology, SMP debugging means to control more than one core in a single PowerView
instance. Use this method for cores which run the same kernel / instance of the operating system. Cores
controlled in a single PowerView instance share the following resources:
• Debug symbols
• OS Awareness
If it is desired to have control over any of the above resources separately for each core, AMP debugging
must be used.
SYStem.DETECT CPU
CORE.ASSIGN 1 3
Register
If any of the cores hits a breakpoint, PowerView automatically selects the core that hit the breakpoint. The
currently selected core displayed in the status bar and can be changed by right-clicking on the core field.
It is also possible to show more than one core context at the same time, using the option
/Core <logical_core_index>. All windows with core-dependent information support this option.
Register /CORE 0
Register /CORE 1
List /CORE 0
List /CORE 1
Example scripts for SMP debugging can be found in the demo folder.
• ~~/demo/rh850/hardware/
In AMP debugging mode, a separate PowerView instance is started for each core. The individual instances
are completely independent of each other, but it is possible to synchronize run-control and system mode
changes (see command SYnch).
An easy way to start multiple PowerView instances is to use T32Start. It is also possible to start further
instances from a PRACTICE script.
The following steps demonstrate the setup for AMP debugging, assuming that the application is already
programmed to FLASH:
SYStem.CONFIG.CORE 1. 1. SYStem.CONFIG.CORE 3. 1.
3. SYStem.CONFIG.Slave must be OFF for the core that starts running right form reset. Set to ON
for all other cores (that are released later by the first core).
5. Start debug session: SYStem.Up for the core that runs right from reset. SYStem.Mode.Attach for
all cores that are started later.
SYStem.Up SYStem.Mode.Attach
6. Core_0 is halted at the reset address and core_1 remains in reset, In order to halt core_1 as
soon as it is released from reset, issue the Break command.
Break
Example scripts for AMP debugging can be found in the demo folder.
• ~~/demo/rh850/hardware/
Before Flash programming can work TRACE32 has to be informed about the CPU's flash memory mapping.
This is done with the demo scripts in the ~~/demo/rh850/flash directory or by use of the TRACE32
AutoSetup.
AutoSetup offers a convenient way to connect to RH850 single-core devices and to configure TRACE32
for flash programming.
• Select AutoSetup for Debugging or AutoSetup for SerialFlashProgramming -> press OK.
The found configuration can be saved with command: STOre <file>.cmm SYStem FLASH
The TRACE32 message area (command AREA) presents all information which was read out of the CPU
and all executed TRACE32 configuration commands. In case the setup fails, please have a look to the
AREA window to clarify why it did not work.
RH850 multi-core devices often require chip/application specific startup sequences. detection typically
fails. Please have a look to the board specific scripts which can be found in the directory
~~/demo/rh850/hardware/
With FLASH.ReProgram ALL all code is loaded to a virtual memory first. This means you generate a
“flash-image” in virtual memory which can be modified with additional code downloads or code-patches. At
the same time the data is compared against the current flash content.
In the FLASH.List window all modified flash-segments are marked as “pending”. Only this flash-segments
will be erased/programmed.
NOTE:
This devices do not support memory-read in UART mode. As result an UART-Error message is displayed in
the AREA window. This is just for information and has no effect on flash programming. The Data.dump
window is grayed out as long as no data is loaded to virtual-memory.
The flash declaration of SerialFlashProgramming mode (UART) is different to the debug modes (JTAG,
LPD4, LPD1)! When switching between the modes it is necessary to do a new flash declaration setup (use
RH850->AutoSetup)!
Processors of RH850 series implement a variety of trace modules. Depending on the module, the trace
information is either stored on the processor or sent out through an external trace port. This section lists all
available trace modules, their configuration options and examples.
In LPD4 debug interface mode the RH850 can transfer SFT-trace messages (software trace) to the debug
box. No extra trace hardware or license is needed.
Many processors of the RH850 family implement a feature to store the NEXUS messages of cores and
peripheral trace clients into an on-chip trace memory.
Using the on-chip trace with just a debug cable (LA-3719) requires the on-chip trace license LA-3734X.
The on-chip trace license is not required if your tool in use contains one of the following parts:
The configuration of trace methods and clients is done through the NEXUS and TrOnchip command
groups.
NEXUS trace messages from cores and peripheral trace clients are conveyed off-chip via an external trace
port. External trace ports are only provided by RH850 emulation devices.
Depending on the processor, the messages are sent through a high-speed serial connection (XILINX Aurora
protocol) or through the parallel NEXUS AUX interface (MDO, MSEO, MCKO). Lauterbach offers the various
trace tools to record and store the trace information
The TRACE32 online help provides a “AutoFocus User’s Guide” (autofocus_user.pdf), please refer to this
manual if you are interested in details about Preprocessor Focus II .
The complete trace port configuration is done by TRACE32 automatically. No special settings are required.
This is the default method set in TRACE32. The processor is configured to send a trace message for indirect
branches only. Information about direct branches and amount of executed instructions is sent in occasional
resource full messages.
NEXUS.BTM ON
NEXUS.SYNC OFF
By default the NEXUS protocol uses an address compression algorithm to reduce the number of bytes per
NEXUS message. From time to time a synchronization message is sent which holds the complete (non
compressed) address of the program flow. For TRACE32 this message is the start for program flow
reconstruction.
All recordings before the synchronization message are ignored because it is not possible to calculate the
program flow. There are debug scenarios where you like to get a valid trace listing also for this “ignored”
records. In this case the NEXUS.SYNC option can help.
If ON, each NEXUS message holds the complete address, the address compression is disabled.
NEXUS.BTM ON
NEXUS.SYNC ON
There are RH850 devices with a bug in the NEXUS coding for Onchip-Trace. In case of flow-errors in the
trace listing please set NEXUS.SYNC ON and try again.
General data tracing is enabled using the command NEXUS.DTM. This command enables the data trace for
the full address space. The amount of generated trace messages is usually too high to be sent through the
trace port and the on-chip message FIFO will overflow.
The amount of generated trace messages can be reduced by defining address ranges for which data trace
is generated. Up to four address ranges are possible.
Use TraceData to limit the data trace to an address range. Up to 8 address ranges per core are possible.
TraceData has no impact on program trace messaging setting.
;In addition to full program trace, enable data trace for read accesses
;to the array flags
NEXUS.BTM ON
Var.Break.Set flags /Read /TraceData
Event Breakpoints
Each core of a RH850 chip is equipped with 16 Event breakpoints. TRACE32 uses them for:
The following list gives an overview of the usage of the Event breakpoints by TRACE32:
16 for each 8 8 8
Processor-Element or 4 ranges or 4 ranges range as bitmask
(core)
Event breakpoints are also supported for other Trace-Clients like GlobalRam, LocalRam, PeripheralBus.
Overview
Any Event Breakpoint can be configured to either trigger a watchpoint hit message, or to act as input event
for selective tracing. TRACE32 offers a variety of features based on watchpoints.
Event Breakpoints are set using the command Break.Set, similar to breakpoints that halt the core, but
additionally include an option to define the desired behavior:
<action> Behavior
TraceEnable Configure the trace source to only generate a trace message if the specified
event occurs. Complete program flow or data trace is disabled. If more than one
TraceEnable action is set, all TraceEnable actions will generate a trace
message.
TraceON If the specified event occurs, program and data trace messaging is started
TraceOFF (TraceON) or ends (TraceOFF). In order to perform event based trace start/end
to program trace and data trace separately, use Alpha-Echo actions.
TraceTrigger Stop the sampling to the trace on the specified event. A trigger delay can be
configured optionally using Analyzer.TDelay.
BusTrigger If the specified event occurs, a trigger pulse is generated on the podbus trigger
line. This trigger signal can be used to control other podbus devices (e.g.
PowerProbe) or to control external devices using the trigger connector of the
PowerDebug/PowerTrace module (see TrBus).
BusCount The specified event is used as input for the counter of the
PowerDebug/PowerTrace module. See Count for more information.
WATCH Set a watchpoint on the event. The CPU will trigger the EVTO pin if the event
occurs and generate a watchpoint hit message if the trace port is enabled.
Alpha - Echo Declares a special trace control / trigger event. The actual event is configured
through the TrOnchip window. Two classes of events are supported:
• Configure event based trace start/end for program and data separately
TraceEnable enables tracing exclusively for the selected events. All other program and data trace
messaging is disabled.
;Only generate a trace message when the core writes to variable flags[3].
Var.Break.Set flags[3] /Write /TraceEnable
;run application
Trace.Init
Go
WAIT 5.s
Break
;statistic analysis
Trace.STATistic.AddressDURation &a1 &a2
;plot time distance over time (can take some time for analysis)
Trace.PROFILECHART.DURATION /FILTERA ADDRess &a1 /FILTERB ADDRess &a2
NOTE: The analysis commands can also be used without TraceEnable breakpoints, but
the measurement will be less precise.
Program and data trace can be enabled and disabled based on debug events. TraceON and TraceOFF
control both program and data trace depending on NEXUS.BTM / NEXUS.DTM setting. TraceON and
TraceOFF control the message source, i.e. the core’s NEXUS module:
Debug/trace events can also be used to trigger and stop the trace recording (i.e. message sink):
TRACE32 can generate a trigger signal based on debug/trace events. The trigger signal can be used to
control PowerProbe or PowerIntegrator, as well as with external tools (using the trigger connector)
;Generate PODBUS trigger signal on data write event with data value
Var.Break.Set flags[9] /Write /Data.Byte 0x01 /BusTrigger
There is also a built-in event counter which can be used to count debug/trace events or to measure the event
frequency:
Many processors support tracing of peripheral bus master trace clients, e.g. DMA or GlobalRam controllers.
The clients are controlled with the NEXUS.CLIENT<x> commands.
As for the core’s data trace, the amount of generated trace messages is usually too high to be sent through
the trace port and the on-chip message FIFO will overflow.
The use of SFT software trace requires code instrumentation done by users or OS vendors. Dedicated
assembler instructions (DBCP, DBTAG, DBPUSH) are added to the code. When executed by the CPU,
program counter values, immediate data or general purpose register values are output. These messages
can be stored to the On-chip trace buffer or can be transferred in real time to the debug box by use of the
LPD4 debug port interface.
When using a GREENHILLS compiler, TRACE32 can extract all SFT-symbol information from the loaded
ELF file. The symbol information can be displayed with command sYmbol.List.PATCH.
The “enable” row shows the status of the SFT code instrumentation. If there is a checkmark the
instrumentation code is active, if there is none the original instrumentation code is patched by NOP
instructions and no SFT message is generated. A simple mouse-click to the checkmark enables/disables
the instrumentation code.
All other message types like branch-trace (BTM) or data-trace (DTM) should be set to OFF.
All windows related to the SFT recordings are opened with the command prefix “SFTT”.
e.g.:
SFTT.List
SFTT.Chart
Use: demo_sfttrace.cmm
When using SFT Software Trace the LPD4 debug interface has two different operating modes.
As a consequence real-time memory access is not supported during code execution. Breakpoint hits are
detected by TRACE32 and the LPD4 debug interface is automatically switched back to debug mode.
Setup:
• Select the highest possible LPD4 baud rate to get good trace performance.
All windows related to the SFT recordings are opened with the command prefix “SNOOP”.
e.g.:
SNOOP.List
SNOOP.Chart
Use: demo_sftsnoop.cmm
Opens the SYStem.CONFIG.state window, where you can view and modify most of the target
configuration settings. The configuration settings tell the debugger how to communicate with the chip on
the target board and how to access the on-chip debug and trace facilities in order to accomplish the
debugger’s operations.
Alternatively, you can modify the target configuration settings via the TRACE32 command line with the
SYStem.CONFIG commands. Note that the command line provides additional SYStem.CONFIG
commands for settings that are not included in the SYStem.CONFIG.state window.
<tab> Opens the SYStem.CONFIG.state window on the specified tab. For tab
descriptions, see below.
DebugPort Informs the debugger about the debug connector type and the
communication protocol it shall use.
Jtag Informs the debugger about the position of the Test Access Ports (TAP) in
the JTAG chain which the debugger needs to talk to in order to access the
debug and trace facilities on the chip.
For descriptions of the commands on the XCP tab, see “XCP Debug
Back-End” (backend_xcp.pdf).
The four parameters IRPRE, IRPOST, DRPRE, DRPOST are required to inform the debugger about the
TAP controller position in the JTAG chain, if there is more than one core in the JTAG chain (e.g. Arm + DSP).
The information is required before the debugger can be activated e.g. by a SYStem.Up. See Daisy-chain
Example.
For some CPU selections (SYStem.CPU) the above setting might be automatically included, since the
required system configuration of these CPUs is known.
TriState has to be used if several debuggers (“via separate cables”) are connected to a common JTAG port
at the same time in order to ensure that always only one debugger drives the signal lines. TAPState and
TCKLevel define the TAP state and TCK level which is selected when the debugger switches to tristate
mode. Please note: nTRST must have a pull-up resistor on the target, TCK can have a pull-up or pull-down
resistor, other trigger inputs need to be kept in inactive state.
DRPRE (default: 0) <number> of TAPs in the JTAG chain between the core of
interest and the TDO signal of the debugger. If each core in the system
contributes only one TAP to the JTAG chain, DRPRE is the number of
cores between the core of interest and the TDO signal of the debugger.
DRPOST (default: 0) <number> of TAPs in the JTAG chain between the TDI signal
of the debugger and the core of interest. If each core in the system
contributes only one TAP to the JTAG chain, DRPOST is the number of
cores between the TDI signal of the debugger and the core of interest.
TAPState (default: 7 = Select-DR-Scan) This is the state of the TAP controller when
the debugger switches to tristate mode. All states of the JTAG TAP
controller are selectable.
TCKLevel (default: 0) Level of TCK signal when all debuggers are tristated.
TriState (default: OFF) If several debuggers share the same debug port, this
option is required. The debugger switches to tristate mode after each
debug port access. Then other debuggers can access the port. JTAG:
This option must be used, if the JTAG line of multiple debug boxes are
connected by a JTAG joiner adapter to access a single JTAG chain.
Slave (default: OFF) If more than one debugger share the same debug port, all
except one must have this option active.
JTAG: Only one debugger - the “master” - is allowed to control the signals
nTRST and nSRST (nRESET).
Chip 0 Chip 1
• Core A: 3 bit
• Core B: 5 bit
• Core D: 6 bit
SYStem.CONFIG.IRPRE 6. ; IR Core D
SYStem.CONFIG.IRPOST 8. ; IR Core A + B
SYStem.CONFIG.DRPRE 1. ; DR Core D
SYStem.CONFIG.DRPOST 2. ; DR Core A + B
0 Exit2-DR
1 Exit1-DR
2 Shift-DR
3 Pause-DR
4 Select-IR-Scan
5 Update-DR
6 Capture-DR
7 Select-DR-Scan
8 Exit2-IR
9 Exit1-IR
10 Shift-IR
11 Pause-IR
12 Run-Test/Idle
13 Update-IR
14 Capture-IR
15 Test-Logic-Reset
<chip_index>: 1…i
<core_index>: 1…k
Default chip_index: derived from CORE= parameter of the configuration file (config.t32). The CORE
parameter is defined according to the start order of the GUI in T32Start with ascending values.
To provide proper interaction between different parts of the debugger, the systems topology must be
mapped to the debugger’s topology model. The debugger model abstracts chips and sub cores of these
chips. Every GUI must be connect to one unused core entry in the debugger topology model. Once the
SYStem.CPU is selected, a generic chip or non-generic chip is created at the default chip_index.
Non-generic Chips
Non-generic chips have a fixed number of sub cores, each with a fixed CPU type.
Initially, all GUIs are configured with different chip_index values. Therefore, you have to assign the
core_index and the chip_index for every core. Usually, the debugger does not need further information to
access cores in non-generic chips, once the setup is correct.
Generic Chips
Generic chips can accommodate an arbitrary amount of sub-cores. The debugger still needs information
how to connect to the individual cores e.g. by setting the JTAG chain coordinates.
Start-up Process
The debug system must not have an invalid state where a GUI is connected to a wrong core type of a non-
generic chip, two GUIs are connected to the same coordinate or a GUI is not connected to a core. The initial
state of the system is valid since every new GUI uses a new chip_index according to its CORE= parameter
of the configuration file (config.t32). If the system contains fewer chips than initially assumed, the chips must
be merged by calling SYStem.CONFIG.CORE.
Selects the interface to the target. The available options depend on whether TRACE32 uses a hardware
debugger or runs in HostMCI mode (without TRACE32 hardware).
HostMCI mode
XCP0 Selects the XCP backend as interface. For a detailed description and
examples, see “XCP Debug Back-End” (backend_xcp.pdf).
Default: JTAG.
It specifies the used debug port type. It assumes the selected type is supported by the target.
<option>: OFF
High
Low
HighwhenStopped
LowwhenStopped
SLAVE
Controls the WDTDIS pin of the debug port. This configuration is only available for tools with an Automotive
Connector (e.g., Automotive Debug Cable, Automotive PRO Debug Cable) and XCP.
HighwhenStopped The WDTDIS pin is driven high when program is stopped (not XCP).
LowwhenStopped The WDTDIS pin is driven low when program is stopped (not XCP).
SLAVE The WDTDIS state of the XCP slave is not changed. (XCP only)
<number>: 0..8
Configures if the debug port is shared with another tool, e.g., an ETAS ETK or ETKX. This option is only
available if an motive Debug Cable is connected to the PowerDebug module..
ON Request for access to the debug port and wait until the access is granted
before communicating with the target.
DownMode Select the mode of the reset signal when TRACE32 is in SYStem.Down
mode.
The current setting can be obtained by the PORTSHARING() function, immediate detection can be
performed using SYStem.DETECT.PortSHaRing.
This setting informs TRACE32 about the core clock frequency. During Serial-Flash-Programming mode this
value is sent to the CPU to configure the CPU internal PLL.
<cpu>: R7F701035 | …
Selects the JTAG port frequency (TCK). Any frequency up to 25 MHz can be entered, it will be generated by
the debuggers internal PLL.
For CPUs which come up with very low clock speeds it might be necessary to slow down the JTAG
frequency. After initialization of the CPUs PLL the JTAG clock can be increased.
If there are buffers, additional loads or high capacities on the JTAG lines, reduce
the debug speed.
Default: OFF.
If the system is locked, no access to the debug port will be performed by the debugger. While locked, the
debug connector of the debugger is tristated. The main intention of the SYStem.LOCK command is to give
debug access to another tool.
<mode>: CPU
StopAndGo
Denied
Selects the method for real-time memory access while the core is running.
All debugger windows which are opened with the option /E will use the selected type of memory access.
StopAndGo Enable real-time memory access (intrusive). Has to be used if the specified
memory location is not accessible with non-intrusive mode.
<mode>: Down
NoDebug
Prepare
Go
Attach
Up
NoDebug Disables the Debugger. The debug interface is forced to high impedance
mode.
Prepare Resets the target and sets the CPU to SerialFlashProgramming mode.
This setting only can be done if SYStem.CONFIG.DEBUGPORTYPE is
configured for UART or CSI mode. SerialFlashProgramming allows
programming of all CPU flash areas and OptionBytes. This mode can not
be used for debugging. See also: RH850 Debug Interface Modes.
Go Resets the target with debug mode enabled and prepares the CPU for
debug mode entry. After this command the CPU is in the SYStem.Up
mode and running. Now, the processor can be stopped with the break
command or until any break condition occurs.
Up Resets the target and sets the CPU to debug mode. After execution of
this command the CPU is stopped and prepared for debugging. All
register are set to the default value.
This setting informs TRACE32 about the target oscillator frequency. During Serial-Flash-Programming mode
this value is sent to the CPU to configure the CPU internal PLL.
Format: SYStem.RESetOut
If possible (nRESET is open collector), this command asserts the nRESET line on the debug connector.
This will reset the target including the CPU but not the debug port. The function only works when the system
is in SYStem.Mode.Up.
Enables TRACE32 specific support for the RH850 CalibrationFunctionUnits (G4-core variants only!).
The CalibrationFunctionUnits are only available in RH850 emulation devices. Typically the
CalibrationFunctionUnits are used by other tool vendors to replace FLASH areas by Calibration-RAM.
During debugging it can be useful to get access to the original flash content and/or to modify the contents of
the calibration-RAM.
• TRACE32 analyzes the address mapping configured in the CalibrationFunctionUnits. Users do not
need to know in which address-ranges original-flash and/or Calibration-RAM is accessible, the
remapping is done by TRACE32 automatically.
• The original flash content can be read by use of memory class “EAD:<flash_address>”.
• Memory class “EAD:<flash_address>” reads the memory content as it is seen by the CPU.
TriState (default) All drivers of the debug port are switched off.
Default: OFF.
Forces all list, dump and view windows to use the access class E: (e.g. Data.dump E:0x100) or to use the
format option %E (e.g. Var.View %E var1) without being specified. Use this option if you want all windows to
be updated while the processor is executing code. This setting has no effect if
SYStem.Option.MemAccess is disabled.
Sets the time that the debugger will drive the reset pin LOW, e.g. at SYStem.Up. If called without parameter,
the default reset hold time of 10ms is used.
RESET pin
The command is only relevant for devices which are equipped with an ICU-S unit.
FLASH.Erase 0xff200000++0xffff
FLASH.Auto ALL
Data.Set 0xff200000++0xffff 0x0 ; or any other value
FLASH.Auto OFF
3. Enable ICU-S.
SYStem.Option.ICUS ON
Disabling of the ICU-S is not supported by all devices, please check the CPU manuals. The ICU-S only can
be disabled if code- and data-flash is erased before.
3. Disable ICU-S.
The command is only relevant for RH850/E1x devices which support KeyCodes for OCDID, CFID and DFID
authentication.
- SYStem.Option.OCDID
- SYStem.Option.CFID
- SYStem.Option.DFID
Masks interrupts during assembler single steps. Useful to prevent interrupt disturbance during assembler
single stepping.
Masks interrupts during HLL single steps. Useful to prevent interrupt disturbance during HLL single
stepping.
The KEYCODE is sent to the CPU during system up to unlock the ID-Code-Protection unit. A matching
KEYCODE is a must to get debug control. More details on ID-Code-Protection can be found in the CPU-
Users-Manual.
<16x_8bit_values> Have to be the same value as present in CPUs ID-code input registers
ID_IN[0..3].
The command is only relevant for devices equipped with a G3Kx-core. For all other devices use command
SYStem.Option.OCDID.
Note: The Renesas Flash Programmer uses a different byte order for the KEYCODE programming. So it is
necessary to swap the bytes.
TRACE32: SYStem.Option.KEYCODE 0x33 0x22 0x11 0x00 0x77 0x66 0x55 0x44 0xBB 0xAA ....
Default: OFF
Enables the TRACE32 support for debugging virtualized systems. Virtualized systems are systems running
under the control of a hypervisor.
After loading a Hypervisor Awareness, TRACE32 is able to access the context of each guest machine. Both
currently active and currently inactive guest machines can be debugged.
• Addresses are extended with an identifier called machine ID. The machine ID clearly specifies to
which host or guest machine the address belongs.
The host machine always uses machine ID 0. Guests have a machine ID larger than 0.
TRACE32 currently supports machine IDs up to 30.
• The debugger address translation (MMU and TRANSlation command groups) can be individually
configured for each virtual machine.
The OCDID values are sent to the CPU during SYStem.Up to unlock the debug access. Matching values
are a must to get debug control.
Note: The Renesas Flash Programmer uses a different byte order for the OCDID programming. So it is
necessary to swap the bytes.
The CFID values are sent to the CPU during SYStem.Up to unlock the code flash access. Matching values
are a must to get debug control.
The DFID values are sent to the CPU during SYStem.Up to unlock the data flash access. Matching values
are a must to get debug control.
Display and reprogram of CPU OptionBytes(0 to 7). OptionByte programming is only supported in
SerialFlashProgramming mode.
The functionality of OptionBytes is described in the CPU user manual. OptionByte manipulation might be
necessary to activate a different debug interface mode (JTAG, LPD4 or LPD1).
Display and reprogram of CPU OptionBytes(8 to 15). OptionByte programming is only supported in
SerialFlashProgramming mode.
<mode>: Disabled
AsyncHalt
AsyncStart
ResetHalt
ResetStart
RESYNC
Default setting is ResetHalt. This option is only supported for RH850 devices with G4-core. If and how a
reset can be detected is set using SYStem.Option.ResetDetection.
AsyncHalt Halt core as soon as possible after reset was detected. The core will halt
shortly after the reset event.
BIST run enabled.
AsyncStart Halt core as soon as possible after reset was detected. The debugger
sets debug and trace configuration registers and afterwards starts the
core(s) again.
BIST run enabled.
ResetHalt When a reset is detected, the debugger keeps reset asserted and then
halts the core at the reset address.
BIST run disabled.
ResetStart When a reset is detected, the debugger keeps reset asserted and then
halts the core at the reset address. The debugger sets debug and trace
configuration registers and afterwards starts the core(s) again.
BIST run disabled.
RESYNC When a reset is detected, the debugger waits until reset is released.
Once the core is out of reset, the debugger sets debug and trace
configuration registers on-the-fly.
Default: RESETPIN. This option configures if the debugger’s reset detection is enabled and if enabled,
which signals are used to detect reset.
<method> Function
Default: ON.
Set to OFF if cpu RDY- pin is not available or not connected to the debug connector.
The setting is only relevant if debug communication is done in JTAG mode (DEBUGPORTTYPE == JTAG).
Terminate reset processing if target reset does not rise to high level within a certain period after debug-reset
release.
ON 20 seconds
<time>: 1us…10s
<reference>: OFF
RESET
RSTOUT
Sets the time that the debugger will wait after releasing the reset pin, e.g. at SYStem.Up. If called without
parameter, the default reset wait time is used (500us).
If the reference is set to OFF, the wait time starts when the debugger releases reset. If the reference is set to
RESET or RSTOUT, the wait time starts when the debugger detects that reset is released on the
corresponding pin.
Use this command when SYStem.Up fails, and the message AREA shows the message “Target reset
detected during system.up sequence”. A wait time of several ms should be sufficient. If a wait time > 10ms is
required, the target might require a stronger RESET pull-up resistor.
RESET pin
The RH850 supports disabling of several CPU core inputs. This can be useful to lock watchdog- or target
resets.
No function anymore.
Default: ON.
Default: ON.
Default: ON.
Default: ON.
Benchmark counters are on-chip counters that count specific hardware events, e.g., the number of executed
instructions. This allows to calculate typical performance metrics like clocks per instruction (CPI).The
benchmark counters can be read at run-time if real-time memory access is enabled (use the command
SYStem.MemAccess CPU).
Performance counters and event counters of RH850 CPUs can be started or stopped using on-chip
breakpoints. This A-to-B mode allows to determine performance metrics for a single code block.
• Performance-counters (BCNT0..4) can be used for runtime measurement and/or various event
counting. Runtime measurement is based on the core-clock frequency, the results are very
accurate.
• Time-counters (TCNT0..4) can be used for runtime measurement only. Clocking of the Time-
counters is based on the selected DebugPortType. The count-clock is typically slower than the
core-clock. For correct runtime measurement the minimum function-runtime should be more than
5 count-clocks.
JTAG --> JTAG-clock (NOTE: TRACE32 does not support a continuous JTAG-clock --> the
measurements are wrong. Counter TCNT0..4 can not be used in JTAG mode!)
LPD4 --> BaudRate frequency (set the SYStem.BAUDRATE as high as possible)
LPD1 --> Oscillator frequency
For information about architecture-specific BMC commands, see command descriptions below.
Enables event triggered counter start/stop. The events are defined using ALPHA and BETA breakpoints set
with Break.Set. Every time the Alpha breakpoint condition triggers, the counter is started. The counter stops
when the Beta breakpoint condition is triggered.
Example: This script measures the min-, max-, total- and average-runtime of the function sieve. This
measurement includes all interrupts, sub-function calls, etc.
<counter>: TCNT
BCNT
<event>: OFF
CLOCKS
ATOB
INST
BRA
EII
FEI
ASEXP
SEXP
STALL
NINT
DISINT
IFUIF
IFUIFNWR
FLASHIF
VCIIF
FLASHDF
FLASHDFNWR
The program execution stops if the counter-value exceeds the predefined trigger-value, see
BMC.<counter>.TRIGVAL.
Default:
Controls for all on-chip read/write breakpoints whether the debugger is allowed to change the user-defined
address range of a breakpoint (see Break.Set <address_range> in the figure below).
unmodified rangeYes
s
Ye
Range fits
Break.Set <addr_range> to debug
logic?
No Program
debug logic
modified range
ON
TrOnchip.
CONVert
No
OF
F
Error
The debug logic of a processor may be implemented in one of the following three ways:
1. The debug logic does not allow to set range breakpoints, but only single address breakpoints.
Consequently the debugger cannot set range breakpoints and returns an error message.
2. The debugger can set any user-defined range breakpoint because the debug logic accepts this
range breakpoint.
3. The debug logic accepts only certain range breakpoints. The debugger calculates the range that
comes closest to the user-defined breakpoint range (see “modified range” in the figure above).
In the Break.List window, you can view the requested address range for all breakpoints, whereas in the
Break.List /Onchip window you can view the actual address range used for the on-chip breakpoints.
Default: ON.
TRACE32 uses the CPU signal ‘EVTO-’ to force a trigger for Aurora trace recording (see command:
Break.Set … /TraceTrigger).
The CPU signal ‘EVTO-’ can also be used by other tools at the same time, which can cause functional
conflicts with the Aurora trace trigger input. In this case TrOnchip.EVTEN should be set to OFF.
Format: TrOnchip.RESet
Sets the TrOnchip settings and trigger module to the default settings.
Default: OFF.
If ON, breakpoints on single-byte, two-byte or four-byte address ranges only hit if the CPU accesses this
ranges with a byte, word or long bus cycle.
Format: TrOnchip.state
Controls for all scalar variables whether the debugger sets an HLL breakpoint with Var.Break.Set only on
the start address of the scalar variable or on the entire address range covered by this scalar variable.
single address
ON
TrOnchip.
Var.Break.Set <scalar>
VarCONVert
F
OF
addr range
OFF
No
Program
debug logic
unmodified rangeYes
s
Ye
Range fits
to debug
logic?
No
modified range
ON
TrOnchip.
CONVert
OF
F
Error
In the Break.List window, you can view the requested address range for all breakpoints, whereas in the
Break.List /Onchip window you can view the actual address range used for the on-chip breakpoints.
Default: All cores of the CPU are enabled and the program trace is just managed by the global setting of
NEXUS.BTM. For e.g. a CPU with eight cores the default <core_numbers> setting is 0,1,2,3,4,5,6,7
To disable the generation of trace messages for specific cores, exclude them from the <core_numbers> list.
Sets the data trace mode of the selected trace client. Select the trace client using
NEXUS.CLIENT<x>.SELECT before setting the trace mode.
When using “DTM” the client trace mode follows the setting of NEXUS.DTM.
Format: NEXUS.OFF
The debugger does not access any of the CPUs trigger- and trace-configuration registers.
The setting is needed if a different tool likes to use the CPUs trigger- and trace-unit exclusively. The setting
has to be done before the first Go or Step command to prevent any register configurations from the
TRACE32 side.
NOTE: Existing register configurations are not reset when switching to OFF, the settings
will stay active.
Format: NEXUS.ON
The NEXUS trace port is switched on. All trace registers are configured by the debugger.
Sets the NEXUS trace port frequency. For parallel NEXUS, the setting is the system clock divider. For Aurora
NEXUS, the setting is a fixed bit clock which is independent of the system frequency.
NOTES: Aurora NEXUS: Set the bit clock according to the processor’s data sheet.
Sets the nexus port width to the number of used MDO pins or Aurora lanes. The setting can only be
changed if no debug session is active (SYStem.Down).
Format: NEXUS.RESet
SFT messages are stored in On-chip trace memory or the external NEXUS trace hardware.
Stalls the program execution whenever the on-chip NEXUS-FIFO threatens to overflow. If this option is
enabled, the NEXUS port controller will stop the core’s execution pipeline until all messaged in the on-chip
NEXUS FIFO are sent. Enabling this command will affect (delay) the instruction execution timing of the CPU.
This system option, which is a representation of a feature of the processor, will remarkably reduce the
amount FIFO OVERFLOW errors, but can not avoid them completely.
There are RH850 devices with a bug in the NEXUS coding for Onchip-Trace. If there are flow-errors in the
trace listing please set “NEXUS.SYNC ON” and try again.
A correct timing-display of the program flow requires that the first timestamp-sync message appears in the
trace stream as early as possible. However, sometimes the first message appears at the very end of the
trace recording. As result, all the records before the very first timestamp-sync message are not displayed in
the Trace.List window. In this case the NEXUS.SyncPeriod value should be reduced (e.g. to 4096.) to
increase the appearance of timestamp-sync messages, then try again.
Format: NEXUS.state
When enabled, the processor is configured to add timestamps to the NEXUS messages. If the chip-external
trace is used (tracing to PowerTrace unit), on-chip timestamps are usually not needed, because the
PowerTrace unit will add it’s own timestamp. When using the on-chip trace, enable NEXUS.TimeStamps for
run-time measurements.
<function>: OFF
ProgramBREAK
ProgramTraceON
ProgramTraceOFF
DataTraceON
DataTraceOFF
TraceEnableClient<x>
TraceDataClient<x>
TraceONClient<x>
TraceOFFClient<x>
TraceTriggerClient<x>
BusTriggerClient<x>
BusCountClient<x>
WATCHClient<x>
<x>: [1 | 2]
Configures the functionality of the Alpha breakpoint. This breakpoint can be used to configure the on-chip
NEXUS trace for special core features and for the trace clients configured via NEXUS.CLIENT<x>SELECT.
For a description of the functionality, see Trace Filtering and Triggering with Debug Events.
Example 1: This script enables the core data trace at the entry of my_func and stop the data trace when the
core writes to address 0x40001230. (In contrast to TraceON/TraceOFF, here program trace is enabled
permanently):
Example 3: This script configures the trace of the DMA controller, so that DMA trace starts when the DMA
controller writes to 0x1000 and stops when DMA controller wrote 0x1040.
See TrOnchip.Alpha.
See TrOnchip.Alpha.
See TrOnchip.Alpha.
See TrOnchip.Alpha.
Syntax: CPU.BASEFAMILY()
Syntax: CPU.DEVICEID()
The device-id is read from the CPU during the SYStem.Up or SYStem.Mode.Prepare processing.
Syntax: CPU.SUBFAMILY()
Syntax: SYStem.BAUDRATE()
Returns the current value of the baudrate in the SYStem.BAUDRATE window. This function is only used by
the TRACE32 autosetup script.
Syntax: SYStem.CORECLOCK()
Returns the current value of the core clock frequency in the SYStem.CORECLOCK window. This function is
only used by the TRACE32 autosetup script.
Syntax: SYStem.OSCCLOCK()
Returns the current value of the target oscillator frequency in the SYStem.OSCCLOCK window. This
function is only used by the TRACE32 autosetup script.
Syntax: SYStem.CFID(<8x_32bit_values>)
Syntax: SYStem.DFID(<8x_32bit_values>)
Syntax: SYStem.OCDID(<8x_32bit_values>)
Syntax: SYStem.OPBT(<8x_32bit_values>)
The option-byte values are read from the CPU during SYStem.Mode.Prepare.
Syntax: SYStem.OPBT8(<8x_32bit_values>)
The option-byte values are read from the CPU during SYStem.Mode.Prepare.
Syntax: SYStem.RESETDETECTION()
Debug Connector 26
Connector Function
C Target connector
Jumper Function
Pin27 Set: Connects pin 27 of the target connector to pin 14 (WD) of AUTO26
Pin31 Set: Connects pin 31 of the target connector to pin 22 (BREQ) of AUTO26
Pin33 Set: Connects pin 27 of the target connector to pin 24 (BGNT) of AUTO26
Both debug connectors AUTO26 [A] or the JTAG14 [B] hold the same debug
signals coming from the target connector [C]. Only one debug connector must
be used at the time.
Signals in brackets are optional. These could be used if no additional 14pin debug connector is available on
the target. Please use an adaptor (LA-3885) to split the target signals for debug and trace.
We recommend to place the even numbered pins at the PCB border side (flex cable won't be twisted).
We recommend to place the even numbered pins at the PCB border side (flex cable won't be twisted).