Connecting to a Cortex®-M device using DSTREAM
You can capture data for Streamline on a Cortex-M device by connecting a DSTREAM unit to the Trace Port Interface Unit (TPIU), which is further linked to the Instrumentation Trace Macrocell (ITM) Stimulus Port on the target, and by making minor changes to project_types.xml file for your board.
To use Streamline with a Cortex-M target:
- An operating system that emits ITM messages, for example Keil RTX RTOS, must be running on the target. When using RTX, ensure it was built with debug info and that the DBG_MSG macro is defined.
- Connect a DSTREAM unit to the TPIU port on your target.
Make sure your target is connected to your host.
NoteFor Streamline to be compatible with a target, there must be a DSTREAM connection for that board in the configdb that supports debug and trace.
Add the following lines of code to the project_types.xml for your board at the end of the
activityXML node that corresponds to the DSTREAM debug and trace connection:
<streamline_setup_script> <name>CDB://../../../Scripts/streamline_setup_script_m3.py</name> <arguments></arguments> </streamline_setup_script>
The projects_types.xml file for a target is located in <
If your target is not available in the default Debug Configuration, then you might need to create a custom Debug Configuration in a separate folder, for example, /home/user/configdb. If you do this then you might also need to copy the Scripts directory from the default location to the custom configdb location.
This process is explained in more detail here:
Reset the target after a capture starts in order to enable RTX to output the
ITM task switch information.
Task names are only emitted over ITM at the time of the task creation.