Placeholder Image

Subtitles section Play video

  • >>Hello and welcome to this Video-Tutorial

  • >>my name is Ralf Kopsch - I am Senior Support Engineer for Keil Microcontroller Software Development Tools

  • >>Let me give you a brief overview of the Cortex-M Trace functionality

  • >>an outstanding feature of ARM Cortex-M based microcontrollers and the Keil MDK-ARM toolset

  • >>The limits of Run-Stop Debugging are apparent when testing time-critical control applications

  • >>like motor control or communication stacks

  • >>Single-stepping or breakpoints change the dynamic behavior

  • >>Frequently software problems can only be detected in the active or running system

  • >>Trace lets you analyze the running system

  • >>ARM Cortex M processors integrate the CoreSight Debug & Trace Logic

  • >>that offers the following features

  • >>The Breakpoint Unit allows run-stop debugging with up to 8 breakpoints

  • >>Memory Access allows monitoring of variables buffers and peripherals

  • >>while application code is running at full speed.

  • >>Data Watchpoints trace memory accesses with data value and program address

  • >>Optional program execution can be stopped

  • >>Exception- and Instrumented Trace communicate important program events via debug channels

  • >>Instruction Trace streams the complete program execution for recording and analysis

  • >>The various Trace types can be selectively enabled and contain timing information

  • >>Let me exemplify the usage of these trace features in the uVision Debugger

  • >>The Logic Analyzer uses Data Watchpoints and provides a graphical display of variable changes

  • >>You may choose up to 4 variables and select different display

  • >>modes to show state changes or an analogue signal

  • >>Data Watchpoints allow also Trace Recording of memory accesses

  • >>ITM Trace communicates for example details about interrupt execution

  • >>It shows how often interrupts are executed

  • >>and provides information about minimum and maximum execution time of the interrupt function.

  • >>ITM Trace displays also RTOS thread execution over time in the Event Viewer

  • >>and may be used with code instrumentation

  • >>It even enables a printf-style debug output

  • >>The Performance Analyzer uses Instruction Trace

  • >>While your application is running you can identify performance bottlenecks

  • >>and time-consuming hotspots in order to optimize the algorithms

  • >> Instruction Trace enables also Code Coverage to fulfill certification requirements

  • >> and In-depth analysis of the execution history to identify sporadic executions errors

  • >> In this application example most of the time is spend in the getkey() function polling a status bit

  • >>Interrupt driven I/O may be used to eliminate this

  • >>Lets us explore the various physical connection interfaces to the Trace Unit

  • >>Evaluation Kits frequently offer two standardized debug connectors in a small 0.05” pitch

  • >>The 10-pin debug connector allows run-control and serial wire trace output with the SWO pin

  • >>The 20-pin debug ETM connector is a superset of the 10-pin connector

  • >>and offers full instruction trace output

  • >> Almost every Cortex-M3/M4 microcontroller device offers the Serial Wire or SWO trace output

  • >>SWO delivers data watchpoints,exception and instrumented trace

  • >>However, SWO does not allow instruction trace

  • >>Many Cortex-M3/M4 microcontrollers have an additional 5-pin trace port interface

  • >>that delivers the full instruction trace stream

  • >>Trace information can be selectively enabled to adjust the type of information that interests you

  • >> With Trace Port you can have the full range of trace information

  • >>that includes data watchpoints, exceptions, instrumented and instruction trace

  • >>Some Cortex-M3/M4 microcontrollers provide an ETB or the Embedded Trace Buffer

  • >>ETB streams the trace information in an on-chip RAM

  • >>that can be read via the normal run-control interface.

  • >>In this mode, no additional trace pins are required

  • >>but the amount of trace information is limited by the on-chip RAM

  • >>Therefore it is important that your debugger offers triggering of trace information based on program conditions

  • >>Even the smallest ARM processor, the Cortex-M0+

  • >> offers trace via the MTB or the Micro Trace Buffer

  • >>Besides run-control debugging the Cortex-M0+ provides instruction trace that is streamed to an on-chip RAM

  • >>This solution is a good compromise for small-form factor devices that have pin-limitations

  • >>since MTB trace can be read even via the 2-pin SWD debug interface

  • >>Now let’s take a look to ARM’s debug adapter and development tools

  • >>A full-featured trace solution requires the following components

  • >>MDK-ARM that includes uVision the integrated development environment

  • >>with a Debugger and various trace analysis features

  • >>ULINKpro which connects to your target hardware

  • >>and streams the complete trace information to your development workstation

  • >>ULINKpro connects via 10-pin or 20-pin debug connectors to the target hardware

  • >>Remember that only the 20-pin Debug/ETM connector provides the full instruction trace stream

  • >>The ULINKpro is the ARM Debug and Trace adapter that is specifically designed for Cortex-M microcontrollers.

  • >>It offers connectivity to all Cortex-M microcontrollers and supports all trace variants

  • >>Full instruction trace with ULINKpro’s streaming trace technology

  • >>that records the complete program execution and overcomes trace buffer limitations

  • >>It is required for non-intrusive program analysis

  • >>and provides full code coverage and performance analysis without compromises

  • >>The ULINKpro debug and trace adapter is used with the Keil MDK-ARM® microcontroller development kit

  • >>Please refer to keil.com for detailed information about the usage of this powerful trace solution

  • >>Thank you for your attention!

  • >>In case of further questions please contact our Sales- and Support team

>>Hello and welcome to this Video-Tutorial

Subtitles and vocabulary

Click the word to look it up Click the word to find further inforamtion about it