KIT_TC1797_SK Infineon Technologies, KIT_TC1797_SK Datasheet - Page 74

no-image

KIT_TC1797_SK

Manufacturer Part Number
KIT_TC1797_SK
Description
KIT STARTER AUDO FUTURE TC1797
Manufacturer
Infineon Technologies
Series
Audo Futurer
Type
MCUr

Specifications of KIT_TC1797_SK

Contents
Board, Adapters, Cables, CD, Power Supply
Lead Free Status / Rohs Status
Lead free / RoHS Compliant
For Use With/related Products
TC1797
Other names
KITTC1797SKIN
OCDS_TC.027 BAM breakpoints with associated halt action can poten-
tially corrupt the PC.
BAM breakpoints can be programmed to trigger a halt action. When such a
breakpoint is taken the CPU will go into HALT mode immediately after the
instruction is executed. This mechanism is broken in the case of conditional
jumps. When a BAM breakpoint with halt action is triggered on a conditional
jump, the PC for the next instruction will potentially be corrupted before the CPU
goes into HALT mode. On exiting HALT mode the CPU will see the corrupted
value of the PC and hence resume code execution from an erroneous location.
Reading the PC CSFR whilst in HALT mode will also yield a faulty value.
Workaround
In order to avoid PC corruption the user should avoid placing BAM breakpoints
with HALT action on random code which could contain conditional jumps.The
simplest thing to do is to avoid BAM breakpoints with HALT action altogether. A
combination of BBM breakpoints and other types of breakpoint actions can be
used to achieve the desired functionality.:
Workaround for single-stepping:
An ’intuitive’ way of implementing single-stepping mode is to place a halt-action
BAM breakpoint on the address range from 0x00000000 to 0xFFFFFFFF.
Every time the CPU is woken up via the CERBERUS it will execute the next
instruction and go back to HALT mode. Unfortunately this will trigger the bug
described by the current ERRATA.
The solution is to implement single-stepping using BBM breakpoints:
TC1797, EES-AC, ES-AC, AC
2) Associate the two debug ranges with BBM breakpoints.
3) Associate the BBM breakpoints with a HALT action.
4) Wake up the CPU via CERBERUS
5) CPU will execute the next instruction, update the PC and go to HALT
mode.
6) Start again (go back to 1)
1) Create two debug trigger ranges:
First range: 0x00000000 to current_instruction_pc (not included)
Second range: current_instuction_pc (not included) to 0xFFFFFFFF
74/101
Functional Deviations
Rel. 1.3, 18.12.2009
Errata Sheet

Related parts for KIT_TC1797_SK