本發明的實施例涉及半導體領域,更具體地涉及用于多重圖案化技術的設計規則檢查的方法和系統。
背景技術:
為了使用滿足更大的技術節點的制造設備,已經開發了多重曝光或多重圖案化技術(mpt)。mpt涉及通過順序使用多個不同的掩模來形成圖案。mpt類似于對于圖形理論中的布局劃分的著色問題的布局劃分方法。
技術實現要素:
本發明的實施例提供了一種用于多重圖案化技術的設計規則檢查的方法,包括:確定是否存在表示集成電路(ic)的布局的多重圖案化的圖案的至少五個鄰近的圖案中的任意兩個之間的每一個間隔都小于閾值間隔的沖突圖形;以及如果存在所述沖突圖形,則修改所述多重圖案化的圖案以排除由所述沖突圖形表示的圖案,以用于所述集成電路的制造。
本發明的實施例還提供了一種用于多重圖案化技術的設計規則檢查的系統,包括:存儲器件,配置為存儲計算機程序代碼;以及處理器,配置為執行所述存儲器件中的計算機程序代碼以用于:基于與集成電路(ic)的布局對應的數據,建立表示多重圖案化的圖案的圖形;檢查所述圖形是否包括表示所述多重圖案化的圖案的至少五個鄰近的圖案中的任意兩個之間的每一個間隔都小于閾值間隔的子圖;以及當所述圖形包括所述子圖時,修改所述圖形以排除所述子圖,以用于所述集成電路的制造。
本發明的實施例還提供了一種用于多重圖案化技術的設計規則檢查的系統,所述系統具有包括計算機可執行指令的永久計算機可讀介質,當由處理器執行所述計算機可執行指令時,使得所述處理器進行一種方法,所述方法包括:將集成電路(ic)的布局的多重圖案化的圖案成組為將要被分配至多個不同的掩模的圖案的多個子集;對于將要被分配至包括四個不同掩模的掩模的圖案的子集中的每一個,建立包括四重圖案化的(qp)圖案的圖形;檢查所述圖形是否包括沖突圖形,其中,所述四重圖案化的圖案的鄰近的五個圖案中的任意兩個之間的每一個間隔都小于閾值間隔;以及當所述圖形包括所述沖突圖形時,修改所述布局以排除所述沖突圖形,以用于制造所述集成電路。
附圖說明
當結合附圖進行閱讀時,根據下面詳細的描述可以最佳地理解本發明的各個實施例。應該注意,根據工業中的標準實踐,各種部件沒有被按比例繪制。實際上,為了清楚的討論,各種部件的尺寸可以被任意增加或減少。
圖1是根據本發明的各個實施例的布局的示圖。
圖2是根據本發明的各個實施例的表示圖1的布局的圖形的示圖。
圖3是根據本發明的各個實施例的使用圖2中討論的規則的用于四重圖案化技術的圖形。
圖4是根據本發明的各個實施例的用于多重圖案化沖突檢查的系統的示意圖。
圖5示出了根據本發明的各個實施例的與圖4的系統相關聯的設計規則檢查方法的方法的流程圖。
圖6是根據本發明的各個實施例的用于執行圖5中的操作的方法的流程圖。
圖7是根據本發明的一些實施例的將要在圖6中的操作中被檢查的不具有5團集(5-clique)的單元的子圖。
圖8是根據本發明的一些其他實施例的將要在圖6中的操作中被檢查的具有5團集的單元的子圖。
圖9是根據本發明的各個實施例的用于在圖6中的操作中檢查兩個鄰接的單元中的5團集的方法的流程圖。
圖10是根據本發明的各個實施例的將要在圖9中的操作中被檢查的不具有3團集的兩個鄰接的單元的子圖。
圖11是根據本發明的各個實施例的用于在圖9中預先檢查的兩個鄰接的單元的子圖。
圖12是根據本發明的各個實施例的用于在圖9中預先檢查的兩個鄰接的單元的子圖。
圖13是根據本發明的各個實施例的用于在圖9中預先檢查的兩個鄰接的單元的子圖。
圖14是根據本發明的各個實施例的用于在圖9中預先檢查的兩個鄰接的單元的子圖。
圖15是示出了根據本發明的各個實施例的圖14中的間隔單元的子圖。
具體實施方式
以下公開內容提供了許多不同實施例或實例,用于實現所提供主題的不同特征。以下將描述組件和布置的具體實例以簡化本發明。當然,這些僅是實例并且不意欲限制本發明。例如,在以下描述中,在第二部件上方或上形成第一部件可以包括第一部件和第二部件直接接觸的實施例,也可以包括形成在第一部件和第二部件之間的附加部件使得第一部件和第二部件不直接接觸的實施例。而且,本發明在各個實例中可以重復參考數字和/或字母。這種重復僅是為了簡明和清楚,其自身并不表示所論述的各個實施例和/或配置之間的關系。
本說明書中使用的術語通常具有其在本領域中以及在使用每一個術語的具體的內容中的普通含義。本說明書中使用的實例,包括本文所討論的任何術語的實例,僅是示例性的,并且絕不是限制本發明的或任何示例性術語的范圍和意義。同樣,本發明不限于本說明書中給出的各個實施例。
圖1是根據本發明的各個實施例的布局100的示圖。圖2是根據本發明的各個實施例的表示圖1的布局100的圖形的示圖。參考圖1和圖2,下文引入一些屬于和規則。
多重曝光或多重圖案化技術(mpt)涉及通過順序使用多個不同的掩模來形成圖案。對于圖1的說明,布局100包括圖案101至104。在一些實施例中,圖案101至104形成在集成電路(ic)的同一層上。
在一些實施例中,圖案101至104為電路圖案。例如,包括互連金屬、通孔、接觸件等的電路圖案為后段制程(beol)互連層(未示出)中的互連圖案或為有源器件層圖案。
例如,對于包括65nm、45nm、28nm等的給定的ic技術,將任何兩個圖案之間的相應最小分離間隔定義為閾值間隔(在圖1中標注為g0)。不能夠使用單光掩模和曝光來圖案化具有比閾值間隔g0小的間隔的兩個圖案。
如圖2所示,圖形分別包括表示圖案101至104的節點111至114。“節點”(在一些實施例中也稱為頂點)是圖案的表示并且便于本發明的說明。在一些實施例中,也為了分析并且使用自動化工具將圖案分配給各個光掩模的說明目的給出“節點”。
如果給定的層中的給定圖案不能夠被分配至與同一層中的非常鄰近的圖案不同的掩模(比閾值間隔g0更近),則存在沖突。對于圖1的說明,圖案101至104中的任何兩個之間的間隔(除了圖案101與104之間的間隔)比閾值間隔g0小。因此,存在圖案101至104中的任何兩個之間的沖突(除了圖案101與104之間的間隔)。對于圖2中的對應的說明,對應地在節點111至114之間構建指示比閾值間隔g0小的間隔的邊緣201至204(也稱為沖突邊緣)。如圖1和圖2所示,圖案101與104之間的間隔大于閾值間隔g0,并且因此,節點111與114之間未示出邊緣。
根據閾值間隔g0規則,將圖1的布局100中的圖案101至104分配給不同的光掩模。除了通過順序使用多個不同的掩模來形成圖案之外,mpt還是布局劃分方法,類似于用于圖形理論中的布局劃分的m著色工藝,其中,m是用于曝光單個層的光掩模的數量和/或曝光的次數。為了說明,如果使用表明雙重圖案化技術(dpt)的兩個光掩模,則習慣性將圖案稱為兩個“顏色類型”中的被分配的一個,其中顏色對應于光掩模分配。
在一些實施例中,mpt包括單、雙重、三重和/或四重圖案化(qp)技術。為了說明,基于四種顏色原理來使用qp技術,其中任何平面圖形都著色有四種顏色以使得鄰近的節點具有不同的顏色。
圖3是根據本發明的各個實施例的使用圖2中討論的規則的用于四重圖案化技術的圖形。如圖3所示,通過具有彼此連接的五個節點301至305的團集(clique)示出圖形,其中,在一些實施例中,團集也稱為5團集。在圖形理論中,團集通常指示彼此連接的所有節點的子集。有效地,節點301至305表示五個圖案,其中,它們中的任何兩個的間隔都小于閾值間隔g0。
在一些實施例中,如果能夠將布局設計的布局圖案分配給n個不同的圖案化的組,則將布局設計成為“可著n中顏色(n-colorable)”。或者說,如果彼此連接的節點能夠具有彼此不同的n種顏色,則布局設計為“可著n中顏色”。對于圖3的說明,由5團集指示的彼此連接的節點301至305不能夠具有彼此不同的四種顏色。因此,圖3中的5團集不是可著四種顏色。結果,5團集涉及qp違規。在一些實施例中,qp違規表明五個圖案不能夠使用qp技術。
圖4是根據本發明的各個實施例的用于多重圖案化沖突檢查的系統400的示意圖。圖4中示例性地提供了用于系統400的不同組件的標號。在一些實施例中,系統400是用于例如包括圖3中討論的檢查qp違規的設計規則檢查方法的計算機器件。
在一些實施例中,例如,包括計算機的計算裝置實施系統400。在一些其他的實施例中,通過電子設計自動化(eda)工具實施系統400。為了說明,系統400包括處理器402和儲存計算機程序代碼406的永久計算機可讀儲存器件404。處理器402配置為執行儲存在計算機可讀儲存器件404中的計算機程序代碼406,從而用于執行諸如圖5、圖6和圖9中示出的操作。
在一些實施例中,例如,通過中央處理單元(cpu)、多處理器、分布式處理系統、專用集成電路(asic)、合適的處理單元等來實施處理器402。為了說明的目的給出實施處理器402的前述電路或單元。實施處理器402的各種電路或單元都在本發明的預期范圍內。
在一些實施例中,例如,通過電子器件、磁性器件、光學器件、電磁器件、紅外器件、和/或半導體器件(或裝置)等來實施計算機可讀儲存器件404。例如,計算機可讀儲存器件404包括半導體或存儲器、磁帶、移動計算機軟盤、隨機存取存儲器(ram)、只讀存儲器(rom)、硬磁盤和/或光盤等。在使用光盤的一些實施例中,例如,計算機可讀存儲器件404包括只讀光盤存儲器(cd-rom)、讀/寫光盤(cd-r/w)和/或數字視頻光盤(dvd)。
在一些實施例中,計算機可讀儲存器件404儲存與ic的布局相關聯的數據418。在一些實施例中,計算機可讀儲存器件404還儲存用于與外部機器或設備交互的指令407。為了說明,計算機可讀存儲器件404編碼有指令407以用于與例如包括光刻工具的工具405進行交互,以用于基于數據418來制造半導體器件。
在一些實施例中,處理器402通過總線408電耦合至計算機可讀儲存器件404。因此,處理器402能夠通過總線408與計算機可讀儲存器件404通信。
此外,在一些實施例中,處理器402還通過總線408與各個外圍裝置和/或外部設備通信。為了圖4中的說明,處理器402通過總線408電耦合至i/o接口410。通過i/o接口410,處理器402還與包括諸如鍵盤、小型鍵盤、鼠標、跟蹤球、觸控板、觸摸屏、光標方向鍵、顯示器等的外圍裝置進行信息和命令通信。各種外圍裝置都在本發明的預期范圍內。
在一些實施例中,處理器402還通過總線408耦合至網絡接口412,以通過網絡接口412訪問網絡414。通過網絡414,處理器402和計算機可讀儲存器件404能夠與外部設備和/或連接至網絡414的設備通信。
在一些實施例中,通過無線網絡接口和/或有線網絡接口來實施網絡接口412。例如,無線網絡接口包括bluetooth、wifi、wimax、gprs、wcdma等。例如,有線網絡接口包括ethernet、usb、ieee-1394等。
為了說明的目的給出了圖4中的系統400的配置。系統400的各種配置都在本發明的預期范圍內。例如,在各個實施例中,通過永久計算機可讀儲存介質來代替計算機可讀儲存器件404,其中,利用前述用于進行諸如圖5、圖6和圖9中將示出的操作的可執行的指令和/或計算機程序代碼來編碼該永久計算機可讀儲存介質。
圖5示出了根據本發明的各個實施例的與圖4的系統400相關聯的設計規則檢查方法的方法500的流程圖。鑒于示例性的目的,通過圖4中的系統400來執行方法500。用于執行方法500的各種系統都在本發明的預期范圍內。
在一些實施例中,計算機可讀儲存器件404儲存計算機程序代碼406,以用于執行方法500。在一些實施例中,存儲器件404還存儲與ic的布局相關聯的數據418,以用于執行方法500,并且存儲在執行方法500期間生成的數據和/或值。為了說明,在執行方法500期間生成的數據和/或值包括圖形420,如圖4中所示并且將會在下文中討論。
對于圖4和圖5的說明,處理器402配置為執行編碼在計算機可讀存儲器件404中的計算機程序代碼406,以執行例如包括下文中描述的操作505、510和515的操作中的一部分或全部。參考圖4示例性地說明操作505、510和515。
在操作505中,多重圖案化的圖案被成組為圖案的多個子集。在每一個子集中,圖案配置為被分配至四個或更少的不同的掩模。相應地,在圖4中,基于數據418,處理器402執行計算機程序代碼406以生成與多重圖案化的圖案對應的數據。此外,處理器402執行計算機程序代碼406以將與多重圖案化的圖案對應的數據分組為與圖案的子集對應的數據。
然后,對于將要分配至三個或更少的不同的掩模的圖案的子集中的至少一個,執行操作510。在操作510中,檢查單重、雙重和三重圖案化違規中的至少一個。相應地,在圖4中,處理器402執行計算機程序代碼406以生成圖形420來表示圖案的子集。然后,處理器402執行計算機程序代碼406以檢查圖形420是否具有單重、雙重和三重圖案化違規中的至少一個。
在一些實施例中,單重圖案化(sp)違規表明圖形420具有以上所討論的至少一個邊緣。為了說明,圖4中的圖形420表示sp圖案,并且處理器402執行計算機程序代碼406以確定圖形420是否生成有sp違規。當圖形420具有邊緣時,處理器402執行計算機程序代碼406以確定出現sp違規。
在一些實施例中,雙重圖案化(dp)違規表明圖形420具有至少一個奇數回路。奇數回路表明多邊形圖形具有奇數條邊。為了說明,圖4中的圖形420表示dp圖案,并且處理器402執行計算機程序代碼406以確定圖形420是否生成有dp違規。當圖形420具有奇數回路時,處理器402執行計算機程序代碼406以確定出現dp違規。有效地,如果圖形420不包含奇數回路,則圖形420為可著2種顏色。
dp奇數是類似于用于圖形理論中的布局劃分的兩種著色工藝的布局劃分方法,其中,分配兩種“顏色類型”。為了說明,將與邊緣連接的鄰近的節點分配不同的顏色。將層上的每一個圖案都分配第一或第二顏色,這表明通過第一光掩模形成第一顏色的一些圖案,通過第二光掩模形成第二顏色的一些圖案。
在一些實施例中,三重圖案化(tp)違規表明圖形420具有不帶有安全獨立節點的奇數回路。為了說明,安全獨立節點是不直接連接至任何其他的奇數回路的另一獨立節點的獨立節點。為了說明,圖4中的圖形420表示tp圖案,并且處理器402執行計算機程序代碼406以確定圖形420是否生成有tp違規。當圖形420具有不帶有安全獨立節點的奇數回路時,處理器402執行計算機程序代碼406以確定出現tp違規。
然后,對于將要分配至四個不同的掩模的圖案的子集中的其他部分,執行操作515。在操作515中,檢查qp違規。在一些實施例中,qp違規表明圖形420具有5團集,并且5團集定義qp圖案的鄰近的五個圖案中的任意兩個之間的每一個間距都小于閾值間隔g0。
以上圖5中所示包括示例性操作,但是沒有必要以所示出的順序執行該操作。根據本發明的各個實施例的精神和范圍,可以視情況添加、替換、重排和/或消除操作。
圖6是根據本發明的各個實施例的用于執行圖5中的操作515的方法的流程圖。為了易于理解,圖6中類似元件標記有與圖5的實施例相同的參考標號。
在操作605中,在布局內的每一個單元中建立qp圖案的圖形,并且檢查是否存在每一個單元中都包含5團集的子圖,下文將參考圖7進行闡釋。圖7是根據本發明的一些實施例的將要在圖6中的操作605中被檢查的不具有5團集的單元的子圖700。為了說明,子圖700包括表示單元內的qp圖案的節點701至706。節點701與704之間的間距大于閾值間隔g0,并且因此,節點701和704之間不具有沖突邊緣。節點702與706之間的間距大于閾值間隔g0,并且因此,節點702和706之間不具有沖突邊緣。在圖7中,不存在示出彼此連接的五個節點的5團集。結果,如圖7所示,子圖700中不存在5團集。
子圖700中不具有5團集,與子圖700相關聯的qp圖案可著四種顏色。為了說明,利用第一顏色類型對節點702和706進行著色。利用第二顏色類型對節點701和704進行著色。利用第三顏色類型對節點703進行著色。利用第四顏色類型對節點705進行著色。
相應地,在圖4中,基于數據418,處理器402執行計算機程序代碼406以生成與布局內的每一個單元中的qp圖案對應的圖形420。處理器402還執行計算機程序代碼406以檢查圖形420是否具有包含導致qp違規的5團集的子圖。當圖形420具有包含布局內的每一個單元中的5團集的子圖時,處理器402執行計算機程序代碼406以確定出現qp違規。
對于圖4和圖7的說明,處理器402執行計算機程序代碼406以從圖形420中提取圖7中的子圖700,并且檢查子圖700是否包含5團集。
圖8是根據本發明的一些其他實施例的將要在圖6的操作605中被檢查的具有5團集的單元的子圖800。為了易于理解,圖8中類似元件標記有與圖7的實施例相同的參考標號。為了說明,子圖800包括表示單元內的qp圖案的節點801至806。節點801至805中的任意兩個之間的每一個間距都小于閾值間隔g0。因此,節點801至805之間存在連接的沖突邊緣。或者說,五個節點801至805彼此連接。因此,圖8中的子圖800中存在5團集。
相應地,在圖4中,處理器402執行計算機程序代碼406以從圖形420中提取如圖8所示的子圖800。
再次參考圖6,在操作610中,建立與兩個鄰接的單元的邊界相關聯的qp圖案的圖形,并且檢查是否存在包含5團集的子圖,下文將參考圖9和圖10進行闡釋。相應地,在圖4中,基于數據418,處理器402執行計算機程序代碼406以生成與和兩個鄰接的單元的邊界相關聯的qp圖案對應的圖形420。處理器402還執行計算機程序代碼406以檢查圖形420是否具有包含在布局內的任意兩個鄰接的單元的中導致qp違規的5團集的子圖。
圖9是根據本發明的各個實施例的用于在圖6的操作610中檢查兩個鄰接的單元中的5團集的方法的流程圖。為了易于理解,圖9中類似元件標記有與圖6的實施例相同的參考標號。
在操作905中,對于qp圖案的圖形,檢查是否存在連接至兩個鄰接的單元的至少一個內的鄰近的節點的不少于三條的邊。如果存在連接至鄰近的節點的不少于三條的邊,則執行操作930,其中確定qp圖案為可著四種顏色。如果存在連接至鄰近的節點的三條以上的邊,則執行操作910。對應地,在圖4中,處理器402執行計算機程序代碼以檢查圖形420是否具有連接至兩個鄰接的單元的至少一個內的鄰近的節點的三條以上的邊。當不存在連接至兩個鄰接的單元的至少一個內的鄰近的節點的三條以上的邊時,處理器402執行計算機程序代碼406以確定圖形420為可著四種顏色。
在操作910中,檢查兩個鄰接的單元的至少一個的邊界區域內是否不存在3團集。3團集定義qp圖案的鄰近的三個圖案中的任意兩個之間的每一個間距都小于閾值間隔g0。如以上所討論的,如果兩個鄰接的單元的至少一個的邊界區域中不存在3團集,則執行操作930。如果兩個鄰接的單元的至少一個的邊界區域中存在3團集,則執行操作915。對應地,在圖4中,處理器402執行計算機程序代碼以檢查圖形420是否具有兩個鄰接的單元的至少一個的邊界區域中的3團集。有效地,5團集包括至少兩個3團集。對于圖8的說明,通過節點801至805來構建5團集,其中,節點801至803構成一個3團集,并且節點803至805構成另一3團集。因此,如果圖形420不具有3團集,則圖形420不具有5團集。
圖10是根據本發明的各個實施例的將要在圖9中的操910檢查的不具有3團集的兩個鄰接的單元1010和1020的子圖1000。在一些實施例中,處理器402執行計算機程序代碼406以從圖4的圖形420中提取圖10中的子圖1000。
為了說明,在子圖1000中,邊緣連接至相應的節點1031、1032、1041、1042和1043。在單元1010中,邊界區域1011具有兩個節點1031和1032,并且不存在3團集。在單元1020中,邊界區域1021具有三個節點1041至1043。通過一條邊連接被比閾值間隔g0小的間隔分離的節1041和1042。通過另一條邊連接被比閾值間隔g0小的間隔分離的節1042和1043。未通過任一條邊連接被比閾值間隔g0大的間隔分離的節1043和1041。結果,三個節點1041至1043未構成3團集。
如以上所述,按照在操作910中所執行的,檢查分別在兩個鄰接的單元1010和1020中的邊界區域1011和1012不具有3團集。因此,如操作930中所執行的,子圖1000中的qp圖案確定為可著四種顏色。對于圖10的說明,利用第一顏色類型對節點1031進行著色。利用第二顏色類型對節點1032進行著色。利用第三顏色類型對節點1041和1043進行著色。利用第四顏色類型對節點1042進行著色。
再次參考圖9,在操作915中,當兩個鄰接的單元的每一個的邊界區域中都存在3團集時,執行預先檢查,在一些實施例中,在檢查是否存在5團集之前,下文將參考圖11、圖12、圖13和圖14進行說明。相應地,在圖4中,處理器402執行計算機程序代碼406以在檢查圖形420中是否不存在5團集之前對圖形420執行預先檢查。下文參考圖11和圖12闡釋預先檢查。
圖11是根據本發明的各個實施例的用于預先檢查的兩個鄰接的單元1110和1120的子圖1100。在一些實施例中,處理器402執行計算機程序代碼406以從圖4的圖形420中提取圖11中的子圖1100。
對于圖11的說明,單元1100具有邊界區域1111,并且單元1120具有邊界區域1121。在一些實施例中,邊界區域1111和1121的每一個的寬度都等于閾值間隔g0的一半。在一些實施例中,執行圖9的操作915中的預先檢查以確定單元1110和1120中的一個是否具有3團集,下文將進行闡釋。在又一實施例中,單元1110和1120中的一個中具有3團集,執行操作915中的預先檢查以進一步確定是否沿著和/或與如圖11所示的兩個鄰接的單元1110和1120之間的邊界1170并行構建單元中的3團集的邊緣中的一個,下文將進行闡釋。
在各個實施例中,執行預先檢查以確定單元1110和1120中的僅僅一個是否具有3團集。在各個實施例中,執行預先檢查以確定是否沿著和/或與邊界1170并行構建單元中的3團集的邊緣中的僅僅一個。
為了說明,將三個節點1131至1133布置在單元1110的邊界區域1111中并且不構成3團集。將四個節點1141至1144布置在單元1120的邊界區域1121中,其中,通過如圖11所示的三條邊1161至1163連接節點1141至1143,并且構成3團集。單元1120中具有3團集,還執行預先檢查以確定是否沿著和/或與邊界1170并行構建三條邊1161至1163中的僅僅一條。相應地生成預先檢查結果。如圖11所示,沿著和/或與邊界1170并行地布置3團集的僅僅一條邊1161。結果,根據圖形理論,確定節點1131至1133和1141至1144中的任五個不能構建5團集。根據以上討論的圖形理論,不具有5團集,與子圖1100相關聯的qp圖案可著四種顏色。
再次參考圖9,在操作920中,基于預先檢查結果,檢查圖形中是否不存在5團集。對于圖9和圖11的說明,基于以上在圖11中討論的預先檢查結果,確定子圖1100中不存在5團集,然后執行操作930。因此,子圖1100中的qp圖案確定為可著四種顏色。相應地,在圖4中,處理器402執行計算機程序代碼406以確定從圖形420中提取的圖11的子圖1100中是否不存在5團集。
如以上所討論的,子圖1100中的qp圖案確定為可著四種顏色。對于圖11的說明,利用第一顏色類型對節點1131和1133進行著色。利用第二顏色類型對節點1132和1142進行著色。利用第三顏色類型對節點1141和1144進行著色。利用第四顏色類型對節點1143進行著色。
圖12是根據本發明的各個實施例的用于預先檢查的兩個鄰接的單元1210和1220的子圖1200。在一些實施例中,處理器402執行計算機程序代碼406以從圖4的圖形420中提取圖12中的子圖1200。
對于圖12的說明,單元1210具有邊界區域1211,并且單元1220具有邊界區域1221。在一些實施例中,邊界區域1211和1221的每一個的寬度都等于閾值間隔g0的一半。
為了說明,將三個節點1231至1233布置在單元1210的邊界區域1211中并且不構成3團集。將四個節點1241至1244布置在單元1220的邊界區域1221中,其中,通過如圖12所示的三條邊1261至1263連接節點1241至1243,并且構成3團集。單元1220中具有3團集,還執行預先檢查以確定是否沿著和/或與邊界1270并行構建三條邊1261至1263中的僅僅一條。
對于圖12的說明,沿著邊界1270布置3團集的三條邊1261至1263中的全部。在這種條件下,根據圖形理論,確定子圖1200中存在5團集。為了說明,節點1231、1232、1241、1242和1243構成5團集。根據以上討論的圖形理論,由于5團集,所以與子圖1200相關聯的qp圖案不可著四種顏色。
再次參考圖9,在操作920中,基于以上在圖12中討論的預先檢查結果,確定子圖1200中存在5團集,然后執行操作925。在操作925中,確定與子圖1200相關聯的qp圖案具有qp違規。相應地,在圖4中,處理器402執行計算機程序代碼406以確定圖形420中出現qp違規。
以上圖9中所示包括示例性操作,但是沒有必要以所示出的順序執行該操作。根據本發明的各個實施例的精神和范圍,可以視情況添加、替換、重排和/或消除操作。
圖13是根據本發明的各個實施例的用于預先檢查的兩個鄰接的單元1310和1320的子圖1300。在一些實施例中,處理器402執行計算機程序代碼406以從圖4的圖形420中提取圖10中的子圖1300。
對于圖13的說明,單元1310具有邊界區域1311,并且單元1320具有邊界區域1321。在一些實施例中,邊界區域1311和1321的每一個的寬度都等于閾值間隔g0的一半。在一些實施例中,執行圖9的操作915中的預先檢查以確定不同的單元1310和1320兩者是否具有3團集。在又一實施例中,當單元1310和1320兩者都具有3團集時,執行操作915中的預先檢查以進一步確定單元1310中的3團集的邊緣的單元1310和1320之間的邊界上的任何突出(projection)是否與邊界上的單元1320中的3團集的邊緣的任何突出重疊,下文將進行闡釋。
為了說明,將三個節點1331至1333布置在單元1310的邊界區域1311中并且構成一個3團集。將三個節點1341至1343布置在單元1320的邊界區域1321中并且構成其他3團集。單元1310和1320兩者中具有3團集,還執行預先檢查以確定單元1310中的一個3團集的邊緣的任何突出是否與單元1320中的其他3團集的邊緣的任何突出重疊。
如圖13所示,通過三條邊1351至1353連接節點1331至1333,并且通過三條邊1361至1363連接節點1341至1343。單元1310和1320之間的邊界上的邊緣1351至1353的突出未與相同邊界上的邊緣1361至1363的突出重疊。因此,根據圖形理論,確定兩個3團集不能構成5團集。或者說,子圖1300中不存在5團集。不具有5團集,與子圖1300相關聯的qp圖案可著四種顏色。
如以上所討論的,子圖1300中的qp圖案確定為可著四種顏色。對于圖13的說明,利用第一顏色類型對節點1333和1343進行著色。利用第二顏色類型對節點1331進行著色。利用第三顏色類型對節點1341進行著色。利用第四顏色類型對節點1332和1342進行著色。
圖14是根據本發明的各個實施例的用于預先檢查的兩個鄰接的單元1410和1420的子圖1400。在一些實施例中,處理器402執行計算機程序代碼406以從圖4的圖形420中提取圖10中的子圖1400。
對于圖14的說明,單元1410具有邊界區域1411,并且單元1420具有邊界區域1421。在一些實施例中,邊界區域1411和1421的每一個的寬度都等于閾值間隔g0的一半。為了說明,將三個節點1431至1433布置在單元1410的邊界區域1411中并且構成一個3團集。將三個節點1441至1443布置在單元1420的邊界區域1421中并且構成其他3團集。單元1410和1420兩者中具有3團集,還執行預先檢查以確定單元1410中的一個3團集的邊緣的任何突出是否與單元1420中的其他3團集的邊緣的任何突出重疊。
如圖14所示,通過三條邊1451至1453連接節點1431至1433,并且通過三條邊1461至1463連接節點1441至1443。單元1410和1420之間的邊界上的邊緣1451至1453的突出與相同邊界上的邊緣1461至1463的突出重疊。因此,根據圖形理論,確定兩個3團集能構成5團集。基于預先檢查結果,在圖9的操作920中,為了說明,確定子圖1400中存在5團集。具有5團集,與子圖1400相關聯的qp圖案不可著四種顏色。之后,如以上討論的在操作925中,確定與子圖1400相關聯的qp圖案具有qp違規。
在操作925之后,參考圖6。或者說,當確定qp違規時,然后執行操作615。在操作615中,修改布局以排除操作605或610中所討論的包含5團集的子圖,以避免qp違規,下文將參考圖15進行闡釋。相應地,在圖4中,在一些實施例中,處理器402執行計算機程序代碼406以修改與布局對應的數據418來避免qp違規。在一些實施例中,處理器402執行計算機程序代碼406以修改圖形420來排除操作605或610中所討論的包含5團集的子圖。
圖15是示出了根據本發明的各個實施例的圖14中的間隔單元1410和1420的子圖1500。在一些實施例中,兩個鄰接的單元1410和1420彼此間隔開。在又一實施例中,兩個鄰接的單元1410和1420彼此間隔開,間隔等于或大于閾值間隔g0。
在一些實施例中,單元1410中的qp圖案與單元1420中的qp圖案間隔開,間隔等于或大于閾值間隔g0。有效地,在放置和布線(p&r)工藝期間,在兩個鄰接的單元1410和1420之間添加放置限制,以使兩個鄰接的單元1410和1420彼此間隔開。
對于圖15的說明,節點1431和1432與節點1441、1442和1443間隔開,其中,之間的間距大于閾值間隔g0。在一些實施例中,節點1431至1433和1441至1444的兩個最近的節點彼此間隔開,間隔等于或大于閾值間隔g0。當節點1431和1432與節點1441、1442和1443間隔開時,如圖15所示,不行5團集。因此,節點1431至1433和1441至1444可著四種顏色。為了說明,利用第一顏色類型對節點1431和1444進行著色。利用第二顏色類型對節點1432和1441進行著色。利用第三顏色類型對節點1433和1442進行著色。利用第四顏色類型對節點1443進行著色。
相應地,在圖4中,在一些實施例中,處理器402執行計算機程序代碼406以基于前述修改的數據418再生成圖形420。處理器402執行計算機程序代碼406以從再生成的圖形420中提取子圖1500。此外,在一些實施例中,基于以上所討論的修改的數據418,處理器402執行指令407以與工具405交互來制造半導體器件。
鑒于以上所述,在本發明中提供了用于多重圖案化技術(mpt)的設計規則檢查方法。結果,例如,基于單元的鄰接的條件,設計規則檢查能夠被執行以用于確定qp違規。
在一些實施例中,公開的方法包括:確定是否存在表示集成電路(ic)的布局的多重圖案化的圖案的至少五個鄰近的圖案的任何兩個之間的每一個間隔都小于閾值間隔的沖突圖形;以及如果存在沖突圖形,則修改多重圖案化的圖案以排除由沖突圖形表示的圖案,以用于ic的制造。
還公開了一種包括存儲器件和處理器的系統。存儲器件配置為存儲計算機程序代碼。處理器配置為執行存儲器件中的計算機程序代碼以用于:基于與集成電路(ic)的布局對應的數據,建立表示多重圖案化的圖案的圖形;檢查圖形是否包括表示多重圖案化的圖案的至少五個鄰近的圖案的任何兩個之間的每一個間隔都小于閾值間隔的子圖;以及當圖形包括該子圖時,修改圖形以排除該子圖,以用于ic的制造。
還公開了一種包括計算機可執行指令的永久計算機可讀介質,當由處理器執行所述計算機可執行指令時,使得所述處理器進行一種方法。方法包括:將集成電路(ic)的布局的多重圖案化圖案成組為將要被分配至多個不同的掩模的圖案的多個子集;對于將要被分配至包括四個不同掩模的掩模的圖案的子集的每一個,建立包括四重圖案化的(qp)圖案的圖形;檢查圖形是否包括沖突圖形,其中qp圖案的鄰近的五個圖案的任意兩個之間的每一個間隔都小于閾值間隔;以及當圖形包括沖突圖形時,修改布局以排除沖突圖形,以用于制造ic。
本發明的實施例提供了一種用于多重圖案化技術的設計規則檢查的方法,包括:確定是否存在表示集成電路(ic)的布局的多重圖案化的圖案的至少五個鄰近的圖案中的任意兩個之間的每一個間隔都小于閾值間隔的沖突圖形;以及如果存在所述沖突圖形,則修改所述多重圖案化的圖案以排除由所述沖突圖形表示的圖案,以用于所述集成電路的制造。
根據本發明的一個實施例,其中,通過將要被分配至四個不同掩模的四重圖案化的(qp)圖案來實施所述多重圖案化的圖案。
根據本發明的一個實施例,其中,確定是否存在所述沖突圖形包括:確定所述沖突圖形是否包括子圖,其中,所述子圖表示兩個鄰接的單元的至少一個中的四重圖案化的(qp)圖案的三個鄰近的圖案中的任意兩個之間的每一個間隔都小于所述閾值間隔。
根據本發明的一個實施例,其中,如果所述沖突圖形包括所述子圖,則所述方法還包括:確定是否沿著和/或與所述兩個鄰接的單元之間的邊界并行地構建將四重圖案化的圖案的三個鄰近的圖案彼此連接的邊中的一條。
根據本發明的一個實施例,其中,如果所述沖突圖形包括所述子圖,則所述方法還包括:確定所述兩個鄰接的單元之間的邊界上的在所述兩個鄰接的單元的一個中將四重圖案化的圖案的三個鄰近的圖案彼此連接的邊的至少一個突出是否與同一邊界上的在所述兩個鄰接的單元的另一個中將四重圖案化的圖案的三個鄰近的圖案彼此連接的邊的至少一個突出重疊。
根據本發明的一個實施例,其中,修改所述多重圖案化的圖案包括:在兩個鄰接的單元中,將多重圖案化的圖案的至少兩個最近的圖案彼此間隔開,間隔等于或大于所述閾值間隔。
根據本發明的一個實施例,其中,修改所述多重圖案化的圖案包括:將每一個都包括通過每一條都具有比所述閾值間隔小的間隔的邊彼此連接的三個鄰近的四重圖案化的(qp)圖案的兩個鄰接的單元彼此間隔開。
本發明的實施例還提供了一種用于多重圖案化技術的設計規則檢查的系統,包括:存儲器件,配置為存儲計算機程序代碼;以及處理器,配置為執行所述存儲器件中的計算機程序代碼以用于:基于與集成電路(ic)的布局對應的數據,建立表示多重圖案化的圖案的圖形;檢查所述圖形是否包括表示所述多重圖案化的圖案的至少五個鄰近的圖案中的任意兩個之間的每一個間隔都小于閾值間隔的子圖;以及當所述圖形包括所述子圖時,修改所述圖形以排除所述子圖,以用于所述集成電路的制造。
根據本發明的一個實施例,其中,對于建立所述圖形,所述處理器還配置為執行所述計算機程序代碼以用于:在所述布局內的每一個單元中或在所述布局內的鄰接的單元中建立表示四重圖案化的(qp)圖案的圖形。
根據本發明的一個實施例,其中,對于檢查所述圖形是否包括所述子圖,所述處理器還配置為執行所述計算機程序代碼以用于:在所述布局內的每一個單元中或在所述布局內的兩個鄰接的單元中檢查所述圖形是否包括所述子圖。
根據本發明的一個實施例,其中,對于在所述布局內的兩個鄰接的單元中檢查所述圖形是否包括所述子圖,所述處理器還配置為執行所述計算機程序代碼以用于:確定所述圖形是否包括第一子圖,其中,所述第一子圖表示所述兩個鄰接的單元的至少一個中的四重圖案化的(qp)圖案的三個鄰近的圖案中的任意兩個之間的每一個間隔都小于所述閾值間隔。
根據本發明的一個實施例,其中,當所述圖形包括所述第一子圖時,所述處理器還配置為執行所述計算機程序代碼以用于:確定是否沿著和/或與所述兩個鄰接的單元之間的邊界并行地構建將四重圖案化的圖案的三個鄰近的圖案彼此連接的邊中的一條。
根據本發明的一個實施例,其中,當所述圖形包括所述第一子圖時,所述處理器還配置為執行所述計算機程序代碼以用于:確定所述兩個鄰接的單元之間的邊界上的在所述兩個鄰接的單元的一個中將四重圖案化的圖案的三個鄰近的圖案彼此連接的邊的任何突出是否與同一邊界上的在所述兩個鄰接的單元的另一個中將四重圖案化的圖案的三個鄰近的圖案彼此連接的邊的任何突出重疊。
根據本發明的一個實施例,其中,對于修改所述圖形,所述處理器還配置為執行所述計算機程序代碼以用于:將所述圖形中的兩個鄰接的單元彼此間隔開,其中,所述兩個鄰接的單元中的每一個都包括通過邊彼此連接的三個鄰近的多重圖案化的圖案。
本發明的實施例還提供了一種用于多重圖案化技術的設計規則檢查的系統,所述系統具有包括計算機可執行指令的永久計算機可讀介質,當由處理器執行所述計算機可執行指令時,使得所述處理器進行一種方法,所述方法包括:將集成電路(ic)的布局的多重圖案化的圖案成組為將要被分配至多個不同的掩模的圖案的多個子集;對于將要被分配至包括四個不同掩模的掩模的圖案的子集中的每一個,建立包括四重圖案化的(qp)圖案的圖形;檢查所述圖形是否包括沖突圖形,其中,所述四重圖案化的圖案的鄰近的五個圖案中的任意兩個之間的每一個間隔都小于閾值間隔;以及當所述圖形包括所述沖突圖形時,修改所述布局以排除所述沖突圖形,以用于制造所述集成電路。
根據本發明的一個實施例,其中,檢查所述圖形是否包括所述沖突圖形包括:在所述布局內的每一個單元中或在所述布局內的兩個鄰接的單元中檢查所述圖形是否包括所述沖突圖形。
根據本發明的一個實施例,其中,在所述布局內的兩個鄰接的單元中檢查所述圖形是否包括所述沖突圖形包括:確定所述圖形是否包括第一沖突圖形,其中,所述第一沖突圖形表示所述兩個鄰接的單元的至少一個中的四重圖案化的圖案的三個鄰近的圖案中的任意兩個之間的每一個間隔都小于所述閾值間隔。
根據本發明的一個實施例,其中,當所述圖形包括所述第一沖突圖形時,在所述布局內的兩個鄰接的單元中檢查所述圖形是否包括所述沖突圖形還包括:確定是否沿著和/或與所述兩個鄰接的單元之間的邊界并行地構建將所述四重圖案化的圖案的三個鄰近的圖案彼此連接的邊中的一條。
根據本發明的一個實施例,其中,當所述圖形包括所述第一沖突圖形時,在所述布局內的兩個鄰接的單元中檢查所述圖形是否包括所述沖突圖形還包括:確定所述兩個鄰接的單元之間的邊界上的在所述兩個鄰接的單元的一個中將四重圖案化的圖案的三個鄰近的圖案彼此連接的邊的任何突出是否與同一邊界上的在所述兩個鄰接的單元的另一個中將四重圖案化的圖案的三個鄰近的圖案彼此連接的邊的任何突出重疊。
根據本發明的一個實施例,其中,修改所述布局包括:將所述布局中的兩個鄰接的單元彼此間隔開,其中,所述兩個鄰接的單元中的每一個都包括通過每一條都具有比所述閾值間隔小的間隔的邊彼此連接的三個鄰近的四重圖案化的圖案。
以上論述了若干實施例的部件,使得本領域的技術人員可以更好地理解本發明的各個實施例。本領域技術人員應該理解,可以很容易地使用本發明作為基礎來設計或更改其他的處理和結構以用于達到與本發明所介紹實施例相同的目的和/或實現相同優點。本領域技術人員也應該意識到,這些等效結構并不背離本發明的精神和范圍,并且在不背離本發明的精神和范圍的情況下,可以進行多種變化、替換以及改變。