在数字电路的开发和调试过程中经常需要用JTAG来观察和修改芯片状态。本篇文章将从JTAG的介绍及使用详细步骤以来展开描述。
1
JTAG介绍
JTAG是英文“Joint Test Action Group”的缩写,是一种硬件调试和测试技术,常被用于在集成电路中诊断和调试问题。JTAG的正式名称为IEEE 1149.1标准,是一种通过扫描链(scan chain)实现的测试方法,该方法可以在不破坏芯片的情况下,对集成电路进行测试和调试。JTAG技术广泛应用于数字集成电路、嵌入式系统和电路板等硬件开发领域。
在JTAG中,芯片上的所有测试点都被连接到一个扫描链中,这个扫描链允许对芯片进行“非入侵式”地加载测试模式或者读取芯片中的状态。除了测试和调试,JTAG还可以用于烧写程序和配置数据到芯片中,从而方便开发人员进行硬件和软件的联合调试和测试。JTAG接口通常由调试工具连接到开发板上,以便开发人员可以远程调试和测试集成电路。
2
JTAG使用教程
以下教程使用软件环境为Telink IoT Studio(V2023.8)。软件环境下载地址:
http://wiki.telink-semi.cn/wiki/IDE-and-Tools/Telink_IoT_Studio/
1、硬件连接
将TLSR9 DEV KEY与开发板进行连接,保证TCK(测试时钟输入)、TMS(测试模式选择)、TDI(测试数据输入)、TDO(测试数据输出)、REF(参考电压)、GND(接地)引脚连接正确,再使用USB数据线将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 之前,需要先执行 ICEman。点击上方工具栏 Telink --> Toolchain Shell or ICEman Shell --> Open ICEman(RDS V5.1.2) shell。
Windows环境下,在终端输入命令:./ICEman -Z v5,执行结果如下:
1111 就是需要监听的 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个(硬件断点),断点设置后的状态如下图。点击Resume按钮,程序会执行到断点处,再点一次,程序会执行到下一处断点处。
单步调试:step into单步调试遇到子函数进入子函数执行;step over单步调试,遇到子函数不进入执行。
4、通过选项卡查看和修改寄存器和内存
Expressions选项卡内可以查看变量/变量表达式,可以直接在Value处修改对应的值。
Memory选项卡内可以查看和修改内存数据。
Registers选项卡内可以查看和修改CPU寄存器数据。
本篇介绍到这,下一篇小编将给大家介绍JTAG相关工具命令行的使用和常见问题及解决方法。
关 于 泰 凌
泰凌微电子致力于为客户提供一站式的低功耗高性能无线连接SoC芯片解决方案,包括经典蓝牙,蓝牙低功耗,蓝牙Mesh,Zigbee,Thread,Matter,Apple HomeKit,Apple“查找(Find My)”,和私有协议等低功耗2.4GHz多协议无线连接系统级芯片和丰富的固件协议栈。公司产品广泛应用于智能照明,智能家居/楼宇,智能遥控,无线外设,智能零售,穿戴设备,无线音频,智能玩具,物流追踪,智慧城市等各类消费和商业应用场景中。
官网:www.telink-semi.com
微信公众号:telink-semi
泰凌开发者论坛:
https://developers.telink-semi.cn/
销售接洽:
中国大陆(华东、华北) :
+86-21-20281118-8213
中国大陆(华南、香港、音频) :
+86-0755-26614003
telinksales@telink-semi.com
原文标题:【技术专栏】泰凌微电子JTAG工具使用教程(一)
文章出处:【微信公众号:泰凌微电子】欢迎添加关注!文章转载请注明出处。
全部0条评论
快来发表一下你的评论吧 !