用于在管芯尺寸优化期间缩放i/o单元布置的设备的制作方法

文档序号:6591751阅读:153来源:国知局
专利名称:用于在管芯尺寸优化期间缩放i/o单元布置的设备的制作方法
技术领域
本公开内容主要地涉及用于设计和制造集成电路(ic)的技术。具体而言,本实用新型涉及一种用于在管芯尺寸改变时修改IC管芯中的输入/输出(下文称为"I/0")单元
布置的方法和设备。
背景技术
半导体集成电路(IC)技术的显著改进目前使得有可能将数以亿计的晶体管集成到单个半导体ic芯片上。已经主要通过近来已经实现超深亚微米特征尺寸的半导体制造
技术中的对应改进来实现集成密度的这些改进。在相反的方面上,朝着不断减少特征尺寸
方向的持续努力导致了 ic制造成本的显著增加。 —种用以减轻越来越多的IC制作成本的方式是使用最小可行管芯尺寸来实现设计规格。例如, 一些芯片布局工具可以自动分析IC设计约束并且标识用于流片的最小可布线管芯尺寸。取而代之,设计者可以人工探索最小可行管芯尺寸。 在探索IC设计的最小可行管芯尺寸的同时,设计者需要用以在维待I/0单元的原边、相对顺序和对准的情况下将所有原有1/0焊盘(pad)和其它1/0单元重新配合到不同
的收縮或者扩展管芯边界中的工具。常规上,通过在某些设计约束之下根据原有1/o布置
进行新的基于逐个单元的布置过程来实现这一点。然而,这一"重新布置"技术具有诸多限
制,比如原有设计约束并不适合于改变的管芯尺寸、不能操纵I/O区域内的宏单元、不能操纵多个I/O环以及不能操纵直线形I/O单元。 因此,需要的是一种在管芯尺寸优化期间无上述问题的I/O单元重新布置技术。
实用新型内容根据本实用新型的一方面,提供一种在管芯尺寸优化期间縮放I/O单元布置的设备。该设备可以包括接收装置,配置成接收用于管芯的初始管芯尺寸和用于一组I/0単元的初始1/0单元布置,其中接收装置还被配置成接收用于管芯的目标管芯尺寸;确定装置,配置成确定在初始管芯尺寸与目标管芯尺寸之间的管芯尺寸改变;标识装置,配置成标识在初始I/0单元布置中的一组I/0单元之间的可用空间;以及縮放装置,配置成基于标识的可用空间和管芯尺寸改变来縮放初始1/0单元布置,由此获得配合目标管芯尺寸的新I/O单元布置。 根据本实用新型的一个实施例,该确定装置包括宽度和高度改变确定装置,用于确定管芯的宽度改变和高度改变。 根据本实用新型的一个实施例,该标识装置包括用于独立标识用于管芯的各边的一行1/0单元中的可用空间的可用空间标识装置。 根据本实用新型的一个实施例,该可用空间标识装置包括各对相邻1/0单元之间可用空间标识装置,用于标识一行I/0单元中的各対相邻I/0单元之间的可用空间;以及
计算装置,用于通过将一行i/o单元中的可用空间求和来计算管芯的所述边上的总的可用空间。 根据本实用新型的一个实施例,所述各对相邻I/O单元之间可用空间标识装置包括用于从成对相邻1/0单元之间的距离减去最小空间要求的减去装置。[0011] 根据本实用新型的一个实施例,该縮放装置包括用于独立縮放管芯的各边上的所述I/O单元布置的I/O单元布置縮放装置。 根据本实用新型的一个实施例,所迷I/0单元布置縮放装置包括用于基于在沿着所述管芯的边的方向上的管芯尺寸改变的符号来确定縮放模式的确定装置;以及用于将一行1/0单元中的成对相邻1/0单元之间的每一个空间縮放与对应可用空间成比例的量的縮放装置;其中用于一行1/0单元的縮放的总的量等于管芯尺寸改变。 根据本实用新型的一个实施例,所迷I/0单元布置縮放装置包括用于基于在沿着管芯的所述边的方向上的管芯尺寸改变的符号来确定縮放模式的确定装置;以及用于将一行I/O单元中的成对相邻I/O单元之间的每一个空间縮放相等的量的縮放装置;其中用于一行1/0单元的縮放的总的量等于管芯尺寸改变。 根据本实用新型的一个实施例,所迷I/0单元布置縮放装置包括用于基于在沿着所述管芯的边的方向上的管芯尺寸改变的符号来确定縮放模式的确定装置;以及用于如果管芯尺寸改变为负并且具有比管芯的所述边上的总可用空间更大的值,则通过将所有可用空间减少至零来縮放在一行1/0单元中的成对相邻1/0单元之间的空间的縮放装置。[0015] 根据本实用新型的一个实施例,如果初始I/O单元布置是多环I/O单元布置,则所述设备还包括用于独立縮放多环I/O单元布置的各环的縮放装置;或者用于在维持1/O单元的多个环之间的对准的同时协同縮放所述多环1/0单元布置中的1/0单元的多个环的縮放装置。 根据本实用新型的一个实施例,所述一组1/0单元包括1/0焊盘;包括多个I/O管脚的1/0单元;宏单元;布置阻断;以及填充物单元。

图1图示了在设计和制作集成电路时的各种步骤。 图2A图示了具有给定管芯尺寸和双环I/O单元布置的IC芯片。 图2B图示了包括双环I/O单元结构和宏单元的I/O单元布置。 图3图示了根据本实用新型一个实施例的与一行1/0单元关联的示例距离和可用空间。 图4A图示了根据本实用新型一个实施例的用于为包括两边对准I/O环的示例1/0单元布置标识共用空间的过程。 图4B图示了根据本实用新型一个实施例的用于为包括两个交错I/O环的示例1/0单元布置标识共用空间的过程。 图5呈现了对根据本实用新型一个实施例的縮放I/0单元布置以为管芯尺寸改变而进行调节的过程进行图示的流程图。 图6图示了根据本实用新型一个实施例的在管芯的拐角中由于縮放管芯的两个邻边所致的潜在冲突状况。 图7呈现了对根据本实用新型一个实施例的在使用縮放技术以改变I/0单元布置以为管芯尺寸改变而进行调节的同时进行管芯尺寸探索的过程进行图示的流程图。 图8图示了根据本实用新型一个实施例的在管芯尺寸优化期间縮放1/0单元布置
的设备。
具体实施方式呈现以下描述以使本领域技术人员能够实现和利用本实用新型,并且在特定应用及其要求的背景下提供该描述。本领域技术人员将容易清楚对公开的实施例的各种修改,并且这里限定的一般原理可以适用于其它实施例和应用而不脱离本实用新型的精神实质和范围。因此,本实用新型不限于所示实施例而是将被赋予以与权利要求一致的最广范围。[0028] 在本具体实施方式
中描述的数据结构和代码通常存储于计算机可读存储介质上,该介质可以是能够存储用于由计算机系统使用的代码和/或数据的任何设备或者介质。这包括但不限于易失性存储器、非易失性存储器、磁和光存储设备(比如盘驱动、磁带、cd(压縮盘)、dvd(数字通用盘或者数字视频盘)或者现在已知或者以后开发的能够存储计算机可读介质的其它介质。[0029] 誠电路i殳i備罕 图1图示了在设计和制作集成电路时的各种步骤。该过程从使用电子设计自动化(eda)软件设计处理(阶段110)来实现的产品构想(阶段100)的生成开始。当设计定稿时可以流片(t即-out)(阶段140)它。在流片之后,完成制作处理(阶段150)并且进行封装和组装处理(阶段160),这些处理最终产生成品芯片(阶段170)。 eda软件设计处理(阶段110)又包括下文描述的阶段112-130。注意本设计流程描述仅用于示例目的。本描述并不意味着限制本实用新型。例如,实际集成电路设计可能要求设计者以与这里描述的序列不同的序列进行设计阶段。以下讨论提供设计处理中的进
一步细节。 系统设计(阶段112):设计者描述将要实施的功能。他们也可以进行如果-怎么样(what-if)的规划以精化功能并且检验成本。硬件-软件架构划分可以出现在这一阶段。可以在这一阶段使用的来自synopsys公司的示例eda软件产品包括
model ARCHITECT 、 SABER 、 system STUDIO⑧和DESIGNWARE⑧产
PI
PR o 逻辑设计和功能验证(阶段114):在这一阶段,编写用于系统中的模块的vhdl或者Verilog代码,并且检验该设计的功能准确性。具体而言,检验该设计以保证它产生正确输出。可以在这一阶段使用的来自synopsys公司的示例eda软件产品包括VCS⑧、
VERA 、 DESIGNWARE 、 MAGELLAN 、 FORMALITY 、 ESP
和LEDA⑧产品。 合成和测试设计(阶段116):这里,将VHDL/Verilog转译成网表。可以针对目标技术优化网表。此外,可以设计和实施测试以检验成品芯片。可以在这一阶段使用的来自syn0psys公司的示例eda软件产品包括design COMPILER 、
physical COMPILER 、 test COMPILER , power COMPILER 、fpga COMPILER 、TETRAMAX⑧和DESIGNWARE⑧产品。 网表验证(阶段118):在这一阶段,检验网表与时序约束的相符性和与vhdl/Verilog源码的对应性。可以在这一阶段使用的来自SYN0PSYS公司的示例EDA软件产品包
括FORMALITY⑧、PRIMETIME⑧和VCS⑧产品。 设计规划(阶段120):这里,构造和分析用于芯片的整个布局以便进行定时和顶 层布线。可以在这一阶段使用的来自SYN0PSYS公司的示例EDA软件产品包括ASTRO⑧
和icCOMPILER⑧产品。 物理实施(阶段122):在这一阶段出现布置(对电路元件的定位)和布线(对 电路元件的连接)。可以在这一阶段使用的来自SYN0PSYS公司的示例EDA软件产品包括
ASTRO⑧和icCOMPILER⑧产品。 分析和提取(阶段124):在这一阶段,在晶体管级验证电路功能;这又允许如 果-怎么样的精化。可以在这一阶段使用的来自SYNOPSYS公司的示例EDA软件产品包括
ASTRORAIL 、PRIMERAIL⑧、PRIMETIME⑧和starrc/XT⑧产品。 物理验证(阶段126):在这一阶段,检验设计以保证制造、电问题、光刻问题和 电路的正确性。可以在这一阶段使用的来自SYNOPSYS公司的示例EDA软件产品包括
HERCULES⑧产品。 分辨率增强和光刻规则检验(LRC)(阶段128):这一阶段涉及到对版图的几何形 状操控以提高设计的可制造性并且涉及到光刻可印刷性检验。可以在这一阶段使用的来自
synopsys公司的示例eda软件产品包括PROTEUS⑧、PROTEUS af和SiVL⑧
A 口 广PR o 掩模数据预备(阶段130):这一阶段提供用于产生掩模以产生成品芯片的流片数 据。可以在这一阶段使用的来自SYN0PSYS公司的示例EDA软件产品包括CATS⑧系列产
PR o 可以在一个或者多个上述步骤期间利用本实用新型的实施例。具体而言,可以在 设计规划步骤120和物理实施步骤122期间利用本实用新型的一个实施例。 fi^ 为了减少IC制作成本,IC设计者在IC设计的芯片布局阶段以及布置和布线阶段 期间在设计约束之下例行探索最小可行管芯尺寸。下文也将这一最小管芯尺寸探索过程称 为管芯尺寸优化过程。在管芯尺寸优化过程开始时,各IC设计具有将要变化的初始管芯尺 寸(即高度X宽度)以及需要在优化期间维持的整体结构的1/0单元布置。这一整体结 构可以包括多个I/0单元布置性质,这些性质可以包括但不限于所有I/0单元的原边(在 管芯中)、1/0单元的相对顺序、在1/0单元之间的对准以及1/0单元的多环结构。在管芯
尺寸优化期间,管芯尺寸优化工具修改i/o单元布置以配合新管芯尺寸而又维持i/o单元
布置的整体结构。 本实用新型的一个实施例提供一种用于在管芯尺寸改变时确定新1/0单元布置 的技术。具体而言,本技术基于管芯尺寸改变的量、在原1/0单元之间的可用空间以及具体 縮放函数,来进行对原I/0单元之间空间的一维(1D)縮放而不是一次一个单元地重新布置 I/O单元。在本实用新型的一个实施例中,将I/O单元布置分割成一次一边(例如一行1/ 0单元)单独进行縮放的四边。在I/0单元縮放之后,获得新I/0单元布置,该新布置以与 原1/0单元布置配合原管芯尺寸相同的方式配合新管芯尺寸。因而,这一 1/0单元縮放技
术(下文称为"縮放技术")可以自动维持原1/o单元的边和相对顺序以及用于多1/o环设计的1/0环结构。另外,本技术有助于操纵对于常规1/0单元布置技术而言有难度的宏单 元和其它复杂成形的I/O单元。在一些实施例中,縮放技术也遵守最小I/O单元间隔要求 和其它1/0单元布置约束。 1/0单元布置 图2A图示了具有给定管芯尺寸和双环I/O单元布置的IC芯片200。 如图2A中所示,IC芯片200的管芯尺寸由X维度上的宽度W和Y维度上的高度H
限定。沿着IC芯片200的芯片边界204配合I/O单元布置202。具体而言,I/O单元布置
202在IC芯片200的所有四边上包括两行I/O单元,由此形成双环结构。 注意各1/0单元由定界框(即单元边界)和在IC芯片200内的具体位置限定,例
如矩形单元206和208。然而,定界框的形状不限于矩形而是可以具有更复杂的几何形状。
结合图2B更具体地讨论这样的I/O单元。注意I/O单元如单元206被广义地限定并且不
限于I/0焊盘或者与I/0有关的对象。在本实用新型的一些实施例中,1/0单元布置中的
1/0单元可以包括但不限于用于跨越芯片边界耦合信号的I/0焊盘;包含多个I/0管脚的
1/0单元;通常具有更大尺寸、复杂几何形状并且常常与复杂功能关联的宏单元;在芯片边 界内限定禁止区域的布置阻断;以及填充物单元。另外,尽管图2A将所有1/0单元图示为 相互分离,但是在其它实施例中, 一些I/O单元可以与邻近单元部分地重叠。 注意尽管图2A中的1/0单元布置202包括两个环,但是在其它实施例中,I/O单 元布置可以包括更少或者更多数目的1/0单元环。在一些实施例中,管芯的各边具有与相 同管芯的另一边不同的一行或者多行I/0单元。也注意尽管图2A图示了 1/0单元数目相 同的两行I/0单元,但是其它多环布量可以在各环中具有不同数目的1/0单元。因此,I/O 单元布置202仅用于示例目的,而本技术可以应用于具有任意配置的I/O单元布置的芯片 版图。 图2B图示了包括双环I/O单元结构和宏单元212的I/O单元布置210。如图2B 中所示,宏单元212具有比其它I/O单元明显更大的六边形定界框并且占据跨越两个I/O 环的区域。 縮放I/O单元布置 本实用新型的实施例使用縮放技术以改变现有1/0单元布置中的对象之间的空 间,从而新I/O单元布置以与原I/O单元布置配合原管芯尺寸相同的方式配合新管芯尺寸。 在一个实施例中,这一縮放操作一次縮放I/0区域的一边。对于各边,縮放操作是 在一个维度上造成改变的1D操作。在一个实施例中,这样的縮放改变在与管芯的被縮放的 边平行的维度上出现。参照图2A,注意对于沿着IC芯片200的左边或者右边(即Y维度) 布置的I/O单元,根据管芯尺寸的高度H的改变在Y维度上发生縮放,而关联I/O单元的X 坐标根据新管芯尺寸的X坐标的改变简单地移位相同的量。另一方面,对于沿着IC芯片 200的底边或者顶边布置的I/O单元,根据管芯尺寸的宽度W的改变在X维度上发生縮放, 而关联I/O单元的Y坐标根据新管芯尺寸的Y坐标的改变简单地移位相同的量。虽然縮放 操作改变I/O单元之间的空间,但是在一些实施例中,I/O单元的尺寸和形状是固定的。 另外,縮放操作考虑一组I/0单元布置约束。这样的约束可以包括但不限于在相 邻1/0单元之间的最小间隔约束、在1/0单元之间的相对位置约束、在1/0单元与芯片边界 之间的相对位置约束以及要求单元边界或者管脚在希望的网格上这一约束。[0056] 在本实用新型的一个实施例中,在1/0单元布置的各边上的縮放涉及到收縮或者 扩展位于这一边上的1/0单元之间的空间。将两个相邻单元之间的距离定义为两个相邻1/ O单元边界之间的距离。还将可用空间定义为两个相邻1/0单元之间可用于在縮放操作期 间改变的空间。 图3图示了根据本实用新型一个实施例的与一行1/0单元关联的示例距离和可用 空间。具体而言,1/0单元布置的一边包括四个相邻1/0单元302、304、306和308。这一 I/O单元布置受制于该布置的各边上的成对相邻I/O单元之间的最小间隔为2微米这一设 计约束。如图3中所示,在I/O单元302与1/0单元304之间的距离为5微米,在I/O单元 304与I/O单元306之间的距离为2微米,而在I/O单元306与I/O单元308之间的距离为 3微米。因此,在I/O单元302与304之间的可用空间为5-2 = 3微米,在单元304与306 之间的可用空间为2-2 = 0微米,而在单元306与308之间的可用空间为3-2 = 1微米。 注意零可用空间表明不能进一步减少对应成对I/O单元之间的距离。这一约束仅 影响使管芯尺寸收縮的縮放操作。换而言之,在縮放操作期间仅能收縮非零可用空间。 注意对于1/0单元布置的各边,可以将总可用空间定义为成对相邻1/0单元之间 的单个可用空间之和。例如,在I/O单元302与308之间的总可用空间等于3+0+1 = 4微 米。 在本实用新型的一个实施例中,縮放I/O单元布置的各边涉及到基于在这一边上 的标识可用空间、在这一边上的总可用空间以及沿着这一边的管芯尺寸改变来收縮或者扩 展1/0单元之间的空间。具体而言,对于给定边,如果目标管芯尺寸小于原管芯尺寸,则縮 放操作为收縮操作。如果目标管芯尺寸大于沿着这一边的原管芯尺寸,则縮放操作为扩展 操作。虽然1/0单元布置的对边总是具有同类縮放操作,但是I/0单元布置的邻边可以具 有不同类型的縮放操作。然而在所有情况下,在原管芯尺寸与目标管芯尺寸之间的管芯尺 寸差异确定在縮放操作期间的收縮或者扩展的总的量。 具体而言,当给定目标管芯尺寸时,可以基于目标管芯尺寸的宽度和高度与原管 芯尺寸的宽度和高度之差来确定收縮或者扩展的总的量。在本实用新型的一个实施例中, 将I/O单元布置的给定边上的各可用空间收縮/扩展具体的量,使得在这一边上的所有可 用空间之间的收縮/扩展的总的量基本上等于沿着这一边的目标管芯尺寸与原管芯尺寸 之差。 在图2A的例子中,如果目标管芯尺寸的宽度(W)比原管芯尺寸的宽度小200微 米,则縮放操作为收縮操作,并且芯片的底边和顶边上的1/0单元的可用空间的收縮的量 基本上等于200微米。然而,如果在I/O单元布置的底边或者顶边上的总可用空间少于200 微米,则最大收縮的量因此基本上等于针对该边计算的总可用空间而不是200微米。 在縮放操作期间,不同縮放函数可以用来縮放个体可用空间。在一个实施例中,系 统通过将各可用空间收縮/扩展与该可用空间成比例的量来縮放一组可用空间。在另一实 施例中,系统通过将各可用空间收縮/扩展相等的量来縮放一组可用空间。在又一实施例 中,系统通过根据非线性比例关系收縮/扩展各可用空间来縮放一组可用空间。在这一实 施例中,尽管縮放函数形式可以不同,但是縮放函数保证更大可用空间比更小可用空间接 收更大改变。在各上述实施例中,用于在1/0单元布置的各边上的1/0单元的縮放的总的 量基本上等于在该维度上的管芯尺寸的改变。[0064] 在本实用新型的一个实施例中,如果在原1/0单元布置的一边上的总可用空间少 于在该维度上的目标管芯尺寸的管芯尺寸减少,则系统将该边上的所有可用空间縮放成 零。通过将所有可用空间縮放成零,縮放操作在维持1/0单元布置约束的同时实现最小可 能管芯尺寸。这一实施例获得针对在一个或者两个维度上的管芯尺寸的最小界限,该最小 界限可以用来在管芯尺寸探索期间局限搜索范围。 注意上述用于縮放单行I/O单元的技术可容易地应用于縮放多环I/O单元布置, 比如图2A和2B中所示布置。具体而言,对于多环1/0单元布置,縮放操作也一次对多环1/ O单元布置的一边进行操作。对于各边,縮放操作仍然是在与縮放单环1/0单元布置相同的 方向上改变空间的1D操作。基于预定设计约束,系统可以在维持原布置中的环之间1/0单 元对准的縮放操作或者忽略原布置中的环之间1/0单元对准的另一縮放操作之间选择。结 合图4A和图4B更具体地描述这两个选项。 在本实用新型的一个实施例中,为了维持不同环之间的单元对准,将1/0单元布 置的一边上的所有环一起縮放。具体而言,在縮放之前,系统标识多环结构内的"共用空 间",其中共用空间是所有环共享的空间。 图4A图示了根据本实用新型一个实施例的用于为包括两边对准I/O环402和404 的示例I/O单元布置400标识共用空间的过程。在图4A中,标识的空间是环402中的 406、408和410以及环404中的412、414和416。在环402与环404之间的共用空间是空 间412、414和416,因为它们也分别由环404中的对应空间406、408和410共享。 另外,图4B图示了根据本实用新型一个实施例的用于为包括两个交错I/O环422 和424的示例1/0单元布置420标识共用空间的过程。在本例中,共用空间是空间426-432, 因为它们是两个环422和424共享的空间。注意一般可以通过对单元之间的所有空间进行 AND运算来发现多个环共享的共用空间。 —旦标识共用空间,可以通过根据针对縮放单行I/O单元布置描述的相同过程縮 放一组共用空间来对多环结构的所有环进行縮放操作。在本实用新型的一个实施例中,将 这些共用空间视为在单环场景中描述的"距离",并且随后从共用空间标识可用空间。 在一个替代实施例中,当忽略原I/O单元布置中的环之间的单元对准时,系统单 独縮放多环结构中的各环,因此单行縮放技术适用于多环结构中的各环。例如在图4A中, 系统基于一组空间406-410来縮放环402并且基于一组空间412-416来单独縮放环404。 因而,可能改变环402与404之间的原对准。 注意两种多环縮放技术将I/O单元保持于它们的原I/O环中并且维持I/O单元的 相对顺序和边。 注意上述縮放技术有效地解决在重新布置可以跨越多个环延伸的宏单元(比如 图2B中的单元212)时涉及到的复杂性。这是因为縮放操作可以将复杂宏单元在各环中的 部分作为规则单元来单独处理而不是将整个宏单元作为整体来对待。 用于縮放I/O单元布置的过程 图5呈现了对根据本实用新型一个实施例的縮放I/0单元布置以为管芯尺寸改变 进行调节的过程进行图示的流程图。 在操作期间,系统接收初始IC设计,该IC设计包括初始管芯尺寸(即管芯的原宽 度和高度)以及用于一组I/O单元的初始I/O单元布置(步骤502)。注意一组I/O单元可以包括但不限于I/O焊盘、包含多个I/O管脚的I/O单元、宏单元、布置阻断、填充物单元 和其它类型的I/0单元。另外,系统接收目标管芯尺寸(即管芯的目标宽度和高度)(步骤 502)。系统随后确定从初始管芯尺寸到目标管芯尺寸的宽度改变和高度改变(步骤504)。 系统然后将初始I/O单元布置分割成不同I/O布置区域(步骤506)。具体而言, 系统根据芯片边界的四边将I/O单元布置分割成四边。 接着,系统标识I/O单元布置的各边内的所有I/O单元(步骤508)。对于各标识 的I/O单元,系统记录单元的位置(即X和Y坐标)和单元的几何形状。 注意有时也可以将1/0单元布置的一边上标识的一个或者多个1/0单元标识为在 1/0单元布置的另一边内。1/0单元布置的两个邻边"共享"的这样的1/0单元通常位于拐 角(即拐角单元)中或者两边交会的管芯拐角附近。在本实用新型的一个实施例中,这样 的I/O单元仅与两边之一一起縮放,而不是与I/O单元布置的两边一起縮放。具体而言,当 将I/O单元标识为由两边共享时,系统然后确定这一 I/O单元与两边中的哪一边更紧密地 关联(例如基于与对应芯片边界的距离t。)。接着,I/O单元仅与I/O单元与之更紧密有关 的边一起縮放。另外,相同单元变成对该单元与之关联紧密性较少的另一边进行的縮放操 作的约束。结合图6描述一个涉及到这样的单元的例子。 基于记录的单元信息,系统然后标识I/0单元布置的各边内的可用空问并且还获 得用于I/O单元布置的各边的总的可用空间(步骤510)。 接着,系统一次一边地基于标识的可用空间、总的可用空间和管芯尺寸改变来确 定对可用空间的改变(即收縮或者扩展)(步骤512)。对于各边,縮放操作是在与该边平行 的方向上的1D縮放。具体而言,系统根据预定縮放关系(比如以可用空间的量为依据的线 性比例縮放或者针对所有可用空间的等量縮放)来改变可用空间。在一些实施例中,由于 縮放所致的对所有可用空间的改变的总的量基本上等于在该维度上的管芯尺寸的改变。然 而,如果总的可用空间少于对应管芯尺寸的改变并且縮放是收縮操作,则系统将所有可用 空间縮放成零,并且縮放操作在这一边上实现最小可能管芯尺寸。 在确定对可用空间的改变之后,系统然后根据确定的改变来计算和记录一组1/0 单元的新坐标,由此获得更新的I/O单元布置(步骤514)。 注意尽管可以独立修改I/O单元布置的各边,但是在管芯的拐角中的邻边之间的 干扰可能在縮放操作涉及到收縮可用空间时出现。图6图示了根据本实用新型一个实施例 的在管芯的拐角中由于縮放管芯的两个邻边所致的潜在冲突状况。具体而言,当独立縮放 边604上的空间602 (在I/O单元610与固定拐角单元614之间)并且减少边608上的空 间606 (在I/O单元612与固定拐角单元614之间)时,边604上的I/O单元610可能变得 与边608上的1/0单元612重叠或者变得与之太近。在本实用新型的一个实施例中,系统 可以在縮放操作期间检测这样的冲突。通常,当两个拐角1/0单元之间的距离(例如单元 610与612之间的距离616)少于设计规则指定的最小空间时可以检测到冲突。 一旦检测到 冲突,可以采取补救行动,这可以涉及将一边或者两边的空间改变进行倒退直至去除重复 状况并且满足最小空间规则。注意系统也可以在縮放之前将优先级值分配给各边并且随后 使用优先级值以确定縮放顺序以及如果冲突出现的倒退顺序。 在倒退以解决冲突之后,系统可以随后确定在管芯的拐角附近的一个或者多个最 小空间。例如,在倒退之后的在I/O单元610与612之间的距离616确定空间602的最小空间。系统然后将这些空间设置为在后续縮放操作中不能縮放的"退回的空间"并且以这 一方式避免重复相同类型的冲突。 在本实用新型的一个实施例中,在縮放过程期间,系统首先可以采取前摄 (proactive)步骤以防止出现冲突。注意上述冲突状况通常涉及到两边共享的拐角单元, 比如I/O单元612。因此,在已经縮放两边中的第一边(比如边608)之后,系统接着针对 两边中接着将要縮放的第二边重新标识1/0单元。如果在縮放第二边之前标识一个或者多 个共享单元并且系统确定共享单元没有与第二边的其它标识1/0单元一起縮放(例如1/0 单元612对于边604而言就是这样的单元),则标识一个潜在冲突。随后,这些标识的共享 单元如1/0单元612变成对縮放第二边如边604的约束(即,最小空间规则适用于该边)。 因而,可以避免冲突,比如在1/0单元610与612之间的冲突。 4各I/O ,蹄K时驗誠 图7呈现了对根据本实用新型一个实施例的在使用縮放技术以改变I/0单元布置
以为管芯尺寸改变进行调节的同时进行管芯尺寸探索的过程进行图示的流程图。 在操作期间,系统通过接收用于探索的设计、初始管芯尺寸以及初始最小和最大
管芯尺寸(步骤702)来启动。系统然后使用上述I/0单元縮放技术以确定新的最小管芯
尺寸并且随后利用用于探索的新的最小管芯尺寸更新初始最小管芯尺寸(步骤704)。在一
些实施例中,步骤704可以是可选的。 接着,系统确定该设计在当前管芯尺寸之下是否可布线(步骤706)。 如果是这样(即如果有可能进一步减少管芯尺寸),则系统将管芯尺寸减少预定 的量(步骤708),并且随后修改管芯边界而且使用上述I/O縮放技术以改变I/O单元布置 以配合于新芯片边界中(步骤710)。 如果系统确定该设计在当前管芯尺寸之下不可布线,则系统然后将管芯尺寸增加 预定的量以增加布线区域(步骤712)并且随后修改芯片边界而且使用上述1/0縮放技术 以改变I/0单元布置以配合于新芯片边界中(步骤710)。 对于上述两种场景,在完成步骤710时,系统确定是否已经获得最小可行(可布 线)管芯尺寸(步骤714)。如果是这样,则管芯尺寸探索终止。否则,系统返回到步骤706
并且重复。 图8图示了根据本实用新型一个实施例的在管芯尺寸优化期间縮放1/0单元布置 的设备。 设备802可以包括经由有线或者无线通信信道来相互通信的装置。具体而言,设 备802可以包括接收装置804、确定装置806、标识装置808和縮放装置810。装置可以使用 一个或者多个集成电路来实现或者实现为通用处理器的模块。设备802可以是计算机系统 的部分。 在一些实施例中,接收装置804可以被配置成接收用于管芯的初始管芯尺寸和用 于一组I/O单元的初始I/O单元布置并且还接收用于管芯的目标管芯尺寸;确定装置806 可以被配置成确定在初始管芯尺寸与目标管芯尺寸之间的管芯尺寸改变;标识装置808可 以被配置成标识在初始1/0单元布置中的一组I/0单元之间的可用空间;并且縮放装置 810可以被配置成基于标识的可用空间和管芯尺寸改变来縮放初始I/O单元布置,由此获 得配合目标管芯尺寸的新1/0单元布置。[0095] 仅出于示例和描述的目的已经呈现对本实用新型实施例的前文描述。本意并非让 它们穷举本实用新型或者使本实用新型限于公开的形式。因而,本领域技术人员将清楚许 多修改和变化。此外,本意并非让上述公开内容限制本实用新型。本实用新型的范围由所 附权利要求限定。
权利要求一种在管芯尺寸优化期间缩放I/O单元布置的设备,其特征在于,该设备包括接收装置,配置成接收用于管芯的初始管芯尺寸和用于一组I/O单元的初始I/O单元布置,其中所述接收装置还被配置成接收用于所述管芯的目标管芯尺寸;确定装置,配置成确定在所述初始管芯尺寸与所述目标管芯尺寸之间的管芯尺寸改变;标识装置,配置成标识在所述初始I/O单元布置中的所述一组I/O单元之间的可用空间;以及缩放装置,配置成基于所述标识的可用空间和所述管芯尺寸改变来缩放所述初始I/O单元布置,由此获得配合所述目标管芯尺寸的新I/O单元布置。
2. 根据权利要求1所述的设备,其特征在于,所述确定装置包括宽度和高度改变确定装置,用于确定所述管芯的宽度改变和高度改变。
3. 根据权利要求1所述的设备,其特征在于,所述标识装置包括用于独立标识用于所述管芯的各边的一行I/O单元中的可用空间的可用空间标识装置。
4. 根据权利要求3所述的设备,其特征在于,所述可用空间标识装置包括各对相邻I/O单元之间可用空间标识装置,用于标识所述一行I/O单元中的各对相邻1/0单元之间的可用空间;以及计算装置,用于通过将所述一行i/o单元中的所述可用空间求和来计算所述管芯的所述边上的总的可用空间。
5. 根据权利要求4所述的设备,其特征在于,所述各对相邻1/0单元之间可用空间标识装置包括用于从所述成对相邻1/0单元之间的距离减去最小空间要求的减去装置。
6. 根据权利要求4所述的设备,其特征在于,所述縮放装置包括用于独立縮放所述管芯的各边上的所述I/O单元布置的I/O单元布置縮放装置。
7. 根据权利要求6所述的设备,其特征在于,所述I/O单元布置縮放装置包括用于基于在沿着所述管芯的所述边的方向上的所述管芯尺寸改变的符号来确定縮放模式的确定装置;以及用于将所述一行1/0单元中的成对相邻1/0单元之间的每一个空间縮放与对应可用空间成比例的量的縮放装置;其中用于所述一行I/O单元的縮放的总的量等于所述管芯尺寸改变。
8. 根据权利要求6所述的设备,其特征在于,所述I/O单元布置縮放装置包括用于基于在沿着所述管芯的所述边的方向上的管芯尺寸改变的符号来确定縮放模式的确定装置;以及用于将所述一行1/0单元中的成对相邻1/0单元之间的每一个空间縮放相等的量的縮放装置;其中用于所述一行I/O单元的縮放的总的量等于所述管芯尺寸改变。
9. 根据权利要求6所述的设备,其特征在于,所述I/O单元布置縮放装置包括用于基于在沿着所述管芯的所述边的方向上的所述管芯尺寸改变的符号来确定縮放模式的确定装置;以及用于如果所述管芯尺寸改变为负并且具有比所述管芯的所述边上的总可用空间更大的值,则通过将所有可用空间减少至零来縮放在所述一行I/O单元中的成对相邻I/O单元之间的空间的縮放装置。
10. 根据权利要求6所述的设备,其特征在于,如果所述初始1/0单元布置是多环I/O单元布置,则所述设备还包括用于独立縮放所述多环I/O单元布置的各环的縮放装置;或者用于在维持I/0单元的多个环之间的对准的同时协同縮放所述多环I/0单元布置中的I/O单元的多个环的縮放装置。
11. 根据权利要求1所述的设备,其中所述一组1/0单元包括1/0焊盘;包括多个I/O管脚的I/O单元;宏单元;布置阻断;以及填充物单元。
专利摘要本实用新型的一些实施例提供一种在管芯尺寸优化期间缩放I/O单元布置的设备。该设备可以包括接收装置,配置成接收用于管芯的初始管芯尺寸和用于一组I/O单元的初始I/O单元布置;其中所述接收装置还被配置成接收用于所述管芯的目标管芯尺寸;确定装置,配置成确定在所述初始管芯尺寸与所述目标管芯尺寸之间的管芯尺寸改变;标识装置,配置成标识在所述初始I/O单元布置中的所述一组I/O单元之间的可用空间;以及缩放装置,配置成基于所述标识的可用空间和所述管芯尺寸改变来缩放所述初始I/O单元布置,由此获得配合所述目标管芯尺寸的新I/O单元布置。
文档编号G06F17/50GK201508553SQ200920267980
公开日2010年6月16日 申请日期2009年10月26日 优先权日2008年11月26日
发明者D·常, N·考尔, 邹佩清 申请人:新思科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1