CN109426695A - 集成电路设计和/或制造 - Google Patents

集成电路设计和/或制造 Download PDF

Info

Publication number
CN109426695A
CN109426695A CN201810962263.9A CN201810962263A CN109426695A CN 109426695 A CN109426695 A CN 109426695A CN 201810962263 A CN201810962263 A CN 201810962263A CN 109426695 A CN109426695 A CN 109426695A
Authority
CN
China
Prior art keywords
unit
metal layer
group
layout
endpoint
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201810962263.9A
Other languages
English (en)
Other versions
CN109426695B (zh
Inventor
珍·卢克·佩洛依
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
ARM Ltd
Original Assignee
Advanced Risc Machines Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Advanced Risc Machines Ltd filed Critical Advanced Risc Machines Ltd
Publication of CN109426695A publication Critical patent/CN109426695A/zh
Application granted granted Critical
Publication of CN109426695B publication Critical patent/CN109426695B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/39Circuit design at the physical level
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L27/00Devices consisting of a plurality of semiconductor or other solid-state components formed in or on a common substrate
    • H01L27/02Devices consisting of a plurality of semiconductor or other solid-state components formed in or on a common substrate including semiconductor components specially adapted for rectifying, oscillating, amplifying or switching and having potential barriers; including integrated passive circuit elements having potential barriers
    • H01L27/0203Particular design considerations for integrated circuits
    • H01L27/0207Geometrical layout of the components, e.g. computer aided design; custom LSI, semi-custom LSI, standard cell technique
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/39Circuit design at the physical level
    • G06F30/392Floor-planning or layout, e.g. partitioning or placement
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/39Circuit design at the physical level
    • G06F30/394Routing

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Power Engineering (AREA)
  • Geometry (AREA)
  • Evolutionary Computation (AREA)
  • Condensed Matter Physics & Semiconductors (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Architecture (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)

Abstract

本公开涉及集成电路设计和/或制造。一种生成集成电路的电路块的布局的计算机实现的方法,包括:接收限定电路块的逻辑操作的输入数据;访问提供多个候选单元的单元库;针对输入数据,确定要用于实现电路块的一组单元,单元限定要在基板上制造的电路元件;以及通过以下步骤来生成布局:采用放置布线工具确定该组单元的放置,并且经由确定要在多个金属层内提供的布线路径来执行布线操作以将该组单元的接口端点交互连接,其中,多个金属层包括覆盖单元的最低金属层以及覆盖最低金属层的一个或多个其他金属层,单元的接口端点被提供在最低金属层内;其中,确定布线路径的步骤包括确定一组两个或多个单元的接口端点之间的布线路径。

Description

集成电路设计和/或制造
技术领域
本公开涉及集成电路设计,例如涉及用于生成这种集成电路的电路块的布局的技术。电路块可代表整体集成电路,或集成电路内的组件。本公开还可包括制造使用这些技术所设计的集成电路。
背景技术
在半导体集成电路的设计中,已知提供自动化工具,自动化工具使用所计划的电路块的功能性设计以及单元库以生成电路块的布局,功能性设计识别电路块要执行的逻辑操作(例如,设计的门层级电路列表(netlist)或寄存器传输层级(Register TransferLevel)表示),并且单元库提供一组单元(单元限定电路元件,且是用于根据功能性设计来构造电路块布局的“构造块”)。
特定而言,自动化工具的形式可以是所谓的放置布线工具(place and routetool),放置布线工具将所需的单元放置在总体布局(或“平面布置图”)内,且随后执行布线操作来确定要在多个金属层内提供的布线路径,以将各个单元交互连接,使得单元将协同执行所需的电路块逻辑操作。
随着所需的电路块的复杂度提升,越来越难以在可用的金属层内容纳所有的所需布线路径,且有时为了对所有欲提供的各种布线路径提供足够的空间,电路块所需的面积会大于本来所需的面积。
因此,可期望提供改良的技术,以在电路块的布局内容纳所需的布线路径。
发明内容
在一种示例布置中,提供一种生成集成电路的电路块的布局的计算机实现的方法,包括:接收限定电路块的逻辑操作的输入数据;访问提供多个候选单元的单元库;针对输入数据,确定要用于实现电路块的一组单元,单元限定要在基板上制造的电路元件;以及通过以下步骤来生成布局:采用放置布线工具确定该组单元的放置,并且经由确定要在多个金属层内提供的布线路径来执行布线操作以将该组单元的接口端点交互连接,其中,多个金属层包括覆盖单元的最低金属层以及覆盖最低金属层的一个或多个其他金属层,单元的接口端点被提供在最低金属层内;其中,确定布线路径的步骤包括:通过在生成的布局中提供(i)在一个或多个其他金属层中覆盖一组两个或多个单元的接口端点的交互连接,和(ii)交互连接与该组两个或多个单元的接口端点之间的通孔连接,来确定该组两个或多个单元的接口端点之间的布线路径。
在另一种示例布置中,提供一种生成集成电路的电路块的布局的计算机实现的方法,包括:接收限定电路块的逻辑操作的输入数据;访问提供多个候选单元的单元库;针对输入数据,确定要用于实现电路块的一组单元,单元限定要在基板上制造的电路元件;以及通过以下步骤来生成布局:采用放置布线工具确定该组单元的放置,并且经由确定要在多个金属层内提供的布线路径来执行布线操作以将该组单元的接口端点交互连接,其中,多个金属层包括覆盖单元的最低金属层以及覆盖最低金属层的一个或多个其他金属层,单元的接口端点被提供在最低金属层内;其中,确定布线路径的步骤包括:通过在生成的布局中提供最低金属层内的接口端点之间的交互连接,来确定一组两个或多个单元的接口端点之间的布线路径。
在另一种示例布置中,提供一种生成集成电路的电路块的布局的计算机实现的方法,包括:接收限定电路块的逻辑操作的输入数据;访问提供多个候选单元的单元库,每个单元具有相关联表示,相关联表示使用至少两个空间性偏移的屏蔽图样在要制造的多个金属层中的各个金属层内限定各个单元构建;针对输入数据,确定要用于实现电路块的一组单元,单元限定要在基板上制造的电路元件,该组单元包括至少两行单元,其中在一行单元中的单元相对于邻接行单元中的单元是空间性地反转的;以及通过采用放置布线工具确定该组单元的放置来生成布局;其中:生成步骤包括:生成布局,其中空间性偏移的屏蔽图样与针对基板限定的布线网格对齐;以及确定一组单元的确定步骤包括:在多组电性等效候选单元中选择,其中针对一组电性等效单元,电路功能性是相同的,但在至少两个空间性偏移的屏蔽图样中各个单元构建是互换的。
在另一种示例布置中,提供一种非暂态存储介质,非暂态存储介质储存单元库,单元库包括限定电路元件的多个候选单元,单元库提供一组或多组电性等效候选单元,其中针对一组电性等效单元,电路功能性是相同的,但电性等效候选单元之间的接口端点的布局不同。
在另一种示例布置中,提供一种非暂态存储介质,非暂态存储介质储存单元库,单元库包括限定电路元件的多个候选单元,单元库提供一组或多组电性等效候选单元,其中针对一组电性等效单元,电路功能性是相同的,但在至少两个空间性偏移的屏蔽图样中各个单元构建为互换的。
在连同附加图式阅读下文的示例说明之后,将可更显然明了本技术的进一步的方面、特征与优点。
附图说明
参考附图中示出的实施例,将进一步通过示例的方式来描述本技术,其中:
图1是示出根据一个实施例的在生成电路块布局时所使用的组件的框图;
图2示意性地示出了根据一个实施例中的在标准单元列内的标准单元的放置;
图3示意性地示出了在一个实施例中可提供的各种金属层与相关联的通孔层;
图4是示意性地示出在一个实施例中可在单元的第零金属(M0)布局内提供的各种金属区段的示意图;
图5示出了NAND门的示例电路元件的输入接脚、输出接脚与内部网络;
图6示出了根据一个实施例的可由单元库提供的单元的各种视图;
图7示意性地示出了第二金属层M1上的交互连接;
图8示意性地示出了最低金属层M0上的交互连接;
图9与图10示意性地示出了M1与M0层交互连接;
图11与图12示意性地示出了填充单元的使用;
图13至图15示意性地示出了电性等效单元的使用;
图16示意性地示出了阻隔区域的使用;
图17示意性地示出了两行单元;
图18示意性地示出了具有偏移M2布线轨的两行单元;
图19示意性地示出了多行单元;
图20与图21是示出各个方法的示意流程图;
图22与图23示意性地示出了非暂态机器可读取存储介质;
图24至图26是示出各个方法的示意流程图;并且
图27示意性地示出了一种数据处理系统。
具体实施方式
在参考附图讨论实施例之前,下面提供对于实施例的说明。
随着用于制造集成电路的制程缩小至越来越小的尺寸,可以使得执行多个设计约束,以确保制造集成电路的晶圆厂能够获得满意的良率水平。例如在先进CMOS制程中,可对用于制造集成电路的一个或多个金属层施加设计规则。例如,已知对第一(或最低的)金属层(称为第零金属(M0)层)施加设计规则,以确保在M0层内观察到规则网格图样。特定而言,设计规则可要求金属区段被提供在规则网格上,并完全占据网格的指定轨,除了被进行切割以隔离特定金属区段的地方以外。该设计规则约束通常意味着,除了单元所需以形成电力网络、内部网络、或输入接脚与输出接脚的金属区段以外,可提供额外的多余金属区段。通常而言,在制造最终集成电路时,这种多余金属区段保持在电性浮接状态中。
随着电路块的复杂度提升,布线路径的复杂度也随之提升,这可使得在可用金属层内提供所有的所需布线路径的工作可能为复杂的。
示例实施例提供一种生成集成电路的电路块的布局的计算机实现的方法,包括:接收限定电路块的逻辑操作的输入数据;访问提供多个候选单元的单元库;针对输入数据,确定要用于实现电路块的一组单元,单元限定要在基板上制造的电路元件;以及通过以下步骤来生成布局:采用放置布线工具确定该组单元的放置,并且经由确定要在多个金属层内提供的布线路径来执行布线操作以将该组单元的接口端点交互连接,其中,多个金属层包括覆盖单元的最低金属层以及覆盖最低金属层的一个或多个其他金属层,单元的接口端点被提供在最低金属层内;其中,确定布线路径的步骤包括:通过在生成的布局中提供(i)在一个或多个其他金属层中覆盖一组两个或多个单元的接口端点的交互连接,和(ii)交互连接与该组两个或多个单元的接口端点之间的通孔连接,来确定该组两个或多个单元的接口端点之间的布线路径。
示例实施例通过在较高金属层中使用交互连接,提供了优雅且方便的方式,以在最低金属层中的接口端点之间布线交互连接。例如,较高层可以是覆盖最低金属层的次低金属层(诸如第一金属(M1))。或者,提供步骤包括:在覆盖次低金属层的其他金属层中的另一金属层(诸如M2、M3等等)中提供交互连接的至少一部分。
在示例布置中,接口端点包括输入端点与输出端点;且针对一组两个或多个单元,布线路径位于至少一个输入端点与至少一个输出端点之间。注意到,布置并非受限为一个单元的输出端点连接至另一单元的输入端点;布线可以是一对多或多对一。
在一些示例中,确定布线路径的步骤包括:通过在生成的布局中提供(i)在一个或多个其他金属层中的一个其他金属层中覆盖一组两个或多个单元的接口端点的交互连接,(ii)交互连接与该组两个或多个单元的接口端点之间的通孔连接,和(iii)与交互连接空间性地隔开的其中禁用对接口端点的连接的布线的一个或多个禁用区域,来确定该组两个或多个单元的接口端点之间的布线路径。这可帮助避免布线点与另一布线点之间生成过量的路径长度(以及相关联的电阻)。
在一些示例中,最低金属层中的接口端点是长形区域,长形区域经受设计约束,设计约束规定通孔连接与长形区域中的一个长形区域的末端的最小间距;次低金属层内的交互连接是长形区域;第一金属层与次低金属层中的长形区域位于正交方向;且提供步骤包括:提供通孔连接,该通孔连接偏移自次低金属层中的交互连接的中心纵轴,以不违反设计约束。
在多个候选单元包括一组或多组电性等效候选单元时可促进布线过程,其中针对一组电性等效单元,电路功能性是相同的,但电性等效候选单元之间的接口端点的布局不同。在这种布置中,确定一组单元的确定步骤可包括:针对具有所需单元功能性的给定单元,选择一组电性等效单元中的一个电性等效单元,只要所需单元功能性考虑到给定单元的接口端点与一个或多个其他单元的接口端点之间的布线路径的布线。
在示例实施例中,最低金属层为第零金属(M0)层。
另一示例实施例提供一种生成集成电路的电路块的布局的计算机实现的方法,包括:接收限定电路块的逻辑操作的输入数据;访问提供多个候选单元的单元库;针对输入数据,确定要用于实现电路块的一组单元,单元限定要在基板上制造的电路元件;以及通过以下步骤来生成布局:采用放置布线工具确定该组单元的放置,并且经由确定要在多个金属层内提供的布线路径来执行布线操作以将该组单元的接口端点交互连接,其中,多个金属层包括覆盖单元的最低金属层以及覆盖最低金属层的一个或多个其他金属层,单元的接口端点被提供在最低金属层内;其中,确定布线路径的步骤包括:通过在生成的布局中提供最低金属层内的接口端点之间的交互连接,来确定一组两个或多个单元的接口端点之间的布线路径。
示例实施例通过在最低金属层内使用交互连接,提供了优雅且方便的方式,以在最低金属层(诸如M0)中的接口端点之间布线交互连接。
在示例布置中,最低金属层中的接口端点是预定定向中的长形区域。在这种设置中,交互连接可包括最低金属层中的长形区域,该长形区域在单元的横向边缘(相对于预定定向)处的接口端点与紧邻单元的横向边缘处的接口端点之间。
在其他示例中,可使用所谓的填充单元以作为布线的部分。在这种示例中,多个候选单元包括提供单元间距与至少电力轨连续性的至少一个填充单元,填充单元限定在预定定向中的最低金属层中的长形填充区域;其中确定布线路径的步骤包括:在生成的布局中在最低金属层中提供交互连接,该交互连接在接口端点与中介填充单元的一个或多个长形填充区域之间。
在其他示例中,可使用最低金属层以结合一个或多个其他层来进行布线。例如,确定布线路径的步骤可包括:在生成的布局中在最低金属层内提供交互连接,该交互连接在一对单元中的一个单元的接口端点与最低金属层内的中介填充单元的一个或多个长形填充区域中的第一长形填充区域之间;在生成的布局中在最低金属层内提供交互连接,该交互连接在一对单元中的另一单元的接口端点与最低金属层内的中介填充单元的一个或多个长形填充区域中的不同的第二长形填充区域之间;以及在生成的布局中在除了最低金属层以外的另一金属层内提供交互连接,该交互连接在第一长形填充区域与第二长形填充区域之间。
为了协助布局与布线,在示例布置中,多个候选单元包括一组或多组电性等效的候选单元,其中针对一组电性等效单元,电路功能性是相同的,但电性等效候选单元之间的接口端点的布局不同。在这种示例中,确定一组单元的步骤可包括:针对具有所需单元功能性的给定单元,选择一组电性等效单元中的一个电性等效单元,只要所需单元功能性考虑到给定单元的接口端点与一个或多个其他单元之间的布线路径的布线。
另一示例实施例提供一种生成集成电路的电路块的布局的计算机实现的方法,包括:接收限定电路块的逻辑操作的输入数据;访问提供多个候选单元的单元库,每个单元具有相关联表示,相关联表示使用至少两个空间性偏移的屏蔽图样在要制造的多个金属层中的各个金属层内限定各个单元构建;针对输入数据,确定要用于实现电路块的一组单元,单元限定要在基板上制造的电路元件,该组单元包括至少两行单元,其中在一行单元中的单元相对于邻接行单元中的单元是空间性地反转的;以及通过采用放置布线工具确定该组单元的放置来生成布局;其中:生成步骤包括:生成布局,其中空间性偏移的屏蔽图样与针对基板限定的布线网格对齐;以及确定一组单元的确定步骤包括:在多组电性等效候选单元中选择,其中针对一组电性等效单元,电路功能性是相同的,但在至少两个空间性偏移的屏蔽图样中各个单元构建是互换的。
示例布置允许将单元放置在邻接行中,即使是在屏蔽图样可不与行边界对齐时。
虽然可限定多于两个屏蔽图样,但在示例布置中,给定候选单元使用两个空间性偏移屏蔽图样在要制造的多个金属层中限定各个单元构建。
放置布线工具(例如)可经布置,针对给定候选单元,通过将可应用于各个单元构建的屏蔽图样互换来生成电性等效候选单元。在替代性布置中,多个候选单元包括一组或多组电性等效候选单元。
对于前述方法中的任意方法,另一示例实施例提供以下步骤:将电路块的布局并入集成电路的布局内;以及由集成电路布局制造集成电路。另一示例实施例提供根据这种方法制造的集成电路。
对于前述方法中的任意方法,另一示例实施例提供一种计算机程序产品,该计算机程序产品在非暂态存储介质上,用于控制计算机以执行如前述的用于生成电路块的布局的方法。
另一示例实施例提供一种非暂态存储介质,该非暂态存储介质储存单元库,该单元库包括限定电路元件的多个候选单元,该单元库提供一组或多组电性等效候选单元,其中针对一组电性等效单元,该电路功能性是相同的,但电性等效候选单元之间的接口端点的布局不同。
另一示例实施例提供一种非暂态存储介质,该非暂态存储介质储存单元库,该单元库包括限定电路元件的多个候选单元,该单元库提供一组或多组电性等效候选单元,其中针对一组电性等效单元,该电路功能性是相同的,但在至少两个空间性偏移的屏蔽图样中各个单元构建是互换的。
现在将参考附图描述特定的实施例。
图1是示出在一个实施例中用于生成电路块布局的组件的框图。提供电路块的逻辑定义10。这可以是各种形式,诸如所计划的电路块的功能性设计的门层级电路列表或RTL表示,由此识别电路块的逻辑操作。此逻辑定义10被提供至计算机实现的合成工具30,计算机实现的合成工具30将逻辑定义转换成针对布局的数据,并可访问一个或多个单元库20、25。单元库中的每个单元库将提供多个单元,且每个单独单元可以指明相关联电路元件的布局。相关联电路元件的尺寸与复杂度将根据单元库内的单元类型而改变。例如,单独单元可限定基本构造模块结构,诸如NAND门(与非门)、NOR门(或非门)等等,或可限定更复杂的电路元件,包括较大量的互连晶体管。再者,单元可以是自定义单元或标准单元。
如将由在本发明技术领域中具有通常知识者所理解到的,在使用标准单元时,标准单元可被放置在视为包括多个标准单元行的平面布置图内,每一行标准单元具有共同的行高度,如图2示意性地示出的。特定而言,可将多个标准单元行50、55、60、65放置在平面布置图内;可由放置布线工具将单独标准单元70、75、80、85、90、95放置在这些行内,且随后被交互连接以提供所需的电路块逻辑操作。并非所有单元都需要是要求交互连接的活跃单元。例如,一些单元可以是不活跃单元,诸如填充单元(提供间距与电力轨连续性的非功能性单元)或实现去耦电容器的单元。每个标准单元的高度被限制为等于行高度(如在标准单元70、75、80、85、90的示例中),或等于行高度的数倍(如在图2中示出的两倍高度标准单元95的示例中)。
虽然使用标准单元可简化在设计电路块布局时所执行的放置布线操作,但这并不是针对要使用的标准单元的要求,且在其他实施例中合成工具30可用的至少一个单元库20、25可包括未限制要符合特定行高度的自定义单元库。
合成工具30接收电路块的逻辑定义10,并参考可用的(一或多个)单元库来确定要用于构造电路块的所需功能性的单元。由图1中的合成工具所执行的合成操作30被由标准方式执行,且因此在此不再进一步详细讨论。一旦已执行了合成操作,则输出被传递至放置布线工具35,该输出识别要使用的单元以及这些单元需要被交互连接的方式,以生成执行所需的电路块逻辑操作的电路系统。
放置布线工具35随后通过确定合成工具所识别的各种单元的放置,并执行布线操作以确定要在多个金属层内提供的布线路径以交互连接这些单元,使他们执行所需的电路块逻辑操作。图3是示意性地示出可提供在示例实施例中的各种金属层的截面立面视图。图2中的平面布置图布局可被视为在x与y维度中延伸,而图3示出的立面是在z维度中延伸。在基板105上提供多个组件层级层110,以形成形成单元的(一或多个)电路元件的结构性组件。因此,在组件层级层内,将例如形成各种晶体管。第零金属(M0)层115随后容纳多个金属区段,这些金属区段将用于提供功率至单元组件,并用于由放置布线工具形成输入与输出接脚以连接至布线路径(如前述)。此外,一些金属区段可以是内部金属区段(在本文中还称为内部网络),用于将组件层级层110内的不同组件交互连接,但保持与各种金属层中提供的布线路径隔离。
如图3所示,多个金属层与中介通孔层可被提供在组件层级层上方。在该特定示例中,在M0层上方提供两个额外金属层,在本文中称为第一金属(M1)层125与第二金属(M2)层135。每个金属层通过金属通孔连接而连接至邻接金属层,金属通孔连接被提供在图3示出的中介通孔层V0与V1 120、130内。虽然图3仅示出了三个金属层,但将理解到在其他实施例还可提供额外的金属层。
在一些实例中,单元将限定M0层115的金属区段,但将不限定在较高金属层处的任何金属区段。然而,这并非为必需的,且更复杂的单元可限定在较高金属层处的一个或多个金属区段,例如M1层125及(或)M2层135。在任意情况中,随后的M1与M2金属层125、135接着将用于布线路径,以将各个单元交互连接。
如将由在本领域中的技术人员所了解的,邻接金属层中的金属区段通常在正交的方向中延伸。例如,如果M0层115中的金属区段被视为在x维度延伸,则M1层125中的金属区段将在y维度延伸,而M2层135中的金属区段将在x维度延伸。在通孔层120、135中的金属连接则将在邻接金属层之间在z维度延伸,以将一个层中的金属区段与邻接层中的金属区段连接。放置布线工具负责执行布线操作,以确定如何使用各种金属层以生成必须的布线路径来根据所需将单元交互连接,以得到逻辑定义10所指定的电路块的功能性。
图4是示意性地示出根据一个实施例的可在单元150的M0层布局内提供的金属区段的示意图。在该示例中,假定设计规则可要求M0层中的金属区段遵循规则网格,并完全占据网格的指定轨,除了被进行切割以隔离不同金属区段的地方以外。如图4所示,所有的金属区段在x维度延伸,而电力网络区段155、160跨单元的整体宽度而延伸。这确保了在单元被放置在诸如图2示出的布置中时,电力网络可跨标准单元行的整体长度延伸。
还如图4所示,在两个电力网络之间提供额外的金属区段。M0布局内仅有的空白空间,是设计规则所施加的在各个区段之间的隔离间距。如所可见的,该隔离间距包括在单元末端处的间距,以将各个金属区段与邻接单元中的金属区段隔离。再者,存在所需的间距以将单元内的金属区段彼此隔离,以使得不同的金属区段相关联于不同的功能。例如,金属区段162、164、166中的多个金属区段可做为输入接脚,且将对这些输入接脚提供布线路径,以将输入信号提供至这些输入接脚。类似的,金属区段172、174中的一个或多个金属区段可相关联于输出接脚,且同样地将被放置布线工具将布线路径连接至这些输出接脚,以将单元的输出信号传输至电路块的适当位置,例如将输入提供至一个或多个其他单元。
还如图4所示,金属区段182、184、186中的一个或多个金属区段可代表内部网络,如先前讨论的,内部网络用于交互连接单元内的内部组件,但不用于连接布线路径,且当然必须保持与这些布线路径隔离。
图5参考NAND门的特定示例,来示意性地示出了可如何使用各种输入接脚、输出接脚、与内部网络的示例。NAND门由两个PMOS晶体管200、205与两个NMOS晶体管210、215组成,PMOS晶体管200、205并联连接在供应电压与输出节点240之间,NMOS晶体管210、215串联连接在输出路径240与接地电压供应VSS之间。示出了四个输入节点220、225、230、235,且节点220、230可在M0布局内共享一个输入接脚,同时类似的,两个输入节点225、235可共享相同的输入节点。输出节点240将被连接至M0布局内的输出接脚。两个NMOS晶体管210、215之间的交互连接245,代表将被连接至M0布局内的内部网络中的一个内部网络的内部节点。
在任何特定的单元布局设计内,不是所有被提供为符合设计规则的金属区段都需要作为输入接脚、输出接脚或内部网络。这些金属区段因此形成多余金属区段(在此还称为多余网络),示例是图4中由组件符号192、194标示多余金属区段。根据已知的放置布线机制,这种多余网络192、194将被放置布线工具忽略,且在所制造的电路块内这些金属结构将保持在电性浮接状态中。
返回图1,根据描述的实施例,单元库20、25内的每个单元将具有相关联的单元定义数据。如图1所示,在放置布线工具35在其放置布线操作时,放置布线工具35可从单元库20、25访问关于所需单元的信息,且该信息将包括单元定义数据。
存在多种可让该信息与单元定义数据可用于放置布线工具的方式,图6示出了其中一种机制。特定而言,在单元库内,每个单元可包括提供单元布局的所有细节的单元视图300,且个别地可提供关于单元的各种特性的信息,诸如时序、电力消耗、输入电容等等。在一个实施例中,所有这些特性被指定在特定文件305内,在一些实施例中特定文件305被称为库文件。单元布局视图300将包括单元的所有细节,且因此将包括单元定义数据。
然而,放置布线工具35不需要单元视图300的所有细节,而仅需要提供放置布线工具所需的显著信息以辨别如何构造单元间布线路径的概略视图。图6中示出了该概要图310的示例,有时概要图310还称为LEF(库交换格式)视图。在单元的标准概要图中,单元所提供的金属结构中的每个金属结构,将被识别为接脚315或障碍320。接脚为用于提供输入至单元或从单元提供输出的金属区段,且因此为需要由以放置布线工具确定的布线路径来连接的金属结构。障碍320是应保持与放置布线工具生成的布线路径隔离的金属区段。例如,内部网络将被识别为概要图310内的障碍320。
概要图310由此将每个金属区段分类为接脚、障碍、或多余金属区段。概要图还将获取这些各个结构所位于其内的一或多个金属层。
图7示意性地示出了由图1的布置生成的集成电路布局,包括最低(M0)层,最低层具有布置于垂直方向中的可用位置的网格700上的金属层内的水平长形构造(如平面图中所绘制的)。M0构建包括电力轨710与其他连接720,包括接口终端,诸如所谓的输入接脚730、740。
在M1层中,金属层内的长形构造被提供于垂直方向中(如图示),根据针对垂直构建的可用水平位置的网格750。在示出的示例中,M1构建760、770提供连接至M0输入接脚730、740。这是由覆盖各个M0输入接脚与通孔780、790的M1连接来实现的,使用图3的V0层120来形成通孔780、790以在该点处连接M0构建与M1构建。在这些示例中,至少一部分的交互连接被提供在覆盖最低金属层的次低金属层(M1)中。在其他示例中,可使用较高的层(诸如M2),在此情况中在覆盖次低金属层的其他金属层中的另一金属层中提供至少一部分的交互连接。
输入接脚提供包括输入终端与输出终端的接口端点的示例。针对一组两个或多个单元,布线路径可位于至少一个输入端点与至少一个输出端点之间。
通孔780被布置在网格700与网格750的相关线的交点处,还即位于构建760的水平中心,且位于构建730的垂直中心。
而通孔790被位移到右侧,对齐M1构造770的垂直纵轴。这遵循了设计约束:通孔与M0构造边缘795的间距不能小于阈值最小间距。这提供了示例,其中最低金属层中的接口端点是长形区域,长形区域经受设计约束,设计约束规定通孔连接与长形区域中的一个长形区域的末端的最小间距;次低金属层内的交互连接是长形区域;第一金属层与次低金属层中的长形区域位于正交方向;且提供步骤包括:提供通孔连接,该通孔连接偏移自次低金属层中的交互连接的中心纵轴,以不违反设计约束。
用于在M0层中在界面端点(诸如图8中的接口端点800、810)之间提供交互连接的另一技术,被用于在M0层中插入连接部分820。链接部分或交互连接820可包括在M0层中的长形区域,长形区域在单元830的横向边缘(图示的水平方向中)处的接口端点800与紧邻单元840的横向边缘(图示的水平方向中)处的接口端点810之间。
注意到,一般而言,可应用至单元的设计约束是,使得在单元的横向边缘处,M0层中形成的导电区域被缝隙终止。因此,本布置打破了该约束,并允许在M0层中在单元的邻接边缘之间的连接。
图9示意性地示出了结合参考图7与图8描述的技术的设置,其中由交互连接920将单元910中的接口端点900连接至紧邻单元940中的邻接部分930。部分930相应地由M1层交互连接950连接至单元940中的接口端点960。再次说明,在M0层与M1层导体之间提供通孔970。
图10示意性地示出了另一示例,其中单元1010的接口端点1000通过通孔1040、M1层构造1050以及另一通孔1060,连接至紧邻单元1030的接口端点1020。在此,在单元内保留了足够的空白空间,以在通孔1060与接口端点1020之间隔离M0层交互连接1070。在此背景内容中,由布线器放置的通孔包括,V0层内的连接以及覆盖V0区域的小部分M0和M1。接着,单元的布局应确保小M0件有足够的空间,以避免接触单元的任何M0部分而造成短路。由布线器附接至V0的小M0件,是附图中区段1070的一部分。
图11示意性地示出了使用所谓的填充单元的布置。填充单元被用于在活跃功能单元之间增加间距,以协助电路块的放置与布线。他们提供大量的M0布线资源,由于根据设计规则,M0层必需被填满各处。在图11中,接口端点1110的接口端点1100经由M0层轨1140,穿过填充单元1150连接至紧邻功能单元1130的接口端点1120。类似的,通过通孔1165、M1交互连接1170与通孔1175、1180将接口端点1160连接至单元1130中的两个其他轨1190、1195。
使用填充单元1150提供了示例,其中多个候选单元包括提供单元间距与至少电力轨连续性的至少一个填充单元,填充单元限定在预定定向中的最低金属层中的长形填充区域;其中确定布线路径的步骤包括:在生成的布局中在最低金属层中提供交互连接,该交互连接在接口端点与中介填充单元的一个或多个长形填充区域之间。
在一些示例中,针对一对单元的接口端点之间的布线路径,确定布线路径的步骤可包括:在生成的布局中在最低金属层M0内提供交互连接,该交互连接在该对单元中的一个单元的接口端点1160与最低金属层内的中介填充单元的一个或多个长形填充区域中的第一长形填充区域之间;在生成的布局中在最低金属层内提供交互连接,该交互连接在该对单元中的另一单元的接口端点1190与最低金属层内的中介填充单元的一个或多个长形填充区域中的不同的第二长形填充区域之间;以及在生成的布局中在除了最低金属层以外的另一金属层内提供交互连接1170,该交互连接1170在第一与第二长形填充区域之间。
图12示意性地示出了改变M1层级布线轨的布置。
作为背景,在本文中讨论的布局处理,涉及准备两个或多个制造屏蔽图样,这些制造屏蔽图样彼此在空间上偏移。
返回参考图7的网格700、750,在M1层与较高的层中,根据每个屏蔽来制造交替的网格位置。
参考图12,使用一个屏蔽来制造网格位置1200、1210,并使用另一屏蔽来制造网格位置1220。当需要在放置布线处理期间在屏蔽之间进行改变时,填充单元的M0层中的导体1230(由缝隙1240与邻接单元隔离)可用于链接至M1层中的交互连接1250、1260、1270。例如,如在连接1250、1260之间,这可互换使用两个屏蔽中的一个来进行制造。
通过在单元的不同版本之间使用电性等效(EEQ),提供或实现相同单元的多个版本,可进一步改良单元之间的M0布线。在这种设置中,多个候选单元包括一组或多组电性等效候选单元,其中针对一组电性等效单元,电路功能性是相同的,但电性等效候选单元之间的接口端点的布局不同。如下文所讨论的,确定一组单元可包括:针对具有所需单元功能性的给定单元,选择一组电性等效单元中的一个电性等效单元,只要所需单元功能性考虑到给定单元的接口端点与一个或多个其他单元之间的布线路径的布线。
图13示出了两个单元1300、1310(单元X、Y)的示例,其中使用M0层交互连接1320形成从M0输入接脚A 1330到M1层中输出接脚C1340的交互连接的部分。在此示例中,单元Y1310的另一输入接脚B1350被示出为未连接。
图14示出了相同的单元X 1300以及单元Y的电性等效(EEQ)版本1400,其中两个输入接脚A与B 1410、1420的位置已被互换。在此,可使用相同的M0布线部分1320,但这次是将M0输入接脚B连接至M1输出接脚C。在形成电路系统布局时,放置布线工具将选择单元Y的版本1310或单元Y的电性等效版本1400。
区域1320的使用提供了示例,其中最低金属层中的接口端点是在预定定向中的长形区域,且交互连接包括最低金属层中在单元的横向边缘(相对于预定定向)处的接口端点与紧邻单元的横向边缘处的接口端点之间的长形区域。
在上文所讨论的图10中,假定布线器具有由通孔层V0连接M1层导体,且随后由M0布线的能力。然而,一些布线器仅从金属顶端连接且不从底部连接,要记得在图3中V0是低于M1的。在此情况中,可通过使用单元1010的电性等效版本(图15中的单元1510),并在M0层中包括由布线器增加的部分1520以及通孔1530(包括V0层中的部分以及附接至此部分的小M0件),形成电性等效单元1510的单元设计的部分,来避免生成问题。
参考图16,在一些情况中,连接至M1部分1610的M0部分1600,可(横向地,如图示)延伸远离M1部分1610。在此情况中,可增加所谓的阻隔区域1620、1630,以避免布线器从M1形状连接得太远,以最小化或减少布线点与M1形状1610之间的额外电阻。
阻隔区域1620、1630的使用提供了示例,其中确定布线路径的步骤包括:通过在生成的布局中提供(i)在所述一个或多个其他金属层中的一个其他金属层中覆盖一组两个或多个单元的接口端点的交互连接,(ii)所述交互连接与该组两个或多个单元的接口端点之间的通孔连接,和(iii)与所述交互连接空间性地隔开的一个或多个禁用区域1620、1630(在该一个或多个禁用区域1620、1630中,禁用对接口端点的连接的布线),来确定该组两个或多个单元的接口端点之间的布线路径。
图17至图20处理布置,以在空间性偏移的屏蔽之间分配单元与单元的部分。如前述,每个M1与M2布线轨被分配给空间性偏移的屏蔽中的一个或其他,使得紧邻的布线轨被分配给两个屏蔽中的另一个。屏蔽分配针对每个交替的布线轨是相同的。单元库中的单元相应地具有分配给布线轨的导电部分。在单元被放置在电路块平面布置图中时,该分配应符合相关联于基板的网格。在发生歧异的情况中,本布置提供相同单元的第二版本,反转对单元中每个导电构建的屏蔽的分配。布线器将选择单元的原始版本或反转版本,以允许放置在布局中的任意位置处。
这提供了示例,其中给定候选单元使用两个空间性偏移的屏蔽图样在要制造的多个金属层中限定各个单元构建。
返回图17,单元在被放置在邻接行中时,大抵而言被垂直反转。在图17中,第一行1700具有在第一定向1710中的单元,且紧邻行1720具有在垂直反转定向1730中的单元。如图17中示出的在M2放置网格符合单元高度时,不存在相关于M2层的屏蔽冲突。
在图18中,可应用于两行的M2布线网格1800,是偏移自单元行边界1810的。在此情况中,单元内的M2形状的屏蔽分配,可符合针对第一行1805的M2布线轨屏蔽分配,但可不符合第二行单元1815。本公开的实施例提供了相同单元的第二版本,将每个M2形状的屏蔽分配反转。因此,单元的一个版本将对行1805及其交替行使用,而反转版本将对行1815及其交替行使用。这提供了示例,针对给定候选单元,通过将可应用于各个单元构建的屏蔽图样互换来生成电性等效候选单元。反转版本可被依所需生成,或者作为替代,多个候选单元可包括一组或多组电性等效候选单元。
结合这些不同的可能性,可提供或获得不同版本的单元。
CELL:原始单元
CELL_M1:M1屏蔽分配反转
CELL_M2:M2屏蔽分配反转
CELL_M1_M2:M1与M2屏蔽分配反转。
图19示意性地示出了示例逻辑块中的单元放置,处理针对单元的不同屏蔽分配变型。
图20是示意流程图,示出了一种生成集成电路的电路块的布局的计算机实现的方法,包括:(在步骤2000处)接收限定电路块的逻辑操作的输入数据;(在步骤2010处)访问提供多个候选单元的单元库;针对输入数据,(在步骤2020处)确定要用于实现电路块的一组单元,单元限定要在基板上制造的电路元件;以及通过以下步骤来(在步骤2030处)生成布局:采用放置布线工具确定该组单元的放置,并且经由确定要在多个金属层内提供的布线路径来执行布线操作以将该组单元的接口端点交互连接,其中,多个金属层包括覆盖单元的最低金属层以及覆盖最低金属层的一个或多个其他金属层,单元的接口端点被提供在最低金属层内;其中,确定布线路径的步骤包括:(在步骤2040处)通过在生成的布局中提供(i)在一个或多个其他金属层中覆盖一组两个或多个单元的接口端点的交互连接,和(ii)交互连接与该组两个或多个单元的接口端点之间的通孔连接,来(在步骤2040处)确定该组两个或多个单元的接口端点之间的布线路径。
图21是示意流程图,示出了一种方法(可遵循这些方法中任一个),包括以下步骤:(在步骤2100处)将电路块的布局并入集成电路的布局内;以及(在步骤2110处)由集成电路布局制造集成电路。在这方面,图7至图19中的任一个可被视为根据图21的方法所制造的集成电路的示意表示。
单元库可由非暂态机器可读取存储介质提供,诸如光盘介质2200(图22)或硬盘介质2300(图23)。这些提供了非暂态存储介质的示例,非暂态存储介质存储单元库,单元库包括限定电路元件的多个候选单元,单元库提供一组或多组电性等效候选单元,其中针对一组电性等效单元,电路功能性是相同的,但电性等效候选单元之间的接口端点的布局不同。这些也提供了非暂态存储介质的示例,非暂态存储介质存储单元库,单元库包括限定电路元件的多个候选单元,单元库提供一组或多组电性等效候选单元,其中针对一组电性等效单元,电路功能性是相同的,但在至少两个空间性偏移的屏蔽图样中各个单元构建是互换的。
图24是示意流程图,示出了一种生成集成电路的电路块的布局的计算机实现的方法,包括:(在步骤2400处)接收限定电路块的逻辑操作的输入数据;(在步骤2410处)访问提供多个候选单元的单元库;针对输入数据,确定(在步骤2420处)要用于实现电路块的一组单元,单元限定要在基板上制造的电路元件;以及通过以下步骤来生成(2430)布局:采用放置布线工具确定该组单元的放置,并且经由确定要在多个金属层内提供的布线路径来执行布线操作以将该组单元的接口端点交互连接,其中,多个金属层包括覆盖单元的最低金属层以及覆盖最低金属层的一个或多个其他金属层,单元的接口端点被提供在最低金属层内;其中,确定布线路径的步骤包括:通过在生成的布局中提供最低金属层内的接口端点之间的交互连接,来确定一组两个或多个单元的接口端点之间的布线路径。
图25是示意流程图,示出了一种生成集成电路的电路块的布局的计算机实现的方法,包括:(在步骤2500处)接收限定电路块的逻辑操作的输入数据;(在步骤2510处)访问提供多个候选单元的单元库,每个单元具有相关联表示,相关联表示使用至少两个空间性偏移的屏蔽图样在要制造的多个金属层中的各个金属层内限定各个单元构建;针对输入数据,(在步骤2520处)确定要用于实现电路块的一组单元,单元限定要在基板上制造的电路元件,该组单元包括至少两行单元,其中在一行单元中的单元相对于邻接行单元中的单元是空间性地反转的;以及(在步骤2530处)通过采用放置布线工具确定该组单元的放置来生成布局;其中:生成步骤包括:生成布局,其中空间性偏移的屏蔽图样与针对基板限定的布线网格对齐;以及确定一组单元的确定步骤包括:在多组电性等效候选单元中选择,其中针对一组电性等效单元,电路功能性是相同的,但在至少两个空间性偏移的屏蔽图样中各个单元构建是互换的。
针对获取电性等效单元,这些单元可存在于库中(在此情况中,在图26中确定步骤包括(在步骤2600处)访问库中的EEQ单元),或可依所需而被生成,在此情况中确定步骤包括,(在步骤2610处)针对给定候选单元,通过将可应用于各个单元构建的屏蔽图样互换来生成电性等效候选单元。
图27示意性地示出了一般用途计算机600,一般用途计算机600的类型为可用于实现上文所描述的技术,且特定而言,用于生成集成电路的电路块的布局。一般用途计算机600包括中央处理单元602、随机存取存储器604、只读存储器606、网络适配器608、硬盘驱动器610、显示驱动器612以及监视器614、以及用户输入/输出电路616与键盘618和鼠标620,所有这些经由通用总线622连接。在操作中,中央处理单元602将执行计算机程序指令,计算机程序指令可被储存在随机存取存储器604、只读存储器606与硬盘驱动器610中的一个或多个内,或可被经由网络适配器608动态下载。所执行的处理的结果,可经由显示驱动器612与监视器614向用户显示。用于控制一般用途计算机600的操作的用户输入,可被经由用户输入/输出电路616从键盘618或鼠标620接收。将理解到,可由各种不同的计算机语言撰写计算机程序。计算机程序可被储存并散布在记录介质上,或可被动态下载至一般用途计算机600。在受到适当计算机程序的控制之下操作时,一般用途计算机600可执行前述布局生成技术,并可被视为形成用于执行前述技术的设备,且由HDD 610及(或)ROM 606存储的计算机程序,可提供一种计算机程序产品的示例,计算机程序产品在非暂态存储介质上,用于控制计算机以执行如前述的用于生成电路块的布局的方法。一般用途计算机的架构可能大量改变,且图27仅是示例。如前述,候选单元库可由非暂态机器可读存储介质提供且在图27的背景内容中,ROM 606与HDD 610是这样的示例。
在本申请案中,用词“被配置为...”用于表示设备的组件具有能够执行所限定操作的配置。在此背景内容下,“配置”表示硬件或软件的设置或互连方式。例如,设备可具有提供所限定操作的专属硬件,或可经编程以执行功能的处理器或其他处理装置。“被配置为...”并非隐含设备组件需要被由任何方式改变以提供所限定的操作。
虽然本文已参照附加图式详细说明了本发明的说明性实施例,但应了解到本发明并不限于这些精确的实施例,且在本发明所属技术领域中具有通常知识者将可进行各种改变与修改,而不脱离如附加申请专利范围所限定的本揭示内容的精神与范围。例如,附属项的特征可与独立项的特征进行各种结合,而不会脱离本发明的范围。

Claims (33)

1.一种生成集成电路的电路块的布局的计算机实现的方法,包括:
接收限定所述电路块的逻辑操作的输入数据;
访问提供多个候选单元的单元库;
针对所述输入数据,确定要用于实现所述电路块的一组单元,所述单元限定要在基板上制造的电路元件;以及
通过以下步骤来生成所述布局:采用放置布线工具确定该组单元的放置,并且经由确定要在多个金属层内提供的布线路径来执行布线操作以将该组单元的接口端点交互连接,其中,所述多个金属层包括覆盖所述单元的最低金属层以及覆盖所述最低金属层的一个或多个其他金属层,所述单元的接口端点被提供在所述最低金属层内;
其中,确定布线路径的步骤包括:通过在生成的布局中提供(i)在所述一个或多个其他金属层中覆盖一组两个或多个单元的接口端点的交互连接,和(ii)所述交互连接与该组两个或多个单元的接口端点之间的通孔连接,来确定该组两个或多个单元的接口端点之间的布线路径。
2.根据权利要求1所述的方法,其中,提供步骤包括:在覆盖所述最低金属层的次低金属层中提供所述交互连接的至少一部分。
3.根据权利要求2所述的方法,其中,提供步骤包括:在覆盖所述次低金属层的所述其他金属层中的另一金属层中提供所述交互连接的至少一部分。
4.根据权利要求1所述的方法,其中:
所述接口端点包括输入端点与输出端点;以及
针对该组两个或多个单元,所述布线路径位于至少一个输入端点与至少一个输出端点之间。
5.根据权利要求1所述的方法,其中:
所述最低金属层中的接口端点是长形区域,所述长形区域经受设计约束,所述设计约束规定通孔连接与所述长形区域中的一个长形区域的末端的最小间隔;
所述次低金属层内的交互连接是长形区域;
第一金属层中的长形区域与所述次低金属层中的长形区域位于正交方向;且
提供步骤包括:提供通孔连接,所述通孔连接偏移自所述次低金属层中的交互连接的中心纵轴,以不违反所述设计约束。
6.根据权利要求1所述的方法,其中,所述多个候选单元包括一组或多组电性等效候选单元,其中,针对一组电性等效单元,所述电路功能性是相同的,但所述电性等效候选单元之间的接口端点的布局不同。
7.根据权利要求6所述的方法,其中,确定一组单元的确定步骤包括:针对具有所需单元功能性的给定单元,选择一组电性等效单元中的一个,只要所需单元功能性考虑到所述给定单元的接口端点与一个或多个其他单元的接口端点之间的布线路径的布线。
8.根据权利要求1所述的方法,其中,所述最低金属层是第零金属(M0)层。
9.根据权利要求1所述的方法,还包括以下步骤:
将所述电路块的布局并入集成电路的布局内;以及
根据所述集成电路的布局制造所述集成电路。
10.一种由权利要求9所述的方法所制造而成的集成电路。
11.一种生成集成电路的电路块的布局的计算机实现的方法,包括:
接收限定所述电路块的逻辑操作的输入数据;
访问提供多个候选单元的单元库;
针对所述输入数据,确定要用于实现所述电路块的一组单元,所述单元限定要在基板上制造的电路元件;以及
通过以下步骤来生成所述布局:采用放置布线工具确定该组单元的放置,并且经由确定要在多个金属层内提供的布线路径来执行布线操作以将该组单元的接口端点交互连接,其中,所述多个金属层包括覆盖所述单元的最低金属层以及覆盖所述最低金属层的一个或多个其他金属层,所述单元的接口端点被提供在所述最低金属层内;
其中,确定布线路径的步骤包括:通过在生成的布局中提供所述最低金属层内的接口端点之间的交互连接,来确定一组两个或多个单元的接口端点之间的布线路径。
12.根据权利要求11所述的方法,其中:
所述最低金属层中的接口端点是预定定向中的长形区域。
13.根据权利要求12所述的方法,其中,所述交互连接包括所述最低金属层中的长形区域,所述长形区域在单元的横向边缘处的接口端点与紧邻单元的横向边缘处的接口端点之间,所述横向边缘是相对于所述预定定向的。
14.根据权利要求12所述的方法,其中:
所述多个候选单元包括提供单元间距与至少电力轨连续性的至少一个填充单元,该填充单元限定在所述预定定向中的所述最低金属层中的长形填充区域;
其中,确定布线路径的步骤包括:在生成的布局中在所述最低金属层中提供交互连接,该交互连接在所述接口端点与中介填充单元的一个或多个长形填充区域之间。
15.根据权利要求14所述的方法,其中,针对在一对单元的接口端点之间的布线路径,确定布线路径的步骤包括:
在生成的布局中在所述最低金属层内提供交互连接,该交互连接在该对单元中的一个单元的接口端点与所述最低金属层内的中介填充单元的一个或多个长形填充区域中的第一长形填充区域之间;
在生成的布局中在所述最低金属层内提供交互连接,该交互连接在该对单元中的另一单元的接口端点与所述最低金属层内的中介填充单元的一个或多个长形填充区域中的不同的第二长形填充区域之间;以及
在生成的布局中在除了所述最低金属层以外的另一金属层内提供交互连接,该交互连接在所述第一长形填充区域与所述第二长形填充区域之间。
16.根据权利要求11所述的方法,其中:
所述接口端点包括输入端点与输出端点;以及
针对该组两个或多个单元,所述布线路径位于至少一个输入端点与至少一个输出端点之间。
17.根据权利要求11所述的方法,其中:
其中,确定布线路径的步骤包括:通过在生成的布局中提供(i)在所述一个或多个其他金属层中的一个其他金属层中覆盖一组两个或多个单元的接口端点的交互连接,(ii)所述交互连接与该组两个或多个单元的接口端点之间的通孔连接,和(iii)与所述交互连接空间性地隔开的其中禁用对接口端点的连接的布线的一个或多个禁用区域,来确定该组两个或多个单元的接口端点之间的布线路径。
18.根据权利要求11所述的方法,其中,所述最低金属层是第零金属(M0)层。
19.根据权利要求11所述的方法,其中,所述多个候选单元包括一组或多组电性等效候选单元,其中,针对一组电性等效单元,所述电路功能性是相同的,但所述电性等效候选单元之间的接口端点的布局不同。
20.根据权利要求19所述的方法,其中,确定一组单元的确定步骤包括:针对具有所需单元功能性的给定单元,选择一组电性等效单元中的一个,只要所需单元功能性考虑到所述给定单元的接口端点与一个或多个其他单元的接口端点之间的布线路径的布线。
21.根据权利要求11所述的方法,还包括以下步骤:
将所述电路块的布局并入集成电路的布局内;以及
根据所述集成电路的布局制造所述集成电路。
22.一种由权利要求21所述的方法所制造而成的集成电路。
23.一种生成集成电路的电路块的布局的计算机实现的方法,包括:
接收限定所述电路块的逻辑操作的输入数据;
访问提供多个候选单元的单元库,每个单元具有相关联表示,所述相关联表示使用至少两个空间性偏移的屏蔽图样在要制造的多个金属层中的各个金属层内限定各个单元构建;
针对所述输入数据,确定要用于实现所述电路块的一组单元,所述单元限定要在基板上制造的电路元件,该组单元包括至少两行单元,其中在一行单元中的单元相对于邻接行单元中的单元是空间性地反转的;以及
通过采用放置布线工具确定该组单元的放置来生成所述布局;
其中:
生成步骤包括:生成布局,其中所述空间性偏移的屏蔽图样与针对所述基板限定的布线网格对齐;以及
确定一组单元的确定步骤包括:在多组电性等效候选单元中选择,其中针对一组电性等效单元,所述电路功能性是相同的,但在所述至少两个空间性偏移的屏蔽图样中所述各个单元构建是互换的。
24.根据权利要求23所述的方法,其中,给定候选单元使用两个空间性偏移的屏蔽图样在要制造的多个金属层中限定各个单元构建。
25.根据权利要求24所述的方法,包括以下步骤:
针对给定候选单元,通过将可应用于各个单元构建的所述屏蔽图样互换来生成电性等效候选单元。
26.根据权利要求23所述的方法,其中,所述多个候选单元包括一组或多组电性等效候选单元。
27.根据权利要求23所述的方法,还包括以下步骤:
将所述电路块的布局并入集成电路的布局内;以及
根据所述集成电路的布局制造所述集成电路。
28.一种由权利要求27所述的方法所制造而成的集成电路。
29.一种计算机程序产品,该计算机程序产品在非暂态存储介质上,用于控制计算机以执行根据权利要求1所述的生成电路块的布局的方法。
30.一种计算机程序产品,该计算机程序产品在非暂态存储介质上,用于控制计算机以执行根据权利要求11所述的生成电路块的布局的方法。
31.一种计算机程序产品,该计算机程序产品在非暂态存储介质上,用于控制计算机以执行根据权利要求23所述的生成电路块的布局的方法。
32.一种非暂态存储介质,该非暂态存储介质储存单元库,所述单元库包括限定电路元件的多个候选单元,所述单元库提供一组或多组电性等效候选单元,其中针对一组电性等效单元,所述电路功能性是相同的,但所述等电性等效候选单元之间的接口端点的布局不同。
33.一种非暂态存储介质,该非暂态存储介质储存单元库,所述单元库包括限定电路元件的多个候选单元,所述单元库提供一组或多组电性等效候选单元,其中针对一组电性等效单元,所述电路功能性是相同的,但在至少两个空间性偏移的屏蔽图样中各个单元构建是互换的。
CN201810962263.9A 2017-08-30 2018-08-22 集成电路设计和/或制造 Active CN109426695B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US15/690,603 2017-08-30
US15/690,603 US10503859B2 (en) 2017-08-30 2017-08-30 Integrated circuit design and/or fabrication

Publications (2)

Publication Number Publication Date
CN109426695A true CN109426695A (zh) 2019-03-05
CN109426695B CN109426695B (zh) 2023-09-22

Family

ID=65437482

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810962263.9A Active CN109426695B (zh) 2017-08-30 2018-08-22 集成电路设计和/或制造

Country Status (4)

Country Link
US (1) US10503859B2 (zh)
KR (1) KR102593720B1 (zh)
CN (1) CN109426695B (zh)
TW (1) TWI794255B (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115310399A (zh) * 2022-08-28 2022-11-08 上海华大九天信息科技有限公司 集成电路版图中基于总线拓扑模式进行布线的方法
CN115577672A (zh) * 2022-11-17 2023-01-06 深圳鸿芯微纳技术有限公司 通孔单元的确定方法、装置、电子设备及存储介质
WO2023019954A1 (zh) * 2021-08-19 2023-02-23 深圳华大九天科技有限公司 时序修正方法及装置、计算装置和存储介质
CN116151184A (zh) * 2023-04-20 2023-05-23 广东赛昉科技有限公司 实现最佳去耦电容值且满足金属密度约束的布局方法

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11189569B2 (en) 2016-09-23 2021-11-30 Advanced Micro Devices, Inc. Power grid layout designs for integrated circuits
US10747931B2 (en) 2017-07-28 2020-08-18 Advanced Micro Devices, Inc. Shift of circuit periphery layout to leverage optimal use of available metal tracks in periphery logic
DE102017127276A1 (de) * 2017-08-30 2019-02-28 Taiwan Semiconductor Manufacturing Co., Ltd. Standardzellen und abwandlungen davon innerhalb einer standardzellenbibliothek
US11120190B2 (en) 2017-11-21 2021-09-14 Advanced Micro Devices, Inc. Metal zero power ground stub route to reduce cell area and improve cell placement at the chip level
US10446200B2 (en) * 2018-03-19 2019-10-15 Micron Technology, Inc. Memory device with configurable input/output interface
US10438937B1 (en) * 2018-04-27 2019-10-08 Advanced Micro Devices, Inc. Metal zero contact via redundancy on output nodes and inset power rail architecture
US10818762B2 (en) 2018-05-25 2020-10-27 Advanced Micro Devices, Inc. Gate contact over active region in cell
US11030372B2 (en) 2018-10-31 2021-06-08 Taiwan Semiconductor Manufacturing Company Ltd. Method for generating layout diagram including cell having pin patterns and semiconductor device based on same
US11387229B2 (en) 2019-06-14 2022-07-12 Samsung Electronics Co., Ltd. Semiconductor device
US10796061B1 (en) 2019-08-29 2020-10-06 Advanced Micro Devices, Inc. Standard cell and power grid architectures with EUV lithography
KR20210042218A (ko) 2019-10-08 2021-04-19 삼성전자주식회사 반도체 소자 및 제조방법
KR20210041737A (ko) 2019-10-08 2021-04-16 삼성전자주식회사 반도체 장치, 반도체 장치의 레이아웃 디자인 방법 및 반도체 장치의 제조 방법
US11550985B2 (en) 2020-04-09 2023-01-10 Tokyo Electron Limited Method for automated standard cell design
US11714945B2 (en) 2020-04-09 2023-08-01 Tokyo Electron Limited Method for automated standard cell design
US11132486B1 (en) 2020-05-21 2021-09-28 Taiwan Semiconductor Manufacturing Company, Ltd. Systems and methods for multi-bit memory with embedded logic
US11355395B2 (en) * 2020-05-22 2022-06-07 Taiwan Semiconductor Manufacturing Co., Ltd. Integrated circuit in hybrid row height structure

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101587508A (zh) * 2008-05-19 2009-11-25 Arm有限公司 用于确定数据路径的路由的方法、系统及计算机程序产品
US20110145775A1 (en) * 2009-12-11 2011-06-16 Kabushiki Kaisha Toshiba Cell library, layout method, and layout apparatus
CN103778273A (zh) * 2012-10-23 2014-05-07 Arm有限公司 产生包含标准单元及存储器实例的集成电路布图的方法
CN104517004A (zh) * 2013-09-27 2015-04-15 Arm有限公司 产生集成电路布图的方法

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7844936B2 (en) * 2007-08-22 2010-11-30 Infineon Technologies Ag Method of making an integrated circuit having fill structures
US7962878B2 (en) * 2008-02-26 2011-06-14 Infineon Technologies Ag Method of making an integrated circuit using pre-defined interconnect wiring
US8078784B2 (en) * 2008-04-23 2011-12-13 Airhop Communications Method and apparatus for data movement in a system on a chip
US8726217B2 (en) * 2011-01-20 2014-05-13 GlobalFoundries, Inc. Methods for analyzing cells of a cell library
US8612914B2 (en) * 2011-03-23 2013-12-17 Synopsys, Inc. Pin routing in standard cells
KR102415952B1 (ko) * 2015-07-30 2022-07-05 삼성전자주식회사 반도체 소자의 레이아웃 설계 방법, 및 그를 이용한 반도체 소자의 제조 방법
US9928333B2 (en) * 2015-07-30 2018-03-27 Samsung Electronics Co., Ltd. Methods of designing a layout of a semiconductor device including field effect transistor and methods of manufacturing a semicondutor device using the same

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101587508A (zh) * 2008-05-19 2009-11-25 Arm有限公司 用于确定数据路径的路由的方法、系统及计算机程序产品
US20110145775A1 (en) * 2009-12-11 2011-06-16 Kabushiki Kaisha Toshiba Cell library, layout method, and layout apparatus
CN103778273A (zh) * 2012-10-23 2014-05-07 Arm有限公司 产生包含标准单元及存储器实例的集成电路布图的方法
CN104517004A (zh) * 2013-09-27 2015-04-15 Arm有限公司 产生集成电路布图的方法

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023019954A1 (zh) * 2021-08-19 2023-02-23 深圳华大九天科技有限公司 时序修正方法及装置、计算装置和存储介质
CN115310399A (zh) * 2022-08-28 2022-11-08 上海华大九天信息科技有限公司 集成电路版图中基于总线拓扑模式进行布线的方法
CN115310399B (zh) * 2022-08-28 2024-06-21 上海华大九天信息科技有限公司 集成电路版图中基于总线拓扑模式进行布线的方法
CN115577672A (zh) * 2022-11-17 2023-01-06 深圳鸿芯微纳技术有限公司 通孔单元的确定方法、装置、电子设备及存储介质
CN116151184A (zh) * 2023-04-20 2023-05-23 广东赛昉科技有限公司 实现最佳去耦电容值且满足金属密度约束的布局方法

Also Published As

Publication number Publication date
KR20190024723A (ko) 2019-03-08
US20190065650A1 (en) 2019-02-28
KR102593720B1 (ko) 2023-10-25
CN109426695B (zh) 2023-09-22
TW201921602A (zh) 2019-06-01
TWI794255B (zh) 2023-03-01
US10503859B2 (en) 2019-12-10

Similar Documents

Publication Publication Date Title
CN109426695A (zh) 集成电路设计和/或制造
US10796053B2 (en) Computer implemented system and method for generating a layout of a cell defining a circuit component
KR102423040B1 (ko) 3차원 집적회로 디자인을 생성하는 방법
CN105095561B (zh) 掩膜感知布线及所产生的设备
US7989849B2 (en) Apparatuses and methods for efficient power rail structures for cell libraries
EP0271596B1 (en) VLSI-chip design and manufacturing process
US8132142B2 (en) Various methods and apparatuses to route multiple power rails to a cell
US11288432B2 (en) Computer implemented system and method for generating a layout of a cell defining a circuit component
CN101587508B (zh) 用于确定数据路径的路由的方法、系统及计算机程序产品
US9653413B2 (en) Power grid conductor placement within an integrated circuit
KR102224518B1 (ko) 더블 패터닝 레이아웃 설계 방법
CN205428923U (zh) 集成半导体电路裸片、集成半导体电路器件和集成半导体电路系统
JP2005135971A (ja) 半導体集積回路の配線設計方法及び半導体集積回路
US10990741B2 (en) Multiple patterning method and system for implementing the method
KR20150145181A (ko) 집적회로 내부의 비아 배치
TWI803481B (zh) 產生積體電路的電路模塊的佈局的方法,及其電腦程式產品、非暫時性儲存媒體,及積體電路
US20040216067A1 (en) Method of determining arrangement of wire in semiconductor intergrated circuit
US7958467B2 (en) Deterministic system and method for generating wiring layouts for integrated circuits
Kabir et al. Holistic Chiplet–Package Co-Optimization for Agile Custom 2.5-D Design
US8250512B2 (en) Apparatus for preventing congestive placement and associated method
JP2006155182A (ja) 半導体集積回路の設計方法および設計プログラム
JP2004157627A (ja) 配置配線プログラムおよび半導体装置の製造方法
JPH10144798A (ja) グリッド化ポートのための自動レイアウトワイヤ最小化
WO2008022247A2 (en) Deterministic system and method for generating wiring layouts for integrated circuits
JPH0887542A (ja) Lsi配線方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant