芯片设计中的线网分配方法与装置制造方法及图纸

技术编号:5073448 阅读:205 留言:0更新日期:2012-04-11 18:40
本发明专利技术涉及一种芯片设计中的线网分配方法与装置。该方法用于在集成电路中的信号网络之间减少或消除飞线交叉,以使得在VLSI设计中的网络分配被优化。本发明专利技术方法首先为了从至少两个起点中的每一个到至少两个终点中的每一个的路径分配成本而生成一个路径分配成本数据集;第二,生成许多列等于这些至少两个起点和许多行等于这些至少两个终点的一个价值矩阵;下一步,分配该路径分配成本数据集到该价值矩阵的每个元素,以使得从一个起点到一个终点的该路径分配成本被分配到由该起点的一列和该终点的一行所定义的一个元素;最后,通过对该价值矩阵执行一个连接路径分配优化算法来决定一个最低成本连接路径。

【技术实现步骤摘要】

本专利技术是关于一种芯片设计中的线网分配方法与装置,尤其是关于一种芯片设计 中避免飞线交叉的线网分配方法与装置。
技术介绍
在现代的集成电路设计中,一个集成电路中的一个或更多的部分被硬件描述语言 (HDL)(比如,Verilog或VHDL)来设计或描述。做为把HDL从代码文件翻译到集成电路的 结构布局的一部分,一个编译器通常会被使用来执行这样的功能。通常,一个集成电路编译 器的一个方面是执行从一个半导体装置到另一个半导体装置的信号网络的分配和绕线,在 这里这两个半导体装置组成该集成电路的一部分。在倒装芯片设计中,并行地优化网络分 配和绕线的需要是尤其重要的。在倒装芯片结构设计流程中,关键步骤之一是在倒装片驱 动器和倒装片焊点之间造成1对1的逻辑连接,其倒装片焊点一般由粘付于在半导体基片 外表面上的焊垫的焊接球来提供。这样的1对1的逻辑连接的结果的质量(QoR)或者网络 分配,直接地影响后续再布线RDUredistributed layer)阶段的布线能力,该RDL布线通 常是一种单一层布线。其中飞线交叉是一种最不想要的分配模式,因其势必会造成不可布 线的线网或不必要的弯路。以倒装芯片为例,其线网分配中关键的一步是驱动器与焊球之间一对一的逻辑连 接。如图1所示,一种用于倒装芯片的线网分配方法是先基于区域进行分隔,直到驱动器 70的数目达到一门限值或者无法再找到合适的分割线;然后每个驱动器70与其可见的最 近的焊球71匹配。接着将每两对匹配的驱动器70与焊球71进行交换,看是否可降低交叉 线或线路的长度,以进行优化。由图中可见,在一依上述方法得到的驱动器与焊球的逻辑连 接,其最初的分配结果有时无法得到后期的优化步骤得到改善。因而,该方法不能提供一全 局优化结果,在大型芯片设计中极易造成很差的线网分配的QoR ;影响后续单层布线的布 通率,导致开放线网或绕线等。鉴于上述问题,业界亟需一种理想的线网分配技术方案,尽可能的避免飞线交叉, 有利于后期的布线。
技术实现思路
本专利技术的目的在于提供一种芯片设计中的线网分配方法与装置,其可将线网中的 一器件唯一的分配给相应的另一器件而不会引起飞线交叉。本专利技术提供一线网分配方法,其将m个焊球分配给η个驱动器,且包含如下步骤 建立一成本矩阵,该成本矩阵中的各元素为将该m个焊球中每一个分别连接至该η个驱动 器的线路长度;找出该成本矩阵中每一行的最小元素,由其所在行的各元素中减去该最小 元素得一结果矩阵;找出该结果矩阵中每一个零值,如该零值所在行包含一第一标识零则 对该零值不作处理,否则将该零值标识为第一标识零;检查该结果矩阵中包含该第一标识 零的列是否达到η列,如达到则分配结束;否则对该结果矩阵继续进行处理,直到其包含该第一标识零的列达到η列。在一实施例中,该线路长度是一焊球与一驱动器间的欧几里德距离与曼哈顿距离 的和。该对该结果矩阵继续进行处理,直到其包含该第一标识零的列达到η列的步骤进一 步包含步骤a 以一第二标识标记包含该第一标识零的列;步骤b 检查未被第二标识标 记的行或列中是否有一零值如有,在步骤c以一第三标识将该零值标记为第三标识零;如 无,则在步骤d找出所有未被该第二标识标记的行或列中的最小值,并将其从各未被第二 标识标记的列中的各元素减去,然后返回步骤b。在该步骤c之后进一步包含检查该第三 标识零所在的行有没有包含第一标识零,如没有则在步骤e依一构建规则选择出第一标识 零与第三标识零;否则在步骤f以该第二标识标记该包含第三标识零的行,并去掉包含该 第一标识零的列的第二标识。在步骤f之后进一步包含步骤h,检查未被第二标识标记的 行或列中是否还有一零值,如有则继续步骤c,否则执行步骤g找出未被第二标识标记的行 或列中的最小值,将其加至被第二标识标记的各行的各元素,然后将其自未被第二标识标 记的各列的各元素中减去,并返回步骤b。该构建规则是ZO代表步骤c中发现的所在行中 没有第一标识零的第三标识零,Zl代表ZO所在列中的第一标识零,Z2表示Zl所在行中的 第三标识零;继续该构建规则直到一第三标识零所在列没有第一标识零时终止。在步骤e 之后去掉依该构建规则选择出的第一标识零的第一标识,将各第三标识零修改为第一标识 零,并去掉该结果矩阵中所有由第二标识标记的各行或列;然后返回该检查该结果矩阵中 包含该第一标识零的列是否达到η列的步骤。分配结束时该第一标记零所在的位置描述该 η个驱动器与m个焊球间的唯一分配关系。本专利技术还提供一线网分配装置,其将m个焊球分配给η个驱动器,且包含一成本 矩阵构建单元;建立一成本矩阵,该成本矩阵中的各元素为将该m个焊球中每一个分别连 接至该η个驱动器的线路长度;一结果矩阵构建单元;找出该成本矩阵中每一行的最小元 素,由其所在行的各元素中减去该最小元素得一结果矩阵;一分配单元;找出该结果矩阵 中每一个零值,如该零值所在行包含一第一标识零则对该零值不作处理,否则将该零值标 识为第一标识零;一分配结果检查单元,检查该结果矩阵中包含该第一标识零的列是否达 到η列,如达到则分配结束;否则通知该分配单元对该结果矩阵继续进行处理,直到其包含 该第一标识零的列达到η列。本专利技术的芯片设计中的线网分配方法与装置,唯一确定线网中相应器件间的分配 关系,避免飞线交叉的问题。并获得全局优化的设计结果,提高后续单层布线的布通率。附图说明图1是一现有线网分配方法的分配结果示意图;图2是根据本专利技术线网分配方法一实施例的流程图;图3是根据图2中本专利技术线网分配方法中步骤12的流程图;图4是根据图2中本专利技术线网分配方法中步骤16的流程图;图5-7显示了本专利技术的网络分配方法的流程图;图8-9举例说明了本专利技术的具体实施方式;图10是根据本专利技术线网分配方法进行分配的焊球与驱动器的位置示意图;图11是根据本专利技术线网分配方法分配图10中焊球与驱动器的成本矩阵;图12-14是根据本专利技术线网分配方法分配图10中焊球与驱动器过程中的不同阶 段产生的结果矩阵;图15是根据本专利技术的线网分配装置的示意图;图16是根据本专利技术线网分配装置分配的焊球与驱动器位置关系建立的成本矩 阵;图17- 是根据图16中焊球与驱动器的成本矩阵在分配过程中产生的结果矩阵。 具体实施例方式为便于更好的理解本专利技术的精神,以下结合本专利技术的优选实施例对其作进一步说 明。本专利技术是关于一种在芯片设计中避免飞线交叉的线网分配方法与装置,其可保证 器件间,如驱动器与焊球,一一匹配的全局优化。本专利技术还可应用于分裂焊垫设计(split bond pad design),及立体IC设计(3D IC design)中的硅导穿孔(Through-Silicon_Via,TSV)与焊球单元(bumpcell)匹配问题。根据本专利技术,在一芯片设计中将m个焊球分配给η个驱动器(n < = m),使所有的 驱动器与其相应的焊球间具有最小距离,避免飞线交叉问题。同时,在线网分配时,还会给 线路较短的0°或90°线网较线路较长的45°线网更高的优先权,使整体的线路都较短。如图2所示,根据本专利技术的一实施例,该将m个焊球分配给η个驱动器的方法,其 首先在步骤10中构造一个nXm的成本矩阵,其中该成本矩阵中的各元素为将一焊球连 接至一驱动器的线路长度,具体本文档来自技高网
...

【技术保护点】
一种线网分配方法,将m个焊球分配给n个驱动器,且包含如下步骤:建立一成本矩阵,该成本矩阵中的各元素为将该m个焊球中每一个分别连接至该n个驱动器的线路长度;找出该成本矩阵中每一行的最小元素,由其所在行的各元素中减去该最小元素得一结果矩阵;找出该结果矩阵中每一个零值,如该零值所在行包含一第一标识零则对该零值不作处理,否则将该零值标识为第一标识零;检查该结果矩阵中包含该第一标识零的列是否达到n列,如达到则分配结束;否则对该结果矩阵继续进行处理,直到其包含该第一标识零的列达到n列。

【技术特征摘要】

【专利技术属性】
技术研发人员:张一帆
申请(专利权)人:新思科技上海有限公司
类型:发明
国别省市:31[中国|上海]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1