1、JTAG电路的原理与设计
先说一下JTAG(Joint Test Action Group)。标准的JTAG接口是4线接口,TMS、TCK、TDI以及TDO,分别为模式选择、时钟、数据输入以及输出信号线。JTAG电路的功能模块如下图所示:
JTAG接口常用于实现ISP(In-System Programmable),对Flash等器件进行编程。
JTAG边界扫描电路又称为Boundary Sean Test(BST),一般采用4线接口(5线接口中有一个接口为主复位信号),也可以通过PC的RS232接口就能模拟BST的功能。典型的边界扫描结构如下图:
IEEE标准所规定BST结构为:当器件工作在JTAG的BST模式时,使用4个专用I/O引脚和一个可选引脚TRST作为JTAG引脚,这4个专用引脚为TDI、TDO、TMS、TCK。
所有基于JTAG的操作都必须同步于JTAG时钟信号TCK,在TCK的上升沿读取或输出有效数据,有严格的建立、保持时间要求,并且JTAG电路追求稳定性,因此一般情况下时钟不会太高。时序图参考下图:
JTAG扫描电路的工作流程为:TMS、TRST 和TCK引脚管理TAP控制器的操作,TDI和TDO为数据寄存器提供串行通道。TDI也为指令寄存器提供数据,然后为数据寄存器产生控制逻辑。对于选择寄存器、装载数据、检测和将结果移出的控制信号,由测试时钟(TCK)和测试模式(TMS)选择两个控制信号决定。在四线接口标准中,利用TDI,TDO,TCK,TMS四个信号,它们合成为TAP测试处理端口(Test Access Port),测试复位信号(TRST,一般以低电平有效)一般作为可选的第五个端口信号。去网上搬一张流程图:
今天先写到这。