标签归档:JTAG

什么是JTAG

JTAG是IEEE标准(1149.1),开发与1980年代。真早。早期的JTAG用于大批量电路板的检测。TAG通过四个端口来检测电路板中ICs的PIN脚。通过TDI输入与TDO输出,各芯片形成所谓的JTAG-chain。这样一来,通过传输数据,就可以确认芯片各引脚的链接正确与否,此种方法就是传说中的”IC Boundary test”.
但随着技术发展,JTAG也不仅仅只用于IC边界测试。还用于debug、通过JTAG来设置FPGA。JTAG可以通过

  • Parallel (printer) port
  • USB port
  • Ethernet port

来连接PC。最简单的控制是采用·Parallel (printer) port。

一个并行端口可以视为是计算机的一个12位输出以及一个5位输入的端口。当然JTAG只需要3位输出,1位输入即可。

从C语言的角度,控制JTAG很简单。例如控制TCK,代码如下:


#define lpt_addr 0x378

#define TCK 0x01

 

void toggle_TCK()

{

outport(lpt_addr, 0);

outport(lpt_addr, TCK);

outport(lpt_addr, 0);

}

jtag

继续阅读