一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

Tracealyzer利用CortexM的ITM實現(xiàn)流跟蹤

麥克泰技術(shù) ? 來源:麥克泰技術(shù) ? 作者:麥克泰技術(shù) ? 2022-12-20 11:12 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

用Tracealyzer快照模式,能夠跟蹤RTOS系統(tǒng)的運(yùn)行時間受限于硬件可用的RAM大小,通常只能追蹤幾十秒的時間。使用流模式則不會存在這個問題,只要電腦硬盤空間足夠,可用追蹤幾小時甚至幾天的時間。

流模式需要提供一個可用于實時傳輸跟蹤事件數(shù)據(jù)的通訊端口,例如使用J-Linkk RTT、UartUSB接口。很多CortexM3/M4/M7 等架構(gòu)的芯片會配有 ITM(Instrument Trace Macrocell),來打包和傳輸 DWT 產(chǎn)生的事件。ITM有 32個通道,通過SWO進(jìn)行串行傳輸。借助ITM來實現(xiàn)流模式的數(shù)據(jù)傳輸,可以不受調(diào)試器的限制,只要使用的調(diào)試器支持SWO調(diào)試都可以使用,但推薦使用速率較高的調(diào)試器。

ITM能夠提供較高的傳輸速度。經(jīng)測試,Renesas S7G2運(yùn)行在240MHz,使用IAR EWARM 7.1和I-jet調(diào)試器時,每秒可以傳輸73 400個事件,達(dá)到1175KB/s的傳輸速率。

使用ARM-ITM流模式

下文將以IAR EWARM 8.40、I-jet調(diào)試器和Tracealyzer 4.35為例說明如何配置和使用ITM實現(xiàn)流模式跟蹤。

Note

1、只有Tracealyzer v4.1及更新的版本才支持ITM流模式。

2、所使用的MCU須支持ITM。ITM對于MCU來說是一個可選的配置,不是所有的M3/M4/M7芯片都支持,但主流的芯片一般都支持。

一、將streamports下J-Link_RTT內(nèi)的源文件加入到工程。

383b0816-8013-11ed-8abf-dac502259ad0.png

圖 1 ARM ITM實現(xiàn)的源文件

二、在trcConfig.h中配置

#define TRC_CFG_HARDWARE_PORT TRC_HARDWARE

_PORT_ARM_Cortex_M

#define TRC_CFG_RECORDER_MODE TRC_RECORDER

_MODE_STREAMING

三、工程設(shè)置中選擇調(diào)試接口,與實際所使用的一致,這里使用SWD。

384d4cce-8013-11ed-8abf-dac502259ad0.png

圖 2 設(shè)置調(diào)試接口

四、啟動Trace,須使用vTraceEnable(TRC_START)。

五、進(jìn)入IAR EWARM的調(diào)試環(huán)境,點(diǎn)擊上方的SWO配置圖標(biāo),打開SWO設(shè)置。

386f29e8-8013-11ed-8abf-dac502259ad0.png

圖 3 打開EWARM的SWO配置窗口

六、設(shè)置正確的CPU時鐘,并勾選所使用的ITM通道,默認(rèn)使用通道1,確認(rèn)之后退出并關(guān)閉IAR EWARM。

38876396-8013-11ed-8abf-dac502259ad0.png

圖 4 EWARM SWO設(shè)置

七、從工程目錄下的settings目錄,打開工程的*.dnx文件(EWARM 7.x的格式為*.dni)

38cfcd8e-8013-11ed-8abf-dac502259ad0.png

圖 5 dnx文件

將ITMLogFile改成如下所示:

\.pipeTracealyzer

保存文件后再打開IAR,進(jìn)入調(diào)試查看SWO中的設(shè)置界面進(jìn)行確認(rèn)。

八、啟動Tracealyzer,PSF Streaming Settings的Target Connection設(shè)置為Name Pipe,Name與EWARM *dnx中設(shè)置的一致。EWARM與Tracealyzer利用Windows通信機(jī)制(命名管道-Named Pipe,在不相關(guān)進(jìn)程之間實現(xiàn)通信)傳遞數(shù)據(jù),由此,Tracealyzer可以通過EWARM來實時獲取跟蹤數(shù)據(jù)。

38dfa9de-8013-11ed-8abf-dac502259ad0.png

圖 6 設(shè)置流模式的連接方式

九、開啟實時跟蹤。需要先啟動Tracealyzer,Live Stream窗口中點(diǎn)“Start Session”之后,EWARM再進(jìn)入調(diào)試,然后就可以實現(xiàn)實時跟蹤。

審核編輯:湯梓紅

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • ARM
    ARM
    +關(guān)注

    關(guān)注

    134

    文章

    9351

    瀏覽量

    377435
  • ITM
    ITM
    +關(guān)注

    關(guān)注

    0

    文章

    6

    瀏覽量

    9206
  • Cortex
    +關(guān)注

    關(guān)注

    2

    文章

    203

    瀏覽量

    47358
  • RTOS
    +關(guān)注

    關(guān)注

    24

    文章

    851

    瀏覽量

    121155
  • 調(diào)試器
    +關(guān)注

    關(guān)注

    1

    文章

    313

    瀏覽量

    24312

原文標(biāo)題:Tracealyzer利用CortexM的ITM實現(xiàn)流跟蹤

文章出處:【微信號:麥克泰技術(shù),微信公眾號:麥克泰技術(shù)】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點(diǎn)推薦

    如何通過Tracealyzer實現(xiàn)Linux系統(tǒng)的跟蹤

    Tracealyzer是Percepio 公司開發(fā)的一款可視化跟蹤工具, 目前它提供了30多種相互關(guān)聯(lián)的運(yùn)行時行為視圖,支持裸機(jī)、FreeRTOS、μC/OS-III、Zephyr、ThreadX、VxWorks、Linux系統(tǒng)的跟蹤
    的頭像 發(fā)表于 12-08 14:08 ?1616次閱讀
    如何通過<b class='flag-5'>Tracealyzer</b><b class='flag-5'>實現(xiàn)</b>Linux系統(tǒng)的<b class='flag-5'>跟蹤</b>?

    如何利用ITM實現(xiàn)更快的跟蹤?如何在代碼中使用ITM呢?

    在大多數(shù)固件開發(fā)過程中,需要有某種形式的診斷日志/跟蹤。
    的頭像 發(fā)表于 01-26 11:27 ?2415次閱讀
    如何<b class='flag-5'>利用</b><b class='flag-5'>ITM</b><b class='flag-5'>實現(xiàn)</b>更快的<b class='flag-5'>跟蹤</b>?如何在代碼中使用<b class='flag-5'>ITM</b>呢?

    Tracealyzer 技術(shù)分享

    有兩種方式1.Snapshot Mode(快照模式)特點(diǎn):跟蹤的數(shù)據(jù)保存在目標(biāo)RAM中,幾KB的跟蹤緩沖區(qū)通常足以獲得最新事件的可靠跟蹤?;旧先魏蜗到y(tǒng)都可以使用。2.Streaming Mode(
    發(fā)表于 01-04 21:10

    教你快遞入門-Tracealyzer跟蹤記錄庫移植

    。使用Tracealyzer,可以查看到系統(tǒng)的真實運(yùn)行情況,為開發(fā)人員節(jié)省排除錯誤的時間。Tracealyzer由PC應(yīng)用程序和跟蹤組件組成,Percepio提供了跟蹤記錄庫(Trac
    發(fā)表于 07-31 14:08

    Tracealyzer利用CortexMITM實現(xiàn)跟蹤

    事件,達(dá)到1175KB/s的傳輸速率。使用ARM-ITM模式下文將以IAR EWARM 8.40、I-jet調(diào)試器和Tracealyzer 4.35為例說明如何配置和使用ITM
    發(fā)表于 12-05 15:34

    如何使用Tracealyzer預(yù)先定義的記錄器擴(kuò)展文件實現(xiàn)用戶應(yīng)用程序跟蹤

    被記錄為“用戶事件”。從Tracealyzer V4.2.9版本開始,增加了記錄器擴(kuò)展方式來跟蹤用戶應(yīng)用程序。記錄器擴(kuò)展方式可以幫助用戶實現(xiàn)中間件、驅(qū)動程序API等重要功能函數(shù)調(diào)用的跟蹤
    發(fā)表于 12-18 13:37

    出現(xiàn)“丟失事件”?看Tracealyzer模式如何調(diào)優(yōu)

    在使用自己定義的端口實現(xiàn)跟蹤時,如果Tracealyzer提示了“丟失事件”,那么你可以參照以下幾種方法,來提升
    發(fā)表于 02-19 10:06

    通過Tracealyzer用戶事件來了解應(yīng)用程序

    Tracealyzer跟蹤記錄器庫的集成。可視化特定應(yīng)用程序的自定義信息的第一步是創(chuàng)建一個用戶事件通道。這是一個字符串輸出通道,允許開發(fā)人員添加自己的自定義事件,在Tracealyzer中稱為用戶事件。例如,如果想要傳輸
    發(fā)表于 08-20 10:11

    使用Tracealyzer跟蹤FreeRTOS內(nèi)核

    程序,還需要可用于周期性任務(wù)的定時機(jī)制。大多數(shù)現(xiàn)有的開源 RTOS 實現(xiàn)了基于樹或列表的機(jī)制來跟蹤哪個任務(wù)已就緒。我們知道,基于樹的機(jī)制在復(fù)雜搜索操作方面是高效和極時的,但在處理刪除和插入操作上需花費(fèi)
    發(fā)表于 12-01 14:57

    如何使用Tracealyzer模式跟蹤ThreadX?

    Tracealyzer是Percepio 公司開發(fā)的一款用于RTOS的嵌入式軟件系統(tǒng)的可視化跟蹤工具,提供了30多種相互關(guān)聯(lián)的可視化運(yùn)行時行為視圖,本文將介紹如何使用Tracealyzer
    發(fā)表于 09-23 13:25

    是否需要在iMXRT1060 EVK板上執(zhí)行任何特定操作才能使tracealyzer正常工作?

    我有 iMXRT1060EVK,想在 FreeRTOS 的模式下使用 Tracealyzer。我正在使用 IAR EW 和 I-jet 調(diào)試探針。我已按照以下鏈接中的步驟進(jìn)行操作,但數(shù)據(jù)仍然存在
    發(fā)表于 04-17 08:02

    Tracealyzer實現(xiàn)跟蹤最簡單的方法

    Tracealyzer 實現(xiàn)跟蹤最簡單的方法就是使用SEGGER J-Link調(diào)試器,通過RTT功能來實現(xiàn)數(shù)據(jù)的傳送。RTT需要在RAM上
    的頭像 發(fā)表于 09-02 11:11 ?2709次閱讀

    如何使用Tracealyzer模式來跟蹤ThreadX應(yīng)用

    Tracealyzer是Percepio 公司開發(fā)的一款用于RTOS的嵌入式軟件系統(tǒng)的可視化跟蹤工具,提供了30多種相互關(guān)聯(lián)的可視化運(yùn)行時行為視圖,本文將介紹如何使用Tracealyzer
    的頭像 發(fā)表于 09-16 11:14 ?1766次閱讀

    Tracealyzer跟蹤記錄庫移植

    使用Tracealyzer,首先要將跟蹤記錄庫集成到工程。安裝了Tracealyzer 4之后,在安裝路徑下找到以RTOS名稱命名的文件夾,將TraceRecorder子文件夾復(fù)制到自己的工程目錄中。以FreeRTOS為例:
    的頭像 發(fā)表于 11-08 11:17 ?2156次閱讀

    如何通過Tracealyzer導(dǎo)出的跟蹤數(shù)據(jù)對任務(wù)進(jìn)行分析?

    Tracealyzer是Percepio 公司開發(fā)的一款用于RTOS的可視化跟蹤工具, 目前Tracealyzer提供了30多種相互關(guān)聯(lián)的運(yùn)行時行為視圖,對系統(tǒng)運(yùn)行時的行為提供了前所未有的洞察方法。能夠幫助開發(fā)人員加快固件的開發(fā)
    的頭像 發(fā)表于 02-06 14:13 ?1424次閱讀