在數(shù)字電路的開發(fā)和調試過程中經常需要用JTAG來觀察和修改芯片狀態(tài)。本篇文章將從JTAG的介紹及使用詳細步驟以來展開描述。
1
JTAG介紹
JTAG是英文“Joint Test Action Group”的縮寫,是一種硬件調試和測試技術,常被用于在集成電路中診斷和調試問題。JTAG的正式名稱為IEEE 1149.1標準,是一種通過掃描鏈(scan chain)實現(xiàn)的測試方法,該方法可以在不破壞芯片的情況下,對集成電路進行測試和調試。JTAG技術廣泛應用于數(shù)字集成電路、嵌入式系統(tǒng)和電路板等硬件開發(fā)領域。
在JTAG中,芯片上的所有測試點都被連接到一個掃描鏈中,這個掃描鏈允許對芯片進行“非入侵式”地加載測試模式或者讀取芯片中的狀態(tài)。除了測試和調試,JTAG還可以用于燒寫程序和配置數(shù)據(jù)到芯片中,從而方便開發(fā)人員進行硬件和軟件的聯(lián)合調試和測試。JTAG接口通常由調試工具連接到開發(fā)板上,以便開發(fā)人員可以遠程調試和測試集成電路。
2
JTAG使用教程
以下教程使用軟件環(huán)境為Telink IoT Studio(V2023.8)。軟件環(huán)境下載地址:
http://wiki.telink-semi.cn/wiki/IDE-and-Tools/Telink_IoT_Studio/
1、硬件連接
將TLSR9 DEV KEY與開發(fā)板進行連接,保證TCK(測試時鐘輸入)、TMS(測試模式選擇)、TDI(測試數(shù)據(jù)輸入)、TDO(測試數(shù)據(jù)輸出)、REF(參考電壓)、GND(接地)引腳連接正確,再使用USB數(shù)據(jù)線將TLSR9 DEV KEY連接至電腦,連接正常時只亮藍燈。
TLSR9 DEV KEY 購買鏈接:https://item.taobao.com/item.htm?id=680161782840
2、使用Jtag_Burn 燒錄程序
點擊Telink →Jtag Burn(SPI Burn),燒錄程序時,注意配置Jtag_Burn的路徑和芯片類型(Jtag_Burn 位于$IoTStudio/RDS/V3.2.3/flash/ 目錄下,其幫助文檔也在同一目錄),然后點擊 Start ICEman,ICEman 準備好后,確保 Telnet Port 和 Burner Port 與 ICEman 保持一致,再點擊燒錄,如下圖:
3、使用JTAG進行Debug
-
打開ICEman:在進行 Debug 之前,需要先執(zhí)行 ICEman。點擊上方工具欄 Telink --> Toolchain Shell or ICEman Shell --> Open ICEman(RDS V5.1.2) shell。
Windows環(huán)境下,在終端輸入命令:./ICEman -Z v5,執(zhí)行結果如下:
1111 就是需要監(jiān)聽的 TCP 端口號,調試過程中需要保證 ICEman 在運行,不能關閉終端。ICEman 位于$IoTStudio/RDS/V5.1.1/ice/ 目錄下,也可以自行打開 ICEman。
-
Debug Configuration:打開ICEman 之后,點擊工具欄 Debug 圖標下拉箭頭,選擇 Debug Configuration。
選擇 C/C++ Remote Application, 配置 main 選項卡,選擇編譯出的 elf 文件作為 gdb 的輸入文件,并選擇 Disable auto build。
然后點擊下方的 Select other, 默認為 Automatic, 選成 Manual。
點擊 Debugger 選項卡,配置相應的 debugger, 這里是 riscv32-elf-gdb,注意不要勾選 Stop on startup at。
點擊 Connect 子選項卡,將 TCP 端口號填寫為 ICEman 得到的 1111。
配置完成,點擊調試按鈕,添加斷點即可開始調試,界面如下:
-
設置斷點:進入debug模式后可以在需要程序停住的位置設置相應斷點,斷點最多支持2個(硬件斷點),斷點設置后的狀態(tài)如下圖。點擊Resume按鈕,程序會執(zhí)行到斷點處,再點一次,程序會執(zhí)行到下一處斷點處。
-
單步調試:step into單步調試遇到子函數(shù)進入子函數(shù)執(zhí)行;step over單步調試,遇到子函數(shù)不進入執(zhí)行。
4、通過選項卡查看和修改寄存器和內存
Expressions選項卡內可以查看變量/變量表達式,可以直接在Value處修改對應的值。
Memory選項卡內可以查看和修改內存數(shù)據(jù)。
Registers選項卡內可以查看和修改CPU寄存器數(shù)據(jù)。
本篇介紹到這,下一篇小編將給大家介紹JTAG相關工具命令行的使用和常見問題及解決方法。
關 于 泰 凌
泰凌微電子致力于為客戶提供一站式的低功耗高性能無線連接SoC芯片解決方案,包括經典藍牙,藍牙低功耗,藍牙Mesh,Zigbee,Thread,Matter,Apple HomeKit,Apple“查找(Find My)”,和私有協(xié)議等低功耗2.4GHz多協(xié)議無線連接系統(tǒng)級芯片和豐富的固件協(xié)議棧。公司產品廣泛應用于智能照明,智能家居/樓宇,智能遙控,無線外設,智能零售,穿戴設備,無線音頻,智能玩具,物流追蹤,智慧城市等各類消費和商業(yè)應用場景中。
官網:www.telink-semi.com
微信公眾號:telink-semi
https://developers.telink-semi.cn/
銷售接洽:
中國大陸(華東、華北) :
+86-21-20281118-8213
中國大陸(華南、香港、音頻) :
+86-0755-26614003
telinksales@telink-semi.com
原文標題:【技術專欄】泰凌微電子JTAG工具使用教程(一)
文章出處:【微信公眾號:泰凌微電子】歡迎添加關注!文章轉載請注明出處。
-
泰凌微
+關注
關注
7文章
147瀏覽量
10806
原文標題:【技術專欄】泰凌微電子JTAG工具使用教程(一)
文章出處:【微信號:telink-semi,微信公眾號:泰凌微電子】歡迎添加關注!文章轉載請注明出處。
發(fā)布評論請先 登錄
相關推薦
評論