"本文档主要介绍了使用Spyglass进行读取源文件及CDC(Clock Domain Crossing)检查的方法,强调了规则检查在设计流程中的重要性,特别是对于跨时域问题的检测。文中提到了多种EDA工具,如Synopsys的Leda、Aldec的Active-HDL、ATRENTA的Spyglass、NOVAS的nlint和Mentor的DesignChecker,其中重点讲解了Spyglass的功能和使用步骤。"
Spyglass是一款由ATRENTA公司开发的规则检查工具,它主要用于RTL(寄存器传输级)分析和跨时域设计的评估。该软件支持多种功能,包括 metastability(亚稳态)检查、reconvergence(重收敛)问题、datahold问题(数据丢失)、设计意图跨越时钟域的检查以及reset同步等关键检查。这些功能使得Spyglass能够有效地识别和解决数字电路设计中的潜在问题。
规则检查在设计早期阶段就显得尤为重要,因为它可以加快项目进度,降低风险并减少成本。CDC检查尤其关键,因为这类问题在仿真和FPGA测试中可能不易被发现。通过检查,可以确保复位和时钟的正确使用,并对跨时域设计进行全面评估。
执行规则检查的一般步骤包括:首先,准备设计输入,设定基本参数,如输入源文件、约束、库等;然后,选择检查目标,设置相关规则和参数;接着,运行检查;最后,分析结果,通过报告定位错误,并使用原理图和波形进行调试。在实际操作中,设计者通常需要对设计进行多次检查,特别是当代码有所修改时。
部门规则检查有两种主要应用方式:通过TCL脚本和界面操作。TCL方式快速高效,对license的占用时间较短,适合于频繁的检查;而界面方式则更适合于处理涉及多层的跨时域设计,因为其可视化调试更直观。对于CDC检查,只针对使用了跨时域设计的代码部分进行即可。
Spyglass提供了一套全面的工具集来确保数字设计的高质量和可靠性,通过规范化的检查流程和灵活的使用方式,帮助工程师及时发现和解决潜在问题,提升设计的质量和可维护性。