测试包含多个相位旋转器的集成电路设计的制作方法_2

文档序号:8457394阅读:来源:国知局
4以及系统时钟相位220。连接212。:11被选择用于输入 到接收捕获单元209^,连接218被选择用于输入到选通接收器215,将链路置于环回测试 模式中。选通接收器215向延迟线221提供选通信号的测试版本,延迟线221生成选通相 位223。给定读时钟相位旋转器222^的正确设定,时钟224^将在旁通连接212^上成功 锁存数据,并在输出211^上提供结果,其可被检查以与数字域内的原始数据210^进行匹 配。如所述的测试验证PLL、相位旋转器、传送、接收和延迟线单元的一般功能,但该测试不 是穷举的。因为在多个输入相位和权重选项的情况下,每个相位旋转器为多个输出相位提 供能力,并且正确数据的捕获是窗口化事件,所以相位旋转器的全连接性和功能性不被保 证;但链路的功能操作取决于相位旋转器操作。该测试方法不将相位旋转器与链路的其它 部分隔离。
[0041] 图3示出了根据本发明的方面的相位旋转器测试结构300。在实施例中,相位旋 转器测试结构300包括多个相位旋转器301^,它们在构造上类似于图Ia中描述的相位旋 转器。每个相位旋转器301^提供输出相位311^,其被用于链路或其它功能的功能模式 中。输出相位311。、3112、…311n的子集被经由选择信号302控制的开关303。 :11选择性地 连接到第一测试总线(例如,递增2)。其余输出相位311、…311n被被经由选择信号304 控制的开关305 1:n选择性地连接到独立的第二测试总线307 (例如,递增2)。因此,在此示 例中,多个相位旋转器301^的第一半可以选择性地连接到第一测试总线306,多个相位旋 转器301^的第二半可选择性地连接到第二测试总线307??闪拥剑ɡ绻亓剑┟扛?测试总线306和307的相位旋转器的数量可以不是相等的。
[0042] 在一些方面中,在制造测试期间,选择信号302和304被使用和配置为一次选择一 个相位旋转器用于连接到测试总线306和307中的每个。此外,选择信号302和304被使用 和配置为将所有相位旋转器与测试总线306和307隔离,在该情况中,选择信号302和304 可被用于稳定测试总线306和307。在实施例中,提供测试总线306和307作为对逻辑308 的输入,逻辑308被配置为测试第一测试总线306上的信号的相位到达相对于第二测试总 线307上的信号的相位到达。在此方式中,逻辑308是比较元件,其被配置为将提供在第一 输入端的第一信号的相位与提供在第二输入端的第二信号的第二相位进行比较。
[0043] 控制信号309被配置为向逻辑308提供控制。该控制可以包括例如定时控制、最小 脉冲宽度控制或死区(dead-band)控制,或者精细调谐逻辑功能和相位测试所需要的其它 控制。在输出端310处提供逻辑308的输出,用于在测试应用期间进行监视。结构300允 许利用逻辑将相位旋转器301^中的选择的第一个的输出相位与相位旋转器301^中的选 择的第二个的相位进行比较,以确定两个选择的相位旋转器之间的相位关系。使用此结构, 可以使用针对相位旋转器选择、每个相位旋转器的相位选择以及每个相位旋转器的权重选 择的按序方法来与其它传送和接收电路隔离地测试多个相位旋转器301b。
[0044] 图4示出了根据本发明的方面的用于图3的逻辑308的多个逻辑功能。图4所示 的逻辑功能是示例性的且是非限制性的,并且可以在本发明的范围内使用其它逻辑功能或 逻辑功能的组合。如图4所不,信号401(^411(^421(^431(!和441(!表不选择到第一测试总线 (例如测试总线306)上的相位旋转器(例如相位旋转器301 Q:n中的第一个)的相位,信号 401^411^421^43^和44^表示选择到第二测试总线(例如测试总线307)上的相位旋转 器(例如相位旋转器301 Q:n中的第二个)的相位。信号402、412、422、432和442描述了当 第一和第二测试总线上的相位旋转器对准(401^401^402)、轻微不对准(411^411^412)、 完全不对准(421^421^422)时、当第二测试总线被粘住为0(431^431^432)时、以及当第 二测试总线被粘住为1(441^441^442)时,逻辑308处的指定逻辑功能(例如,与、或、异 或)的结果。图4内的定时标记403和404提供与第一测试总线时钟边沿相关的采样点, 所述时钟边沿可以经由延时创建。标记403表示与第一测试总线上的上升/正边沿相关的 采样点,标记404表示与第一测试总线的下降/负边沿相关的采样点。取决于相位选择以 及选择用于测试的权重模式、以及期望仅测试正边沿到达还是测试正边沿以及脉冲的占空 t匕,可以要求一个或多个逻辑功能。
[0045] 图5示出根据本发明的方面的与图3的测试结构300 -起使用的附加结构。图5 的测试总线506、测试总线507以及逻辑508分别对应于图3的测试总线306、测试总线307 和逻辑308???00包含第一测试总线506和第二测试总线507,它们是对逻辑508的输入。 逻辑508是可以经由输入509调谐的,并且提供相位比较输出510,其可以是单个信号或多 个信号。在实施例中,提供信号510作为两个锁存器511和512的数据(D)端口处的数据 输入。每个锁存器511和512被出为可扫描锁存器,作为可扫描测试方法的部分,但替代 地也可以是非可扫描的且通过替代机制查询。对锁存器511的输入514是扫入(SI)端口, 而对锁存器511和512两者的输入513是扫描使能(SE)端口。锁存器511和512都具有 重置(R)端口,其被信号535驱动用于初始化。来自第一锁存器511的输出516可以经由 连接515连接到第二锁存器512的扫入端口。同样,第二锁存器512的输出517可以经由 连接518连接到另一锁存器的扫入端口。
[0046] 仍然参考图5,单兀519在信号520上提供测试模式的一次米样相位,其被反相器 521反相,以创建反相的一次采样信号522。使用分别在时钟端口(C)向锁存器511和512 提供时钟的采样时钟520和522,采样了来自逻辑508的上升和下降边沿逻辑响应。单元 519使用可以连接到测试总线506或测试总线507之一的时钟输入523以及一次使能524, 以便触发采样时钟。单元519还可以具有附加控制526,以提供非采样模式中的必要时钟, 诸如用于扫描。单元519还可以提供附加输出525。
[0047] 图6示出了根据本发明的方面的处理流600。具体地,流600是可以与图3和图5 的测试结构300和500 -起使用的测试流,并且参照图3和图5中使用的附图标记描述该 流的步骤中的某些步骤??梢允褂弥钊缯饫锩枋龅腂IST有限状态机的控制逻辑或其它合 适的控制逻辑来驱动和/或控制流600中描述的功能和/或步骤以及这里描述的其它附图 中的其它流。
[0048] 流600在步骤601处开始。在步骤602中,判定相位旋转器测试模式是否活动。如 果相位旋转器测试模式非活动,则处理到步骤626中结束。如果相位旋转器测试模式已被 选择,则在步骤603,锁定锁相环(PLL),该锁相环向相位旋转器提供时钟相位。在替代实施 例中,步骤603可以包括使时钟源于延迟线,而不是PLL。
[0049] 一旦在步骤603锁定了 PLL,在步骤604,从能够连接到第一测试总线(例如,图3 的测试总线306)的第一多个相位旋转器(例如,相位旋转器301^)中选择第一相位旋转器 (Rotl)。在步骤605,将用于第一相位旋转器的输入相位选择和权重设定为初始测试状态。 在步骤606,从能够连接到第二测试总线(例如,图3的307)的第二多个相位旋转器(例 如,相位旋转器301 Q:n)中选择第二相位旋转器(Rot2)。在步骤607,第二相位旋转器将其输 入相位和权重设定为初始测试状态,其可以或可以不等于用于第一相位旋转器的设定。在 相位旋转器Rotl和Rot2都设定的情况下,处理移动到步骤608,在步骤608,测试序列等待 相位旋转器相位稳定,以及等待用于编程到这两个相位旋转器的相位和权重的给定组合的 比较期望值被计算。
[0050] 继续参考图6,当步骤608中的等待时间达到时,处理进行到步骤609,在步骤609 中获取逻辑输出的样本,并接着进入步骤610,在步骤610中将采样的结果与生成的期望 (也称为期望值)进行比较。在采样的结果不符合期望值的情况中,表示测试失败,此时在 步骤611记录失败情况,并且在步骤612,测试以失败退出。替代地,如果在步骤610中采样 的结果符合期望结果,则处理继续到步骤613,在步骤613中,判定是否已经测试了针对第 二相位旋转器的所有希望的相位和权重组合。该相位和权重集合可以是所有有效可能性的 全二进制组合,或者是测试该相位旋转器的连接性的某个子集。如果还未测试完所有感兴 趣的组合,则处理移动到步骤614,在步骤614中,针对下一个相位和权重组合更新第二相 位旋转器,并且处理返回到步骤608。穿过步骤608、609、610、613和614的循环继续,直到 第二相位旋转器的所有感兴趣的相位和权重组合都被测试。
[0051] 仍然参考图6,当在步骤613中判定已经测试了针对第二相位旋转器的所有希望 的相位和权重组合时,处理移动到步骤615,在步骤615中判定测试是否正针对可连接到选 择的第一测试总线的多个相位旋转器中的第一相位旋转器进行。在实施例中,步骤615是 一种优化,其允许循环穿过所有"第二相位旋转器"而仅允许选择第一个"第一相位旋转器" 以便节约测试时间。步骤615是选择性的,并且如果其被去除,则步骤613将退出到步骤 616而不是615。如方法600中所示,如果在步骤615中判定第一相位旋转器仍在其初始 设定中,则处理移动到步骤616,以判定是否已经测试了连接到第二测试总线的多个相位旋 转器中的所有"第二相位旋转器"。如果还未测试完所有"第二相位旋转器",则处理移动到 617,在步骤617中,递增测试中的"第二相位旋转器",并且处理返回到步骤607。穿过步骤 607、 608、609、610、613、615、616和617的此循环可以继续,直到第二多个相位旋转器中的 所有相位旋转器都被测试。
[0052] 当在步骤616中判定第二多个相位旋转器中的所有相位旋转器都已被测试时,流 程进行到步骤618,在步骤618中,判定针对从第一多个相位旋转器中选择的并连接到第一 测试总线的相位旋转器的所有希望相位和权重是否已被测试。当步骤618是否或负面时, 处理继续到步骤619,在步骤619中,从第一多个相位旋转器中选择的相位旋转器被更新 到下一个希望的相位和权重组合,并且处理返回到步骤606。循环继续穿过步骤606、607、 608、 609、610、613、614、615、616、617、618和619,直到已经相对于针对所有第二多个相位 旋转器的所有希望的相位和权重组合测试了针对从第一多个相位旋转器选择的相位旋转 器的所有希望的相位旋转器设定。
[0053] 当在步骤618中判定已经测试了针对从第一多个相位旋转器中选择的并连接到 第一测试总线的相位旋转器的所有希望的相位和权重时,处理进入到步骤620,以判定是否 已经测试了来自第一多个相位旋转器的所有相位旋转器。当步骤620是否或负面时,则在 步骤621中选择第一多个相位旋转器中的下一个相位旋转器连接到第一测试总线,并且处 理返回到步骤605,继续循环。当方法600包括步骤615时,针对从第一多个相位旋转器中 选择的后续相位旋转器中的每个,仅测试来自第二多个相位旋转器中的单个相位旋转器。 当从方法600中省略步骤615时,针对来自第一多个相位旋转器的每个相位旋转器测试来 自第二多个相位旋转器的每个相位旋转器。当步骤620是否或负面时,即判定已经测试了 来自第一多个相位旋转器的所有相位旋转器时,相位旋转器测试被指示为成功。在步骤622 中记录结果,并且相位旋转器测试在步骤623中以通过退出。
[0054] 在流程600的特定实施例中,第一和第二多个相位旋转器的递增被限制,使得仅 针对第二多个相位旋转器中的第一相位旋转器测试第一多个相位旋转器中的第一相位旋 转器;仅针对第二多个相位旋转器中的第二相位旋转器测试第一多个相位旋转器中的第二 相位旋转器;仅针对第二多个相位旋转器中的第三相位旋转器测试第一多个相位旋转器中 的第三相位旋转器;等等,直到所有相位旋转器都被测试。
[0055] 可以测试相位旋转器的相位和权重组合的数量相当大。例如,给定相位选择和权 重参数的不同组合,相位旋转器可以用于创建128个不同的输出相位。虽然测试相位旋转 器相位和权重选择的所有组合可以是穷尽的,但可以用小得多的模式集完成连接性和功能 性验证,该模式集分别地针对相位选择和权重,以确保在模式集中每个相位选择和每个权
当前第2页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1
imtoken助记词怎么填-imtoken钱包没有收益-imtoken矿工费太贵了-im钱包官网:token.im