首先要了解一下JTAG。
JTAG协议
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接口输出;
JTAG协议在定义时,由于当时的计算机(PC机)普遍带有并口,因而在连接计算机端是定义使用的并口。而计算机到了今天,不要说笔记本电脑,现在台式计算机上面有并口的都很少了,取而代之的是越来越多的USB接口。那么能不能让JTAG支持USB协议,用USB接口来调试ARM呢?这就要说到JLINK和ULINK了。
说明:关于JTAG原理,请参考文章《JTAG调试原理》。
JLink仿真器
J-Link是德国SEGGER公司推出基于JTAG的仿真器。简单地说,是给一个JTAG协议转换盒,即一个小型USB到JTAG的转换盒,其连接到计算机用的是USB接口,而到目标板内部用的还是jtag协议。它完成了一个从软件到硬件转换的工作。
ULINK仿真器
ULINK是ARM/KEIL公司推出的仿真器,目前网上可找到的是其升级版本,ULINK2和ULINKPro仿真器。ULINK/ULINK2可以配合Keil软件实现仿真功能,并且仅可以在Keil软件上使用,增加了串行调试(SWD)支持加了串行调试(SWD)支持加了串行调试(SWD)支持加了串行调试(SWD)。
ST-LINK
ST-LINK是专门针对意法半导体STM8和STM32系列芯片的仿真器。
注:转自http://www.veryarm.com/1114.html(JTAG JLink ULINK ST-LINK仿真器区别)