(C) PLS Programmierbare Logik & Systeme GmbH
Matthias NoackPLS Development Tools
Troubleshooting and Run-Time Observation of GTM with PLS’s
Universal Debug Engine
Bosch GTM Tech Day 2017
(C) PLS Programmierbare Logik & Systeme GmbH
More than 25 years in the tool market
PLS Development Tools
Bosch GTM Tech Day 20172
(C) PLS Programmierbare Logik & Systeme GmbH
Complete toolset to debug, test & trace of deeply embedded systems Modular architecture
Software Debug environment on PC
Hardware Target access
Support for different Debug I/F
Universal Debug Engine (UDE)
Bosch GTM Tech Day 20173
(C) PLS Programmierbare Logik & Systeme GmbH
Vendor specific
Attached to GTM, not part of it
GTM debug information connected to SoC’s trace system
Support for run-mode debugging as part of GTM IP on the roadmap
Bosch GTM Tech Day 2017
GTM Integration into Debug System
GTMDI
NXP MPC57xxST SPC57/SPC58
Infineon AURIX™
4
(C) PLS Programmierbare Logik & Systeme GmbH
MCS trace Program trace (fetch trace) Data trace (r/w) for RAM accesses Parallel trace of single channel / multi channels Address compare and triggers for code addresses
TIM / TOM / ATOM trace Two trace channels trace of two modules in parallel
ARU data trace Two trace channels trace of two ARU debug channels in parallel
ARU provides two independent debug channels Configuration of ARU read address
Bosch GTM Tech Day 2017
General Features of GTM Trace (1)
5
(C) PLS Programmierbare Logik & Systeme GmbH
DPLL data trace Trace of one DPLL memory module
TBU trace Trace of timestamp of one TBU Not available for MPC57xx, SPC57/SPC58 devices
Parallel trace of GTM and main cores Global timestamp Cross-triggers for signaling GTM ↔ Cores (e.g. trace start / stop)
Bosch GTM Tech Day 2017
General Features of GTM Trace (2)
6
(C) PLS Programmierbare Logik & Systeme GmbH
Monitoring Program execution of MCS channels Data transfers (MCS, DPLL RAMs, ARU) Module signals
Debugging MCS execution Monitoring program flow
Debug GTM / core interaction Synchronous start/stop GTM together with main cores
Bosch GTM Tech Day 2017
Debugging Use Cases
7
(C) PLS Programmierbare Logik & Systeme GmbH
A trace and debug task can be composed of predefined subtasks
Examples: Observe system components
(program flow, data, signals,…) Initiate actions (enable/disable
trace for code / data /…, count, use timers, use sequencers, etc.)
Bosch GTM Tech Day 2017
Trace based Debugging
Define a trace/debug task
What has to be recorded When it has to be recorded
Run the trace
Analyze the trace result
8
(C) PLS Programmierbare Logik & Systeme GmbH
Universal Emulation Configurator (UEC) Graphical tool to compose trace
and debug tasks
Drag’n’drop predefined subtasks (configblocks) from library to task panel
Bosch GTM Tech Day 2017
Trace based Debugging with UDE
Analyze trace Sequence of executed
code
Data transfers
Signals of GTM modules
Library
Task panel
Parallel trace of several cores and GTM
9
(C) PLS Programmierbare Logik & Systeme GmbH
Triggered program trace Trace until MCS channel reaches code address
Bosch GTM Tech Day 2017
Example: MCS Program Trace
Select MCS module and channel
Enable program traceand timestamps
Select GTM as trace source
Stop trace recording@ code address
Stop trace recording@ code address
10
(C) PLS Programmierbare Logik & Systeme GmbH
Trace of GTM signals TOM_OUT TIM F_OUT ATOM_CHx_OUT …
Events based on GTMsignals
Bosch GTM Tech Day 2017
Example: GTM Signal Trace
Mark rising of events
Enable signal traceand timestamps
Select signals and filter
Start trace recording@ signal rise
11
(C) PLS Programmierbare Logik & Systeme GmbH
Monitoring GTM interrupt Parallel trace of MCS
channel and main core Exact timing of interrupt
handling
Bosch GTM Tech Day 2017
Example: GTM / Core Interaction
Capture program trace
Enable monitoring ofGTM and Core0
Select MCS module and channel
Trace recording around Core0 interrupt handler
Rise IRQ
Interrupt @ Core0
Begin of IRQ handler
12
(C) PLS Programmierbare Logik & Systeme GmbH
Based on GTM-IP Debug feature set
Suspend hole GTM Synchronous stop/start together
with main cores Configurable
Independ Selected cores All cores
Access to GTM registers Core registers (Registers of MCSx_CHz)
Module registers
Bosch GTM Tech Day 2017
Run-Mode Debugging – Current State
13
(C) PLS Programmierbare Logik & Systeme GmbH
Integration of Debug functionality into GTM-IP Expected features for MCS code debugging
Breakpoints Single stepping
Availability of C-Compilers (e.g. HighTec) C-Source code debugging
Bosch GTM Tech Day 2017
Outlook GTM Run-Mode Debugging
14
(C) PLS Programmierbare Logik & Systeme GmbH
PLS Development ToolsTechnologiepark02991 LautaGermany
Phone +49 - 35722 - 384 - 0
Fax +49 - 35722 - 384 - 69
Matthias Noack