初出茅庐 https://bbs.21ic.com/?431701 [收藏] [复制] [RSS]

日志

Boundary Scan(1)

已有 546 次阅读2005-11-3 10:32 |个人分类:边界扫描|系统分类:原稿与翻译

一.边界扫描测试的原理


20世纪80年代,联合测试行动组(joint test action group)起草了边界扫描测试(boundary-scan testing,简写BST)规范。JTAG是商业组织,为了推广Boundary Scan标准,JTAGIEEE(Institute of Electrical and Electronics Engineers)提出了一个提案。IEEE对提案做了一定的修改后在1990年初发表了IEEE1149.1-1990的国际标准。因此有些人喜欢把Boundary Scan称为JTAG


边界扫描的基本思想
边界扫描测试的基本思想是靠近器件的每一输入/输出(I/O)管脚处增加一个移位寄存器单元。在测试期间,这些寄存器单元用于控制输入管脚的状态(高或低),并读出输出管脚的状态,利用这种基本思想就可以测试出电路板中器件的好坏及相互连接的正确性。在正常工作期间,这些附加的移位寄存器单元是透明的,也就是说不影响电路板的正常工作。
硬件组成


1.边界扫描寄存器
边界扫描寄存器(BSR)构成边界扫描通路,其每一单元由内存、发送器/接收器和缓冲器组成。这些基本单元都置于集成电路的输入/输出端附近,并将它的相连构成一个移位寄存器链,该链的首端接TDI(测试数据输入),末端接TDO(测试数据输出)。当测试时钟TCK加入时,从TDI加入的测试数据即可在移位寄存器中移动。
2.辅助寄存器
辅助寄存器包括器件标志寄存器及旁路寄存器。器件标志寄存器用于寄存表征参加扫描的寄存器或集成电路的识别码。旁路寄存器只有一位,用于将不参加串行扫描的数据寄存器的数据在此旁路,以减少扫描时间。
3.指令寄存器
指令寄存器的作用是向各数据寄存器发出各种操作码,并确定其工作方式。
4 TAP控制器


  1TDI-测试数据输入端;
2
TDO-测试数据输出端;
3) TMS
-测试方式选择输入端;
4) TCK
-测试时钟输入端。
5
TRST*测试复位输入端(选用)。


TMS TDI 是在TCK 的上升沿有效, TDO 是在TCK 的下降沿有效。
JTAG
电路通过TDI,TDO,TMS,TCK以及TRST信号完成对整个或部分复杂系统的信号和逻辑模拟测试,命令和测试数据TDI串行移入,测试数据由TDO串行移出,TMS控制JTAG内部TAP控制状态机的运动,TCK提供移位元的时钟,TRST提供TAP状态机的复位信号。


5.多路转换器
在指令寄存器和控制器的控制下,用以选择扫描路径及选择某一个寄存器的数据,并将其输出送到TDO端。


实现功能
1
)内部测试:
用于测试电路板上各集成电路芯片的内部故障。
2
)外部测试:
用于测试电路板上各集成电路芯片间联机的呆滞型故障、开路故障和短路故障。
3
)采样测试:
用于实时诊断一个正在工作的系统,扫描寄存器实时监视电路板上各芯片的输入和输出引脚的数据流。
4
)在线编程:


PCB电路设计好后,即可用程序先将对JTAG的控制指令,通过TDI送入JTAG控制器的指令寄存器中。再通过TDI将要写EEPROM的地址、数据及控制线信号入BSR中,并将数据锁存到BSC中,用EXTEST指令将需装载的数据通过I/O加载到EEPROM器件的引脚上,BSC将写入EEPROM
常用指令描述


1EXTEST 指令


该指令选择边界扫描寄存器作为TDITDO之间的数据通路.这提供了此设备与其它设备之间进行互连测试的可能.使用EXTEST指令,通过设备的TDI移入的数据可在Update_DR状态下被装载到设备的输出单元BSCPO.而此数据又可使用Capture_DR状态被采样到下一个设备的输入单元BSC.利用Shift_DR状态,通过移位元边界扫描寄存器可观察到抽样值.


2SAMPLE 指令


该指令用于在芯片进行正常操作时进行数据采样.使用该指令,PI的数据被捕获并在Capture_DR状态传送到每个BSCSO.被捕获的值能通过移动边界扫描寄存器被观察到.


3INTEST 指令


该指令用于测试设备的片内系统逻辑.当使用该指令时,边界扫描寄存器连接于TDITDO之间.INTEST指令执行期间,输入和输出单元BSC均被设置为1,此时每个BSC中只有从SISO的扫描路径有效,没有数据能出入并行输入/输出引脚(PIPO).在测试期间,在每个输入单元BSCSI上预装载的数据在Update_DR状态被用于片内系统的测试.一定的时钟周期后,片内系统逻辑响应在Capture_DR状态出现在输出单元BSCSO,并通过移位元边界扫描寄存器可观察到回应值. 执行INTEST指令时,在将适当的值加载到TMS之前,应停止加载输入系统时钟。


4BYPASS 指令


该指令用于在没有进行测试时,提供TDITDO之间的一条最短长度的串行路径.此时,将在TDITDO之间放置BYPASS寄存器.Shift_DR状态,被在TDI的数据在一个TCK时钟周期后被移入到TDO.


5ID 代码指令


该指令将连接到TDITDO间的标识(ID)寄存器.ID寄存器由321比特的ID信元链组成, CAPTURE-DR状态下,器件的ID被捕获到ID寄存器里面。在SHIFT-DR状态下,先前捕获的ID通过TDO位移出来,总共需要32TCK时钟周期。在UPDATE-DR状态下,ID寄存器不受任何影响。


路过

鸡蛋

鲜花

握手

雷人

全部作者的其他最新日志

评论 (0 个评论)