所以,drc识别以下shadow latch
2.加上以下任何一项:
当阴影闩锁的时钟处于活动状态时,从阴影闩锁数据输入到扫描闩锁(latch)输出必须有一条单一的敏化路径。此外,最终移位脉冲必须在扫描锁存器处发生,不得晚于阴影锁存器的时钟脉冲(如果阴影是边缘触发的,则严格在之前)。
o在通过跟踪阴影闩锁的数据输入来识别扫描闩锁的最终移位脉冲之前,加载阴影闩锁。在这种情况下,阴影将是下一个扫描单元的阴影比通过跟踪识别的扫描单元更接近扫描输出。如果没有靠近扫描的扫描单元,则序列元素不是有效阴影。
o在最后一个移位周期中,阴影锁存器对扫描链输入引脚敏感。在这种情况下,阴影闩锁将是距离扫描最近的扫描单元的阴影。

drc确定时钟关闭、设置管脚约束以及将门连接到时钟、写入和读取线时ZHOLD门的值。连接到时钟线、写入线和读取线的ZHOLD门不会保留值,除非时钟关闭状态和受限引脚结果为二进制值。在规则检查期间,如果设计包含ZHOLD门,则消息会指示ZHOLD检查开始的时间、ZHOLD-门的数量和类型、连接到时钟、写入和读取行的ZHOLD--门的数量,以及在时钟关闭状态条件。

给出约束得到约束值
得到forbidden值
Clock Terminology
Programmable Clock Chopper
A programmable clockchopper是一种时钟控制器,通过允许或抑制(chop)特定时钟脉冲来形成输出时钟信号。图3-29中的可编程OCC是时钟斩chopper一个简单示例。可以对OCC进行编程,使其根据输入时钟生成最多四个时钟脉冲,还可以从输出中截取最多四个脉冲。通常,在扫描链加载期间,您可以通过将特定控制数据加载到移位寄存器来编程时钟控制器,移位寄存器控制OCC输出上的时钟选通单元。图3-29显示了一个例子,移位寄存器中的每个位控制四个周期中每个周期的时钟。
当然可测试性更具设计而异,不同的设计可实现不同的测试,以下讲述设计特征
Synchronous Circuitry
使用同步设计实践,可以帮助确保设计既可测试又可制造。过去,设计者使用TTL和小型PAL电路的异步设计技术。然而,因为大多数门阵列和FPGA的组织需要在其设计中使用同步逻辑。同步电路在从静态直流到最大时钟频率的所有操作模式下都能正常且可预测地工作。电路输入不会导致电路呈现未知状态。不管时钟和输入信号之间的关系如何,电路都可以避免不正确的操作。设计的同步性级别取决于满足如下要求:
•系统的时钟数量最少,最好只有一个。
•注册所有设计输入并考虑亚稳态。也就是说,您应该将亚稳态时间视为路径中的另一个延迟。如果传播延迟加上亚稳态时间小于时钟周期,则系统是同步的。如果大于或等于时钟周期,则需要添加额外的触发器,以确保正确的数据进入电路。
•没有组合逻辑驱动触发器的设置、复位或时钟输入。
•没有异步信号设置或重置触发器。
•缓冲器或其他延迟元件不会延迟时钟信号。
•不要使用逻辑延迟信号。
•不要假设逻辑延迟比路由延迟长。
如果你坚持规则,你就更有可能产生一个可制造、可测试的设计,并且在广泛的温度、电压和其他电路参数范围内正常工作。
Asynchronous Circuitry
由于系统的性质,一小部分设计需要一些异步电路。由于异步电路通常很难测试,您应该将设计的异步部分放在一个块中,并将其与电路的其余部分隔离。这样仍然可以在设计的同步部分使用DFT技术。
Scannability Checking
对设计的顺序元素执行可扫描性检查过程。对于将扫描电路插入设计的工具,它必须用可扫描的等效元件替换现有的顺序元件。在开始替换之前,设计中的原始序列元素必须通过扫描性检查;也就是说,该工具确定它是否可以转换顺序元件扫描元件,无需额外的电路修改。
1.当所有时钟关闭时,序列元件的所有时钟输入(包括设置和重置输入)必须处于非活动状态(捕获转换的初始状态)。这在主输入端应用测试模式之前,防止扫描链数据受到干扰。如果顺序元件未通过该检查,当测试工具应用主要输入值时,其扫描值可能会变得不稳定。此检查是对规则C1的修改。
2.序列元件的每个时钟输入(不包括设置和重置输入)必须能够在单个时钟主输入激活而所有其他输入激活时捕获数据时钟处于非活动状态。此规则确保此特定存储元素可以捕获系统数据。如果序列元素不符合此规则,测试覆盖率会变小
当序列元素通过这些检查时,它将成为扫描候选元素,这意味着Tessent scan可以将其扫描等效项插入扫描链。但是,即使元素未能通过其中一项检查,仍可以将元素转换为扫描。 也可以向设计中添加称为测试逻辑的附加逻辑,以纠正这种情况。
Support for Special Testability Cases
支持可测试性案例
Feedback Loops
包含环路的设计存在固有的可测试性问题。当一个设计包含一部分电路,其输出以某种方式反馈给其中一个输入时,就存在结构回路。当反馈回路(从输出返回到输入的路径)仅通过组合逻辑时,就会出现结构组合回路。当反馈路径通过一个或多个顺序元素时,会发生结构顺序循环。ATPG工具和Tessent Scan都提供了一些常见的环路分析和处理.但是,循环处理方式可能因工具而异。以下小节讨论结构组合循环和结构顺序循环的处理


常值阻塞,识别环路后工具模拟TIE0/TIE1门和受限输入。反馈如下图所示
这种环路切割技术产生了良好的电路模拟,始终与实际电路行为相匹配,因此,工具尽可能使用这种技术。这些工具可以将此环路切割方法用于包含AND、OR、NAND和NOR门的阻塞环路,以及具有约束选择线的MUX门和具有约束启用线的三态驱动器

在线路上插入tiex 来切断循环

仅仅插入tiex会加入负面情绪
在复制电路插入tiex就不会出现此状态
然而,它也有一些缺点。虽然与其他方法相比(打破常值循环除外)不那么悲观,但门复制过程仍然会给仿真模型带来一些悲观情绪。此外,随着环路尺寸的增加,这项技术在门数方面的成本可能会很高。此外,工具不能在复杂或耦合回路上使用此方法-那些与其他回路连接的回路(因为门复制也可能创建回路)
4. Coupling loops:
当两个或多个循环共享一个公共门时,这些工具使用此技术来中断循环。该方法涉及在其中一个组件的输入端插入一个TIE-X门在一个循环中。该过程仔细选择切割点,以确保TIE-X门切割尽可能多的耦合回路。例如,假设图4-5所示的SR闩锁是更大、更复杂的环路耦合网络的一部分。在这种情况下,环路复制将变成一个永不收敛的迭代过程。因此,工具必须切断回路,如图4-8所示
图4-8所示的修改后的真值表表明,该方法产生了所有环路切割方法中最悲观的模拟结果。因为这是对于循环切割问题最悲观(pessimistic)的解决方案是,工具仅在无法使用之前的任何方法时使用此技术。