用于测试、编程和调试嵌入式系统的标准硬件工具称为 JTAG。它由联合测试行动小组开发,可用于大多数
微控制器和 FPGA。任何最近编写过现代微控制器的人都可能使用过 JTAG 或相关标准。
下面来看看这个标准是什么以及为什么它对测试很重要。
JTAG的演变
JTAG 出现在 1980 年代,作为解决 IO 引脚密度增加和球栅阵列 (BGA) 封装使用的解决方案。该标准要求引入用于边界扫描的小型逻辑单元,以在测试访问端口 (TAP) 执行命令时改进测试功能。这是一个灵活的系统,允许制造商添加便于编程和调试的命令和逻辑块。
广泛采用 JTAG 进行器件编程的原因之一是它允许实现自定义逻辑。地址的二进制编码降低了引脚数,为更大的内存打开了大门。然后串行协议让程序员可以通过几个引脚访问设备,而不管内存大小。接口标准化导致具有不同实现类型的设备之间的一致性。
该标准已通过 ARM 的串行线调试 (SWD) 等工具进行了扩展,从而使 JTAG 更加多样化。为了满足当今世界的 JTAG 合规性,设备必须使用以下类型的引脚:文本数据输入 (TDI)、测试数据输出 (TDO)、测试时钟 (TCK) 和测试模式选择 (TMS)。
测试人员使用状态机,这是一种通过输入改变状态的行为模型。测试状态机存在于测试接入点 (TAP) 控制器中,该控制器解释 TCK 和 TMS 信号。状态机的两种不同模式分别用于指令和数据。状态机也可能有一个可选的测试复位引脚 (TRST)。
JTAG 特性
JTAG 是一种边界扫描系统,用于测试多个
IC元器件 之间的硬件互连。JTAG 系统涉及读取连接器引脚值以测试功能。
操作 JTAG TAP 只需要四个或五个引脚,它与 JTAG 接口设备通信。虽然 JTAG 没有标准连接器,但它必须是标准公头,例如 ARM JTAG 20、ARM JTAG 14 和 TI JTAG 14。ARM JTAG 20 可以用类似的 Segger J-Link 和 J-Trace 连接器代替.
可以考虑的其他接头包括 STMicroelectronics STDC14、英飞凌 OCDS 16 引脚接头、CoreSight 10 和 CoreSight 20。大多数接头通常为公头,具有 10-20 个引脚和 0.05 到 0.1 英寸的引脚间距。