Formality:RTL与GATE网表一致性检查及设置教程

需积分: 46 8 下载量 91 浏览量 更新于2024-08-21 收藏 1.59MB PPT 举报
本文档是一份关于如何使用Formality工具检查RTL( Register Transfer Level)源代码与门级网表(GATE网表)的一致性的详细指南。主要针对的是名为"Fifo"的设计项目,该项目包括多个子文件,如RTL源代码文件fifo.v以及不同版本的门级网表,如fifo.vg、fifo_with_scan.vg和fifo_with_scan_jtag.v。 首先,作者提到要检查的是两个关键文件:RTL源代码(fifo.v)和对应的门级网表(fifo.vg)。目的是确保这两者在功能上是一致的,这意味着它们应该实现相同的设计逻辑。在这个过程中,源代码被设为"reference design",而门级网表则作为"implementation design",这有助于在设计的不同阶段进行验证和比较。 文档详细介绍了如何通过Formality图形用户界面进行操作。具体步骤如下: 1. 在Unix提示符下进入教程目录,然后运行Formality(或者其缩写fm)命令。 2. 设置reference design:用户点击Formality界面的reference按钮,随后选择并打开Rtl目录下的fifo.v文件。为了确保找到正确的文件路径,设置了搜索目录,输入了Synopsys或Design Compiler的安装目录。 3. 读取源文件后,用户可以配置选项,比如选择Variable,并在DesingWareroot directory中输入相应的路径,以便Formality能够正确解析和识别设计文件。 此外,文档还提到了如何处理带有扫描链(用于故障检测和调试)的门级网表,如fifo_with_scan.v和fifo_with_scan_jtag.v。这些额外的网表可能包含JTAG(Joint Test Action Group)链,这是一种测试接口,用于远程访问和控制设计中的寄存器。 这篇指南旨在帮助用户理解如何使用Formality工具进行RTL与GATE网表的对比,确保设计的准确性和一致性,同时考虑到了设计中的调试需求。这对于硬件验证工程师来说是极其重要的实践技能,尤其是在集成电路设计流程中,形式验证是保证设计质量的关键步骤之一。