物理设计是什么?
一旦RTL被冻结,RTL团队就会综合设计,即他们将RTL代码转换为netlist。Netlist是一个将RTL代码转换为逻辑门、触发器和连接线的文件。它的扩展名也是.v文件。
因此,在物理设计(PD)中,我们从这个网表文件开始。在PD中,我们将网表的内容转换为IC的实际物理布局,同时优化延迟、电气参数、skew和功率。实际的物理布局包含硬核,以及所有逻辑门的单元cell、触发器和走线的实际轨道。
PD过程结束后,我们获取一个GDSII文件,然后将其提交给物理验证工程师,由工程师验证此物理设计是否符合foundry的制造要求。
我们主要关注物理设计中的功率、性能和芯片面积,也就是PPA。
物理设计流程
物理设计流程涉及9个步骤。
- Sanity checks
- Partitioning
- Floor planning
- Power planning
- Preplacement
- Placement
- CTS
- Routing
- Sign-off
A.Sanity checks
我们提供文件作为PD流程的输入,如netlist、SDC、.lib和.lef文件以及工艺文件。因此,在使用它们之前,我们会检查文件的质量,这个过程被称为sanity check。
例如,我们检查所有门是否在Netlist中连接,Netlist中不应该有任何black box。SDC文件中应该有一个创建和生成的时钟。
B.Partitioning
这是一个将单个大电路划分为较小的子电路的过程。这些子电路被分配给经验不足的PD工程师,以执行进一步的步骤。partitioning由具有更高经验水平的PD工程师完成。