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

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

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

JTAG簡(jiǎn)介 JTAG和SWD之間的區(qū)別

FPGA之家 ? 來源:知曉編程 ? 作者:知曉編程 ? 2021-07-23 17:53 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

01JTAG簡(jiǎn)介

JTAG(JointTest ActionGroup)是一個(gè)接口,為了這個(gè)接口成立了一個(gè)小組叫JTAG小組,它成立于1985年。在1990年IEEE覺得一切妥當(dāng),于是發(fā)布了IEEE Standard 1149.1-1990,并命名為Standard Test Access Port and Boundary-ScanArchitecture,這就是大名鼎鼎的JTAG了。

JTAG的三大功能你知道嗎,響當(dāng)當(dāng)?shù)模?/p>

1.下載器,即下載軟件到FLASH里。

2. DEBUG,跟醫(yī)生的聽診器似的,可探聽芯片內(nèi)部小心思。

3. 邊界掃描,可以訪問芯片內(nèi)部的信號(hào)邏輯狀態(tài),還有芯片引腳的狀態(tài)等等。

JTAG根本沒有標(biāo)準(zhǔn)的接口定義,甚至每家公司定義都不一樣。在ARM的《系統(tǒng)和接口設(shè)計(jì)參考》文檔中

文檔下載地址:

鏈接:https://pan.baidu.com/s/13aQXOXR73_wiERz2kwN15w

提取碼:xaaf

(提示:公眾號(hào)不支持外鏈接,請(qǐng)復(fù)制鏈接到瀏覽器下載)

這篇文檔列舉了不同的JTAG接口

而我們經(jīng)常在互聯(lián)網(wǎng)看到的下圖,是SEGGER公司的Jlink的JTAG接口。

d88ba2c6-eb90-11eb-a97a-12bb97331649.jpg

J-Link是德國(guó)SEGGER公司推出基于JTAG的仿真器。簡(jiǎn)單地說,是給一個(gè)JTAG協(xié)議轉(zhuǎn)換盒,即一個(gè)小型USB到JTAG的轉(zhuǎn)換盒,其連接到計(jì)算機(jī)用的是USB接口,而到目標(biāo)板內(nèi)部用的還是jtag協(xié)議。它完成了一個(gè)從軟件到硬件轉(zhuǎn)換的工作。

同時(shí)Jlink也是個(gè)人覺的最流行的調(diào)試器。通過《系統(tǒng)和接口設(shè)計(jì)參考》可知,這個(gè)ARM官方的JTAG20pin并不相同。

在這里希望大家明白,ARM,Jlink,JTAG之間的關(guān)系。

使用頻率也挺高的ST-linkV2的接口由上文可知,這也是ST公司自己定義的接口

Ulink、CMSIS_DAP和其他STM32仿真器是一樣的道理。

02JTAG介紹

邊界測(cè)試:

舉個(gè)例子你有兩個(gè)芯片,這兩個(gè)芯片之間連接了很多很多的線,怎么確保這些線之間的連接是OK的呢,用JTAG,它可以控制所有IC的引腳。這叫做芯片邊界測(cè)試。

d8f98764-eb90-11eb-a97a-12bb97331649.png

在JTAG接口中,最常用的信號(hào)有四個(gè),分別是TCK/TMS/TDO/TDI。JTAG接口可以一對(duì)一的使用,也可以組成菊花鏈的一對(duì)多拓?fù)浣Y(jié)構(gòu),兩種拓?fù)浣Y(jié)構(gòu)如下圖所示。多核的芯片,其芯片內(nèi)部已經(jīng)接成了菊花鏈的形式。

d905779a-eb90-11eb-a97a-12bb97331649.png

JTAG的菊花鏈還有很多玩法

CPUFPGA制造商允許JTAG用來端口debug;FPGA廠商允許通過JTAG配置FPGA,使用JTAG信號(hào)通入FPGA核。

03JTAG和SWD

SWD接口:串行調(diào)試(SerialWireDebug),應(yīng)該可以算是一種和JTAG不同的調(diào)試模式,最直接的體現(xiàn)在調(diào)試接口上,與JTAG的20個(gè)引腳相比,SWD只需要4(或者5)個(gè)引腳。

VCC、SWDIO、SWCLK、GND(有些情況,也加上了RESET腳)。

SWD和傳統(tǒng)的調(diào)試方式區(qū)別:

SWD模式比JTAG在高速模式下面更加可靠。在大數(shù)據(jù)量的情況下面JTAG下載程序會(huì)失敗,但是SWD發(fā)生的幾率會(huì)小很多?;臼褂肑TAG仿真模式的情況下是可以直接使用SWD模式的,只要你的仿真器支持,所以推薦大家使用這個(gè)模式。

當(dāng)CPU的GPIO不夠用的時(shí)候,可以使用SWD仿真,這種模式支持更少的引腳。

在硬件PCB的體積有限的時(shí)候推薦使用SWD模式,它需要的引腳少,當(dāng)然需要的PCB空間就小,可以選擇一個(gè)很小的2.54間距的5芯端子做仿真接口。

Keil環(huán)境下Jlink調(diào)試器的JTAG模式和SWD模式

IAR環(huán)境下Jlink調(diào)試器的JTAG模式和SWD模式

Jlink的JTAG模式和SWD模式對(duì)比圖

d9dd2924-eb90-11eb-a97a-12bb97331649.png

04關(guān)于Vref引腳

上面我們提到Vref引腳,屬于IO接口的電源域,目的是為了使芯片邏輯電平與調(diào)試器的邏輯電平一致,避免邏輯錯(cuò)誤,甚至對(duì)設(shè)備造損壞。

在Jlink上有Vref的跳線帽

三個(gè)排針:①是NC,②是Vref,是和輸出的1腳相連的,③是3.3V

如果要Jlink的1腳Vref輸出3.3V,直接將②和③短接即可。

05關(guān)于TRST引腳

JTAG定義中的TRST引腳,用來復(fù)位TAP控制器的。在STM32系列單片機(jī)中,并沒有TRST引腳,名字為NJTRST。

以STM32F207為例,NJTRST引腳在JTAG和SWD模式中的說明。

STM32F207的SWJI/O引腳可用性

06RESET引腳作用

在一些STM32的產(chǎn)品仿真時(shí)使用4線的SWD模式,發(fā)布版通常會(huì)將JTAG口設(shè)置為普通IO,或者由于管腳不夠用,在發(fā)布版用作其他用途。我們?cè)谡{(diào)試發(fā)布版,因?yàn)榻沽薐TAG模式,沒有辦法仿真了。

這個(gè)時(shí)候,最常用的做法是,拉高BOOT0管腳,進(jìn)入MainFlash memory模式,進(jìn)行debug仿真。

對(duì)比STM32的官方開發(fā)板,我們?cè)谑褂肧WD模式?jīng)]有引出RST引腳,當(dāng)然屬于SWD的還有SWO信號(hào),這是個(gè)監(jiān)視用的,也是非常有用。這兩個(gè)信號(hào)都可以連接仿真器的。

db2d2e6e-eb90-11eb-a97a-12bb97331649.png

仿真器有UnderReset的方式,因此,仿真器在需要仿真的時(shí)候,會(huì)把RST信號(hào)送到MCU,讓MCU處于RST,或者采用Reset后仿真,代碼還沒執(zhí)行到禁止JTAG狀態(tài)下,所以可以直接仿真。當(dāng)然,也可以主動(dòng)復(fù)位供電,也是可以脫離原來的JTAG禁止?fàn)顟B(tài)。也可以拉高boot0管腳。

編輯:jq

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

    關(guān)注

    6

    文章

    404

    瀏覽量

    73214

原文標(biāo)題:關(guān)于JTAG,你知道的和不知道的都在這里

文章出處:【微信號(hào):zhuyandz,微信公眾號(hào):FPGA之家】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 3人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

  • asdzaqw1
  • jf_417407681

評(píng)論

相關(guān)推薦
熱點(diǎn)推薦

FPGA的Jtag接口燒了,怎么辦?

在展開今天的文章前,先來討論一個(gè)問題:FPGA的jtag接口燒了怎么辦?JTAG接口的輸入引腳通常設(shè)計(jì)為高阻抗,這使得它們對(duì)靜電電荷積累非常敏感,由于JTAG接口需要頻繁連接調(diào)試器、下載線纜等外
的頭像 發(fā)表于 04-27 11:01 ?851次閱讀
FPGA的<b class='flag-5'>Jtag</b>接口燒了,怎么辦?

將NXP RT1166更換為RT1064,可以使用JTAG/SWD存儲(chǔ)和檢索其閃存上的數(shù)據(jù)嗎?

我在我的項(xiàng)目中使用了 RT1166,但是,其中一個(gè)要求是芯片應(yīng)該具有可被 JTAG/SWD 訪問的內(nèi)部閃存。 RT1166 有,但 RT1064 有 4MB 的內(nèi)部 Flash。 我可以使用 JTAG/
發(fā)表于 04-07 06:29

NXP MCU RT1166如何使用JTAG/SWD工具將數(shù)據(jù)存儲(chǔ)到內(nèi)部閃存中?

我需要使用 JTAG 將數(shù)據(jù)存儲(chǔ)到內(nèi)部閃存中。我能夠使用 JTAG/SWD 工具 ARM J-Link 將它們存儲(chǔ)在 FlexSPI1 連接的外部閃存上,并且可以通過地址0x30000000訪問
發(fā)表于 04-01 06:54

使用NXP控制器LPC55S69JBD100E,編程都需要SWDJTAG嗎?

1. 在我們的項(xiàng)目中,我們使用 NXP 控制器LPC55S69JBD100E。編程都需要 SWDJTAG 嗎? 2. 您能解釋一下 Flash 編程嗎?
發(fā)表于 03-27 07:23

EE-68: JTAG仿真技術(shù)參考

電子發(fā)燒友網(wǎng)站提供《EE-68: JTAG仿真技術(shù)參考.pdf》資料免費(fèi)下載
發(fā)表于 01-05 10:07 ?0次下載
EE-68: <b class='flag-5'>JTAG</b>仿真技術(shù)參考

JTAG/MPSD仿真技術(shù)參考

電子發(fā)燒友網(wǎng)站提供《JTAG/MPSD仿真技術(shù)參考.pdf》資料免費(fèi)下載
發(fā)表于 12-23 15:45 ?0次下載
<b class='flag-5'>JTAG</b>/MPSD仿真技術(shù)參考

JTAG的基礎(chǔ)知識(shí)

JTAG是一種IEEE標(biāo)準(zhǔn)用來解決板級(jí)問題,開發(fā)于上個(gè)世紀(jì)80年代。今天JTAG被用來燒錄、debug、探查端口。當(dāng)然,最原始的使用是邊界測(cè)試。
的頭像 發(fā)表于 11-15 10:02 ?1878次閱讀
<b class='flag-5'>JTAG</b>的基礎(chǔ)知識(shí)

通過JTAG接口對(duì)MSP430進(jìn)行編程

電子發(fā)燒友網(wǎng)站提供《通過JTAG接口對(duì)MSP430進(jìn)行編程.pdf》資料免費(fèi)下載
發(fā)表于 10-31 09:31 ?1次下載
通過<b class='flag-5'>JTAG</b>接口對(duì)MSP430進(jìn)行編程

C2000 MCU JTAG 連接調(diào)試

電子發(fā)燒友網(wǎng)站提供《C2000 MCU JTAG 連接調(diào)試.pdf》資料免費(fèi)下載
發(fā)表于 09-09 09:30 ?0次下載
C2000 MCU <b class='flag-5'>JTAG</b> 連接調(diào)試

JacintoTM 7家族HS芯片中的JTAG加解鎖控制

電子發(fā)燒友網(wǎng)站提供《JacintoTM 7家族HS芯片中的JTAG加解鎖控制.pdf》資料免費(fèi)下載
發(fā)表于 09-06 11:44 ?0次下載
JacintoTM 7家族HS芯片中的<b class='flag-5'>JTAG</b>加解鎖控制

SPI、UART、RGMII、JTAG接口的低電壓轉(zhuǎn)換

電子發(fā)燒友網(wǎng)站提供《SPI、UART、RGMII、JTAG接口的低電壓轉(zhuǎn)換.pdf》資料免費(fèi)下載
發(fā)表于 08-30 11:09 ?0次下載
SPI、UART、RGMII、<b class='flag-5'>JTAG</b>接口的低電壓轉(zhuǎn)換

Samtec小課堂 | 兩分鐘了解JTAG連接器

摘要/前言 在回答 “什么是JTAG 連接器?”這個(gè)問題之前,讓我先向大家簡(jiǎn)要介紹一下 JTAG。 什么是JTAG? 聯(lián)合測(cè)試工作組(Joint Test Action Group,簡(jiǎn)稱?JT
發(fā)表于 08-28 13:59 ?968次閱讀
Samtec小課堂 | 兩分鐘了解<b class='flag-5'>JTAG</b>連接器

【GD32 MCU 入門教程】二、GD32 MCU 燒錄說明 (2)SWD/JTAG在線下載

GD32系列MCU支持SWDJTAG(部分型號(hào)不支持)接口進(jìn)行下載調(diào)試,這些功能通過ARM CoreSight組件的標(biāo)準(zhǔn)配置和鏈狀連接的TAP控制器來實(shí)現(xiàn)的。調(diào)試和跟蹤功能集成在ARM
的頭像 發(fā)表于 08-08 17:34 ?1776次閱讀
【GD32 MCU 入門教程】二、GD32 MCU 燒錄說明 (2)<b class='flag-5'>SWD</b>/<b class='flag-5'>JTAG</b>在線下載

是否可以使用JLink工具,通過JTAGSWD引腳在ESP8266上編程和調(diào)試代碼?

是否可以使用JLink工具,通過JTAGSWD引腳在ESP8266上編程和調(diào)試代碼? 我找不到任何關(guān)于這個(gè)的文檔,似乎沒有人關(guān)心它。請(qǐng)指教。
發(fā)表于 07-22 08:08

如何使用JTAG來調(diào)試ESP-12模塊?

我想使用 JTAG 來調(diào)試 ESP-12 模塊。我知道這個(gè)模塊使用Xtensa LX106內(nèi)核,并且這個(gè)內(nèi)核具有JTAG功能。那么,如果我正確配置了引腳,我可以使用JTAG dubugger進(jìn)行開發(fā)嗎?如果是這樣,有人有一些推薦
發(fā)表于 07-19 10:57

電子發(fā)燒友

中國(guó)電子工程師最喜歡的網(wǎng)站

  • 2931785位工程師會(huì)員交流學(xué)習(xí)
  • 獲取您個(gè)性化的科技前沿技術(shù)信息
  • 參加活動(dòng)獲取豐厚的禮品