0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

解析J-Link、J-Trace、Open JTAG原理以及其区别

Q4MP_gh_c472c21 2018-01-30 09:29 次阅读

J-Link、J-Trace、Open JTAG都是用来调试程序的(当然还有其他工具可以进行调试,比如ICE),J-Link和J-Trace是SEGGER公司的是一个开源项目,其目标是使嵌入式开发者能够通过JTAG接口,用开放的硬件和软件系统进行烧写、校验和调试。他们都基于JTAG调试接口协议。

一、工作原理

调试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.

J-Trace

JTAG emulator for ARM cores

USB driven JTAG interface for ARM cores with

Trace memory. supporting the ARM ETM (Embed-

ded Trace Macrocell).

ARM Keil Tools官网(http://www.keil.com/pr/article/1141.htm)就更详细了,摘抄如下:

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和J-Trace的区别,如下:

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一般集成到板子上。

四、J-Link GDBServer与Open OCD

openOCD是上位机程序(人可以直接发出操控命令的计算机,一般是PC。对应于下位机)。jlink gdbserver和openocd是一回事,都是担任一个 gdb server的角色,用来解释来自arm-elf-gdb的调试信号,并且控制硬件(Jlink或者openjtag)

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • ARM
    ARM
    +关注

    关注

    134

    文章

    9189

    浏览量

    369939
  • J-Link
    +关注

    关注

    0

    文章

    85

    浏览量

    22239
  • RDI
    RDI
    +关注

    关注

    0

    文章

    6

    浏览量

    8011
  • J-Trace
    +关注

    关注

    0

    文章

    2

    浏览量

    3378

原文标题:高手总结 J-Link、J-Trace、Open JTAG区别及一些理解

文章出处:【微信号:gh_c472c2199c88,微信公众号:嵌入式微处理器】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    相关推荐

    J-Link中的JTAG接口使用注意事项

    其中,最常见的接口就要算是JTAG了。J-Link有一个JTAG连接器,这是一个20针的连接系统,如下所示。
    发表于 09-22 09:46 2698次阅读

    OpenOCD是什么?J-LinkJ-TraceOpen JTAG区别

    最近在调试一些单板,对于这个调试工具我真的是又爱又恨,熟悉了那就是金箍棒,不熟悉那就是拦路虎。
    的头像 发表于 12-12 09:43 1.7w次阅读
    OpenOCD是什么?<b class='flag-5'>J-Link</b>、<b class='flag-5'>J-Trace</b>、<b class='flag-5'>Open</b> <b class='flag-5'>JTAG</b>的<b class='flag-5'>区别</b>

    J-Trace调试器比起J-link的优势在哪些方面?

    看了半天J-Trace调试器的介绍,想向用过的大佬咨询比起J-link的优势在哪些方面? 是不是在某些调试场合特别能提高调试效率?
    发表于 04-15 06:48

    【益登科技 Silicon Labs SLWSTK6021A开发板试用体验】超值下载工具J-LINK/J-TRACE COMTEX

    J-TraceCortex,加上部分传感器和子板接口,子板插上后,调试器连接子板的MCU进行下载调试,没有插子板时,它的外接调试接口就可以接外部板子进行调试,此时底板就是的J-LINK/J-Trace Cortex,在
    发表于 07-01 11:21

    UM08001_JlinkARM资料

    J-link / J-Trace ARM Manual Rev. 82 ,User guide of the JTAG emulators for ARM Cores——Jlink的用户说明
    发表于 11-09 17:55 34次下载

    J-LinkJ-Trace烧录器的使用说明免费下载

    本文档的主要内容详细介绍的是J-LinkJ-Trace烧录器的使用说明免费下载。
    发表于 11-28 08:00 11次下载
    <b class='flag-5'>J-Link</b>和<b class='flag-5'>J-Trace</b>烧录器的使用说明免费下载

    J-LinkJ-Trace用户指南免费下载

    J-Link/J-Trace有不同的版本,每个版本都是为不同的目的/目标设备设计的。目前,J-Link/J-Trace有以下几种型号:J-Link
    发表于 03-03 08:00 14次下载
    <b class='flag-5'>J-Link</b>和<b class='flag-5'>J-Trace</b>用户指南免费下载

    J-Link script的组成

    脚本语言不需要编译,它由解释器动态解释执行。J-Link Commander(路径C:Program Files (x86)SEGGERJLinkJLink.exe)是一个解释器,负责对J-Link script文件进行解释。
    的头像 发表于 03-09 10:57 2199次阅读

    教你轻松J-Link不能连接目标MCU的问题

    J-Link是嵌入式软件、硬件工程师最常用的工具之一,但是,在使用这个工具时,也会遇到各种各样的问题。 今天来给大家讲讲最常见的一个问题:J-Link不能连接目标MCU。 J-Link的连接
    的头像 发表于 06-30 11:18 6097次阅读
    教你轻松<b class='flag-5'>J-Link</b>不能连接目标MCU的问题

    基于J-Link Remote Server软件的远程调试方法

    SEGGER提供了一个J-Link Remote Server软件,可以使得在任何地方连接J-Link调试应用。J-Link Remote Server提供了图形界面和命令行的版本,支持
    的头像 发表于 06-14 08:56 2312次阅读

    J-Link script的组成与使用方法

    J-Link作为被广泛使用的调试器,提供了多种配套的软件工具。例如命令配置软件J-Link Commander,GDB server,J-Flash等。其中,J-Link Comman
    的头像 发表于 08-01 12:20 2619次阅读

    J-Link中的JTAG接口的正确使用注意事项

    所有标记为NC的针脚均未连接在J-Link内部。这里可以应用任何信号;J-Link将忽略这种信号。引脚4、6、8、10、12、14、16、18、20是连接到J-Link中GND的GND引脚。它们还应连接到目标系统中的GND。
    的头像 发表于 09-23 09:57 3502次阅读
    <b class='flag-5'>J-Link</b>中的<b class='flag-5'>JTAG</b>接口的正确使用注意事项

    SEGGER J-Link调试仿真器支持新型可编程SOC(片上系统)系列

    所有J-Link型号(J-Link PRO、J-Link ULTRA+、J-Link PLUS和J-Link BASE)最新硬件版本现在都支
    的头像 发表于 04-14 14:20 2358次阅读

    J-Link 中的JTAG 接口:正确使用需要了解的注意事项,在这里!

    J-Link 中的JTAG 接口:正确使用需要了解的注意事项,在这里!
    的头像 发表于 12-01 16:01 1717次阅读
    <b class='flag-5'>J-Link</b> 中的<b class='flag-5'>JTAG</b> 接口:正确使用需要了解的注意事项,在这里!

    SEGGER为J-Link和Flasher提供Device Provisioner工具

    日前,SEGGER宣布为其Flasher系列编程器以及J-LinkJ-Trace系列调试跟踪工具提供Device Provisioner工具。
    的头像 发表于 10-22 15:12 538次阅读