Wrapper Chain是如何工作的?
想象一下这个场景:你买了一块复杂的SoC芯片,里面集成了CPU、GPU、DSP、存储控制器等数十个IP核。芯片做回来了,却发现某个数字模块有缺陷——你看得见引脚,却摸不到核内部。更麻烦的是,这些IP可能是第三方提供的"黑盒",没有内部网表,传统扫描链鞭长莫及。

这就是IEEE 1500标准诞生的初衷。它给每个IP核穿上一层"透明外套",通过一条称为Wrapper Chain的电路结构,让测试数据像快递员一样精准投递到核门口,又能把响应原路带回。今天我们来拆解这套电路的物理实现,看看那些测试向量是如何在芯片内部穿行的。
Wrapper的物理结构:给IP核装上一圈"感应器"
Wrapper Chain的核心思想并不复杂——在IP核的每一个输入输出端口都布置一个边界寄存器单元(WBC),把这些单元串成链条,就像给核芯围上一圈感应器。当芯片正常工作时,这些感应器完全透明,信号直进直出;一旦进入测试模式,它们立刻变身测试探针。

从电路实现上看,一个标准的IEEE 1500 Wrapper由几个关键部分组成。最显眼的是Wrapper Boundary Register(WBR),它由分布在核边界的众多WBC单元串联而成,形成一条从WSI(Wrapper Serial Input)到WSO(Wrapper Serial Output)的扫描路径。WBR是测试执行的"前线阵地",负责捕获响应和施加激励。

但谁来指挥这条链的工作模式?答案是Wrapper Instruction Register(WIR)。WIR是一个独立的指令寄存器,通过WSI接收测试指令,解码后产生控制信号,决定WBR是处于捕获状态、移位状态还是更新状态。它就像Wrapper的大脑,告诉电路现在该做什么。
为了应对不需要测试某些IP核的场景,标准还规定了Wrapper Bypass Register(WBY)。这是一个只有一位的寄存器,当选择旁路模式时,WSI的数据直接穿过WBY到达WSO,跳过漫长的WBR链条,大大节省测试时间。

整个Wrapper通过Wrapper Serial Port(WSP)与外部世界交互。WSP包含六到八个控制信号线,其中WRCK是专用时钟,WRSTN是异步复位,SelectWIR用于区分当前是传输指令还是数据,CaptureWR、ShiftWR和UpdateWR则分别对应捕获、移位和更新三个基本操作。这些信号线不需要复杂的TAP控制器,可以直接由芯片级测试控制逻辑驱动,这也是IEEE 1500比1149.1更灵活的地方。
数据流的工作原理:从串行输入到并行测试
了解了结构,我们来看看测试向量是如何流动的。当一颗SoC上电后进入测试模式,Wrapper Chain的启动遵循严格的时序协议。
最开始,SelectWIR信号拉高,WSI与WSO之间连通的是WIR指令寄存器。测试机台通过WSI逐位移入一条指令,比如WS_BYPASS或WS_INTEST。这条指令在WRCK的上升沿被移入WIR的移位寄存器,在UpdateWR信号的触发下锁存到更新寄存器并解码。此时WIR输出相应的控制信号,配置多路选择器,决定后续WSI到WSO的数据通路是走WBR、WBY还是核内部的扫描链。

假设我们要测试IP核内部逻辑,WIR会配置Wrapper进入内部测试模式。此时SelectWIR拉低,WBR被接入WSI-WSO通路。在CaptureWR有效时,WBR边界单元从IP核的输入引脚捕获当前值,或者从核输出端采样响应数据。接着在ShiftWR有效期间,这些捕获的数据在WRCK驱动下沿着WBR链条一位位向WSO移动,同时新的测试激励从WSI移入。这个过程就像拉动一条数据蛇,蛇身经过每个引脚时都会吞吐数据。
对于需要高速测试的场景,Wrapper还支持Wrapper Parallel Port(WPP)。WPI和WPO提供并行的测试数据通道,可以一次性加载多个测试向量,通过WBR与核内部扫描链的灵活配置,实现带宽匹配。
为什么这套结构能解决问题
Wrapper Chain的真正价值在于隔离与重用。在SoC集成阶段,IP提供商只需要交付封装好的核和对应的CTL(Core Test Language)描述文件,无需暴露内部实现细节。系统集成商通过标准的WSP接口就能访问各个IP核,不同来源的核可以像积木一样拼接,测试数据在芯片级扫描链中 plug-and-play 地流动。
当测试完成后,WRSTN信号拉低,WIR自动加载默认的WS_BYPASS指令,Wrapper回到透明状态,IP核恢复正常的功能模式,仿佛测试从未发生过。这种"来时透明,用时隔离"的特性,让复杂的SoC测试变得像操作一排抽屉——你可以独立打开任何一个,也可以快速掠过不需要关注的那些。
对于现代芯片设计而言,IEEE 1500定义的Wrapper Chain早已成为嵌入式IP测试的事实标准。从手机SoC到AI加速器,那些密密麻麻的边界寄存器单元正默默守护着芯片的质量,在微米级的硅片世界里搭建起一条条隐秘而高效的测试高速公路。


AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐
所有评论(0)