TWI794255B - 積體電路設計及(或)製造 - Google Patents

積體電路設計及(或)製造 Download PDF

Info

Publication number
TWI794255B
TWI794255B TW107124606A TW107124606A TWI794255B TW I794255 B TWI794255 B TW I794255B TW 107124606 A TW107124606 A TW 107124606A TW 107124606 A TW107124606 A TW 107124606A TW I794255 B TWI794255 B TW I794255B
Authority
TW
Taiwan
Prior art keywords
cells
cell
layout
metal layer
interface
Prior art date
Application number
TW107124606A
Other languages
English (en)
Other versions
TW201921602A (zh
Inventor
簡琉 皮洛依
Original Assignee
英商Arm股份有限公司
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 英商Arm股份有限公司 filed Critical 英商Arm股份有限公司
Publication of TW201921602A publication Critical patent/TW201921602A/zh
Application granted granted Critical
Publication of TWI794255B publication Critical patent/TWI794255B/zh

Links

Images

Classifications

    • 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
    • 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

一種電腦實施方法,用於產生積體電路的電路模塊的佈局,包含:接收界定電路模塊的邏輯作業的輸入資料;存取提供複數個候選單元的單元資源庫;參照輸入資料,判定要用於實施電路模塊的一組單元,單元界定要在基板上製造的電路元件;以及藉由採用放置佈局工具判定該組單元的放置,並執行佈線作業以將該組單元的介面端點交互連接以產生佈局,此係藉由判定要在複數個金屬層內提供的佈線路徑,複數個金屬層包含覆蓋單元的最低金屬層以及覆蓋最低金屬層的一或更多個其他金屬層,單元的介面端點被提供在最低金屬層內;其中判定佈線路徑的步驟包含:在一組兩或更多個單元的介面端點之間判定佈線路徑,此係藉由在所產生的佈局中提供:(i)在一或更多個其他金屬層中覆蓋該組兩或更多個單元的介面端點的交互連結;以及(ii)交互連結與該組兩或更多個單元的介面端點之間的通孔連結。

Description

積體電路設計及(或)製造
本揭示內容相關於積體電路設計,例如相關於用於產生這種積體電路的電路模塊的佈局的技術。電路模塊可代表整體積體電路,或積體電路內的部件。揭示內容亦可包含製造使用這些技術所設計的積體電路。
在半導體積體電路的設計中,已知提供自動化工具,自動化工具使用所計畫的電路模塊的功能性設計以及單元資源庫以產生電路模塊的佈局,功能性設計識別此電路模塊要執行的邏輯作業(例如為設計的閘層級電路列表(netlist)或暫存器傳輸層級(Register Transfer Level)表示),單元資源庫提供一組單元(單元界定電路元件,且為用於根據功能性設計來建置電路模塊佈局的「建置模塊」)。
特定而言,自動化工具的形式可為所謂的放置佈線工具(place and route tool),放置佈線工具將所需的單元放置在總體佈局(或「平面佈置圖」)內,且隨後執行佈線作業來判定要在數個金屬層內提供的佈線路徑,以將各個單元交互連接,使得單元將協同執行所需的電路模塊邏輯作業。
隨著所需的電路模塊的複雜度提升,越來越難以在可用的金屬層內容納所有的所需佈線路徑,且有時為了對所有欲提供的各種佈線路徑提供足夠的空間,電路模塊所需的面積會大於本來所需的面積。
因此,可期望提供改良的技術,以在電路模塊的佈局內容納所需的佈線路徑。
在一種範例設置中,提供一種電腦實施方法,用於產生積體電路的電路模塊的佈局,包含: 接收界定電路模塊的邏輯作業的輸入資料; 存取提供複數個候選單元的單元資源庫; 參照輸入資料,判定要用於實施電路模塊的一組單元,此組單元界定要在基板上製造的電路元件;以及 藉由採用放置佈局工具判定此組單元的放置,並執行佈線作業以將此組單元的介面端點交互連接以產生佈局,此係藉由判定要在複數個金屬層內提供的佈線路徑,複數個金屬層包含覆蓋單元的最低金屬層以及覆蓋最低金屬層的一或更多個其他金屬層,單元的介面端點被提供在最低金屬層內; 其中判定佈線路徑的步驟包含:在一組兩或更多個單元的介面端點之間判定佈線路徑,此係藉由在所產生的佈局中提供:(i)在一或更多個其他金屬層中的一個其他金屬層中覆蓋此組兩或更多個單元的介面端點的交互連結;以及(ii)交互連結與此組兩或更多個單元的介面端點之間的通孔連結。
在另一種範例設置中,提供一種電腦實施方法,用於產生積體電路的電路模塊的佈局,包含: 接收界定電路模塊的邏輯作業的輸入資料; 存取提供複數個候選單元的單元資源庫; 參照輸入資料,判定要用於實施電路模塊的一組單元,此組單元界定要在基板上製造的電路元件;以及 藉由採用放置佈局工具判定此組單元的放置,並執行佈線作業以將此組單元的介面端點交互連接以產生佈局,此係藉由判定要在複數個金屬層內提供的佈線路徑,複數個金屬層包含覆蓋單元的最低金屬層以及覆蓋最低金屬層的一或更多個其他金屬層,單元的介面端點被提供在最低金屬層內; 其中判定佈線路徑的步驟包含:在一組兩或更多個單元的介面端點之間判定佈線路徑,此係藉由在所產生的佈局中提供在最低金屬層內的介面端點之間的交互連結。
在另一種範例設置中,提供一種電腦實施方法,用於產生積體電路的電路模塊的佈局,包含: 接收界定電路模塊的邏輯作業的輸入資料; 存取提供複數個候選單元的單元資源庫,每一單元具有一相關聯表示,此相關聯表示使用至少兩個空間性偏移的遮罩圖樣在要製造的複數個金屬層中的各別金屬層內界定各別單元構造; 參照輸入資料,判定要用於實施電路模塊的一組單元,單元界定要在基板上製造的電路元件,此組單元包含至少兩列單元,其中在一列單元中的單元相對於鄰接列單元中的單元是空間性地反轉的;以及 藉由採用放置佈線工具以判定此組單元的放置來產生佈局; 其中: 產生步驟包含:產生佈局,其中空間性偏移的遮罩圖樣與針對基板所界定的佈線網格對齊;以及 判定一組單元的步驟包含:在電性等效的候選單元組之中選擇,其中對於一組電性等效單元而言,電路功能性為相同,但在至少兩個空間性偏移遮罩圖樣中各別單元構造為互換的。
在另一種範例設置中,提供一種非暫態性儲存媒體,非暫態性儲存媒體儲存單元資源庫,單元資源庫包含界定電路元件的複數個候選單元,單元資源庫提供一或更多組電性等效的候選單元,其中對於一組電性等效單元而言,電路功能性為相同,但電性等效候選單元的介面端點佈局不同。
在另一種範例設置中,提供一種非暫態性儲存媒體,非暫態性儲存媒體儲存單元資源庫,單元資源庫包含界定電路元件的複數個候選單元,單元資源庫提供一或更多組電性等效的候選單元,其中對於一組電性等效單元而言,電路功能性為相同,但在至少兩個空間性偏移遮罩圖樣中各別單元構造為互換的。
在連同附加圖式參閱下文的範例說明之後,將可更顯然明瞭本技術的進一步的態樣、特徵與優點。
在參照附加圖式討論具體實施例之前,下面提供對於具體實施例的說明。
隨著用於製造積體電路的製程縮小至未見的小尺寸,可需執行數個設計準則,以確保製造積體電路的晶圓廠能夠獲得滿意度良率層級。例如在先進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的放置佈線作業時,放置佈線工具35可從單元資源庫20、25存取關於所需單元的資訊,且此資訊將包含單元定義資料。
存在數種可讓此資訊與單元定義資料可用於放置佈線工具的方式,第6圖圖示其中一種機制。特定而言,在單元資源庫內,每一單元可包含提供單元佈局的所有細節的單元視圖300,且個別地可提供關於單元的各種特性的資訊,諸如時序、電力消耗、輸入電容等等。在一個具體實施例中,所有這些特性被指定在特定檔案305內,在一些具體實施例中特定檔案305被稱為自由檔案。單元佈局視圖300將包含單元的所有細節,且因此將包含單元定義資料。
然而,放置佈線工具35不需要單元視圖300的所有細節,而僅需要提供放置佈線工具所需的顯著資訊以辨別如何建置單元間佈線路徑的概略視圖。第6圖中圖示此概略視圖310的範例,有時概略視圖310亦稱為LEF(資源庫交換格式)視圖。在單元的標準概略視圖中,單元所提供的金屬結構之每一者,將被識別為接腳315或障礙320。接腳為用於提供輸入至單元或從單元提供輸出的金屬區段,且因此為需要由以放置佈局工具判定的佈線路徑來連接的金屬結構。障礙320為應保持與放置佈局工具所產生的佈線路徑隔離的金屬區段。例如,內部網路將被識別為概略視圖310內的障礙320。
概略視圖310由此將每一金屬區段分類為接腳、障礙、或多餘金屬區段。概略視圖亦將擷取這些各個結構所位於其內的一或多個金屬層。
第7圖示意圖示說明由第1圖的設置所產生的積體電路佈局,包含最低(M0)層,最低層具有在設置於網格700上的金屬層內的水平長形構造(如平面圖中所繪製的),網格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層中輸出接腳C 1340的交互連結的部分。在此範例中,單元Y 1310的另一輸入接腳B 1350被圖示為未連接。
第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,在一或更多個禁用區域中禁用對介面端點的連結的佈線。
第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,在一組兩或更多個單元的介面端點之間判定佈線路徑,此係藉由在步驟2040在所產生的佈局中提供:(i)在一或更多個其他金屬層中的一個其他金屬層中覆蓋此組兩或更多個單元的介面端點的交互連結;以及(ii)交互連結與此組兩或更多個單元的介面端點之間的通孔連結。
第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為對此的範例。
在本申請案中,用詞「經配置以...」用於表示設備的元件具有能夠執行所界定作業的配置。在此背景內容下,「配置」表示硬體或軟體的設置或互連方式。例如,設備可具有提供所界定作業的專屬硬體,或可經編程以執行功能的處理器或其他處理裝置。「經配置以...」並非隱含設備元件需要被由任何方式改變以提供所界定的作業。
雖然本文已參照附加圖式詳細說明了本發明的說明性具體實施例,但應瞭解到本發明並不限於這些精確的具體實施例,且在本發明所屬技術領域中具有通常知識者將可進行各種改變與修改,而不脫離如附加申請專利範圍所界定的本揭示內容的精神與範圍。例如,附屬項的特徵可與獨立項的特徵進行各種結合,而不會脫離本發明的範圍。
10‧‧‧邏輯定義20‧‧‧單元資源庫25‧‧‧單元資源庫30‧‧‧電腦實施合成工具35‧‧‧放置佈局工具50‧‧‧標準單元列55‧‧‧標準單元列60‧‧‧標準單元列65‧‧‧標準單元列70‧‧‧個別標準單元75‧‧‧個別標準單元80‧‧‧個別標準單元85‧‧‧個別標準單元90‧‧‧個別標準單元95‧‧‧個別標準單元105‧‧‧基板110‧‧‧部件層級層115‧‧‧第零金屬(M0)層120‧‧‧中介通孔層(V0)125‧‧‧第一金屬(M1)層130‧‧‧中介通孔層(V1)135‧‧‧第二金屬(M2)層150‧‧‧單元155‧‧‧電力網路區段160‧‧‧電力網路區段162‧‧‧金屬區段164‧‧‧金屬區段166‧‧‧金屬區段172‧‧‧金屬區段174‧‧‧金屬區段182‧‧‧金屬區段184‧‧‧金屬區段186‧‧‧金屬區段192‧‧‧多餘金屬區段194‧‧‧多餘金屬區段200‧‧‧PMOS電晶體205‧‧‧PMOS電晶體210‧‧‧NMOS電晶體215‧‧‧NMOS電晶體220‧‧‧輸入節點225‧‧‧輸入節點230‧‧‧輸入節點235‧‧‧輸入節點240‧‧‧輸出路徑245‧‧‧交互連結300‧‧‧單元視圖305‧‧‧特定檔案310‧‧‧概略視圖315‧‧‧接腳320‧‧‧障礙700‧‧‧網格710‧‧‧電力軌720‧‧‧其他連結730‧‧‧輸入接腳740‧‧‧輸入接腳750‧‧‧網格760‧‧‧M1構造770‧‧‧M1構造780‧‧‧通孔790‧‧‧通孔795‧‧‧M0構造邊緣800‧‧‧介面端點810‧‧‧介面端點820‧‧‧連結部分830‧‧‧單元840‧‧‧單元900‧‧‧介面端點910‧‧‧單元920‧‧‧交互連結930‧‧‧鄰接部分940‧‧‧單元950‧‧‧交互連結960‧‧‧介面端點970‧‧‧通孔1000‧‧‧介面端點1010‧‧‧單元1020‧‧‧介面端點1030‧‧‧緊鄰單元1040‧‧‧通孔1050‧‧‧M1層構造1060‧‧‧另一通孔1070‧‧‧交互連結1100‧‧‧介面端點1110‧‧‧介面端點1120‧‧‧介面端點1130‧‧‧緊鄰功能單元1140‧‧‧M0層軌1150‧‧‧M0層軌1160‧‧‧通孔1165‧‧‧通孔1170‧‧‧交互連結1175‧‧‧通孔1180‧‧‧通孔1190‧‧‧其他軌1195‧‧‧其他軌1200‧‧‧網格位置1210‧‧‧網格位置1220‧‧‧網格位置1230‧‧‧導體1240‧‧‧縫隙1250‧‧‧交互連結1260‧‧‧交互連結1270‧‧‧交互連結1300‧‧‧單元1310‧‧‧單元1320‧‧‧交互連結1330‧‧‧輸入接腳A1340‧‧‧輸出接腳C1350‧‧‧輸入接腳B1400‧‧‧單元Y的電性等效(EEQ)版本1410‧‧‧輸入接腳1420‧‧‧輸入接腳1510‧‧‧單元1520‧‧‧部分1530‧‧‧通孔1600‧‧‧M0部分1610‧‧‧M1部分1620‧‧‧阻擋區域1630‧‧‧阻擋區域1700‧‧‧第一列1710‧‧‧第一定向1720‧‧‧緊鄰列1730‧‧‧垂直反轉定向1800‧‧‧M2佈線網格1805‧‧‧第一列1810‧‧‧單元列邊界1815‧‧‧第二列單元2000‧‧‧步驟2010‧‧‧步驟2020‧‧‧步驟2030‧‧‧步驟2040‧‧‧步驟2100‧‧‧步驟2110‧‧‧步驟2200‧‧‧光碟媒體2300‧‧‧硬碟媒體2400‧‧‧步驟2410‧‧‧步驟2420‧‧‧步驟2430‧‧‧步驟2500‧‧‧步驟2510‧‧‧步驟2520‧‧‧步驟2530‧‧‧步驟2600‧‧‧步驟2610‧‧‧步驟600‧‧‧一般用途電腦602‧‧‧中央處理單元604‧‧‧隨機存取記憶體606‧‧‧唯讀記憶體608‧‧‧網路介面卡610‧‧‧硬碟機612‧‧‧顯示驅動器614‧‧‧監視器616‧‧‧使用者輸入/輸出電路618‧‧‧鍵盤620‧‧‧滑鼠622‧‧‧通用匯流排
參照如圖示說明於附加圖式中的本技術的具體實施例,來進一步示例說明本技術,在圖式中:
第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圖示意圖示說明一種資料處理系統。
國內寄存資訊 (請依寄存機構、日期、號碼順序註記) 無
國外寄存資訊 (請依寄存國家、機構、日期、號碼順序註記) 無
2000‧‧‧步驟
2010‧‧‧步驟
2020‧‧‧步驟
2030‧‧‧步驟
2040‧‧‧步驟

Claims (31)

  1. 一種電腦實施方法,用於產生一積體電路的一電路模塊的一佈局,包含以下步驟:接收步驟,接收界定該電路模塊的一邏輯作業的輸入資料;存取步驟,存取提供複數個候選單元的一單元資源庫;判定步驟,參照該輸入資料,判定要用於實施該電路模塊的一組單元,該組單元界定要在一基板上製造的電路元件;以及產生步驟,藉由採用一放置佈局工具判定該組單元的一放置,並執行一佈線作業以將該組單元的介面端點交互連接以產生該佈局,此係藉由判定要在複數個金屬層內提供的佈線路徑,該複數個金屬層包含覆蓋該等單元的一最低金屬層以及覆蓋該最低金屬層的一或更多個其他金屬層,該等單元的介面端點被提供在該最低金屬層內;其中該判定佈線路徑的步驟包含以下步驟:在一組兩或更多個單元的介面端點之間判定一佈線路徑,此係藉由在該所產生的佈局中提供:(i)在該一或更多個其他金屬層中覆蓋該組兩或更多個單元的該等介面端點的一交互連結;以及(ii)該交互連結與該組兩或更 多個單元的該等介面端點之間的通孔連結;其中該複數個候選單元包含一或更多組電性等效的候選單元,其中對於一組電性等效單元而言,該電路功能性為相同,但該等電性等效候選單元的該介面端點佈局不同。
  2. 如請求項1所述之方法,其中該提供步驟包含以下步驟:在覆蓋該最低金屬層的一次低金屬層中提供該交互連結的至少一部分。
  3. 如請求項2所述之方法,其中該提供步驟包含以下步驟:在覆蓋該次低金屬層的該等其他金屬層中的另一金屬層中提供該交互連結的至少一部分。
  4. 如請求項1所述之方法,其中:該等介面端點包含輸入端點與輸出端點;以及對於該組兩或更多個單元,該佈線路徑位於至少一個輸入端點與至少一個輸出端點之間。
  5. 如請求項1所述之方法,其中:該最低金屬層中的該等介面端點為長形區域,該等長形區域經受一設計準則,該設計準則規定一通孔連結與該等長形區域中之一者的一末端的一最小間隔;該次低金屬層內的交互連結為長形區域;該第一金屬層與該次低金屬層中的該等長形區域係位於正交方向;且 該提供步驟包含以下步驟:提供一通孔連結,該通孔連結偏移自該次低金屬層中的一交互連結的一中心縱軸,以不違反該設計準則。
  6. 如請求項1所述之方法,其中判定一組單元的該判定步驟包含以下步驟:對具有一所需單元功能性的一給定單元,選定一組電性等效單元中之一者,只要所需單元功能性考慮到該給定單元的介面端點與一或更多個其他單元之間的佈線路徑的該佈線。
  7. 如請求項1所述之方法,其中該最低金屬層為一第零金屬(M0)層。
  8. 如請求項1所述之方法,該方法進一步包含以下步驟:將該電路模塊的該佈局併入一積體電路的一佈局內;以及由該積體電路的該佈局製造該積體電路。
  9. 一種由請求項8所述之方法所製造而成的積體電路。
  10. 一種電腦實施方法,用於產生一積體電路的一電路模塊的一佈局,該方法包含以下步驟:接收步驟,接收界定該電路模塊的一邏輯作業的輸入資料;存取步驟,存取提供複數個候選單元的一單元資源 庫;判定步驟,參照該輸入資料,判定要用於實施該電路模塊的一組單元,該組單元界定要在一基板上製造的電路元件;以及產生步驟,藉由採用一放置佈局工具判定該組單元的一放置,並執行一佈線作業以將該組單元的介面端點交互連接以產生該佈局,此係藉由判定要在複數個金屬層內提供的佈線路徑,該複數個金屬層包含覆蓋該等單元的一最低金屬層以及覆蓋該最低金屬層的一或更多個其他金屬層,該等單元的介面端點被提供在該最低金屬層內;其中該判定佈線路徑的步驟包含以下步驟:在一組兩或更多個單元的介面端點之間判定一佈線路徑,此係藉由在該所產生的佈局中提供該最低金屬層內的該等介面端點之間的一交互連結;其中該複數個候選單元包含一或更多組電性等效的候選單元,其中對於一組電性等效單元而言,該電路功能性為相同,但該等電性等效候選單元的該介面端點佈局不同。
  11. 如請求項10所述之方法,其中:該最低金屬層中的該等介面端點為在一預定定向中的長形區域。
  12. 如請求項11所述之方法,其中該交互連結包含該最低金屬層中的一長形區域,該長形區域在一單元的一橫向邊緣(相對於該預定定向)處的一介面端點與一緊鄰單元的一橫向邊緣處的一介面端點之間。
  13. 如請求項11所述之方法,其中:該複數個候選單元包含提供單元間距與至少電力軌連續性的至少一個填充單元,該填充單元界定在該預定定向中的該最低金屬層中的長形填充區域;其中該判定佈線路徑的步驟包含以下步驟:在該所產生的佈局中在該最低金屬層中提供一交互連結,該交互連結在該等介面端點以及一中介填充單元的一或更多個長形填充區域之間。
  14. 如請求項13所述之方法,其中對於在一對單元的介面端點之間的一佈線路徑,該判定佈線路徑的步驟包含以下步驟:在該所產生的佈局中在該最低金屬層內提供一交互連結,該交互連結在該對單元中的一個單元的一介面端點以及該最低金屬層內的一中介填充單元的該一或更多個長形填充區域中的一第一長形填充區域之間;在該所產生的佈局中在該最低金屬層內提供一交互連結,該交互連結在該對單元中的另一個單元的一介 面端點以及該最低金屬層內的該中介填充單元的該一或更多個長形填充區域中的不同的一第二長形填充區域之間;以及在該所產生的佈局中在除了該最低金屬層以外的另一金屬層內,在該第一與第二長形填充區域之間提供一交互連結。
  15. 如請求項10所述之方法,其中:該等介面端點包含輸入端點與輸出端點;以及對於該組兩或更多個單元,該佈線路徑位於至少一個輸入端點與至少一個輸出端點之間。
  16. 如請求項10所述之方法,其中:其中該判定佈線路徑的步驟包含以下步驟:在一組兩或更多個單元的介面端點之間判定一佈線路徑,此係藉由在該所產生的佈局中提供:(i)在該一或更多個其他金屬層中的一個其他金屬層中覆蓋該組兩或更多個單元的一介面端點的一交互連結;(ii)該交互連結與該組兩或更多個單元的該等介面端點之間的一通孔連結;(iii)與該交互連結空間性地隔開的一或更多個禁用區域,在該一或更多個禁用區域中禁用對該介面端點的連結的該佈線。
  17. 如請求項10所述之方法,其中該最低金屬層為一第零金屬(M0)層。
  18. 如請求項10所述之方法,其中判定一組單元的該判定步驟包含以下步驟:對具有一所需單元功能性的一給定單元,選定一組電性等效單元中之一者,只要所需單元功能性考慮到該給定單元的介面端點與一或更多個其他單元之間的佈線路徑的該佈線。
  19. 如請求項10所述之方法,該方法進一步包含以下步驟:將該電路模塊的該佈局併入一積體電路的一佈局內;以及由該積體電路的該佈局製造該積體電路。
  20. 一種由請求項19所述之方法所製造而成的積體電路。
  21. 一種電腦實施方法,用於產生一積體電路的一電路模塊的一佈局,包含以下步驟:接收步驟,接收界定該電路模塊的一邏輯作業的輸入資料;存取步驟,存取提供複數個候選單元的一單元資源庫,每一單元具有一相關聯表示,該相關聯表示使用至少兩個空間性偏移的遮罩圖樣在要製造的複數個金屬層中的各別金屬層內界定各別單元構成;判定步驟,參照該輸入資料,判定要用於實施該電路模塊的一組單元,該等單元界定要在一基板上製造 的電路元件,該組單元包含至少兩列單元,其中在一列單元中的單元相對於一鄰接列單元中的單元是空間性地反轉的;以及產生步驟,藉由採用一放置佈線工具以判定該組單元的一放置來產生該佈局;其中:該產生步驟包含以下步驟:產生一佈局,其中該等空間性偏移的遮罩圖樣與針對該基板所界定的一佈線網格對齊;以及判定一組單元的該判定步驟包含以下步驟:在電性等效的候選單元組中選擇,其中對於一組電性等效單元而言,該電路功能性為相同,但在該至少兩個空間性偏移遮罩圖樣中該等各別單元構成為互換的。
  22. 如請求項21所述之方法,其中一給定候選單元使用兩個空間性偏移遮罩圖樣在要製造的複數個金屬層中界定各別的單元構成。
  23. 如請求項22所述之方法,該方法包含以下步驟:對於一給定候選單元,產生一電性等效候選單元,此係藉由將可應用於各別單元構成的該等遮罩圖樣互換。
  24. 如請求項21所述之方法,其中該複數個候 選單元包含一或更多組電性等效的候選單元。
  25. 如請求項21所述之方法,該方法進一步包含以下步驟:將該電路模塊的該佈局併入在一積體電路的一佈局內;以及由該積體電路的該佈局製造該積體電路。
  26. 一種由請求項25所述之方法所製造而成的積體電路。
  27. 一種電腦程式產品,該電腦程式產品在一非暫態性儲存媒體上,用於控制一電腦以執行如請求項1所述之用於產生一電路模塊的一佈局的方法。
  28. 一種電腦程式產品,該電腦程式產品在一非暫態性儲存媒體上,用於控制一電腦以執行如請求項10所述之用於產生一電路模塊的一佈局的方法。
  29. 一種電腦程式產品,該電腦程式產品在一非暫態性儲存媒體上,用於控制一電腦以執行如請求項21所述之用於產生一電路模塊的一佈局的方法。
  30. 一種非暫態性儲存媒體,該非暫態性儲存媒體儲存一單元資源庫,該單元資源庫包含界定電路元件的複數個候選單元,該單元資源庫提供一或更多組電性等效的候選單元,其中對於一組電性等效單元而言,該電路功能性為相同,但該等電性等效候選單 元的該介面端點佈局不同。
  31. 一種非暫態性儲存媒體,該非暫態性儲存媒體儲存一單元資源庫,該單元資源庫包含界定電路元件的複數個候選單元,該單元資源庫提供一或更多組電性等效的候選單元,其中對於一組電性等效單元而言,該電路功能性為相同,但在至少兩個空間性偏移遮罩圖樣中該等各別單元構成為互換的。
TW107124606A 2017-08-30 2018-07-17 積體電路設計及(或)製造 TWI794255B (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
TW201921602A TW201921602A (zh) 2019-06-01
TWI794255B true TWI794255B (zh) 2023-03-01

Family

ID=65437482

Family Applications (1)

Application Number Title Priority Date Filing Date
TW107124606A TWI794255B (zh) 2017-08-30 2018-07-17 積體電路設計及(或)製造

Country Status (4)

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

Families Citing this family (19)

* 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 삼성전자주식회사 반도체 장치, 반도체 장치의 레이아웃 디자인 방법 및 반도체 장치의 제조 방법
US11714945B2 (en) 2020-04-09 2023-08-01 Tokyo Electron Limited Method for automated standard cell design
US11550985B2 (en) * 2020-04-09 2023-01-10 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
CN113673191B (zh) * 2021-08-19 2022-04-12 深圳华大九天科技有限公司 时序修正方法及装置、计算装置和存储介质
CN115577672B (zh) * 2022-11-17 2023-03-14 深圳鸿芯微纳技术有限公司 通孔单元的确定方法、装置、电子设备及存储介质
CN116151184B (zh) * 2023-04-20 2023-08-01 广东赛昉科技有限公司 实现最佳去耦电容值且满足金属密度约束的布局方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090055793A1 (en) * 2007-08-22 2009-02-26 Hanno Melzner Method of making an integrated circuit having fill structures
US20110145775A1 (en) * 2009-12-11 2011-06-16 Kabushiki Kaisha Toshiba Cell library, layout method, and layout apparatus
US20120241986A1 (en) * 2011-03-23 2012-09-27 Synopsys, Inc. Pin Routing in Standard Cells
US20170032074A1 (en) * 2015-07-30 2017-02-02 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
TW201715422A (zh) * 2015-07-30 2017-05-01 三星電子股份有限公司 生成半導體裝置佈局的方法、設計半導體裝置佈局的方法及製作半導體裝置的方法

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
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
US8024690B2 (en) * 2008-05-19 2011-09-20 Arm Limited Method, system and computer program product for determining routing of data paths in interconnect circuitry providing a narrow interface for connection to a first device and a wide interface for connection to a distributed plurality of further devices
US8726217B2 (en) * 2011-01-20 2014-05-13 GlobalFoundries, Inc. Methods for analyzing cells of a cell library
US8645893B1 (en) * 2012-10-23 2014-02-04 Arm Limited Method of generating a layout of an integrated circuit comprising both standard cells and at least one memory instance
US8959472B1 (en) * 2013-09-27 2015-02-17 Arm Limited Considering compatibility of adjacent boundary regions for standard cells placement and routing

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090055793A1 (en) * 2007-08-22 2009-02-26 Hanno Melzner Method of making an integrated circuit having fill structures
US20110145775A1 (en) * 2009-12-11 2011-06-16 Kabushiki Kaisha Toshiba Cell library, layout method, and layout apparatus
US20120241986A1 (en) * 2011-03-23 2012-09-27 Synopsys, Inc. Pin Routing in Standard Cells
US20170032074A1 (en) * 2015-07-30 2017-02-02 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
TW201715422A (zh) * 2015-07-30 2017-05-01 三星電子股份有限公司 生成半導體裝置佈局的方法、設計半導體裝置佈局的方法及製作半導體裝置的方法

Also Published As

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

Similar Documents

Publication Publication Date Title
TWI794255B (zh) 積體電路設計及(或)製造
US11714947B2 (en) Method and layout of an integrated circuit
US20190026417A1 (en) Computer Implemented System and Method for Generating a Layout of a Cell Defining a Circuit Component
KR102423040B1 (ko) 3차원 집적회로 디자인을 생성하는 방법
TWI775000B (zh) 產生積體電路佈局圖的方法及用於處理積體電路佈局圖的系統
US8037441B2 (en) Gridded-router based wiring on a non-gridded library
US9536035B2 (en) Wide pin for improved circuit routing
US11163933B2 (en) Layout method
US9824968B2 (en) Method, system and computer readable medium using stitching for mask assignment of patterns
US10831972B2 (en) Capacity model for global routing
JP2018511928A (ja) 3d集積回路のための重畳ブロックおよび複製されたピンを用いた知的財産ブロック設計
TWI803481B (zh) 產生積體電路的電路模塊的佈局的方法,及其電腦程式產品、非暫時性儲存媒體,及積體電路
US7958467B2 (en) Deterministic system and method for generating wiring layouts for integrated circuits
Uppula et al. Impact on the Physical Design flow, due to Repositioning the Macros in the Floorplan stage of Video decoder at Lower Technologies
Marek-Sadowska Automated Routing for VLSI: Kuh's Group Contributions
JP2004157627A (ja) 配置配線プログラムおよび半導体装置の製造方法
JPH10144798A (ja) グリッド化ポートのための自動レイアウトワイヤ最小化
WO2008022247A2 (en) Deterministic system and method for generating wiring layouts for integrated circuits