JTAG电路的工作原理1. JTAG电路简介JTAG的全称是Joint Test Action Group,即联合测试行动小组。目前,JTAG已成为一种国际标准测试协议,主要用于各类芯片的内部测试。现在大多数高级器件(包括FPGA、MCU、DSP以及CPU等)都支持JTAG协议,如FPGA、DSP器件等。标准的JTAG接口是4线接口:TMS、TCK、TDI以及TDO,分别为模式选择、时钟、数据输入和数据输出信号线。JTAG电路的功能模块如图5-4所示。
图5-4 JTAG电路的内部结构示意图 JTAG最初是用来对芯片进行测试的,基本原理是在器件内部定义一个TAP(Test Access Port,测试访问口)端口,通过专用的JTAG测试工具对进行内部节点进行测试。此外,JTAG协议允许多个器件通过JTAG接口串联在一起,形成一个JTAG链,能实现对各个器件分别测试。此外,JTAG接口还常用于实现ISP(In-System Programmable,在线编程),对FLASH等器件进行编程。JTAG在线编程的特征也改变了传统生产流程,将以前先对芯片进行预编程再装到板上的工艺简化为:先固定器件到电路板上,再用JTAG编程,从而大大加快工程进度。2.JTAG边界扫描电路边界扫描测试(BST:BOUNDARY SEAN TEST)一般采用4线接口(在5线接口中,有一条为主复位信号)。也可以通过PC机的RS-232接口就能模拟BST的功能。BST标准接口是用来对电路板进行测试的,可在器件正常工作时捕获功能数据。器件的边界扫描单元能够迫使逻辑追踪引脚信号,或从器件核心逻辑信号中捕获数据,再强行加入的测试数据串行第移入边界扫描单元,捕获的数据串行移出并在器件外不同预期的结果进行比较,根据比较结果给出扫描状态,以提示用户电路设计是否正确。典型边界扫描测试电路的结构如图5-5所示。