SpyGlass

SpyGlass,这是一个很强大的RTL验证级工具。它不仅仅能检查sdc的错误,还能做以下各种检查:Low Power, DFT,CDC(Cross Domain Check)。其中用得最多的就是CDC,到底什么是Cross Domain Check呢?

在一个设计中,通常都会有好几个clock domain。这样就可能存在从一个clock domain到另一个clock domain的data或者control信号。如下图所示:


如何检查data在不同的Clock Domain之间有没有违例呢?

这就是CDC检查的意义所在,其实就是为了防止在有些跨时钟域的地方,前端设计者没有考虑周全,降低设计风险,增加Tape out成功率。。。

下面简单介绍下,如何使用SpyGlass?

和GCA一样,用法也很简单,这边推荐使用GUI图形界面


1.  Design Setup

把需要的design data准备好,包括网表.v(或者source file list),technology library,sgdc文件(没有的话可以用sdc代替,使用命令set_option sdc2sgdc yes即可)


2. Goal Setup

选择需要检查的Goal

右键编辑该Goal下面的各种rule,点击界面右下角会出现该条rule的解释


3 Analysis Result

最后,点击Analysis Results就能检查违例的情况


最后,关于CDC检查,这是一个工作量非常大的任务,建议先把顶层的基本约束写好,包括时钟,复位,input,output的时钟域。还有各种需要固定值的case analysis值也设好。一些不方便处理的模块,如IO mux,可以用black box处理assume_path。然后分析每一条报出来的Error,或者添加约束,或者waive。


原文链接:https://blog.csdn.net/Tao_ZT/article/details/102456744

你可能感兴趣的:(SpyGlass)