以一个Block Level的APR为例,需要工艺库、综合输出的数据、顶层Layout的要求等。
一、工艺库,包括lib库、lef、captable、qrc等。
lib库是stdcell库,具体包括stdcell的逻辑、面积、时序、功耗等信息。lef包括tech lef和stdcell lef。tech lef是金属层定义,而stdcell lef定义了stdcell的大小、出pin位置等。captable,顾名思义是电容表格,即金属层的电容值的定义。qrc库是更准确的电容电阻寄生参数提取的库,qrc是可选的,作为captable的补充。
下面列了一下cadence和synopsys的常见库的对比。C家多是文本格式,S家多是二进制格式。
二、物理规划
物理规划是顶层对block的大小、形状、逻辑pin的方向和位置、电源pin电源环、可用金属层数、等布局上的要求。
三、综合结果
包括综合网表和综合输出的约束SDC文件。有时候是插过scan chain和(或)Memory BIST的DFT网表。综合输出的SDC有可能需要再次手工修改一部分。当然约束文件也可以由后端APR工程师自己写。在Place之前会再一次检查Timing是否有问题(timeDesign -prePlace),如果有问题需要与前端工程师确认问题原因并解决,或者修改约束,或者优化读进来的综合网表。