当前位置:首页 > 电路图 > 特殊应用电路
[导读]在SWD和JTAG之类的协议出现之前,调试器及其协议一片混乱,每个MCU制造商都提出了自己的专有方法,将代码加载到他们的MCU上。

什么是标准?简单来说,标准是一组规则和协议,特定行业中的每个参与者都同意遵循并执行。在SWD和JTAG之类的协议出现之前,调试器及其协议一片混乱,每个MCU制造商都提出了自己的专有方法,将代码加载到他们的MCU上。制造商每次发布MCU时,嵌入式软件工程师都需要了解其专有协议,以将代码加载到微控制器中。

而且,调试适配器很昂贵,因为制造商实际上并没有竞争者可以使调试适配器与他们的协议相匹配,因为协议是专有的。它们昂贵的另一个原因是由于体积不足,因为它们只能将调试适配器出售给使用它们制造的MCU的公司(工程师)。

不同协议还会导致开发成本增加,比如:你在设计的板上有来自4个不同制造商的4种芯片,并且希望对其进行一些自动化测试以提高生产过程的效率。但是,由于所有电路板都有自己的协议,因此您需要制作一个能适应复杂性的超级复杂的生产代码,并且需要在电路板上的测试点安装4个不同的调试器,从而增加了成本,生产时间和编程时间。

3.制定协议各种下载调试不同会导致几个问题:投入更多的学习时间下载调试的成本生成测试效率低下,为了解决这一问题,各大MCU制造和生产商的工程师们就针对调试制定了一些规范协议。该小组于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,复位引脚

在电子领域,芯片调试是一个至关重要的环节。为了更有效地进行芯片调试,我们有必要深入了解不同的调试协议。本文将详细解析从JTAG到SWD的转变,帮助读者全面理解这两种协议的工作原理及其在芯片调试中的应用。

JTAG(Joint Test Action Group,联合测试行动小组)是一种国际标准测试协议,与IEEE 1149.1标准兼容,专为芯片内部测试而设计。如今,多数高端器件仍支持这一标准,虽然JTAG接口在现代设备上较少见,但ARM、DSP和FPGA等高端器件依然广泛支持。标准的JTAG接口包含四条线:TMS、TCK、TDI和TDO,分别用于模式选择、时钟信号、数据输入和数据输出。具体来说,这些引脚的定义如下:

TMS(测试模式选择):用于设定JTAG接口的特定测试模式。

TCK(测试时钟输入):提供时钟信号。

TDI(测试数据输入):数据通过此引脚输入JTAG接口。

TDO(测试数据输出):数据通过此引脚从JTAG接口输出。

值得注意的是,由于早期PC机普遍配备并口,JTAG协议在定义时便与之相连。然而,随着技术的发展,现在的计算机尤其是笔记本电脑很少配备并口,取而代之的是USB接口的广泛应用。因此,JTAG协议在市场上的应用已逐渐减少。

串行调试(Serial Wire Debug,简称SWD)是一种与JTAG不同的调试模式,其使用的调试协议亦有所差异。最直观的差异体现在调试接口上:相较于JTAG的20个引脚,SWD仅需4个(或5个)引脚,结构更为简洁。SWD因其引脚少、结构简单,在数据量大时更稳定,适用于有限GPIO资源的场合,建议优先使用。虽然SWD的使用范围目前尚不及JTAG广泛,主流调试器也是在后期才增设了SWD调试模式。

谈及SWD与传统调试方式的区别,其优势在高速模式下更为明显。在处理大数据量时,JTAG下载程序可能会失败,而SWD则能显著降低此情况的发生概率。此外,若仿真器支持,用户可以在基本使用JTAG仿真模式的情况下直接切换至SWD模式,因此推荐大家优先考虑使用SWD模式。

远程调试接口(Remote Debug Interface,简称RDI)是ARM公司为ARM芯片仿真而提出的标准调试接口。过去,由于各IDE厂商使用的调试接口各异,硬件调试往往局限于特定平台。然而,随着RDI为ARM芯片提供的统一调试接口,使跨平台硬件调试成为可能,多家IDE厂商逐渐采用标准RDI作为调试接口,跨平台的硬件调试已成为现实。例如,EasyJTAG便支持这一标准,从而能在任何遵循标准RDI接口的IDE调试环境中发挥作用,如ARM公司的ADS1.2及IAR公司的EWARM 3.30等。

ULINK,由ARM/KEIL公司精心打造的仿真器,现已升级为ULINK2和ULINK Pro两个版本,供用户选择。该仿真器与Keil软件紧密结合,提供强大的仿真功能,支持多种调试技术,但仅限于Keil平台。它新增了串行调试(SWD)支持、返回时钟支持以及实时代理等实用特性。

开发工程师在RealView MDK的调试器与ULINK2的协同作用下,能轻松地在目标硬件上进行片上调试,包括使用on-chip JTAG、SWD和OCDS技术,以及Flash编程。

ST-LINK仿真器是专为意法半导体STM8和STM32系列芯片设计的。它支持SWIM标准接口和JTAG/SWD标准接口,具备多种功能:

编程功能:能够烧写FLASH ROM、EEPROM、AFR等,为芯片提供灵活的编程能力。

仿真功能:支持全速运行、单步调试、断点调试等多种调试方法,同时提供IO状态和变量数据的查看,助力开发者深入理解芯片运行状态。

仿真性能:通过USB2.0接口进行仿真调试,单步和断点调试反应迅速,提升开发效率。

编程性能:同样采用USB2.0接口,支持SWIM/JTAG/SWD下载方式,下载速度迅捷,节省开发时间。

专为STM系列芯片设计,支持多种接口和功能,提升了编程和调试的效率。

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

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

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

9月2日消息,不造车的华为或将催生出更大的独角兽公司,随着阿维塔和赛力斯的入局,华为引望愈发显得引人瞩目。

关键字: 阿维塔 塞力斯 华为

加利福尼亚州圣克拉拉县2024年8月30日 /美通社/ -- 数字化转型技术解决方案公司Trianz今天宣布,该公司与Amazon Web Services (AWS)签订了...

关键字: AWS AN BSP 数字化

伦敦2024年8月29日 /美通社/ -- 英国汽车技术公司SODA.Auto推出其旗舰产品SODA V,这是全球首款涵盖汽车工程师从创意到认证的所有需求的工具,可用于创建软件定义汽车。 SODA V工具的开发耗时1.5...

关键字: 汽车 人工智能 智能驱动 BSP

北京2024年8月28日 /美通社/ -- 越来越多用户希望企业业务能7×24不间断运行,同时企业却面临越来越多业务中断的风险,如企业系统复杂性的增加,频繁的功能更新和发布等。如何确保业务连续性,提升韧性,成...

关键字: 亚马逊 解密 控制平面 BSP

8月30日消息,据媒体报道,腾讯和网易近期正在缩减他们对日本游戏市场的投资。

关键字: 腾讯 编码器 CPU

8月28日消息,今天上午,2024中国国际大数据产业博览会开幕式在贵阳举行,华为董事、质量流程IT总裁陶景文发表了演讲。

关键字: 华为 12nm EDA 半导体

8月28日消息,在2024中国国际大数据产业博览会上,华为常务董事、华为云CEO张平安发表演讲称,数字世界的话语权最终是由生态的繁荣决定的。

关键字: 华为 12nm 手机 卫星通信

要点: 有效应对环境变化,经营业绩稳中有升 落实提质增效举措,毛利润率延续升势 战略布局成效显著,战新业务引领增长 以科技创新为引领,提升企业核心竞争力 坚持高质量发展策略,塑强核心竞争优势...

关键字: 通信 BSP 电信运营商 数字经济

北京2024年8月27日 /美通社/ -- 8月21日,由中央广播电视总台与中国电影电视技术学会联合牵头组建的NVI技术创新联盟在BIRTV2024超高清全产业链发展研讨会上宣布正式成立。 活动现场 NVI技术创新联...

关键字: VI 传输协议 音频 BSP

北京2024年8月27日 /美通社/ -- 在8月23日举办的2024年长三角生态绿色一体化发展示范区联合招商会上,软通动力信息技术(集团)股份有限公司(以下简称"软通动力")与长三角投资(上海)有限...

关键字: BSP 信息技术
关闭