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

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

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

PTM和ETM的關(guān)系是什么

麥辣雞腿堡 ? 來(lái)源:TrustZone ? 作者:TrustZone ? 2023-10-30 14:49 ? 次閱讀

PTM和ETM的關(guān)系

PTM和ETM都是嵌入式跟蹤宏單元(ETM)架構(gòu)規(guī)范中的一部分,它們之間的關(guān)系是互補(bǔ)的。ETM是一個(gè)通用的跟蹤宏單元,它可以用于跟蹤不同的信息,例如指令跟蹤和數(shù)據(jù)跟蹤。而PTM是ETM的一個(gè)特定實(shí)現(xiàn),專(zhuān)門(mén)用于進(jìn)行程序流程跟蹤(PFT)。

PTM和ETM都提供了實(shí)時(shí)的跟蹤信息,這些信息可以用于調(diào)試、性能分析和程序驗(yàn)證等。PTM主要記錄的是程序的指令序列和相關(guān)的程序流程信息,例如分支指令、異常事件等。而ETM則可以記錄更廣泛的信息,例如指令地址、數(shù)據(jù)地址和數(shù)據(jù)值等。

在實(shí)際應(yīng)用中,ETM和PTM通常會(huì)一起使用。例如,在調(diào)試程序時(shí),可以使用ETM來(lái)跟蹤程序的指令和數(shù)據(jù)流動(dòng)情況,而使用PTM來(lái)跟蹤程序的流程和執(zhí)行路徑。這樣可以更全面地了解程序的執(zhí)行情況,從而幫助開(kāi)發(fā)人員進(jìn)行調(diào)試和優(yōu)化。

PTM和ETM在ETM架構(gòu)規(guī)范中的關(guān)系是什么?

PTM和ETM在ETM架構(gòu)規(guī)范中的關(guān)系是互補(bǔ)的。ETM是一個(gè)通用的跟蹤宏單元,它可以用于跟蹤不同的信息,例如指令跟蹤和數(shù)據(jù)跟蹤。而PTM是ETM的一個(gè)特定實(shí)現(xiàn),專(zhuān)門(mén)用于進(jìn)行程序流程跟蹤(PFT)。

PTM基于PFT架構(gòu)進(jìn)行實(shí)時(shí)的指令流跟蹤,它會(huì)copy一份正在執(zhí)行的code,只在一些program execution point(叫做waypoint)進(jìn)行trace。這些點(diǎn)是由PTM內(nèi)部的一些特定機(jī)制決定的,例如當(dāng)執(zhí)行到某個(gè)特定的指令或者達(dá)到某個(gè)特定的數(shù)據(jù)條件時(shí),PTM就會(huì)開(kāi)始記錄當(dāng)前的指令和數(shù)據(jù)狀態(tài)。

PTM會(huì)記錄下這些waypoint之間的指令執(zhí)行情況,從而幫助開(kāi)發(fā)人員了解程序執(zhí)行的具體流程和路徑。同時(shí),PTM還可以記錄下程序執(zhí)行過(guò)程中的一些關(guān)鍵事件,例如異常事件、分支指令等,這些信息對(duì)于調(diào)試和性能分析都非常重要。

它們就像是一對(duì)雙胞胎,各自有不同的特點(diǎn),但是又相互關(guān)聯(lián)。

ETM是一個(gè)非常厲害的“記錄員”,它可以在程序運(yùn)行的時(shí)候記錄下很多信息。而PTM就像是一個(gè)專(zhuān)注的“小弟弟”,它告訴ETM只記錄哪些關(guān)于程序“行走”的信息。

PTM說(shuō):“我只關(guān)注程序怎么走的,其他的我都不關(guān)心?!?所以PTM記錄的信息都是關(guān)于程序怎么從一個(gè)地方走到另一個(gè)地方,也就是程序執(zhí)行時(shí)的指令序列。

ETM聽(tīng)從PTM的話,于是它只記錄了程序執(zhí)行時(shí)的指令和數(shù)據(jù)。但是它不只記錄了指令序列,還記錄了其他一些信息,比如指令是在哪個(gè)時(shí)間執(zhí)行的,是在哪個(gè)內(nèi)存地址執(zhí)行的等等。

所以,PTM和ETM就像是一對(duì)合作默契的好搭檔。PTM告訴ETM應(yīng)該關(guān)注什么,然后ETM就專(zhuān)注地記錄下這些信息。兩者相互配合,可以提供更全面、更準(zhǔn)確的程序執(zhí)行情況記錄。

這里的waypoint怎么生成?

PTM的waypoint是PTM內(nèi)部通過(guò)一種特定機(jī)制來(lái)生成的。PTM會(huì)根據(jù)一些預(yù)設(shè)的條件或者規(guī)則來(lái)確定這些waypoint的位置。

一種常見(jiàn)的做法是使用預(yù)設(shè)的斷點(diǎn)作為waypoint。開(kāi)發(fā)人員可以在程序中預(yù)設(shè)一些斷點(diǎn),當(dāng)程序執(zhí)行到這些斷點(diǎn)時(shí),PTM就會(huì)開(kāi)始記錄當(dāng)前的指令和數(shù)據(jù)狀態(tài)。這些斷點(diǎn)可以是固定的位置,也可以是根據(jù)某些條件動(dòng)態(tài)生成的。例如,當(dāng)程序執(zhí)行到某個(gè)特定的指令或者達(dá)到某個(gè)特定的數(shù)據(jù)條件時(shí),PTM可以將其作為waypoint并開(kāi)始記錄。

另一種常見(jiàn)的做法是使用動(dòng)態(tài)的計(jì)數(shù)器作為waypoint。 PTM內(nèi)部會(huì)維護(hù)一個(gè)計(jì)數(shù)器,當(dāng)計(jì)數(shù)器達(dá)到某個(gè)預(yù)設(shè)的值時(shí),PTM就會(huì)開(kāi)始記錄當(dāng)前的指令和數(shù)據(jù)狀態(tài)。這種方式的優(yōu)點(diǎn)是可以根據(jù)需要?jiǎng)討B(tài)地生成waypoint,而不需要在程序中預(yù)設(shè)斷點(diǎn)。

無(wú)論采用哪種方式,PTM的waypoint都是根據(jù)預(yù)設(shè)的條件或者規(guī)則來(lái)生成的,可以靈活地根據(jù)需要進(jìn)行設(shè)置。這些waypoint的位置對(duì)于PTM來(lái)說(shuō)是非常重要的,因?yàn)樗鼈儧Q定了PTM記錄哪些指令和數(shù)據(jù)狀態(tài),從而幫助開(kāi)發(fā)人員了解程序執(zhí)行的具體流程和路徑。

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

    關(guān)注

    68

    文章

    18927

    瀏覽量

    227232
  • ARM
    ARM
    +關(guān)注

    關(guān)注

    134

    文章

    8967

    瀏覽量

    365041
  • 嵌入式
    +關(guān)注

    關(guān)注

    5046

    文章

    18819

    瀏覽量

    298568
  • ETM
    ETM
    +關(guān)注

    關(guān)注

    0

    文章

    9

    瀏覽量

    7581
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    使用ADSP-21479 timer0時(shí),不管如何修改*pTM0PRD 和*pTM0W的值進(jìn)入定時(shí)器中斷的時(shí)間永遠(yuǎn)不變是怎么回事?

    修改*pTM0PRD 和*pTM0W 的值(*pTM0W 小于*pTM0PRD的值),通過(guò)示波器測(cè)試,進(jìn)入定時(shí)器中斷的時(shí)間永遠(yuǎn)不變,都是2us左右。 按照說(shuō)明書(shū),修改*
    發(fā)表于 01-12 06:03

    ARM調(diào)試CoreSight、ETM、PTM、ITM、HTM、ETB等常用術(shù)語(yǔ)解析

    微處理器提供實(shí)時(shí)指令跟蹤和數(shù)據(jù)跟蹤。跟蹤軟件工具使用 ETM 生成的信息重建全部或部分程序的執(zhí)行情況。 PTM,程序跟蹤宏單元PTM 是一個(gè)模塊,它根據(jù)程序流程跟蹤 (PFT) 體系結(jié)構(gòu)執(zhí)行實(shí)時(shí)指令流跟蹤
    發(fā)表于 10-13 09:26

    ARM調(diào)試CoreSight、ETM、PTM、ITM、HTM、ETB等常用術(shù)語(yǔ)解析

    跟蹤和數(shù)據(jù)跟蹤。跟蹤軟件工具使用 ETM 生成的信息重建全部或部分程序的執(zhí)行情況。 PTM,程序跟蹤宏單元PTM 是一個(gè)模塊,它根據(jù)程序流程跟蹤 (PFT) 體系結(jié)構(gòu)執(zhí)行實(shí)時(shí)指令流跟蹤。跟蹤工具
    發(fā)表于 05-11 13:53

    使用IAR ETM Trace調(diào)試功能的要求

    `在某些情況下,應(yīng)用代碼可能突然跑飛或者產(chǎn)生異常中斷,此時(shí)導(dǎo)致問(wèn)題的原因可能難以發(fā)現(xiàn)。調(diào)試這類(lèi)問(wèn)題時(shí),可以考慮使用IAR所支持的ETM Trace調(diào)試功能,ETM Trace調(diào)試功能可以分析ETM
    發(fā)表于 03-05 14:49

    CoreSight / ETM / CTI等等它們之間的關(guān)系是怎樣的

    在看ARMv7/v8 ARM手冊(cè)的時(shí)候,總是不太明白CoreSight / ETM / CTI等等,它們之間的關(guān)系。以Cortex-A57 MPCore TRM的Figure 2-1為例:它展示了
    發(fā)表于 08-23 14:52

    CoreSight ETM11技術(shù)參考手冊(cè)

    CoreSight ETM11為ARM11系列微處理器提供指令跟蹤和數(shù)據(jù)跟蹤。CoreSight ETM11支持所有當(dāng)前的ARM11內(nèi)核,并與TrustZone和Thumb-2兼容。您可以在兩種
    發(fā)表于 08-02 18:39

    CoreSight PTM-A9技術(shù)參考手冊(cè)

    的某些點(diǎn)生成跟蹤,稱(chēng)為路點(diǎn)。與ETM協(xié)議相比,這減少了PTM生成的跟蹤數(shù)據(jù)量。航路點(diǎn)是程序流或事件中的更改,例如異常。跟蹤工具使用路點(diǎn)來(lái)跟蹤程序執(zhí)行的流程
    發(fā)表于 08-02 14:47

    MAX9406ETM+ MAX9406ETM+ - (Maxim Integrated) - 線性 - 視頻處理

    電子發(fā)燒友網(wǎng)為你提供()MAX9406ETM+相關(guān)產(chǎn)品參數(shù)、數(shù)據(jù)手冊(cè),更有MAX9406ETM+的引腳圖、接線圖、封裝手冊(cè)、中文資料、英文資料,MAX9406ETM+真值表,MAX9406ET
    發(fā)表于 11-15 22:10
    MAX9406<b class='flag-5'>ETM</b>+ MAX9406<b class='flag-5'>ETM</b>+ - (Maxim Integrated) - 線性 - 視頻處理

    MAX9406ETM+T MAX9406ETM+T - (Maxim Integrated) - 線性 - 視頻處理

    電子發(fā)燒友網(wǎng)為你提供()MAX9406ETM+T相關(guān)產(chǎn)品參數(shù)、數(shù)據(jù)手冊(cè),更有MAX9406ETM+T的引腳圖、接線圖、封裝手冊(cè)、中文資料、英文資料,MAX9406ETM+T真值表,MAX9406
    發(fā)表于 11-15 22:13
    MAX9406<b class='flag-5'>ETM</b>+T MAX9406<b class='flag-5'>ETM</b>+T - (Maxim Integrated) - 線性 - 視頻處理

    MAX12005ETM+ 射頻開(kāi)關(guān)

    電子發(fā)燒友網(wǎng)為你提供Maxim(Maxim)MAX12005ETM+相關(guān)產(chǎn)品參數(shù)、數(shù)據(jù)手冊(cè),更有MAX12005ETM+的引腳圖、接線圖、封裝手冊(cè)、中文資料、英文資料,MAX12005ETM+真值表,MAX12005
    發(fā)表于 02-05 19:02
    MAX12005<b class='flag-5'>ETM</b>+ 射頻開(kāi)關(guān)

    MAX12005ETM+T 射頻開(kāi)關(guān)

    電子發(fā)燒友網(wǎng)為你提供Maxim(Maxim)MAX12005ETM+T相關(guān)產(chǎn)品參數(shù)、數(shù)據(jù)手冊(cè),更有MAX12005ETM+T的引腳圖、接線圖、封裝手冊(cè)、中文資料、英文資料,MAX12005ETM+T真值表,MAX12005
    發(fā)表于 02-05 19:02
    MAX12005<b class='flag-5'>ETM</b>+T 射頻開(kāi)關(guān)

    MAX19708ETM+ 數(shù)據(jù)采集 - 模擬前端(AFE)

    電子發(fā)燒友網(wǎng)為你提供Maxim(Maxim)MAX19708ETM+相關(guān)產(chǎn)品參數(shù)、數(shù)據(jù)手冊(cè),更有MAX19708ETM+的引腳圖、接線圖、封裝手冊(cè)、中文資料、英文資料,MAX19708ETM+真值表,MAX19708
    發(fā)表于 02-07 18:52
    MAX19708<b class='flag-5'>ETM</b>+ 數(shù)據(jù)采集 - 模擬前端(AFE)

    MAX3634ETM+ - (Maxim Integrated) - 時(shí)鐘/計(jì)時(shí) - 專(zhuān)用

    電子發(fā)燒友網(wǎng)為你提供Maxim(Maxim)MAX3634ETM+相關(guān)產(chǎn)品參數(shù)、數(shù)據(jù)手冊(cè),更有MAX3634ETM+的引腳圖、接線圖、封裝手冊(cè)、中文資料、英文資料,MAX3634ETM+真值表,MAX3634
    發(fā)表于 07-28 18:41
    MAX3634<b class='flag-5'>ETM</b>+ - (Maxim Integrated) - 時(shí)鐘/計(jì)時(shí) - 專(zhuān)用

    PTM程序跟蹤宏單元介紹

    PTM,程序跟蹤宏單元 PTM 是一個(gè)模塊,它根據(jù)程序流程跟蹤 (PFT) 體系結(jié)構(gòu)執(zhí)行實(shí)時(shí)指令流跟蹤。跟蹤工具使用 PTM 生成的信息重建全部或部分程序的執(zhí)行情況。 PTM 是一種硬
    的頭像 發(fā)表于 10-30 14:43 ?561次閱讀

    ITM和PTM、ETM有什么關(guān)系

    CoreSight ITM 塊是一個(gè)軟件應(yīng)用程序驅(qū)動(dòng)的跟蹤源。支持的代碼將生成軟件測(cè)量跟蹤 (SWIT)。此外,該塊還提供粗略的時(shí)間戳功能。 ITM塊是一個(gè)嵌入式跟蹤宏單元(ETM)架構(gòu)規(guī)范中
    的頭像 發(fā)表于 10-30 14:53 ?1034次閱讀