显示了物理原型和终
芯片设计(580000个单元、620000条连线、五层布线芯片)的标准延迟格式(SDF)相关性。图中的纵坐标轴表示连线的数目,横坐标轴表示了物理设计原型和终芯片设计生成SDF值不同的百分比。
完成时序封闭性的一个步骤是执行In Place Optimation(IPO)。IPO通过增加、减少和插入
缓冲器和重复单元来得到的时序结果。IPO需要在顶层模块进行以保证在子模块边缘的时序封闭性。
性能数据
采用物理原型方法主要的优点是每迭代的反馈速度。在传统的设计流程中,物理设计的可行性分析需要在布局布线完成后通过终验证得到,整个反馈过程需要若干天。而采用原型设计工具只需要几个小时就可以对大容量的芯片物理设计进行验证。物理原型阶段包括布局、预布线、RC参数提取、延迟计算、静态时序分析和时序优化等。
物理原型创建过程中消耗时间的步骤是布局和时序分析阶段。高性能的工具能够在一台标准的工作站上创建两百万单元(大约一千万门)或更大容量的物理原型,如表1所示。
Handoff模型
物理原型的创建通常应该由前端的逻辑设计工程师来承担,只要原型设计工具能够提供很好的易用性,前端设计工程师就可以承担布图规划和布局等传统设计方法中由后端物理设计工程师完成的设计任务。在这样的前提下,设计工程师小组就可以在前端设计工程师和后端设计工程师之间采用不同的交接handoff模型。
传统的Handoff模型仅仅需要网表和时序约束文件。在深亚微米(DSM)设计中由于网表不含有任何物理设计信息,这样的Handoff模型只会在前端和后端设计工程师之间形成多次迭代。由于后端的迭代耗费时间很长,而且后端设计资源(设计工具和设计工程师)十分有限,设计的总成本会大大增加。
如图5所示,在深亚微米(DSM)设计中广泛采用了两种新的模型。在左边显示的"设计流程1"中,布图规划是由前端设计工程师利用物理原型环境生成的。布图规划信息验证了物理设计的网表并把"结构"设计信息从前端设计工程师传递到后端设计工程师。布图规划为后端设计工程师进行物理设计实现提供了一个很好的起始点。这可以大大减少实现时序封闭性所需的迭代次数。
图5中第二种Handoff模型是把布局任务也放到前端设计中,这在前端和后端设计工程师之间增加了物理设计可行性的沟通,从而在后端实现更快的时序封闭性。
用户数据-
处理器 我们提供的测试数据是一个处理器的设计。下面是这个设计的主要统计数据:
●设计大小:十万个可布局单元,26个宏,十九万线网表
●读自GDSII的物理库
●由Apollo.tf文件创建的工艺文件
●从以下文件读出的时序信息:
Synopsys.lib
芯片级时序约束(PrimeTime)
●从层次化Verilog读入网表
●宏布局(布图规划)、管脚布局和从AvantApollo导人的PG strap数据
物理实现的步骤是:
●与Apollo的
接口:从Apollo导人
电源布线和布图数据
●从Apollo得到单元footprint信息并通过script转换到First Encounter格式
●时序驱动的布局
●预布线
● RC参数提取
●时序分析
●IPO:增加缓冲器、扇出优化、跳变固定
●时钟树综合:
终的时钟树布线是在Apollo中完成,为了保证Apollo能够识别由FE创建的时钟树,由FE生成专门文件并传送到Apollo。
●层次化的设计流程
●层次化的时钟树综合
●First Encounter的执行时间也非常有竞争力,如表2所示。
First Encounter和现有的其它后端设计流程具有如下的时序相关性:
●为了用Star-RCXT调整RC数据,它们使用了来自Apollo相同的布局
●比较由sign-off延迟计算生成的SDF和由FE生成的SDF
●支持SDC并满足FE时序分析和PrimeTime关键路径的要求
在下面的步骤中对时序延迟、SDC覆盖和静态时序分析都进行了分析。分析对FE时序分析和来自Star-RCXT的PrimeTime+DSPF进行丁比较:
1) 检查一些关键时序路径:与PrimcTime结果的比较表明了良好的相关性.
2)选择同样的关键路径
3)每个单元的延迟有50皮秒的差别
4)在IPO之后,在坏情况下的时序差别测量为-0.8 ns.
在有Apollo的设计中运行时钟树综合。它花费了8个小时完成-厂一个500时钟skew。
币i用FE仅仅需要15分钟就完成厂400psskew。
FE:包括布局布线、IPO和时钟树综合加上Apollo布线。需要指出的是没行用到重综合。
PC:网表到布局优化加Apollo布线.Apollo:布局布线;无优化的预布线.
我们对First Encounter、Synopsys的Physicai Compiler(PC)和Avant的Apollo进行了性
能比较,结果表明FE产品能够节省大量的时间,具有很强的竞争力。我们估计First Encounter可以完成大多数模块的时序封闭性问题,迭代次数将更少。First Encounter和Apollo之间的接口有下面两种方法:(a)First Encounter创建的布局数据被Apollo成功地导人并进行布线。(b)Apollo创建的布局、电源布线信息、footprint文件和输入输出管脚分配信息可以被First Encounter读入。PDEF和约束文件可以作为PC的输入,叮以正确地完成布局任务。