<acronym id="s8ci2"><small id="s8ci2"></small></acronym>
<rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
<acronym id="s8ci2"></acronym>
<acronym id="s8ci2"><center id="s8ci2"></center></acronym>
0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

調試接口SWD和JTAG的區別

工程師 ? 來源:strongerHuang ? 作者:strongerHuang ? 2020-10-27 09:29 ? 次閱讀

作者 | strongerHuang

微信公眾號 | strongerHuang

作為嵌入式工程師,下載調試器都應該知道,但你真正了解其SWD 和 JTAG接口的含義和區別嗎?

1

什么是下載調試器

簡單來說,下載調試器是將PC(例如通過USB協議)發送的命令轉換為MCU(負責MCU內部外圍設備)理解的語言(例如SWD或JTAG協議)的設備,加載代碼并精確控制執行。

2

調試器協議標準

1.什么是標準?

簡單來說,標準是一組規則和協議,特定行業中的每個參與者都同意遵循并執行。

2.調試器協議混亂現象

在SWD和JTAG之類的協議出現之前,調試器及其協議一片混亂,每個MCU制造商都提出了自己的專有方法,將代碼加載到他們的MCU上。制造商每次發布MCU時,嵌入式軟件工程師都需要了解其專有協議,以將代碼加載到微控制器中。

而且,調試適配器很昂貴,因為制造商實際上并沒有競爭者可以使調試適配器與他們的協議相匹配,因為協議是專有的。它們昂貴的另一個原因是由于體積不足,因為它們只能將調試適配器出售給使用它們制造的MCU的公司(工程師)。

不同協議還會導致開發成本增加,比如:你在設計的板上有來自4個不同制造商的4種芯片,并且希望對其進行一些自動化測試以提高生產過程的效率。但是,由于所有電路板都有自己的協議,因此您需要制作一個能適應復雜性的超級復雜的生產代碼,并且需要在電路板上的測試點安裝4個不同的調試器,從而增加了成本,生產時間和編程時間。

3.制定協議

各種下載調試不同會導致幾個問題:

投入更多的學習時間

增加購買下載調試的成本

生成測試效率低下

為了解決這一問題,各大MCU制造和生產商的工程師們就針對調試制定了一些規范協議。

3

JTAG標準

JTAG:Joint Test Action Group,即聯合測試行動小組。

該小組于1980年后期開始討論,并于1990年正式發布了解釋IEEE標準的文檔。(IEEE代表電氣電子工程師協會,是一個國際組織,其中發布了所有標準,如WiFi,藍牙等)。他們提出的協議在1990年被記錄在IEEE 1149.1中。后來對該文檔進行了修訂和完善,在撰寫本文時,最新標準是IEEE 1149.7。

JTAG基本上帶有5個引腳:

TDI: Test Data In。串行輸入引腳

TDO: Test Data Out,串行輸出引腳

TCK:Test Clock,時鐘引腳

TMS: Test Mode Select,模式選擇(控制信號)引腳

TRST: Test Reset,復位引腳

4

SWD標準

SWD:Serial Wire Debug,代表串行線調試,是ARM設計的協議,用于對其微控制器進行編程和調試。

由于SWD專門從事編程和調試,因此它具有許多特殊功能,通常在其他任何地方都無法使用,例如通過IO線將調試信息發送到計算機。另外,由于它是ARM專門為在其設備中使用而制造的,因此SWD的性能通常是同類產品中最好的!

SWD引腳

SWDIO: Serial Wire Data Input Output,串行數據輸入輸出引腳

SWCLK: Serial Wire Clock,串行線時鐘引腳

5

SWD / JTAG的各種區別

市面上有很多兼容 SWD 和 JTAG 協議的MCU和調試適配器,他們通常通過具有一組下載調試引腳,來實現下載和調試功能,這些引腳內部復用到SWD外設和JTAG外設。

1.共享引腳

SWD的引腳在一定條件下可以和JTAG引腳復用,目前針對 JTAG 和 SWD的連接器比較多,比如20pin的接插件:

當然,也有10pin的:

2.SWD / JTAG各自優勢

SWD協議的優勢:

使用引腳更少,只需SWDIO和SWCLK兩個引腳

SWD具有特殊功能,例如通過其I / O線打印調試信息

與JTAG相比,SWD在速度方面具有更好的整體性能

JTAG協議的優勢:

JTAG不僅限于ARM芯片,在ARM之外的芯片也受支持,比如大家熟悉的MSP430

JTAG具有更多多種用途,用于編程,調試和生產測試

JTAG是一個獨立的團體,他們會隨著協議的發展而發展

3.什么時候選擇SWD而不是JTAG

如果您的原理圖/電路板設計足夠簡單,可以在沒有JTAG功能的情況下進行測試

調試性能比生產測試更重要,你的設備專注于服務研究而不是批量生產!

MCU在尺寸方面有限制,SWD 可以節省空間

你的硬件設計太復雜,MCU沒有多余的2個引腳

6

總結:SWD / JTAG對比

下面用一種圖來總結:

責任編輯:haq

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 嵌入式
    +關注

    關注

    5001

    文章

    18394

    瀏覽量

    291024
  • JTAG
    +關注

    關注

    6

    文章

    385

    瀏覽量

    71196
  • SWD
    SWD
    +關注

    關注

    1

    文章

    54

    瀏覽量

    11707
收藏 人收藏

    評論

    相關推薦

    jlink調試器的工作原理

    我們平時使用的jlink調試器就是使用JTAG接口,JTAG以前是用于測試芯片的一種通信方式,現在部分ARM或者DSP等都存在JTAG
    的頭像 發表于 03-08 12:32 ?1143次閱讀
    jlink<b class='flag-5'>調試</b>器的工作原理

    DAP接口JTAG接口調試有啥區別?

    DAP接口JTAG接口調試有啥區別呀,為啥我接了jtag不可以多核
    發表于 02-19 06:24

    串行線調試JTAG有何區別?

    在基于ARM7的ADuC器件上,通過JTAG調試和下載到Flash。在AduCM360上,JTAG被串行線調試取代。 串行線調試
    發表于 01-15 07:35

    jtag接口swd接口區別

    jtag接口swd接口區別 JTAG (Joint Test Action Group)
    的頭像 發表于 12-07 15:29 ?4613次閱讀

    你真正了解SWD如何下載調試的么?

    SWJ-DP 這是一個組合調試端口,可以通過ADIv5.1定義的JTAG或串行線協議進行通信。它包含兩個調試端口SW-DP和JTAG-DP,您可以通過
    的頭像 發表于 12-06 11:20 ?623次閱讀
    你真正了解<b class='flag-5'>SWD</b>如何下載<b class='flag-5'>調試</b>的么?

    JTAG仿真器接口設計

    電子發燒友網站提供《JTAG仿真器接口設計.pdf》資料免費下載
    發表于 11-27 10:05 ?0次下載
    <b class='flag-5'>JTAG</b>仿真器<b class='flag-5'>接口</b>設計

    jtag接口或者SWD接口的單片機如何通過網口燒寫程序?

    jtag接口或者SWD接口的單片機如何通過網口燒寫程序?
    發表于 11-08 06:55

    SWD接口對比JTAG接口有什么優勢?

    SWD接口對比JTAG接口有什么優勢
    發表于 10-09 07:09

    SWD調試接口復用成其他功能后無法連接解決方案-HK32F030M應用筆記(十八)

    SWD調試接口復用成其他功能后無法連接解決方案-HK32F030M應用筆記(十八)
    的頭像 發表于 09-18 10:56 ?1325次閱讀

    移植到FPGA上只有一個JTAG接口,進行MCU調試是采用其他擴展引腳定位為MCU的JTAG調試?

    移植到FPGA上,只有一個JTAG接口。再進行MCU調試的話,是采用其他擴展引腳定位為MCU的JTAG調試?還是使用FPGA的uart串口
    發表于 08-11 13:41

    Arm ADIv6.0調試接口體系結構規范

    JTAG設備,必須提供能夠與JTAG設備接口的存儲器映射組件。 ADIv6包括以下層: ?JTAGSWD物理層。有關
    發表于 08-11 07:20

    XJTAG邊界掃描—JTAG調試

    JTAG調試器(JTAG Chain Debugger),隨XJTAG的安裝包一起安裝,是一個功能強大的工具,旨在幫助您解決JTAG鏈的問題。
    發表于 07-19 14:41 ?387次閱讀
    XJTAG邊界掃描—<b class='flag-5'>JTAG</b>鏈<b class='flag-5'>調試</b>器

    用Jlink在SWD調試提示無法連接到目標怎么解決?

    我想調試 MIMXRT1052CVJ5B 時出錯。 我用 Jlink 在 SWD調試 這個錯誤: 錯誤:無法連接到目標。 SEGGER J-Link GDB Server V7.54b
    發表于 06-09 07:27

    RT1062 JTAG調試的疑問求解

    (最新 MCUXpresso 附帶的版本)。我們還嘗試了兩種不同的 J-Link Plus 調試探針,它們都可以與使用 NXP LPC43xx MCU 的其他 SWD/JTAG 設置一起使用。 我
    發表于 06-07 09:00

    JTAG 連接器和接口

    盡管 JTAG 接口沒有一種標準接頭,但制造商之間已或多或少地標準化了幾種接頭類型。其中包括ARM JTAG 20、ARM JTAG 14、TI J
    的頭像 發表于 06-06 10:18 ?3539次閱讀
    <b class='flag-5'>JTAG</b> 連接器和<b class='flag-5'>接口</b>
    亚洲欧美日韩精品久久_久久精品AⅤ无码中文_日本中文字幕有码在线播放_亚洲视频高清不卡在线观看
    <acronym id="s8ci2"><small id="s8ci2"></small></acronym>
    <rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
    <acronym id="s8ci2"></acronym>
    <acronym id="s8ci2"><center id="s8ci2"></center></acronym>