轉自:https://blog.csdn.net/upc886/article/details/100034541
1、CoreSight
CoreSight是一種基礎架構,它可對完整的芯片上系統 (SoC) 設計的性能進行調試、監視和優化,CoreSight™ 跟蹤宏單元在 SoC 中提供全面的
非干預性可見性。通過遵循 CoreSight 架構規范,可以方便地將合作伙伴特定的跟蹤宏單元集成到 CoreSight 系統中。
ARM公司的CoreSight AHB追蹤分析宏單元提供給了開發人員完整的AMBA AHB上行為的可見性,為調試和優化系統帶來了很大的便利。
CoreSight(內核景象)調試架構是ARM在推出Cortex之后推出來的,旨在豐富ARM產品的調試功能,功能是相當強大
CoreSight技術支持JTAG協議和SW協議,其實更具體的說實際上是CoreSight把JTAG和SW協議轉換成通用的內部DAP協議,
這里只是利用了JTAG和SW接口。
ARM開發工具和 Keil開發工具以及全球超過 25 個其他調試和性能分析工具支持 CoreSight 產品組合(包含 ARM 嵌入式跟蹤宏單元(ETM)),
從而向產品開發團隊保證其產品將得到廣泛的支持。
2、ETM
---- Embedded Trace Macrocell 嵌入式跟蹤宏單元
ETM 宏單元為 ARM 微處理器提供實時指令跟蹤和數據跟蹤。跟蹤軟件工具使用 ETM 生成的信息重建全部或部分程序的執行情況。
3、PTM
---- Program Trace Macrocell 程序跟蹤宏單元
PTM 是一個模塊,它根據程序流程跟蹤 (PFT) 體系結構執行實時指令流跟蹤。跟蹤工具使用 PTM 生成的信息重建全部或部分程序的執行情況。
4、術語
---- CTI:Cross Trigger Interface 交叉觸發接口
---- ETB:Embedded Trace Buffer 嵌入式跟蹤緩沖區
CoreSight ETB 是一個跟蹤接收器,它可使用可配置大小的 RAM 為跟蹤數據提供芯片上存儲。
---- ETR:Embedded Trace Router
---- ETF:Embedded Trace FIFO
---- STM:System Trace Macrocell 系統跟蹤宏單元
STM為所有軟件開發人員提供了低成本的軟件和硬件執行實時可見性,尤其是應用程序和內核開發人員,從而為整個供應鏈中支持 ARM 處理器
的設備提供了功能豐富且優化的低能耗軟件。
---- TMC:Trace Memory Controller
---- TPIU:Trace Port Interface Unit
---- Funnel
---- Replicator
---- DAP:Debug Access Port 調試訪問接口
Cortex-M3 的調試系統是基於ARM最新的CoreSight架構。不同於以往的ARM處理器,內核本身不再含有JTAG接口。取而代之的,是CPU提供
的DAP總線接口。通過這個總線接口,可以訪問芯片的寄存器,也可以訪問系統存儲器,甚至是在內核運行的時候訪問。對此總線接口的使用,
是由一個調試端口(DP)設備完成的。DPs不屬於CM3內核,但它們是在芯片的內部實現的。目前可用的DPs包括SWJ-DP(既支持傳統的JTAG
調試,也支持新的串行線調試協議),另一個SW-DP則去掉了對JTAG的支持。另外,也可以使用ARM CoreSight家族的JTAG-DP模塊。
根據在coresight架構中的作用,這些模塊大體可以分為source/link/Sink三種類型。
Source就是指一些信號或者profile/debug數據的來源,比如STM和ETM。
Sink就是指一些可以保持這些從source過來數據的模塊,比如最基本的ETB,從buffer這個單詞大體可以猜出一二,另外還有ETR,TPIU等等。
講完了source和sink之后,那么link就是指用於引導從source到sink過程中的類似於通道作用的模塊。當然這些通道的作用各不一樣。
FUNNEL是用途將來之不同的source的數據合並,而replicator是這些合並之后的數據再一式兩份,發送給不同的sink。
replicator從這個英文名稱中就可以看出端倪。
下面是ARM官方文檔中的一張截圖,大體可以看出這些不同的模塊在整個coresight架構中的作用。
————————————————
版權聲明:本文為CSDN博主「cany1000」的原創文章,遵循CC 4.0 by-sa版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/dongyanxia1000/article/details/52777899