999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

ARM CoreSight調試與追蹤體系在Cortex M3內核中的實現

2014-09-24 16:34:45韓格欣許翔劉嘯宇代麗男薄純娟
物聯網技術 2014年7期
關鍵詞:調試

韓格欣+許翔+劉嘯宇+代麗男+薄純娟

摘 要:以ARM Core Sight Architecture Specification規范和ARM Debug Interface Architecture Specification規范為出發點,分析了ARM CoreSight調試與追蹤體系在ARM Cortex M3內核中的實現過程。同時,對比分析了新的Serial Wire Debug調試技術和經典的JTAG調試技術的異同。

關鍵詞:SWD;JTAG;調試;Cortex M3;CoreSight

中圖分類號:TP368 文獻標識碼:A 文章編號:2095-1302(2014)07-0022-03

0引言

在芯片制造技術飛速發展的今天,高速、高集成度、低功耗的極致追求給芯片設計人員提出了一個又一個挑戰,而在這樣的片上系統中調試與追蹤內核狀態更是芯片調試技術的一個難題[1]。為了解決非侵入式、實時調試等多類問題,ARM引入了全新的ARM CoreSight調試體系結構。CoreSight是ARM公司于2003年開發的、綜合而全面的調試與跟蹤架構。部分ARM9與ARM11內核采用早期版本的CoreSight,不過現在大范圍推廣的Cortex系列處理器已完全采用新版的調試體系并充分證明了它的優勢。CoreSight包括眾多組件,每一種都能協助外部主機以極高的效率了解芯片的實時運行情況。芯片中內嵌的特定組件和為系統設計人員提供的調試工具使開發人員可以友好的使用CoreSight構架調試和跟蹤片上系統,而不用再通過直接設置寄存器、遵循特定協議和處理電平信號來使用 。

為了擴大成本和功耗敏感的MCU和終端應用(如智能測量、人機接口設備、汽車和工業控制系統、大型家用電器、消費性產品和醫療器械)市場,ARM公司針對這類混合信號設備進行了優化,貫徹了新一代的CoreSight調試構架,推出了新一代Cortex M系列微控制器。而意法半導體公司(ST)推出的STM32、德州儀器公司(TI)推出的Stellaris,都是一種ARM Cortex M3內核的實現。32位RISC處理器、低功耗、高性能模擬技術、高速DMA通道、豐富的外設和新一代的調試體系,都賦予了其不俗的表現。

然而,新一代調試構架定義的多種功能對不熟悉新調試機制的開發者來說略嫌繁瑣,特別是傳統JTAG調試和新一代的Serial Wire Debug(SWD)調試二合一的調試接口使不少開發者無法理清頭緒。因此本文將從整體上分析ARM CoreSight調試構架和ARM Debug Interface Architecture(ADI),并通過對比ST和TI推出的芯片來明確新調試體系的實現方式,為開發者掃清調試障礙。

1ARM CoreSight調試構架

ARM新一代CoreSight調試構架提供了微處理器所需全部的調試與追蹤功能。片上程序流可通過豐富的硬件執行斷點與高級觀察點、矢量捕獲和元數據跟蹤功能進行監控,甚至在啟用全部中斷時也得到監控。在處理器運行的同時也能讀寫寄存器與存儲器中的數據,并能對片上資源的使用進行驗證。代碼描述可確定處理器在一定時間內的工作情況,從而明確處理器何時會在無限循環中中止,或在何處全力加速程序執行。此外,我們通過新的調試構架還能看出哪些代碼從不執行,從而釋放出寶貴的片上資源。程序員可確認脈寬調制器是否能滿足要求,另外還可檢查堆棧是否存在潛在問題,進而確定意外情況的反饋以及狀態、條件碼和分支的有效性 。

ARM新一代調試構架提供了對多種調試方式的支持。經典的JTAG調試方式經過多年、大范圍的應用,已經具有了成熟、規范、通行等優點。然而,現在的MCU對于速度和封裝的要求已經越來越高,傳統的4線(5線可選)JTAG協議已經不能滿足對芯片封裝尺寸的嚴格要求和對引腳需求的嚴格控制。在這種需求下,ARM在新一代調試體系中引入了旨在替代舊式JTAG調試方式的Serial Wire Debug(SWD)調試方式,它很好地改良了ARM體系結構下的產品調試機制。

ARM CoreSight構架中的組件是通過存儲器映射機制訪問它們自身的控制寄存器(例如AMBA 3 APB接口),而不通過傳統的JTAG訪問其組件資源。ARM選擇這樣的實現方式有很多種原因,例如:傳統JTAG方式的時鐘信號TCK必須工作在所有調試組件共有的最低頻率,這極大限制了調試的速度(也許還將面對休眠態、工作在低頻率狀態的片上組件);傳統的同步JTAG接口在一個設備掉電時會導致整個調試鏈的終止等 。

ARM CoreSightarchitecture包含三類子構架:

(1) Visible component architecture:規定了所有組件所必須遵守的、共有的編程者模型(軟件接口)。規定了對組件可用的拓撲探訪結構;

(2) Reusable component architecture:規定了調試體系的物理接口;

(3) System architecture:規定了系統級需要的時鐘、控制信息、ROM表、追蹤信息格式等。

在ARM CoreSight構架基礎上,ARM指定了具體的調試接口規范,旨在統一所有采用CoreSight調試體系的片上系統。

2ARM調試接口規范

采用ARM設計IP的芯片廠商在設計調試支持的時候,都必須要遵守ARM Debug InterfaceArchitecture Specification(ARM調試接口體系結構規范,ADI)。ARM調試接口規范為嵌入式片上系統(SoC)中的調試組件定義了標準調試接口,其功能邏輯框圖如圖1所示。

圖1ARM ADI功能邏輯框圖

ADI中定義了一個由Debug Port(DP)和Access Port(AP)組成的調試訪問接口Debug Access Port(DAP),外部的調試設備統一由DAP來鏈接被調試的片上系統資源。

ADI中定義了一個單一的外部調試設備物理連接接口:Debug Port(DP)。ADI允許三種不同的DP實現:JTAG-DP,SWD-DP,SWJ-DP。其中JTAG-DP即為經典的JTAG調試機制物理接口,而SWD-DP則是ARM新引入的兩引腳串行線調試結構。SWJ-DP則為JTAG/SWD二合一接口。

同時,ADI還定義了訪問接口:Access Port(AP)。AP為DAP與被調試資源的鏈接提供了接口。AP通過資源特定的連接方式(例如一個debug bus)鏈接到被調試的資源,根據被鏈接調試資源類型的不同,ADI定義了兩類AP的實現:MEM-AP和JTAG-AP。MEM-AP用來鏈接到存儲器映射(Memory mapped)類型的資源,而JTAG-AP主要用來鏈接到經典的IEEE 1149.1 JTAG設備上。我們常用的是MEM-AP類型,通過對ARM存儲器映射機制下的系統資源的訪問,我們可以調試幾乎所有的片上資源。而當我們使用IEEE 1149.1 JTAG調試設備做掃描邊界測試時,我們需要用到JTAG-AP實現。

3基于Cortex M3內核調試的MCU實現

首先,我們先對比兩個具體的實現方案。其一是意法半導體公司的STM32MCU,而另一個則為德州儀器公司的Stellaris。

圖2所示為STM32的調試體系構架。

圖3所示為Stellaris的調試體系構架。

圖3Stellaris MCU調試支持框圖

STM32MCU和Stellaris MCU的設計都遵循了ARM的ADI規范。

STM32選用了SWD和JTAG二合一DP接口:SWJ-DP,這樣的選擇方便了對老式JTAG調試設備的兼容。通過固定的操作脈沖,調試設備開發者可以輕松實現在JTAG和SWD方式之間的切換。而不同的硬件設備是復用接口引腳的,這對引腳分配嚴苛的MCU設計提供了很大便利。而Stellaris則只選用了SWD-DP一種物理連接實現,這體現了TI設計人員對SWD調試方式能力的信任與把握,因為節省出來的不僅僅是管腳,更是硅片的體積和成本。

同時,STM32的AHB-AP是一種MEM-AP的實現。通過Internal private peripheral bus(PPB),調試者可以訪問掛接到ARM高性能總線的所有片上資源。而TI的Stellaris也通過類似的機制實現了對片上資源的訪問控制。

ST公司在STM32系列的不同型號中還提供了可選的調試組件,當然,這得益于CoreSight調試構架中的組件化、模塊化設計。其中DWT、FPB的結合給調試者提供了數據觀察點、硬件斷點和FLASH重映射等功能,而ITM、ETM和TPIU的結合給調試者提供了不輸于大型系統調試方案的指令流、數據流監控功能。而TI的Stellaris并沒有提供可選的ETM組件。TI官方也給出了令人信服的解釋:嵌入式跟蹤宏單元(ETM)旨在為開發工具提供明確的逐指令跟蹤信息。該功能對較復雜的微處理器尤其實用,特別是那些所用片上資源太過動態,難以實現外部實時決定性的處理器。例如,片上高速緩存會根據程序環路執行的具體變化而變化,同時數據和輸入也在不斷變化,因此無法以合理的價格通過外部工具來復制。但是,MCU不使用高速緩存,所以ETM作用不大。

由以上分析可以得出,只要不同的廠商在設計基于ARM內核芯片時遵循了ARM相關協議和規范,開發人員在選擇和開發芯片時就能觸類旁通,大大減少相應的學習開發時間,降低開發成本。同時,更多的開發工具和開發平臺將能得到很好的重用,這對開發者來說是一個巨大的成本優勢。

4JTAG和SWD對比

Serial Wire Debug(SWD)是ARM體系結構中定義的新一代調試機制,具有占有引腳少,高速下運行穩定等特點,其所使用的基于分組的協議可提供比JTAG快一倍多的數據速率,SWD的誕生就旨在替代原始的JTAG調試方式。圖4所示為SWD下ARM調試機制示意圖。

圖4SWD作為接口的CoreSight調試與跟蹤系統

圖5展示了SWD與JTAG接口引腳的對比圖。從圖5中可以看出,SWD協議僅僅需要一個時鐘引腳和一個數據傳輸引腳即可完成工作。而可選的SWO引腳可以與ITM組件結合,提供類printf形式的跟蹤調試信息。相比于傳統的JTAG調試協議,新的SWD調試方式的各類優勢不言而喻。同時,在現有的SWD接口中,我們仍然可以使用JTAG的邊界掃描測試功能,當然,這需要我們具有JTAG-AP接口的實現。

JTAG 1149.1 Serial Wire Debug

Pin Purpose Pin Purpose

TCK Clock SWCLK Clock

TMS State Machine Control SWDIO Data In&Out

TDI Data In - -

TDO Data Out SWO -

TRST Reset - -

圖5SWD與JTAG 1149.1引腳對比

5結語

ARM的新一代調試體系結構極大的增強了ARM體系結構功能的完整性和健壯性,及時轉入新的調試體系結構是必要的,也是具有極大好處的。我們在選擇功能芯片時,在考慮了成本和開發難度的前提下,對芯片可維護性和延續性的考慮也要列入其中。同時,在選用開發工具和平臺的過程中,是否支持ARM新的調試機制也應該成為我們一個重要選擇因素。

參 考 文 獻

[1]ARM.Coresight[EB/OL].[2013-10-25].http://www.arm.com/zh/products/processors/cortex-m/index.php:ARM Ltd,2013

[2]ARM.ARM Cortex-M3 Technical Reference Manual[EB/OL].[2006].UK:ARM Ltd,2006.

[3]BOOTH Jean Anne and COZART Sun.Serial Wire Debug—IdealforMicrocontrollers[R].USA:TexasInstruments,2010.

[4]ARM.CoreSight Architecture Specification [EB/OL].[2013].UK:ARM Ltd,2013.

[5]ARM.ARM Debug InterfaceArchitecture SpecificationADIv5.0 to ADIv5.2 [EB/OL].[2013].UK:ARM Ltd,2013.

[6]STMicroelectronics.STM32 Reference manual[EB/OL].[2011-8-23].Switzerland:STMicroelectronics,2011.

[7]TI.StellarisReference manual[EB/OL].USA:Texas Instruments,2010.

[8]ASHFIELD Eddie.Serial Wire Debug and the CoreSightDebug and Trace Architecture[R].UK:ARM Ltd,2010.

[9]WILLIAMS Michael.Low Pin-count Debug Interfaces forMulti-device Systems[R].UK:ARM Ltd,2009.

[10]IEEE Computer Society.IEEE Std 1149.7?-2009 IEEE Standard for Reduced-Pin andEnhanced-Functionality Test AccessPort andBoundary-Scan Architecture[S].USA:IEEE Computer Society,2010.

0引言

在芯片制造技術飛速發展的今天,高速、高集成度、低功耗的極致追求給芯片設計人員提出了一個又一個挑戰,而在這樣的片上系統中調試與追蹤內核狀態更是芯片調試技術的一個難題[1]。為了解決非侵入式、實時調試等多類問題,ARM引入了全新的ARM CoreSight調試體系結構。CoreSight是ARM公司于2003年開發的、綜合而全面的調試與跟蹤架構。部分ARM9與ARM11內核采用早期版本的CoreSight,不過現在大范圍推廣的Cortex系列處理器已完全采用新版的調試體系并充分證明了它的優勢。CoreSight包括眾多組件,每一種都能協助外部主機以極高的效率了解芯片的實時運行情況。芯片中內嵌的特定組件和為系統設計人員提供的調試工具使開發人員可以友好的使用CoreSight構架調試和跟蹤片上系統,而不用再通過直接設置寄存器、遵循特定協議和處理電平信號來使用 。

為了擴大成本和功耗敏感的MCU和終端應用(如智能測量、人機接口設備、汽車和工業控制系統、大型家用電器、消費性產品和醫療器械)市場,ARM公司針對這類混合信號設備進行了優化,貫徹了新一代的CoreSight調試構架,推出了新一代Cortex M系列微控制器。而意法半導體公司(ST)推出的STM32、德州儀器公司(TI)推出的Stellaris,都是一種ARM Cortex M3內核的實現。32位RISC處理器、低功耗、高性能模擬技術、高速DMA通道、豐富的外設和新一代的調試體系,都賦予了其不俗的表現。

然而,新一代調試構架定義的多種功能對不熟悉新調試機制的開發者來說略嫌繁瑣,特別是傳統JTAG調試和新一代的Serial Wire Debug(SWD)調試二合一的調試接口使不少開發者無法理清頭緒。因此本文將從整體上分析ARM CoreSight調試構架和ARM Debug Interface Architecture(ADI),并通過對比ST和TI推出的芯片來明確新調試體系的實現方式,為開發者掃清調試障礙。

1ARM CoreSight調試構架

ARM新一代CoreSight調試構架提供了微處理器所需全部的調試與追蹤功能。片上程序流可通過豐富的硬件執行斷點與高級觀察點、矢量捕獲和元數據跟蹤功能進行監控,甚至在啟用全部中斷時也得到監控。在處理器運行的同時也能讀寫寄存器與存儲器中的數據,并能對片上資源的使用進行驗證。代碼描述可確定處理器在一定時間內的工作情況,從而明確處理器何時會在無限循環中中止,或在何處全力加速程序執行。此外,我們通過新的調試構架還能看出哪些代碼從不執行,從而釋放出寶貴的片上資源。程序員可確認脈寬調制器是否能滿足要求,另外還可檢查堆棧是否存在潛在問題,進而確定意外情況的反饋以及狀態、條件碼和分支的有效性 。

ARM新一代調試構架提供了對多種調試方式的支持。經典的JTAG調試方式經過多年、大范圍的應用,已經具有了成熟、規范、通行等優點。然而,現在的MCU對于速度和封裝的要求已經越來越高,傳統的4線(5線可選)JTAG協議已經不能滿足對芯片封裝尺寸的嚴格要求和對引腳需求的嚴格控制。在這種需求下,ARM在新一代調試體系中引入了旨在替代舊式JTAG調試方式的Serial Wire Debug(SWD)調試方式,它很好地改良了ARM體系結構下的產品調試機制。

ARM CoreSight構架中的組件是通過存儲器映射機制訪問它們自身的控制寄存器(例如AMBA 3 APB接口),而不通過傳統的JTAG訪問其組件資源。ARM選擇這樣的實現方式有很多種原因,例如:傳統JTAG方式的時鐘信號TCK必須工作在所有調試組件共有的最低頻率,這極大限制了調試的速度(也許還將面對休眠態、工作在低頻率狀態的片上組件);傳統的同步JTAG接口在一個設備掉電時會導致整個調試鏈的終止等 。

ARM CoreSightarchitecture包含三類子構架:

(1) Visible component architecture:規定了所有組件所必須遵守的、共有的編程者模型(軟件接口)。規定了對組件可用的拓撲探訪結構;

(2) Reusable component architecture:規定了調試體系的物理接口;

(3) System architecture:規定了系統級需要的時鐘、控制信息、ROM表、追蹤信息格式等。

在ARM CoreSight構架基礎上,ARM指定了具體的調試接口規范,旨在統一所有采用CoreSight調試體系的片上系統。

2ARM調試接口規范

采用ARM設計IP的芯片廠商在設計調試支持的時候,都必須要遵守ARM Debug InterfaceArchitecture Specification(ARM調試接口體系結構規范,ADI)。ARM調試接口規范為嵌入式片上系統(SoC)中的調試組件定義了標準調試接口,其功能邏輯框圖如圖1所示。

圖1ARM ADI功能邏輯框圖

ADI中定義了一個由Debug Port(DP)和Access Port(AP)組成的調試訪問接口Debug Access Port(DAP),外部的調試設備統一由DAP來鏈接被調試的片上系統資源。

ADI中定義了一個單一的外部調試設備物理連接接口:Debug Port(DP)。ADI允許三種不同的DP實現:JTAG-DP,SWD-DP,SWJ-DP。其中JTAG-DP即為經典的JTAG調試機制物理接口,而SWD-DP則是ARM新引入的兩引腳串行線調試結構。SWJ-DP則為JTAG/SWD二合一接口。

同時,ADI還定義了訪問接口:Access Port(AP)。AP為DAP與被調試資源的鏈接提供了接口。AP通過資源特定的連接方式(例如一個debug bus)鏈接到被調試的資源,根據被鏈接調試資源類型的不同,ADI定義了兩類AP的實現:MEM-AP和JTAG-AP。MEM-AP用來鏈接到存儲器映射(Memory mapped)類型的資源,而JTAG-AP主要用來鏈接到經典的IEEE 1149.1 JTAG設備上。我們常用的是MEM-AP類型,通過對ARM存儲器映射機制下的系統資源的訪問,我們可以調試幾乎所有的片上資源。而當我們使用IEEE 1149.1 JTAG調試設備做掃描邊界測試時,我們需要用到JTAG-AP實現。

3基于Cortex M3內核調試的MCU實現

首先,我們先對比兩個具體的實現方案。其一是意法半導體公司的STM32MCU,而另一個則為德州儀器公司的Stellaris。

圖2所示為STM32的調試體系構架。

圖3所示為Stellaris的調試體系構架。

圖3Stellaris MCU調試支持框圖

STM32MCU和Stellaris MCU的設計都遵循了ARM的ADI規范。

STM32選用了SWD和JTAG二合一DP接口:SWJ-DP,這樣的選擇方便了對老式JTAG調試設備的兼容。通過固定的操作脈沖,調試設備開發者可以輕松實現在JTAG和SWD方式之間的切換。而不同的硬件設備是復用接口引腳的,這對引腳分配嚴苛的MCU設計提供了很大便利。而Stellaris則只選用了SWD-DP一種物理連接實現,這體現了TI設計人員對SWD調試方式能力的信任與把握,因為節省出來的不僅僅是管腳,更是硅片的體積和成本。

同時,STM32的AHB-AP是一種MEM-AP的實現。通過Internal private peripheral bus(PPB),調試者可以訪問掛接到ARM高性能總線的所有片上資源。而TI的Stellaris也通過類似的機制實現了對片上資源的訪問控制。

ST公司在STM32系列的不同型號中還提供了可選的調試組件,當然,這得益于CoreSight調試構架中的組件化、模塊化設計。其中DWT、FPB的結合給調試者提供了數據觀察點、硬件斷點和FLASH重映射等功能,而ITM、ETM和TPIU的結合給調試者提供了不輸于大型系統調試方案的指令流、數據流監控功能。而TI的Stellaris并沒有提供可選的ETM組件。TI官方也給出了令人信服的解釋:嵌入式跟蹤宏單元(ETM)旨在為開發工具提供明確的逐指令跟蹤信息。該功能對較復雜的微處理器尤其實用,特別是那些所用片上資源太過動態,難以實現外部實時決定性的處理器。例如,片上高速緩存會根據程序環路執行的具體變化而變化,同時數據和輸入也在不斷變化,因此無法以合理的價格通過外部工具來復制。但是,MCU不使用高速緩存,所以ETM作用不大。

由以上分析可以得出,只要不同的廠商在設計基于ARM內核芯片時遵循了ARM相關協議和規范,開發人員在選擇和開發芯片時就能觸類旁通,大大減少相應的學習開發時間,降低開發成本。同時,更多的開發工具和開發平臺將能得到很好的重用,這對開發者來說是一個巨大的成本優勢。

4JTAG和SWD對比

Serial Wire Debug(SWD)是ARM體系結構中定義的新一代調試機制,具有占有引腳少,高速下運行穩定等特點,其所使用的基于分組的協議可提供比JTAG快一倍多的數據速率,SWD的誕生就旨在替代原始的JTAG調試方式。圖4所示為SWD下ARM調試機制示意圖。

圖4SWD作為接口的CoreSight調試與跟蹤系統

圖5展示了SWD與JTAG接口引腳的對比圖。從圖5中可以看出,SWD協議僅僅需要一個時鐘引腳和一個數據傳輸引腳即可完成工作。而可選的SWO引腳可以與ITM組件結合,提供類printf形式的跟蹤調試信息。相比于傳統的JTAG調試協議,新的SWD調試方式的各類優勢不言而喻。同時,在現有的SWD接口中,我們仍然可以使用JTAG的邊界掃描測試功能,當然,這需要我們具有JTAG-AP接口的實現。

JTAG 1149.1 Serial Wire Debug

Pin Purpose Pin Purpose

TCK Clock SWCLK Clock

TMS State Machine Control SWDIO Data In&Out

TDI Data In - -

TDO Data Out SWO -

TRST Reset - -

圖5SWD與JTAG 1149.1引腳對比

5結語

ARM的新一代調試體系結構極大的增強了ARM體系結構功能的完整性和健壯性,及時轉入新的調試體系結構是必要的,也是具有極大好處的。我們在選擇功能芯片時,在考慮了成本和開發難度的前提下,對芯片可維護性和延續性的考慮也要列入其中。同時,在選用開發工具和平臺的過程中,是否支持ARM新的調試機制也應該成為我們一個重要選擇因素。

參 考 文 獻

[1]ARM.Coresight[EB/OL].[2013-10-25].http://www.arm.com/zh/products/processors/cortex-m/index.php:ARM Ltd,2013

[2]ARM.ARM Cortex-M3 Technical Reference Manual[EB/OL].[2006].UK:ARM Ltd,2006.

[3]BOOTH Jean Anne and COZART Sun.Serial Wire Debug—IdealforMicrocontrollers[R].USA:TexasInstruments,2010.

[4]ARM.CoreSight Architecture Specification [EB/OL].[2013].UK:ARM Ltd,2013.

[5]ARM.ARM Debug InterfaceArchitecture SpecificationADIv5.0 to ADIv5.2 [EB/OL].[2013].UK:ARM Ltd,2013.

[6]STMicroelectronics.STM32 Reference manual[EB/OL].[2011-8-23].Switzerland:STMicroelectronics,2011.

[7]TI.StellarisReference manual[EB/OL].USA:Texas Instruments,2010.

[8]ASHFIELD Eddie.Serial Wire Debug and the CoreSightDebug and Trace Architecture[R].UK:ARM Ltd,2010.

[9]WILLIAMS Michael.Low Pin-count Debug Interfaces forMulti-device Systems[R].UK:ARM Ltd,2009.

[10]IEEE Computer Society.IEEE Std 1149.7?-2009 IEEE Standard for Reduced-Pin andEnhanced-Functionality Test AccessPort andBoundary-Scan Architecture[S].USA:IEEE Computer Society,2010.

————————————————

收稿日期:2014-04-02

基金項目:大連民族學院大學生創新創業國家級項目(X2013008)

由以上分析可以得出,只要不同的廠商在設計基于ARM內核芯片時遵循了ARM相關協議和規范,開發人員在選擇和開發芯片時就能觸類旁通,大大減少相應的學習開發時間,降低開發成本。同時,更多的開發工具和開發平臺將能得到很好的重用,這對開發者來說是一個巨大的成本優勢。

4JTAG和SWD對比

Serial Wire Debug(SWD)是ARM體系結構中定義的新一代調試機制,具有占有引腳少,高速下運行穩定等特點,其所使用的基于分組的協議可提供比JTAG快一倍多的數據速率,SWD的誕生就旨在替代原始的JTAG調試方式。圖4所示為SWD下ARM調試機制示意圖。

圖4SWD作為接口的CoreSight調試與跟蹤系統

圖5展示了SWD與JTAG接口引腳的對比圖。從圖5中可以看出,SWD協議僅僅需要一個時鐘引腳和一個數據傳輸引腳即可完成工作。而可選的SWO引腳可以與ITM組件結合,提供類printf形式的跟蹤調試信息。相比于傳統的JTAG調試協議,新的SWD調試方式的各類優勢不言而喻。同時,在現有的SWD接口中,我們仍然可以使用JTAG的邊界掃描測試功能,當然,這需要我們具有JTAG-AP接口的實現。

JTAG 1149.1 Serial Wire Debug

Pin Purpose Pin Purpose

TCK Clock SWCLK Clock

TMS State Machine Control SWDIO Data In&Out

TDI Data In - -

TDO Data Out SWO -

TRST Reset - -

圖5SWD與JTAG 1149.1引腳對比

5結語

ARM的新一代調試體系結構極大的增強了ARM體系結構功能的完整性和健壯性,及時轉入新的調試體系結構是必要的,也是具有極大好處的。我們在選擇功能芯片時,在考慮了成本和開發難度的前提下,對芯片可維護性和延續性的考慮也要列入其中。同時,在選用開發工具和平臺的過程中,是否支持ARM新的調試機制也應該成為我們一個重要選擇因素。

參 考 文 獻

[1]ARM.Coresight[EB/OL].[2013-10-25].http://www.arm.com/zh/products/processors/cortex-m/index.php:ARM Ltd,2013

[2]ARM.ARM Cortex-M3 Technical Reference Manual[EB/OL].[2006].UK:ARM Ltd,2006.

[3]BOOTH Jean Anne and COZART Sun.Serial Wire Debug—IdealforMicrocontrollers[R].USA:TexasInstruments,2010.

[4]ARM.CoreSight Architecture Specification [EB/OL].[2013].UK:ARM Ltd,2013.

[5]ARM.ARM Debug InterfaceArchitecture SpecificationADIv5.0 to ADIv5.2 [EB/OL].[2013].UK:ARM Ltd,2013.

[6]STMicroelectronics.STM32 Reference manual[EB/OL].[2011-8-23].Switzerland:STMicroelectronics,2011.

[7]TI.StellarisReference manual[EB/OL].USA:Texas Instruments,2010.

[8]ASHFIELD Eddie.Serial Wire Debug and the CoreSightDebug and Trace Architecture[R].UK:ARM Ltd,2010.

[9]WILLIAMS Michael.Low Pin-count Debug Interfaces forMulti-device Systems[R].UK:ARM Ltd,2009.

[10]IEEE Computer Society.IEEE Std 1149.7?-2009 IEEE Standard for Reduced-Pin andEnhanced-Functionality Test AccessPort andBoundary-Scan Architecture[S].USA:IEEE Computer Society,2010.

————————————————

收稿日期:2014-04-02

基金項目:大連民族學院大學生創新創業國家級項目(X2013008)

由以上分析可以得出,只要不同的廠商在設計基于ARM內核芯片時遵循了ARM相關協議和規范,開發人員在選擇和開發芯片時就能觸類旁通,大大減少相應的學習開發時間,降低開發成本。同時,更多的開發工具和開發平臺將能得到很好的重用,這對開發者來說是一個巨大的成本優勢。

4JTAG和SWD對比

Serial Wire Debug(SWD)是ARM體系結構中定義的新一代調試機制,具有占有引腳少,高速下運行穩定等特點,其所使用的基于分組的協議可提供比JTAG快一倍多的數據速率,SWD的誕生就旨在替代原始的JTAG調試方式。圖4所示為SWD下ARM調試機制示意圖。

圖4SWD作為接口的CoreSight調試與跟蹤系統

圖5展示了SWD與JTAG接口引腳的對比圖。從圖5中可以看出,SWD協議僅僅需要一個時鐘引腳和一個數據傳輸引腳即可完成工作。而可選的SWO引腳可以與ITM組件結合,提供類printf形式的跟蹤調試信息。相比于傳統的JTAG調試協議,新的SWD調試方式的各類優勢不言而喻。同時,在現有的SWD接口中,我們仍然可以使用JTAG的邊界掃描測試功能,當然,這需要我們具有JTAG-AP接口的實現。

JTAG 1149.1 Serial Wire Debug

Pin Purpose Pin Purpose

TCK Clock SWCLK Clock

TMS State Machine Control SWDIO Data In&Out

TDI Data In - -

TDO Data Out SWO -

TRST Reset - -

圖5SWD與JTAG 1149.1引腳對比

5結語

ARM的新一代調試體系結構極大的增強了ARM體系結構功能的完整性和健壯性,及時轉入新的調試體系結構是必要的,也是具有極大好處的。我們在選擇功能芯片時,在考慮了成本和開發難度的前提下,對芯片可維護性和延續性的考慮也要列入其中。同時,在選用開發工具和平臺的過程中,是否支持ARM新的調試機制也應該成為我們一個重要選擇因素。

參 考 文 獻

[1]ARM.Coresight[EB/OL].[2013-10-25].http://www.arm.com/zh/products/processors/cortex-m/index.php:ARM Ltd,2013

[2]ARM.ARM Cortex-M3 Technical Reference Manual[EB/OL].[2006].UK:ARM Ltd,2006.

[3]BOOTH Jean Anne and COZART Sun.Serial Wire Debug—IdealforMicrocontrollers[R].USA:TexasInstruments,2010.

[4]ARM.CoreSight Architecture Specification [EB/OL].[2013].UK:ARM Ltd,2013.

[5]ARM.ARM Debug InterfaceArchitecture SpecificationADIv5.0 to ADIv5.2 [EB/OL].[2013].UK:ARM Ltd,2013.

[6]STMicroelectronics.STM32 Reference manual[EB/OL].[2011-8-23].Switzerland:STMicroelectronics,2011.

[7]TI.StellarisReference manual[EB/OL].USA:Texas Instruments,2010.

[8]ASHFIELD Eddie.Serial Wire Debug and the CoreSightDebug and Trace Architecture[R].UK:ARM Ltd,2010.

[9]WILLIAMS Michael.Low Pin-count Debug Interfaces forMulti-device Systems[R].UK:ARM Ltd,2009.

[10]IEEE Computer Society.IEEE Std 1149.7?-2009 IEEE Standard for Reduced-Pin andEnhanced-Functionality Test AccessPort andBoundary-Scan Architecture[S].USA:IEEE Computer Society,2010.

————————————————

收稿日期:2014-04-02

基金項目:大連民族學院大學生創新創業國家級項目(X2013008)

猜你喜歡
調試
基于航拍無人機的設計與調試
電子制作(2018年12期)2018-08-01 00:47:44
燃氣輪機發電機組運行調試
FOCAS功能在機床調試中的開發與應用
核電廠主給水系統調試
中國核電(2017年1期)2017-05-17 06:10:11
無線通信中頻線路窄帶臨界調試法及其應用
電子制作(2017年19期)2017-02-02 07:08:38
調壓柜的調試與試運行探討
工業電氣設備控制系統的安裝與調試
音頻處理器的調試
同期繼電保護調試中出現的問題及處理
基于JTAG的SoC片上調試系統設計
主站蜘蛛池模板: av一区二区无码在线| 久久婷婷六月| 亚洲精品无码AⅤ片青青在线观看| 亚洲视频二| 国产99精品久久| 亚洲国产精品久久久久秋霞影院 | 啊嗯不日本网站| 国产精品精品视频| 国产超薄肉色丝袜网站| 国产成人av大片在线播放| 国产成年女人特黄特色毛片免| 亚洲床戏一区| 在线无码av一区二区三区| 国产在线精彩视频论坛| 国产菊爆视频在线观看| 国产成人亚洲精品蜜芽影院| 日韩 欧美 小说 综合网 另类| 久久中文字幕2021精品| 国产精品白浆无码流出在线看| 久久久久青草线综合超碰| 国产精品尤物铁牛tv | 亚洲国产成人在线| 色综合成人| 国产原创第一页在线观看| 午夜无码一区二区三区在线app| 青青青视频蜜桃一区二区| 国产精品开放后亚洲| 亚洲日韩每日更新| 亚洲国产日韩在线成人蜜芽| 国产精品2| 九九视频免费在线观看| 青青草原国产av福利网站| av天堂最新版在线| 蝌蚪国产精品视频第一页| 亚洲无码高清视频在线观看| 亚洲午夜天堂| 欧美国产日韩另类| 亚洲国产精品国自产拍A| 婷婷综合在线观看丁香| a毛片在线| 国产精品免费p区| 波多野结衣在线se| 精品无码人妻一区二区| 国产精品无码一二三视频| 亚洲欧美不卡中文字幕| 无码中文AⅤ在线观看| 97成人在线观看| 欧美精品一区在线看| 五月婷婷导航| 亚洲免费黄色网| 亚洲欧美日韩精品专区| 欧美不卡在线视频| 无码网站免费观看| 又爽又黄又无遮挡网站| 99草精品视频| 精品無碼一區在線觀看 | 91视频国产高清| 亚洲色图欧美激情| 日韩一区二区三免费高清| 亚洲伊人天堂| 中文字幕av一区二区三区欲色| 久久精品最新免费国产成人| 国产黄在线免费观看| 欧美激情视频一区二区三区免费| 国产99视频在线| 欧洲高清无码在线| 日韩欧美国产三级| 亚洲a级毛片| 美女一区二区在线观看| 激情综合图区| 亚洲AV无码久久天堂| 在线观看国产精品日本不卡网| 在线精品视频成人网| 亚卅精品无码久久毛片乌克兰| 亚洲色欲色欲www在线观看| 免费毛片a| 一级香蕉人体视频| 新SSS无码手机在线观看| 播五月综合| 日韩精品免费在线视频| 亚洲欧美成人在线视频| 美女亚洲一区|