[SOLVED] Ozone tracing:Cortex-M3 Instruction Trace NO data

This site uses cookies. By continuing to browse this site, you are agreeing to our Cookie Policy.

  • [SOLVED] Ozone tracing:Cortex-M3 Instruction Trace NO data

    Hi,

    I am trying to enable the ETM Tracing with Ozone on a ARM Cortex-M3 MCU.

    But when starting a debugging session there is no instruction data, also I can't get the half-sync 16'h7fff, I always get 32'h7fffffff when the target is halted.

    Can Ozone configure the right value to regs in ETM/TPIU component of Cortex-M3 automatically?

    As no matter what trace pins width I use the TPIU_CSPSR keep the default value, but when I use the "Cortex-M Trace Reference Board" bought from Segger, the register is changed correctly. I just follow the TraceExample provided on Segger.com.

    ==============================================================================
    Tutorial Project: J-Trace Streaming Trace tutorial project
    The following is a bare bone example with tracing at maximum trace clock speed the Trace Reference Board supports.
    Max. Trace clock speed + JLinkScript sample: ST_STM32F407_84MHz_TraceExample.zip
    ===============================================================================


    The Ozone output log is as blow:

    Debug.Start();
    Project.SetJLinkScript ("./Traceconfig.JLinkScript");
    Executed J-Link command "ScriptFile=D:/Trace/Proj/segger/Traceconfig.JLinkScript"
    Device "CORTEX-M3" selected.
    Found SW-DP with ID 0x2BA01477
    DPIDR: 0x2BA01477
    Scanning AP map to find all available APs
    AP[1]: Stopped AP scan as end of AP map has been reached
    AP[0]: AHB-AP (IDR: 0x04770021)
    Iterating through AP map to find AHB-AP to use
    AP[0]: Core found
    AP[0]: AHB-AP ROM base: 0xE00FF000
    CPUID register: 0x410FC331. Implementer code: 0x41 (ARM)
    Found Cortex-M3 r0p1, Little endian.
    FPUnit: 6 code (BP) slots and 2 literal slots
    CoreSight components:
    ROMTbl[0] @ E00FF000
    ROMTbl[0][0]: E000E000, CID: B105E00D, PID: 000BB004 ???
    ROMTbl[0][1]: E0001000, CID: B105E00D, PID: 000BB006 ???
    ROMTbl[0][2]: E0002000, CID: B105E00D, PID: 000BB007 ???
    ROMTbl[0][3]: E0000000, CID: B105E00D, PID: 000BB005 ???
    ROMTbl[0][4]: E0040000, CID: B105900D, PID: 000BB927 ???
    ROMTbl[0][5]: E0041000, CID: B105900D, PID: 000BB926 ???
    Connected to target device.
    Reset: Halt core after reset via DEMCR.VC_CORERESET.
    Reset: Reset device via AIRCR.SYSRESETREQ.
    Executed J-Link command "SetRTTAddr 0x20000400"
    Executed J-Link command "SelectTraceSource=1"
    OnTraceStart() start
    Start: Initializing trace pins
    DBGMCU Init
    End: Initializing trace pins
    OnTraceStart() end




    Any Ideas whats going wrong here?

    Thanks!

    --Shuai

    PS :
    Hardware set up :

    Windows10
    Segger embedded studio v4.16
    Ozone v3.10d
    J-trace PRO for cortex M processor probe
    Jlink Driver v650
  • Add picture the TPIU register configuration:
    "Cortex-M Trace Reference Board" VS "My Ozone project based on Cortex-M3 MCU".

    My question is Whether Ozone can configure the right value to regs in ETM/TPIU component of Cortex-M3 automatically?
    Any why my Ozone project failed ?

    Thank you very much.
    Images
    • trace.png

      234.96 kB, 1,471×534, viewed 50 times
  • Hello,

    We received your inquiry via our support system in parallel.
    Please try to use only one communication channel in future inquiries otherwise our response time might be delayed due to the increased workload to find all the connected threads and emails.
    We will continue this discussion via support system as you are in valid support period.

    For all others who stumble upon this thread. The answer can be found here:
    segger.com/products/debug-prob…hnology/setting-up-trace/
    and here:
    segger.com/products/debug-prob…echnology/tested-devices/

    This thread will be closed now.

    Best regards,
    Nino
    Please read the forum rules before posting: Forum Rules

    Keep in mind, this is not a support forum. Its main purpose is user to user interaction.
    Our engineers will try to answer your questions between their projects if possible but this can be delayed by longer periods of time.
    Should you be entitled to support you can contact us via our support system: segger.com/ticket/

    Or you can contact us via e-mail.