| 交互式图形编辑软件是版图设计软件的早期产品,设计者借助于该软件在计算机屏幕前完成版图设计,工作量比较大。目前数字电路的版图设计已经主要依靠自动版图设计软件,但是模拟电路的版图设计(要求较高)还不得不借助于交互式图形编辑软件。 由于自动版图设计的复杂性,通常把整个设计过程分为若干子过程,示于图1.19。现在对图中所示子过程的任务解释如下: (1)划分(partition) 为了将被处理的问题规模缩小,需要把整个电路划分为若干子模块,划分过程是层次化的,即子模块还可以进一步细分。划分时考虑的主要因素有:模块的大小、模块的个数以及模块之间的连线数量等。 (2)布图规划(floorplanning)和布局(placement) 划分已经把整个电路分为若干子模块,布图规划则根据每个子模块中元件个数估算其面积,并根据其相互连接关系估计它的形状和位置,从而为整个芯片选择一个布图方案。此方案中各模块的位置还只是一个相对位置,布局的任务则是给出各模块的精确位置。由于布局时还未进行布线,因而无法对布局的质量做出精确的评价。如果布线时发现有布线不通的情况或不能满足约束条件的要求,则需要给出反馈信息返回布局,进入下一轮迭代改进过程。 (3)布线(routing) 满足约束的条件下完成各模块的连接是布线的任务。布线又可以分为总体布线(global royting)和详细布线(detailed routing)2个子任务 。总体布线完成线网的合理分配,它只是把线网分配在合理的布线区域内,而把具体连线的任务留给详细布线。把布线分为2个相关的子任务,不但简化了布线任务本身,而且提高了布线的成功率,其原因是:总体布线为线网合理分配了布线区域,避免了局部拥挤,为详细布线打下良好的基础。
|