边界扫描测试原理 2 -- 边界扫描测试设备的构成
边界扫描测试原理 2 – 边界扫描测试设备的构成
文章目录
- 边界扫描测试原理 2 -- 边界扫描测试设备的构成
- 边界扫描设备元素
- 指令寄存器
- 指令寄存器单元示例
- 数据寄存器
- 数据寄存器单元示例
- TAP信号
- 测试数据输入(TDI)
- 测试数据输出(TDO)
- 测试时钟(TCK)
- 测试模式选择(TMS)
- 测试复位(TRST)
边界扫描设备元素
-
测试接入端口(TAP)
一个通用端口,用于将控制信号路由到边界扫描设备(TCK、TMS、TRST),并为边界扫描逻辑提供串行输入和输出引脚(TDI、TDO)。
-
TAP控制器
一个16状态的机器,由测试模式选择(TMS)和测试时钟(TCK)输入编程,控制数据位流向指令寄存器和数据寄存器。TAP控制器可以被视为边界扫描设备的控制中心。
请参阅TAP信号以了解TAP控制器使用的控制信号。
-
指令寄存器
解码测试数据寄存器要执行的指令,并选择要访问的测试数据寄存器。
-
数据寄存器
包括每个边界扫描设备必须具备的边界寄存器和旁路寄存器。可选的数据寄存器可以包括识别寄存器和设计者指定的数据寄存器。
边界扫描设备
在本书的设备插图中,寄存器单元看起来相同;然而,您应注意到IEEE标准1149.1描述了许多可能的单元设计。有关更多信息和示例,请参阅IEEE标准。
指令寄存器
指令寄存器允许您定义要执行的测试、要访问的测试数据寄存器,或两者兼而有之。每个指令寄存器单元由一个移位寄存器触发器和一个并行输出锁存器组成。移位寄存器保存通过指令寄存器移动的指令位。锁存器保持当前指令。
IEEE标准1149.1定义了许多强制性和可选指令。还可以向设备添加特定设计指令。指令寄存器的最小大小为两个单元。寄存器的大小决定了可以使用的指令代码的大小:代码大小必须与寄存器长度匹配。
在称为CAPTURE-IR的控制器状态下,两个最低有效寄存器单元必须加载固定的二进制"01"模式。在移位过程完成时,移入寄存器的指令被锁存到输出上;这必须仅发生在UPDATE-IR状态。这一要求确保指令仅在指令寄存器(IR)扫描序列结束时更改。锁存到指令寄存器输出上的值定义了要应用的测试、要访问的测试数据寄存器,或两者兼有。
当由TAP控制器应用复位,或者控制器进入TEST-LOGIC-RESET状态后,IDCODE指令必须锁存到指令寄存器的输出上。如果设备没有ID(识别)寄存器,则必须将BYPASS指令加载到输出上。表1-1显示了指令寄存器在每个TAP控制器状态下的行为。
表1-1
一个指令寄存器单元示例(来源:IEEE标准1149.1)
TAP控制器状态 | 移位寄存器触发器 | 并行输出锁存器 |
---|---|---|
TEST-LOGIC-RESET | 未定义 | 设置为给出IDCODE |
CAPTURE-IR | 将"01"加载到LSBs | 保持最后状态 |
SHIFT-IR | 移动指令 | 保持最后状态 |
EXIT1-IR | 保持最后状态 | 保持最后状态 |
UPDATE-IR | 保持最后状态 | 加载(锁存)数据 |
所有其他状态 | 未定义 | 保持最后状态 |
指令寄存器单元示例
图1-7显示了一个单独的指令寄存器单元示例,以及在开发测试时您最关心的单元组件。
标记为“Data”和“Instruction Bit”的引脚是并行输入和输出。标记为“From Last Cell”和“To Next Cell”的引脚是指令寄存器移位寄存器触发器的串行输入和输出。所有其他引脚用于将控制信号从TAP控制器路由到单元中。
指令寄存器单元示例
数据寄存器
在边界扫描组件中可以内置几种不同的数据寄存器。其中最重要的是边界寄存器,它在每个输入和输出引脚旁边都有一个边界扫描单元。该寄存器用于控制和观察设备输入和输出引脚上的活动。边界寄存器是IEEE 1149.1的强制性特性。
另一个强制性寄存器是旁路寄存器。该寄存器仅由一个边界扫描单元组成。当测试板上的其他边界扫描组件时,旁路寄存器将扫描链缩短为单个单元。
IEEE标准1149.1描述的另一个数据寄存器是识别寄存器,它是可选的。这个寄存器包含设备识别信息。该寄存器提供两个功能:IDCODE和USERCODE功能。
该标准还允许设备制造商实现其他寄存器。这些寄存器通常用于执行制造商指定的指令,用于自检和类似功能。
数据寄存器单元示例
图1-8显示了一个单独的数据寄存器单元示例,以及在开发测试时您最关心的单元组件。所示的单元设计具有足够的灵活性,允许该单元用作输入或输出。内置逻辑和输出引脚框图示了输出配置。请注意捕获(CAP)和更新(UPD)触发器;这些组件对于任何测试功能期间数据寄存器单元的功能都很重要。
您应该注意到,对于双向引脚,可以使用两种方法之一。首先,您可以使用两个数据寄存器单元:一个用作输入,一个用作输出。其次,您可以使用一个单一的、可逆的单元来执行这两种功能。
在图1-8中,标记为输入引脚(Input Pin)和内置逻辑(Internal Logic)的引脚是来自设备引脚的并行输入。(在输出配置中,这些是到设备引脚的并行输出。)标记为移入(Shift In)和移出(Shift Out)的引脚是边界寄存器的串行输入和输出。所有其他引脚用于将控制信号从TAP控制器路由到单元中。
请注意,该图显示了一个从链中提取的边界寄存器单元,并放置在图的左下角的小图中。从这个小图中,您可以看到主要输入信号如何与单元图和示例设备的边界寄存器相关。右下角的类似小图显示了主要输出信号。
数据寄存器单元示例
TAP信号
TAP控制器使用的TAP信号包括:
- 测试数据输入(TDI)
- 测试数据输出(TDO)
- 测试时钟(TCK)
- 测试模式选择(TMS)
- 测试复位(TRST)(可选)
图1-9展示了控制信号(TMS、TCK、TRST)如何路由到TAP控制器以及TAP控制器的输出可能是什么。这些输出控制指令寄存器和数据寄存器。由指令寄存器的指令解码部分产生的模式信号告诉数据寄存器要执行什么测试功能。
测试数据输入(TDI)
TDI为移入指令寄存器的测试指令提供串行输入,并为通过边界寄存器或其他数据寄存器的数据提供串行输入。值在TCK的上升沿被钟入选定的寄存器。
测试数据输出(TDO)
TDO是来自边界寄存器或其他数据寄存器的测试指令和数据的串行输出。所选寄存器(指令或数据)的内容在TCK的下降沿移出。
测试时钟(TCK)
测试时钟输入为测试逻辑提供时钟。TCK是一个专用输入,允许串行测试数据路径独立于组件特定的系统时钟使用。这也允许在正常组件操作的同时进行测试数据的移位。
测试模式选择(TMS)
TMS的逻辑电平结合施加在TCK上的上升沿,会导致通过TAP控制器从一个状态转移到另一个状态。这反过来又允许数据和TAP指令通过状态机移动。
在这种模式下,只有测试信号被允许通过核心逻辑(用于INTEST、RUNBIST和其他自测试)。这使设备与板上的其他部分隔离。
在测试模式下,您可以执行:
- EXTEST,以检查边界扫描设备的物理连接。
- INTEST,以测试设备的内部逻辑。
- RUNBIST,以测试设备的内部逻辑。
- 制造商定义的功能,用于模拟或扩展这些测试。
测试复位(TRST)
该可选输入提供TAP控制器的异步初始化,这反过来导致设计中包含的其他测试逻辑的异步初始化。复位将设备置于正常运行模式,并使边界寄存器处于非活动状态。
边界扫描设备的框图