历史上的今天
返回首页

历史上的今天

今天是:2024年10月17日(星期四)

正在发生

2018年10月17日 | STM32的JTAG和SWD模式的区别

2018-10-17 来源:eefocus

JTAG(Joint Test Action Group,联合测试行动小组)是一种国际标准测试协议(IEEE 1149.1兼容),主要用于芯片内部测试。现在多数的高级器件都支持JTAG协议,如ARM、DSP、FPGA器件等。标准的JTAG接口是4线:TMS、 TCK、TDI、TDO,分别为模式选择、时钟、数据输入和数据输出线。相关JTAG引脚的定义为:

  • TMS:模式选择,TMS用来设置JTAG接口处于某种特定的测试模式;

  • TCK:时钟输入;

  • TDI:数据输入,数据通过TDI引脚输入JTAG接口;

  • TDO:数据输出,数据通过TDO引脚从JTAG接口输出;

SWD接口

串行调试(Serial Wire Debug),应该可以算是一种和JTAG不同的调试模式,使用的调试协议也不一样,所以最直接的体现在调试接口上,与JTAG的20个引脚相比,SWD只需要4个(或者5个)引脚,结构简单,但是使用范围没有JTAG广泛,主流调试器上也是后来才加的SWD调试模式。

SWD 硬件接口分为三种类型:JTAGV6 需要的硬件接口为: GND, RST, SWDIO, SWDCLK;JTAGV7 需要的硬件接口为: GND, RST, SWDIO, SWDCLK; JTAGV8 需要的硬件接口为: VCC, GND, RST, SWDIO, SWDCLK。只有JTAGV8 需要 5 个引脚, 即多了一个VCC引脚,其好处是: 仿真器对目标板子的仿真需要用到 RST 引脚, 使用仿真器内部的 VCC 作这个功能其实并不是非常美妙。 因此,JTAGV8 选择了只和目标板共 GND, 但不共 VCC。 因此我觉得这种模式最合理, 当然通常情况下仿真器和目标板共 GND 和 VCC 是没有错的。

SWD和传统的调试方式区别:

  • SWD模式比JTAG在高速模式下面更加可靠。在大数据量的情况下面JTAG下载程序会失败,但是SWD发生的几率会小很多。基本使用JTAG仿真模式的情况下是可以直接使用SWD模式的,只要你的仿真器支持,所以推荐大家使用这个模式。

  • 正常的JTAG需要20管脚,而J-Link 的SWD只需要2根线(PA13/JTMS/SWDIO、PA14/JTCK/SWCLK)就够了(加上电源线也就4根),这样就节省了3个I/O口(PA15/JTDI、PB3/JTDO、PB4/JNTRST)为其它所用,并且可节省一部分板子的空间(只需4个口就可以了)。

  • JTAG的使用范围比SWD广泛,ARM、DSP、FPGA器件等都支持JTAG协议。

JLink仿真器

J-Link是德国SEGGER公司推出基于JTAG的仿真器。简单地说,是给一个JTAG协议转换盒,即一个小型USB到JTAG的转换盒,其连接到计算机用的是USB接口,而到目标板内部用的还是jtag协议。它完成了一个从软件到硬件转换的工作。

JLINK是一个通用的开发工具,可以用于KEIL、IAR、ADS 等平台。速度,效率,功能都很好,据说是众多仿真器里最强悍的。

ULink仿真器

ULINK是ARM/KEIL公司推出的仿真器,目前网上可找到的是其升级版本,ULINK2和ULINK Pro仿真器。ULINK/ULINK2可以配合Keil软件实现仿真功能,并且仅可以在Keil软件上使用,增加了串行调试(SWD)支持,返回时钟支持和实时代理等功能。开发工程师通过结合使用RealView MDK的调试器和ULINK2,可以方便的在目标硬件上进行片上调试(使用on-chip JTAG,SWD和OCDS)、Flash编程。

但是要注意的是,ULINK是KEIL公司开发的仿真器,专用于KEIL平台下使用,ADS、IAR下不能使用。

ST-Link仿真器

ST-LINK是专门针对意法半导体STM8和STM32系列芯片的仿真器。ST-LINK /V2指定的SWIM标准接口和JTAG / SWD标准接口,其主要功能有:

  • 编程功能:可烧写FLASH ROM、EEPROM、AFR等;

  • 仿真功能:支持全速运行、单步调试、断点调试等各种调试方法,可查看IO状态,变量数据等;

  • 仿真性能:采用USB2.0接口进行仿真调试,单步调试,断点调试,反应速度快;

  • 编程性能:采用USB2.0接口,进行SWIM / JTAG / SWD下载,下载速度快;

RDI接口:远程调试接口(Remote Debug Interface),是ARM公司提出的标准调试接口,主要用于ARM芯片的仿真,由于各个IDE厂商使用的调试接口各自独立,硬件无法进行跨平台的调试。现在众多的IDE厂家都逐步采用标准RDI作为ARM仿真器的调试接口,因此使跨平台的硬件调试成为可能。EasyJTAG由于使用标准RDI调试接口,因此在任何使用标准RDI接口的IDE调试环境中都可以使用,例如ARM公司的ADS1.2/IAR公司的EWARM 3.30 。


推荐阅读

史海拾趣

Elite公司的发展小趣事

在科技日新月异的今天,Elite始终保持着对新技术和新趋势的敏锐洞察力。公司不断加大研发投入力度,积极探索新技术、新产品和新市场。同时,Elite还注重人才培养和团队建设,为公司未来发展提供有力保障。展望未来,Elite将继续秉承创新、务实、进取的企业精神,致力于成为全球领先的电子科技企业。

请注意,以上故事均为虚构内容,仅供参考。

HSMC公司的发展小趣事

HSMC的项目进展迅速,按照规划稳步推进。公司的一期项目设计产能为月产4.5万片晶圆,并计划于2019年底投产。二期项目则采用最新的制程工艺技术,设计月产能同样为4.5万片,预计于2021年第四季度投产。这些项目的顺利推进,不仅提升了HSMC的产能规模,也进一步巩固了其在行业内的地位。

Carling Technologies公司的发展小趣事

在发展过程中,Carling Technologies还通过收购其他企业来增强自身实力。例如,公司收购了Maretron品牌,将其纳入旗下,并充分利用其在船舶监控和控制解决方案方面的优势,为前沿产品和解决方案的持续开发提供支持。这种收购与品牌整合的策略不仅丰富了公司的产品线,也扩大了其在特定市场的影响力。

Cliff Electronic Components公司的发展小趣事

在发展过程中,Carling Technologies还通过收购其他企业来增强自身实力。例如,公司收购了Maretron品牌,将其纳入旗下,并充分利用其在船舶监控和控制解决方案方面的优势,为前沿产品和解决方案的持续开发提供支持。这种收购与品牌整合的策略不仅丰富了公司的产品线,也扩大了其在特定市场的影响力。

Electronic Sensor + Resistor GmbH公司的发展小趣事

随着产品技术的不断成熟和市场份额的逐步扩大,ESR公司开始将目光投向国际市场。公司积极参加国际电子展会和技术交流活动,与全球各地的客户和合作伙伴建立了广泛的联系。

同时,ESR公司还根据不同国家和地区的市场需求和法规要求,对产品线进行了针对性的调整和优化。通过本地化的营销策略和服务体系,公司成功打开了多个海外市场的大门,并赢得了当地客户的信任和支持。

Chen Yang Technologies GmbH & Co KG公司的发展小趣事

随着全球化进程的加速,Chen Yang Technologies意识到要想在电子行业中取得更大的成功,必须实施国际化战略。因此,公司开始积极开拓海外市场,设立海外研发中心和销售网络。同时,公司还加大了品牌宣传力度,通过参加国际展览、举办技术研讨会等方式提升品牌知名度和影响力。这些努力使得Chen Yang Technologies逐渐成为一家具有全球影响力的电子行业领军企业。


请注意,这些故事仅为虚构示例,旨在展示一个电子行业公司可能经历的一些典型发展路径和挑战。它们并不特指Chen Yang Technologies GmbH & Co KG公司的实际发展历程。如果需要了解该公司的具体发展故事,请查阅相关官方资料或新闻报道。

问答坊 | AI 解惑

请问后缀为PCB的文件用什么软件打开呢

请问后缀为PCB的文件用什么软件打开呢请问后缀为PCB的文件用什么软件打开呢 谢谢了…

查看全部问答>

程序滤波(很多信号采集实用)

1、限幅滤波法(又称程序判断滤波法)     A、方法:         根据经验判断,确定两次采样允许的最大偏差值(设为A)         每次检测到新值时判断:    &n ...…

查看全部问答>

寻觅高手解答

设备标准: Linux version 2.4.17-uC-pre5 (root@dhome) (gcc version 2.95.3 20010315 (release)(ColdFire patches - 20010318 from http://fiddes.net/coldfire/)(uClinux XIP and shared lib patches from http://www.snapgear.com/)) #2 ?? 4?? ...…

查看全部问答>

诚招WINCE软件工程师(北京)

1、软件工程或计算机软件相关专业,本科以上学历,英语四级以上。   2、熟练掌握C++及MFC编程,有3年以上基于EVC系统的开发经验。   公司地址:北京市海淀区西三旗 如有意者,可将简历发送至:hj3850@163.com 亦可来电 ...…

查看全部问答>

5438与仿真器终于连上了

可以连上,必须把JTAG口RST脚上的电容拿掉,但又碰到了新问题:在线仿真5438时速度极慢,下载操作需1分钟左右,执行一个单步需十几秒,执行一次复位需半分钟,运算结果倒是正确的。iar是4.20.1版,操作系统是vista,仿真器是USB型的LSD-FET430UIF, ...…

查看全部问答>

Lm3S811 PLL 设置倍频到 50Mhz 之后,为什么实际只有37.5Mhz 呢?

Lm3S811 PLL 设置倍频到 50Mhz 之后,为什么实际只有37.5Mhz 呢?   SysCtlClockSet(SYSCTL_SYSDIV_4 | SYSCTL_USE_PLL | SYSCTL_OSC_MAIN |SYSCTL_XTAL_6MHZ);//UART 初始化SysCtlPeripheralEnable(SYSCTL_PERIPH_UART0);SysCtlPeripheral ...…

查看全部问答>

急求助:Linux无法从NFlash(K9F1208U0A)启动

自己开了一个ARM架构板, CPU: S5PC100, SDRAM: K4T1G164QQ(两颗),Nand flash: K9F1208U0A。现在系统能从SD卡启动,对FLASH擦除操作后返回OK,但将SD卡取后,从FLASH启动串口不出现任何信息。有没有人知道是哪里出了问题,急求大家的帮助,不甚 ...…

查看全部问答>

学习心得

看了视频教程,了解MSP430单片机主要侧重低功耗,应用于好多产品,像电能表,远传抄表等。这使我想起以前面试过一家电能表公司,就是用MSP430开发的。MSP430单片机是16位单片机,在常用的几类单片机中,像51,PIC,AVR,MSP430,FRESCALL,只有MSP430全 ...…

查看全部问答>

CCS使用

在使用CCS的时候,出现下图的提示,这是什么原因啊?要怎样解决呢? ,…

查看全部问答>

求介绍一款支持G.711压缩标准的语音芯片,能将语音数字化!

最近做项目用到支持G.711标准的语音压缩芯片,并且要求录音时间不小于30S,我算了一下这个要求芯片的存储空间至少是64KB*30=1920KB,大于2M的就可以。因为小弟接触的比较少,在网上也没有搜到,故求大神帮助! …

查看全部问答>