Xilinx FPGA开发实用经验学习(二)

1、JTAG电路的原理与设计
先说一下JTAG(Joint Test Action Group)。标准的JTAG接口是4线接口,TMS、TCK、TDI以及TDO,分别为模式选择、时钟、数据输入以及输出信号线。JTAG电路的功能模块如下图所示:
Xilinx FPGA开发实用经验学习(二)
JTAG接口常用于实现ISP(In-System Programmable),对Flash等器件进行编程。

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

上一篇:linux中iic驱动编写—有设备树&没有设备树


下一篇:Linux C进程时间:墙上时钟时间,用户CPU时间,系统CPU时钟时间