ARM的嵌入式IDE發展:
1)SDT,英文全稱ARM SoftWare Development Kit,是ARM為方便用戶在ARM芯片進行應用軟件開發而推出的一整套開發工具。
2)ADS,英文全稱ARM Developer Suite,是ARM推出的新一代ARM集成開發環境,用來取代SDT。
3)RVDS,英文全稱RealView Development Suite,是ARM公司繼SDT和ADS1.2之后主推的新一代研發工具。
4)DS-5,英文全稱ARM Development Studio5,是ARM的有一次升級軟件,加入對ARMv7/v8架構的支持。
隨着SoC時代的來臨和Cache的廣泛使用,在處理器調試過程中片外儀器難以測量片內數據流和指令流,不得不以硅片面積為代價來
解決處理器運行狀態的實時觀測問題。 越來越多的處理器廠商開始提供硬件片上Trace功能,片上Trace系統通過專用硬件非
入侵地實時記錄程序執行路徑和數據讀寫等信息,壓縮成Trace數據流后,通過專用 數據通道,輸出端口傳輸至調試主機。
調試主機中的開發工具解壓縮Trace數據流,恢復程序運行信息以供調試和性能分析。
ARM的CoreSight是目前業界領先的多核片上Trace解決方案。CoreSight體系結構非常靈活,其中各個部件可以根據不同處理器
廠商的需要而進行組合。
一個典型的CoreSight調試結構組成部分:
1)控制訪問部件,配置和控制數據流的產生,但是不產生數據流。
DAP(Debug Access Port):可以實時訪問AMBA總線上的系統內存,外設寄存器,以及所有調試配置寄存器,而不需掛起系統。
ECT(Embedded Cross Trigger):包括CTI(Cross Trigger Interface)和CTM(Cross Trigger Matrix),為
ETM(Embedded Trace Macrocell)提供接口,用於將一個處理器的調試事件傳遞給另一個
處理器。
2)源部件,用於產生向ATB(AMBA Trace Bus)發送的跟蹤數據,一般是APB總線。
HTM(AHB Trace Macrocell):用於獲取AHB總線跟蹤信息,包括總線的層次,存儲結構,數據流,控制流。
ETM(Embedded Trace Macrocell):用於獲取處理器核的跟蹤信息。
3)匯聚點,芯片上跟蹤數據的終點。
TPIU(Trace Port Interface Unit):將片內各種跟蹤數據源獲取的信息按照TPIU幀的格式進行組裝,然后通過Trace Port傳送
到片外。
ETB(Embedded Trace Buffer):一個32位的RAM,作為片內跟蹤信息緩沖區。
SWO(Serial Wire Output):類似TPIU,但僅輸出ITM單元的跟蹤信息,只需要一個引腳。
使用Trace Port接口進行調試還需要專用的跟蹤器(Trace),ARM公司的開發工具RVDS中RVT(RealView Tracer)就是這種跟蹤器。 仿真器RealView ICE(In-Circuit Emulator)是一種基於JTAG的調試解決方案。