深入了解数字后端流程的基本原理和流程

目录

1.数据准备:为进行后端设计做数据准备

2.布图规划:确定芯片的尺寸、IO位置的摆放、IP模块的摆放、电源网络的设计。

3.布局Placement:

4.时钟树综合CTS:

5.布线Routing:

6.时序验证:

7.ECO阶段:


传统上将布局布线前的工作称之为数字前端(Front End)设计,而将布局布线之后的工作称为数字后端(Back End)设计。布局的目的在于产生制作掩膜所需的GDSII文件。同时也产生布局后的网表文件(Netlist)及标准延迟文件(SDF)。

经典数字后端工作流程图如下:

41afe0f6c5334e1ea2d6646dd8bf29b4.jpeg

1.数据准备:为进行后端设计做数据准备

用于指导后端版图设计,以及在版图设计过程中时序、功耗的计算。

Netlist综合产生的门级网表:包含了后端设计中要用到的逻辑器件、时序器件以及器件之间的连接信息。

SDC时序约束文件:后端设计中所要满足的约束信息,如时钟信息、伪时钟路径、多时钟周期路径等。

电路设计中要用到的各种IP的数据库文件:包括IP的端口信息、时序信息和功耗信息。

集成电路制造厂提供的工艺文件TF:包含制造工艺的参数信息,如金属层数、金属层厚度、层间电容、最小金属线间距等。

2.布图规划:确定芯片的尺寸、IO位置的摆放、IP模块的摆放、电源网络的设计。

合理的芯片尺寸直接关系到芯片的成本,利用率太低会造成成本过高,利用率太高可能会导致后期布线失败。

IO位置的摆放应满足芯片封装的要求,并且必须考虑到芯片测试的PCB版的设计。

IP模块的摆放应根据该IP模块的功能,考虑其与IO或者其他IP模块的交互,以及对标准单元区域和整体布局的影响,避免出现深井、对角等情况。

电源网络的设计,应该通过电路功耗的计算,既能满足芯片正常工作的需求,又不因为余量过大而占用过多的布线资源。

3.布局Placement:

根据时序约束文件中的约束条件,以及已经确定的IO、IP的摆放位置和电源网络,通过选择时序驱动或者拥塞驱动的方法,将标准单元排列在标准单元行(Row)内。EDA工具会综合时序、面积、输出负载等因素,调整标准单元的位置,对布局的结果进行相应的优化。

4.时钟树综合CTS:

时钟树综合,用来改善扇入扇出和时钟偏移的问题。时钟信号作为数字电路中的全局信号,有扇出负载大、连线长、传输时间长等特点。通过选择合理的时钟树结构,插入缓冲器或者反相器,构建时钟网络,调整时钟源到每一个时钟节点(Sink)的延时、上升时间和下降时间,得到一个合理的时钟偏差,进而更有效地实现时序收敛。合理地调整插入的缓冲器或反相器的数量,可以优化时钟网络的功耗。

5.布线Routing:

布线是根据网表中定义的器件的逻辑连接关系,在时序和工艺的约束条件下,用金属连线实现器件的物理连接和详细布线三个步骤。由于时钟网络存在连线长,翻转率高等特点,优先进行布线。全局布线根据版图中的布线资源,按照布线轨道,进行整体的布线规划,而详细布线则根据全局布线设计的布线方法,选用合适的金属层数、金属线长度进行物理布线。

6.时序验证:

布线结束之后,使用版图参数提取工具,对实际物理版图中的连线,根据其位置和长度,获得相应的寄生电阻、寄生电容、耦合电容等信息。将这些信息反标到布局布线之后的网表中,计算出精准的互连线延时,以进行时序路径延时的检查,确定是否实现时序收敛。

7.ECO阶段:

ECO并不是后端设计中必须的阶段。一般在布线已经完成的情况下,如果需要对后端设计进行小范围的修改,可以采用ECO的方法。ECO可以分为功能ECO和时序ECO两种。功能ECO是指对电路的连接关系进行修改,而时序的ECO是指为了修复时序违例,插入缓冲器以实现时序收敛。不用重新返回后端设计之前的流程进行修改,ECO增加了设计的灵活性,可以有效地缩短设计周期。

物联沃分享整理
物联沃-IOTWORD物联网 » 深入了解数字后端流程的基本原理和流程

发表评论