从在verilog中定义为结构网表的电路中导出部分电路

Posted

技术标签:

【中文标题】从在verilog中定义为结构网表的电路中导出部分电路【英文标题】:Exporting part of a circuit from a circuit defined as structural netlist in verilog 【发布时间】:2017-01-27 09:57:56 【问题描述】:

我有一个设计的门级结构网表,在 verilog 中包含 40,000 个门和 5000 个触发器。它是一个扁平的网表,内部没有子电路。我想通过删除一些触发器和逻辑门从这个大网表中提取另一个网表。导出的网表也应该在 verilog 中。我想知道现有的工具是否可以做到。

【问题讨论】:

【参考方案1】:

您可以使用综合工具,如 Design Compiler(来自 Synopsys)或 RTL 编译器(来自 Cadence)来导入网表、删除门(例如从 tcl 脚本)并写出修改后的网表。

我确信还有许多其他工具可用于此目的,因此这还取决于您对这些工具的可用性,当然还有您知道如何使用哪些工具方面的偏好。

【讨论】:

谢谢。可以使用 Design Compiler 命令实现我想要的。【参考方案2】:

一旦设计编译器导入网表,就可以删除任何触发器或门。这是一个简单的例子。

remove_cell U1/reg1

以下命令有助于在网表中搜索单元。

get_cells "U1/reg*"

【讨论】:

以上是关于从在verilog中定义为结构网表的电路中导出部分电路的主要内容,如果未能解决你的问题,请参考以下文章

verilog中如何对电路的不定态做检查?

verilog之原语设计

verilog之原语设计

verilog hdl中啥是综合?啥是模拟?

candence allegro中导出网表错误之元器件引脚名错误

《Verilog数字系统设计教程》第3版 夏宇闻