全球最实用的IT互联网信息网站!

AI人工智能P2P分享&下载搜索网页发布信息网站地图

当前位置:诺佳网 > 电子/半导体 > 嵌入式技术 >

典型的DRC案例介绍

时间:2023-09-15 14:32

人气:

作者:admin

标签: 典型的  介绍  DRC  案例 

导读:在进行DFT Logic的设计和插入之前,DFT工程师会先使用EDA工具对原Design执行DRC(Design Rule Checking),即设计规则检查。...

DRC介绍

在进行DFT Logic的设计和插入之前,DFT工程师会先使用EDA工具对原Design执行DRC(Design Rule Checking),即设计规则检查。随着芯片的复杂度升高,执行DRC可以显著提高Design的可测性,同时也检查Design的合理性。

DRC案例

1

在Function模式下,由三态门严格控制,在同一总线上,同一时刻只允许一个设备向总线输出。如图1所示,三个寄存器的输入是DI,由Functional Enable Logic控制,在同一时刻Driver D1、D2、D3只有一个被使能,可以向总线输出数据。

但在测试模式下,Scan Shift期间三个寄存器SSF1、SSF2、SSF3连成一条Scan Chain,输入由DI切换为SI,它们的值会根据测试pattern不停地变,无法保证3个Drivers在同一时刻只有一个驱动总线,这样就可能会引起总线竞争的问题。

图片

图1

为了避免这个问题,我们加入如图2所示的电路,当SE为1时,即Scan Shift期间,只有EN1为1,此时D1生效,D2和D3不生效。另外给总线加入Bus Keeper,使总线在3个Drivers均为高阻抗时保持总线上值不变。

图片

图2

但这样的设计依旧存在一个问题:在Scan Capture期间如何避免总线竞争问题?实际上这里的解决办法有好几种,笔者仅提供其中一种思路:在Capture期间SE的值为0,但TE(Test Enable ,图中未画出)依旧为1,我们可以利用TE信号来设计逻辑使得在SE为0时依然最多只有一个Driver被使能。

2

芯片上存在一些双向IO Pin,如图3所示,由寄存器的输出Q来控制IO方向,当Q=1时是Output Pin,当Q=0时是Input Pin。但在Scan Shift期间,该寄存器的值会由于测试pattern而不停地变,从而导致I/O方向不断发生改变。

图片

图3

我们给原电路加入如图4所示的逻辑,当处于Scan Shift期间,SE的值为1,无论寄存器的值是0还是1,与门的输出均为0,这样就保证了在Scan Shift期间该IO PIN一直是Input Pin。当然也可以换成或门的逻辑,使该IO Pin在Shift期间一直是Output Pin。

图片

图4

3

如图5所示,这是一个非常简单的时钟门控电路,当enable为1时,gated clock与clock保持一致,当enable为0时,gated clock保持为1,即clock断开状态。但这样的设计无法很好地解决hazard,具体如图6波形图所示。

图片

图5

图片

图6

Designer为了解决这一问题,会采取如图7所示的设计:插入一个负沿触发的触发器,在时钟下降沿对enable信号进行采样,当enable为1时,将时钟打开,当enable为0时,将时钟关闭。这样就大大降低了hazard风险,波形图见图8。

然而这样做在测试中会引发另一个问题,那就是在Scan Shift期间该触发器的值会不断发生变化,我们也就无法控制时钟开关了。

图片

图7

图片

图8

假设原始的Design电路如图9所示,我们加入图10所示的逻辑 ,当SE为1时,Clock始终保持打开的状态,这样就保证了Scan Shift期间Clock门控电路始终打开。

图片

图9

图片

图10

总结

本文所示案例在Function方面均属合理的设计,但并不利于测试,这也是引入DRC的重要意义。目前市面上不同的EDA工具对于Design Rule有着不同的规则体系,但本质是一样的,都是为了在插入DFT以及产ATPG Pattern之前消除潜在的风险并改善设计。

温馨提示:以上内容整理于网络,仅供参考,如果对您有帮助,留下您的阅读感言吧!
相关阅读
本类排行
相关标签
本类推荐

CPU | 内存 | 硬盘 | 显卡 | 显示器 | 主板 | 电源 | 键鼠 | 网站地图

Copyright © 2025-2035 诺佳网 版权所有 备案号:赣ICP备2025066733号
本站资料均来源互联网收集整理,作品版权归作者所有,如果侵犯了您的版权,请跟我们联系。

关注微信