| |
 |
ARM系统设计JTAG接口常见问题 |
ARM系统的JTAG接口的设计不当往往使硬件系统无法调试,所以在设计ARM系统前要先熟悉ARM系统的JTAG接口的定义和常见问题。 |
| |
| 1.ARM系统的JTAG接口是如何定义的? 每个PIN又是如何连接的? |
| 下图是JTAG接口的信号排列示意: |
|
| 接口是一个20脚的IDC插座。下表给出了具体的信号说明: |
表 1 JTAG引脚说明 |
| 序号
|
信号名 |
方向 |
说
明 |
| 1 |
Vref |
Input |
接口电平参考电压,通常可直接接电源 |
| 2 |
Vsupply |
Input |
电源 |
| 3 |
nTRST |
Output |
(可选项)
JTAG复位。在目标端应加适当的上拉电阻以防止误触发。 |
| 4 |
GND |
-- |
接地 |
| 5 |
TDI |
Output |
Test
Data In from Dragon-ICE to target. |
| 6 |
GND |
-- |
接地 |
| 7 |
TMS |
Output |
Test
Mode Select |
| 8 |
GND |
-- |
接地 |
| 9 |
TCK |
Output |
Test
Clock output from Dragon-ICE to the target |
| 10 |
GND |
-- |
接地 |
| 11 |
RTCK |
Input |
(可选项)
Return Test Clock。由目标端反馈给Dragon-ICE的时钟信号,用来同步TCK信号的产生。不使用时可以直接接地。 |
| 12 |
GND |
-- |
接地 |
| 13 |
TDO |
Input |
Test
Data Out from target to Dragon-ICE. |
| 14 |
GND |
-- |
接地 |
| 15 |
nSRST |
Input/Output |
(可选项)
System Reset,与目标板上的系统复位信号相连。可以直接对目标系统复位,同时可以检测目标系统的复位情况。为了防止误触发,应在目标端加上适当的上拉电阻。 |
| 16 |
GND |
-- |
接地 |
| 17 |
NC |
|
保留 |
| 18 |
GND |
-- |
接地 |
| 19 |
NC |
-- |
保留 |
| 20 |
GND |
-- |
接地 |
|
| |
| 2.目标系统如何设计? |
目标板使用与Dragon-ICE一样的20脚针座,信号排列见表1。RTCK和
nTRST这两个信号根据目标ASIC有否提供对应的引脚来选用。nSRST则根据目标系统的设计考虑来选择使用。下面是一个典型的连接关系图: |
复位电路中可以根据不同的需要包含上电复位、手动复位等等功能。如果用户希望系统复位信号nSRST能同时触发JTAG口的复位信号nTRST,则可以使用一些简单的组合逻辑电路来达到要求。后面给出了一种电路方案的效果图。

图
3 一个复位电路结构的例子
在目标系统的PCB设计中,最好把JTAG接口放置得离目标ASIC近一些,如果这两者之间的连线过长,会影响JTAG口的通信速率。
另外电源的连线也需要加以额外考虑,因为Dragon-ICE要从目标板上吸取超过100mA的大电流。最好能有专门的敷铜层来供电,假如只能使用连线供电的话,最小线宽不应小于10mil
(0.254mm)。
|
| |
| 3. 14脚JTAG如何与20JTAG连接? |
| Dragon-ICE使用工业标准的20脚JTAG插头,但是有些老的系统采用一种14脚的插座 |
| 。这两类接口的信号排列如下: |
|
| 这两类接口之间的信号电气特性都是一样的,因此可以把对应的信号直接连起来进 |
| 行转接。Dragon-ICE配备这种转接卡,随机配备。 |
| |