本文整理了网上一些对J-Link、J-Trace、Open JTAG区别的讨论,同时也加入一些自己的理解。
一、工作原理[2]
调试arm,总要遵循arm的调试接口协议吧,jtag就是其中的一种吧。当仿真时,iar,keil,ads等等都有一个公共的调试接口,RDI(RDI接口是ARM公司提出的调试接口标准,主要用于ARM芯片的JTAG仿真。)就是其中的一咱吧,那么我们如何完成RDI-->arm调试协议(JTAG)的转换呢?如是乎就有两种做法:
(1) 在电脑上写一个服务程序,把keil,ads,iar中的RDI命令解析成相关的JTAG协议,然后通后一个物理转换接口(注意,这个转换只是电气物理层上的转换,就像RS232那样的作用)发送你的的目标板。 h-jtag就是这样的。 h-jtag的硬件就仅是一个物理电平的转换接口,所以很简单。而电脑中装的h-jtag软件就是前面说到的服务程序,负责协议转换的。
(2)另一种做法,就是做一个板,用此板直接接收来自keil,ads,iar等软件的调试命令,由此板做rdi->jtag协议的转换。然后与目标板通信,这就是jlink的工作原理。(这也就实现了USB转JTAG协议。)
有一回贴说:“大佬,两者都是软件完成的,只不过软件放的地方不一样(一个放计算机,一个放仿真器里面了).真正的硬件,就象是JTRACE一样,用FPGA来实现.实质上,还是软件到硬件的过程.”。
二、J-Link、J-Trace区别
最近在看《J-Link/J-Trace User Gudide(UM08001)》Page12,发现文中说JLink与JTrace区别,浅显易懂,摘录如下:
J-Link
JTAG emulator for ARM cores
USB driven JTAG interface for ARM cores.
JTAG emulator for ARM cores
USB driven JTAG interface for ARM cores with
Trace memory. supporting the ARM ETM (Embed-
ded Trace Macrocell).
The SEGGER
J-Link is a USB to JTAG adapter supporting ARM7™, ARM9™
and Cortex™-M3 processor based devices with JTAG speeds of up to 12MHz. It interfaces to all evaluation boards and target hardware using a standard 20-pin or 14-pin (optional) JTAG connector.
The SEGGER J-Trace is a combined unit offering real-time trace and JTAG debugging for all ARM7 and ARM9 devices with an integrated ETM (Embedded Trace Macrocell). An integrated 2MB trace buffer enables high speed instruction and data trace at speeds of up to 200MHz, connecting to the target device via a 38-pin Mictor cable. J-Trace also includes a J-Link interface for standard JTAG target debugging via a 20-pin connector.
Trace information from J-Trace is displayed in dedicated windows, providing a seamless interface with other μVision debug and analysis tools.
J-Link is part of several starter kits from various vendors and is indentical with SAM-ICE (from Atmel) and mIDAS-Link (from Analog Devices). With direct J-Link support users can now easily begin taking advantage of the unique and advanced features of RealView MDK compared to other tool offerings and starter kits.
RealView MDK is available from Keil or your local Keil distributor. J-Link and J-Trace are available from SEGGER Microcontroller and its world wide sales channels.
J-Link就像照相机,程序(在断点处)停下来才能看调试信息,通过JTAG/SWD接口;J-Trace就像录像机,可以纪录、回放整个调试接口,通过ETM接口。最近一些Cortex-M3的芯片支持SWO接口,就好像是高速连拍照相机,采样间隔小的话,有那么点Trace的样子,这个调试功能在J-Link v7和EWARM v5.30中已经得到支持。
三、J-Link与Open JTAG区别
正如上文所述,这两者都是用来调试程序的,都实现了USB转JTAG协议功能,即用USB连接主机,用JTAG线连接板子的JTAG口,而这之间的转换通过J-Link或者Open JTAG转换。另,J-Link一般是独立的组件,而Open JTAG一般集成到板子上。更多比较可以参考资料[2][3],但[3]中说J-Link不支持Linux,现在可以了,我正在用,可以参考我的博文《
Ubuntu 10.04下J-Link配置及使用》,目前功能还不是很完善,只是Beta版。
四、J-Link GDBServer与Open OCD
openOCD(
http://openocd.berlios.de/web/)是上位机程序(人可以直接发出操控命令的计算机,一般是PC。对应于下位机)。jlink gdbserver和openocd是一回事,都是担任一个
gdb server的角色,用来解释来自arm-elf-gdb的调试信号,并且控制硬件(Jlink或者openjtag)[4]
参考资料:
关键字:J-Link J-Trace Open JTAG
引用地址:
J-Link、J-Trace、Open JTAG区别
推荐阅读最新更新时间:2024-03-16 14:50
Si2发布具有电源扩展的ECSM 2.1版设计库标准Open Modeling Coalition的工作进展迅速
美国德克萨斯州奥斯汀市, 2006 年 10 月 16 日 - Silicon Integration Initiative (Si2) 组织近日对外发布了有效电流源模型( ECSM ) 2.1 版标准。该新版标准扩充了对电源和动态电源网格的规范,它能实现从单元特征化向设计工具传递电源和动态电源网格信息以提高纳米级设计中电源预测的精确度。负责起草该版标准的 Open Modeling Coalition (OMC) 工作组由业界领先厂商组成,包括: Cadence 设计系统公司,飞思卡尔半导体,英特尔, LSI Logic, Silicon Navigator, Sun Microsystems 和 Virage
[新品]
STM32按键输入程序
简介:这是一个STM32按键输入程序,配有原理图及相关程序解析。KEY_Scan函数频繁调用了JTAG_Set函数,每次按键扫描的时候都禁用了JTAG和SWD。 原理图: 程序: delay_init();延时函数,以后再讲 LED_Init();KEY_Init();初始化LED灯何按键为上拉输入 KEY_Scan();
[单片机]
windows下用J-link J-Flash下载STM32程序
打开“Option”—》“Project settings…”,进行烧写前的必要设置,如下图: 在“General”页,选择“USB”,如下图: 在“Target Interface”页,选择“JTAG”,JTAG速度设置为“Auto selection”,如下图 在“CPU”页,选择 开发板 的CPU型号:ST STM32F103VB,如下图: “FLASH”页不用设置,默认设置就可以了。 在“Production”页,我们把“Start application”选上,则在下载成功之后,程序会自动运行。 在设置完成后,我们点击“应用”和“确定”退出。在JLINK软件界面左边,将显示烧写
[单片机]
工业以太网OPEN IE的数据通讯方案
1 引言 在当今自动化领域,网络结构已经被广泛地应用于各行各业的工业环境中,它是构成各类控制系统的基础,其性能直接影响着系统整体的综合指标,不同的网络种类形式如:串口通讯、现场总线、以太网等已在各类场合获得了验证和发展,但随着近年来it技术的迅猛发展,这种格局正在发生着巨大的变化,特别是以太网技术正由商业向工业、上层向低层、低速向高速、非实时向实时、封闭向透明、层次化向扁平化等方面全面发展和延伸,并融合了各类现场总线的技术和协议,再加上低成本的刺激和速度的提高因素,全球各自动化巨头厂商也不断推出“e网拉平到底”成功案例,传统的控制系统却不得不面对这一强劲的挑战,以太网进入工业控制领域并融入现场通讯技术已成为现实。 对于未来自动
[嵌入式]
ARM加入中国移动Open NFV实验室
中国移动宣布与UMCloud|Miran TI s 中国,ARM,Cavium和Enea等四家中国移动Open NFV实验室第三批合作伙伴签订MOU。这四家合作伙伴后续将在中国移动Open NFV实验室开展相关测试工作,针对多个NFV(网络功能虚拟化)典型场景和典型业务进行测试。 中国移动Open NFV实验室于2015年初成立,旨在为业界提供国际化、开放的测试环境。同时,此实验室也得到了OPNFV开源组织的认证,成为亚洲首个OPNFV开放实验室。2015年7月,中国移动与包括华为、红帽、风河在内的九家第一批合作伙伴签订MOU。2016年1月,中国移动再次与包括爱立信、华三在内的四家第二批合作伙伴签订MOU。实验室目前已有合作
[网络通信]
“”Open GoPro”API,运动相机支持第三方应用控制
6月23日下午消息,今天,GoPro发布了一项名为“Open GoPro”的开放API计划,让第三方开发者可以将HERO9 Black摄像机融入他们自己的App中。 借助Open GoPro,开发人员可获得以下 HERO9 Black 功能的 API Application Programming Interface,应用程序接口),包括: 无线连接 摄像机指令和控制 摄像机状态 摄像机预览 SD卡媒体文件查看和传输 开发者在 GoPro.com/Open GoPro 查看演示和示例代码。无需申请或审批流程。 目前已经纳入Open GoPro的公司包括: Amazfit华米智能手表:使
[手机便携]
stm32f103系列芯片JTAG口当做普通IO使用
使用的芯片是stm32f103c8t6. 今天在调试板子时发现在PA15口上的LED灯无论输出高还是低都只有一个中间电平2.3V,后来百度说这个口(PA15--JTDI)默认用作JTAG调试口,需要配置下成普通IO口,于是按照那人的办法写了2句:RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO,ENABLE);GPIO_PinRemapConfig(GPIO_Remap_SWJ_Disable,ENABLE); 不写还好,一写呵呵哒,结果连原本用来下载、调试程序用的SWD口都不能用了。。。后来在STM32库中找到了正确的写法:RCC_APB2PeriphClockCmd(RCC_APB2Peri
[单片机]
利用单片机实现CPLD的在系统编程
一、问题的提出
嵌入式系统而灵活性的要求。一方面,应用环境会对嵌入式系统不断提出新的要求,需要更改最初的设计;另一方面指生产多个品种时希望尽量能在单一的硬件平台上实现。为了最大限度地满足灵活性的需要,嵌入式系统一般都设计而可编程逻辑器件CPLD。在设计阶段和现场运行之后的各个阶段,都可能会遇到设计的升级、修改和测试问题。FLASH的使用方便了程序的更新;带而在系统可编程(ISP)功能的可编程逻辑器件,使得不需重新设计印制板就可以改变原而的设计;网络技术的发展,又使得远程维护成为可能。
笔者设计的嵌入式系统,实现了远程维护,其组成结构如图1所示。其中CPLD采用了XILINX公司的XC9500系列。
二、JTAG简介
[单片机]