如何将手工布局​​自定义电路添加为新的std单元并在verilog中引用它?

时间:2016-12-19 08:43:21

标签: verilog synthesis circuit

我们的实施核心是一个关键电路,它是整个设计的速度限制器。它只包含几十个门。我们已经手动实现了这个功能的定制晶体管级电路,完成了手工布局,并生成了GDSII。我们希望将其连接到我们的Verilog代码中。

问题是:如何将此自定义电路与Verilog代码集成?

请原谅这个问题的天真。我知道要求的细节水平很多。我们在团队中拥有电路和布局专业知识,但之前没有人将自定义布局与Verilog模拟器或布局布线工具集成在一起。我们真的不知道从哪里开始寻找文档来实现这一目标。

我们有布局的GDSII,并提取参数并模拟行为。

现在,我们如何定义自定义Verilog实体,以便在Verilog代码中调用此实体时,地点和路径将替换GDSII,模拟器将替换行为?

更具体地说,我们如何将我们的GDSII连接到自定义Verilog实体,以便地点和路线知道GDSII文件,并以正确的方式连接GDSII?我们如何在GDSII中指定信号并将其映射到我们的自定义Verilog实体中的信号,以便地点和路线将Verilog线路的GDSII连接到我们手部布局的相应GDSII端口?

我们如何指定行为,然后让模拟器知道它?是否有包含该行为的特殊文件?行为规范采用什么形式,它是真值表吗?

我意识到这是一个高级问题,可能需要一些工作才能拼写出来。我们非常感谢任何关于在哪里寻找或做什么的提示。

你们中的许多人可能认为我们是蛮干的,并希望避免我们犯下自定义布局的错误。谢谢你。我们已经进行了风险评估,并认为在这种情况下的回报是值得的。我们需要您帮助完成整合的具体细节。

谢谢,

肖恩

1 个答案:

答案 0 :(得分:0)

您所指的问题是明确定义的&解决了VLSI行业。解决这个问题的正确方法是使用行为模型(Verilog或System Verilog)来模拟hardmacro(将自定义实现的电路称为hardmacro)和时序模型(在.lib视图中捕获) &安培;用于合成和PnR目的的物理视图(在.lef视图中捕获)。

模拟工具允许您使用模型进行模拟,以验证设计的正确性。但是模型的准确性只能通过对定制电路如何建模的重新确认来确认。如果定制电路很简单,那么建模就很容易了。如果它是模拟电路(如滤波器),那么建模可能很困难。验证该电路的最佳方法是进行混合信号仿真(Verilog RTL + Analog Spice),该工具由行业标准工具支持。

dot lib模型由综合和PnR工具用于理解定制电路的时序要求。点lef视图具有自定义电路的几何信息。一旦标准数字电路的PnR完成,这些工具允许导入定制GDS以替换.lib和amp;到目前为止您使用的.lef视图。这将合并两者的GDS。

希望这有帮助。

-Sanket。