TW202240735A - 用於半導體製造設備之處理控制的自適應模型訓練 - Google Patents

用於半導體製造設備之處理控制的自適應模型訓練 Download PDF

Info

Publication number
TW202240735A
TW202240735A TW110147657A TW110147657A TW202240735A TW 202240735 A TW202240735 A TW 202240735A TW 110147657 A TW110147657 A TW 110147657A TW 110147657 A TW110147657 A TW 110147657A TW 202240735 A TW202240735 A TW 202240735A
Authority
TW
Taiwan
Prior art keywords
machine learning
library
learning model
data
training
Prior art date
Application number
TW110147657A
Other languages
English (en)
Inventor
迪邦卡 塔盧克達爾
張岩
燁 馮
傑佛瑞 D 邦德
Original Assignee
美商蘭姆研究公司
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 美商蘭姆研究公司 filed Critical 美商蘭姆研究公司
Publication of TW202240735A publication Critical patent/TW202240735A/zh

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • G06N20/20Ensemble learning
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L21/00Processes or apparatus adapted for the manufacture or treatment of semiconductor or solid state devices or of parts thereof
    • H01L21/67Apparatus specially adapted for handling semiconductor or electric solid state devices during manufacture or treatment thereof; Apparatus specially adapted for handling wafers during manufacture or treatment of semiconductor or electric solid state devices or components ; Apparatus not specifically provided for elsewhere
    • H01L21/67005Apparatus not specifically provided for elsewhere
    • H01L21/67242Apparatus for monitoring, sorting or marking
    • H01L21/67253Process monitoring, e.g. flow or thickness monitoring
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L22/00Testing or measuring during manufacture or treatment; Reliability measurements, i.e. testing of parts without further processing to modify the parts as such; Structural arrangements therefor
    • H01L22/10Measuring as part of the manufacturing process
    • H01L22/12Measuring as part of the manufacturing process for structural parameters, e.g. thickness, line width, refractive index, temperature, warp, bond strength, defects, optical inspection, electrical measurement of structural dimensions, metallurgic measurement of diffusions

Landscapes

  • Engineering & Computer Science (AREA)
  • Manufacturing & Machinery (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Power Engineering (AREA)
  • Condensed Matter Physics & Semiconductors (AREA)
  • Evolutionary Computation (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • Medical Informatics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Artificial Intelligence (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Testing Or Measuring Of Semiconductors Or The Like (AREA)
  • Feedback Control In General (AREA)

Abstract

本文中的各種實施例係關於適應性模型訓練的系統及方法。在一些實施例中,提供用於適應性模型訓練的電腦程式產品,該電腦程式產品包括非瞬態電腦可讀媒體,在該非瞬態電腦可讀媒體上係提供複數電腦可執行指令以進行:從複數處理腔室接收與使用該等處理腔室所加工的複數晶圓相關的非臨場(ex situ)數據,以及複數臨場(in situ)測量值,其中第一機器學習模型係用於以該等臨場測量值預測該非臨場數據;計算一度量,其中該度量係指示與該第一機器學習模型相關的誤差;判斷是否更新該第一機器學習模型;以及使用該非臨場數據及該等臨場測量值產生第二機器學習模型。

Description

用於半導體製造設備之處理控制的自適應模型訓練
本文中揭露的是用於半導體製造設備之處理控制的方法及系統。
半導體製造設備,例如處理腔室,可使用臨場測量而進行晶圓製造期間的處理控制。舉例而言,臨場測量可用於在晶圓製造期間精確控制蝕刻深度、沉積深度等。在一些情況下,可使用機器學習訓練模型以將臨場測量轉化成測量的預測,而所述預測則接續使用於處理控制。然而,此模型可能會例如因為處理腔室的堆積物而偏離規格。當模型已偏離規格時可能是難以偵測的。此外,再訓練模型可能需要密集計算。
此處所提供之先前技術描述係為了一般性呈現本揭露之背景的目的。本案列名發明人的工作成果、至此先前技術段落的所述範圍,以及申請時可能不適格作為先前技術的實施態樣,均不明示或暗示承認為對抗本揭露內容的先前技術。
本文中所揭露的是用於半導體製造設備的處理控制的方法及系統。
根據所揭示標的主體的一些實施例,提供用於適應性模型訓練的電腦程式產品,該電腦程式產品包括非瞬態電腦可讀媒體,在該非瞬態電腦可讀媒體上係提供複數電腦可執行指令以進行:從複數處理腔室接收與使用該複數處理腔室所加工的複數晶圓相關的非臨場(ex situ)數據,以及複數臨場(in situ)測量值,其中該複數處理腔室係使用第一機器學習模型在該複數處理腔室製造晶圓期間進行處理控制,其中該第一機器學習模型係用於以該等臨場測量值預測該非臨場數據,且其中該非臨場數據對於一晶圓係指示該晶圓在加工後的特性;使用來自該複數處理腔室的該非臨場數據以計算一度量,其中該度量係指示與該第一機器學習模型相關的誤差;基於指示該誤差的該度量來判斷是否更新該第一機器學習模型;以及響應於判斷該第一機器學習模型要進行更新而使用從該複數處理腔室所接收的該非臨場數據及該等臨場測量值產生第二機器學習模型。
在一些實施例中,該非臨場數據係在一子集合的經加工晶圓加工後所測量的非臨場計量學數據。
在一些實施例中,該非臨場數據包括與晶圓的複數特徵部相關的幾何資訊。
在一些實施例中,該非臨場數據包括光學臨界尺寸(OCD)資訊,該OCD資訊指示該晶圓的該等特徵部的深度。
在一些實施例中,該非臨場數據包括蝕刻深度。
在一些實施例中,該第一機器學習模型及該第二機器學習模型各自係用於以該等臨場測量值來產生所預測的OCD數值。
在一些實施例中,指示該誤差的該度量包括該複數處理腔室的誤差累積總和。
在一些實施例中,判斷是否更新該第一機器學習模型包括判斷該誤差累積總和是否超出控制閾值。
在一些實施例中,指示該誤差的該度量包括該複數處理腔室的誤差變異數。
在一些實施例中,判斷是否更新該第一機器學習模型包括判斷該誤差變異數是否超出控制閾值。
在一些實施例中,判斷是否更新該第一機器學習模型包括判斷該複數處理腔室的誤差累積總和超出控制閾值,以及該複數處理腔室的誤差變異數超出控制閾值。
在一些實施例中,產生該第二機器學習模型包括使用一訓練集來訓練機器學習模型,該訓練集係由接收自該複數處理腔室的該非臨場數據及接收自該複數處理腔室的該等臨場測量值所建構。
在一些實施例中,該等臨場測量值包括反射率數據。
在一些實施例中,該電腦程式產品更包括複數指令以進行:判斷該第二機器學習模型是否滿足欲佈署於該複數處理腔室的複數基準;以及響應於判斷該第二機器學習模型滿足欲佈署於該複數處理腔室的基準,傳送該第二機器學習模型至該複數處理腔室的各者。
在一些實施例中,判斷該第二機器學習模型是否滿足欲佈署的該等基準包括以非臨場數據及複數臨場測量值的測試集評估該第一機器學習模型及該第二機器學習模型。
在一些實施例中,該等基準包括該第二機器學習模型對於非臨場數據及複數臨場測量值的該測試集具有比該第一機器學習模型更佳的預測性能。
在一些實施例中,該測試集中所包含的非臨場數據包括在判斷該第一機器學習模型需更新過後所收集的非臨場數據。
在一些實施例中,該測試集中所包含的該非臨場數據包括在判斷該第一機器學習模型需更新之前所收集的第一非臨場數據子集合,以及在判斷該第一機器學習模型需更新過後所收集的第二非臨場數據子集合。
在一些實施例中,判斷該第二機器學習模型是否滿足欲佈署的該等基準包括判斷該第二機器學習模型對於一測試集中所包含的所預測非臨場數據的誤差係低於閾值。
在一些實施例中,該電腦程式產品更包括複數指令以進行:(i) 響應於判斷該第二機器學習模型未滿足欲佈署於該複數處理腔室的複數基準而產生第三機器學習模型;(ii) 判斷該第三機器學習模型是否滿足欲佈署於該複數處理腔室的該等基準;重複進行(i)及(ii)直到判斷該第三機器學習模型滿足欲佈署於該複數處理腔室的該等基準;以及響應於判斷該第三機器學習模型滿足欲佈署於該複數處理腔室的該等基準,傳送該第三機器學習模型至該複數處理腔室的各者。
在一些實施例中,重複進行(i)及(ii)直到判斷該第三機器學習模型滿足欲佈署的該等基準包括重複進行(i)及(ii)直到判斷該第三機器學習模型是最佳的。
在一些實施例中,用以產生該第二機器學習模型的訓練集比用以產生該第三機器學習模型的訓練集更小。
在一些實施例中,用以產生該第三機器學習模型的該訓練集比用以產生該第二機器學習模型的該訓練集包含較新的非臨場數據及複數臨場測量值。
根據所揭示標的主體的一些實施例,提供使用適應性訓練模型的電腦程式產品,該電腦程式產品包括非瞬態可讀媒體,在該非瞬態可讀媒體上係提供複數電腦可執行指令以進行:將非臨場計量學數據傳送至模型訓練系統,該非臨場計量學數據係對應於使用從該模型訓練系統接收的第一機器學習模型所加工的晶圓,其中該第一機器學習模型係用於加工該晶圓的處理腔室的處理控制;從該模型訓練系統接收第二機器學習模型以用於該處理腔室的處理控制,其中該第二機器學習模型係藉由該模型訓練系統使用接收自複數處理腔室的該非臨場計量學數據以及該複數處理腔室所測量的臨場晶圓上光學數據所產生;以及以該第二機器學習模型取代該第一機器學習模型。
在一些實施例中,該電腦程式產品更包括複數指令,用於從該模型訓練系統接收與該第一機器學習模型相關的誤差已超出閾值的訊息。
在一些實施例中,該電腦程式產品更包括複數指令,用於在從該模型訓練系統接收該第二機器學習模型之前,將第二非臨場計量學數據傳送至該模型訓練系統,該第二非臨場計量學數據係對應於使用該第一機器學習模型所加工的第二晶圓。
在一些實施例中,該非臨場計量學數據係用於判斷與該第一機器學習模型相關的誤差已超出閾值,且其中該第二非臨場計量學數據係用於判斷該第二機器學習模型要取代該第一機器學習模型。
專門術語
以下術語係在本說明書中通篇使用:
術語「半導體晶圓」、「晶圓」、「基板」、「晶圓基板」及「經部分加工積體電路」可互換使用。本發明所屬技術領域中具有通常知識者能夠理解術語「經部分加工積體電路」可指在積體電路製造的許多階段的任何者期間的半導體晶圓。半導體裝置產業中使用晶圓或基板通常具有200mm、300mm或450mm的直徑。除半導體晶圓之外,可利用所揭示實施例的其他工件還包括各種製品,例如印刷電路板、磁性記錄媒體、磁性記錄感測器、鏡體、光學元件、微機械裝置等。所述工件可具有各種形狀、尺寸及材料。
本文中所使用的「半導體裝置製造操作」係在半導體裝置的製造期間執行的操作。一般而言,總製造處理包括複數半導體裝置製造操作,該等製造操作係各自在其專屬的半導體製造工具中執行,所述半導體製造工具例如為電漿反應器、電鍍槽、化學機械平坦化工具、濕式蝕刻工具等。半導體裝置製造操作的類別包括減除式處理,例如蝕刻處理及平坦化處理;材料加成式處理,例如沉積處理(例如,物理氣相沉積、化學氣相沉積、原子層沉積、電化學沉積、無電沉積)。在蝕刻處理的背景中,基板蝕刻處理包括對遮罩層進行蝕刻的處理,或是更具體而言係對先前沉積在基板表面上及/或以其他方式存在於基板表面上的任何材料層進行蝕刻的處理。此蝕刻處理可在基板中蝕刻層的堆疊。
「製造設備」係指內部進行製造處理的設備。製造設備通常具有處理腔室,而工件在處理期間係位於該處理腔室中。一般而言,製造設備在使用中係執行一或更多半導體裝置製造操作。半導體裝置製造所用的製造設備示例包括沉積反應器(例如,電鍍槽、物理氣相沉積反應器、化學氣相沉積反應器及原子層沉積反應器),以及減除式處理反應器,例如乾式蝕刻反應器(例如,化學及/或物理蝕刻反應器)、濕式蝕刻反應器及灰化器。
本文中所使用的「集群」係指執行同一半導體製造配方(例如,同一蝕刻處理、同一沉積處理等)的處理腔室群組。應注意到,處理腔室的集群可包括任何合適數量(例如,5、10、15、20、30及/或任何其他合適數量的處理腔室)。在一些實施例中,該集群的所有成員係配置著相同構件;例如相同的RF產生器、相同的腔室壁尺寸、相同的噴淋頭設計等。
本文中所使用的「反射率數據」係指使用處理腔室的一或更多光學感測器而量測的光學反射率數據。反射率數據可為在晶圓製造期間收集的臨場晶圓上測量值,以例如用於處理控制。在一些實施例中,反射率數據可指示任何合適資訊,例如反射光強度,其作為時間及/或發射自任何合適光源的光的波長的函數。舉例而言,在一些實施例中,反射率數據可對應於從發射光反射的光,其中該發射光在製造期間係在晶圓上的一地或一點處被導向。
本文中所使用的「計量學數據」係指至少部分由經處理基板的測量特徵部所產生的數據。應注意到,如本文所述,計量學數據可指的是非臨場測量值。換言之,計量學測量可在執行半導體裝置製造操作之前或之後進行。在一些實施例中,計量學數據係經由在經蝕刻基板上執行顯微術(例如,掃描電子顯微術(SEM)、穿透電子顯微術(TEM)、掃描穿透電子顯微術(STEM)、反射電子顯微術(REM)、原子力顯微術(AFM))或光學計量學的計量學系統而產生。
在一些實施例中,計量學數據係透過在經處理基板上執行反射量測術、圓頂散射測量、角分解散射測量、小角度X-ray散射測量及/或橢圓偏光術而產生。在一些實施例中,計量學數據包括從例如能量色散X-ray光譜術(EDX)所得的光譜學數據。在一些情況下,光學計量學係使用獨立或經整合光學計量學工具而執行,其中該光學計量學工具係配置以精確地對經加工或經部分加工的電子裝置的一或更多性質描述特徵。此光學計量學工具可配置以在基板表面上產生小的射束斑點(例如,直徑約為5 mm以下)。在一些實施例中,計量學數據可包括與特徵部相應的光學臨界尺寸(OCD)資訊。作為特定示例,在一些實施例中,OCD資訊可指示蝕刻深度。
計量學系統可獲得與各種特徵部(例如,邊緣、通孔、溝槽等)的尺寸(例如,尺寸、深度、寬度等)有關的資訊。計量學系統可獲得在基板中或在基板上的層中所含的材料有關的資訊。此資訊可包括光學資訊(例如,消光係數及/或折射率)、化學資訊(例如,化學組成及/或原子組成)、形態資訊,例如晶體結構等。
應注意到,本文中所使用的計量學數據可在晶圓上執行製造操作之前或之後非臨場收集而用於晶圓。在一些實施例中,可針對特定處理腔室所加工的晶圓子集合(例如,每十片晶圓、每15片晶圓等)而收集計量學數據。
本文中所使用的「處理控制」係指在透過處理腔室加工晶圓期間將該處理腔室的參數進行設定、調整及/或維持以達到目標晶圓規格,例如目標蝕刻深度、目標側壁角度等。「端點控制」為處理控制的示例,其中係判斷是否已達到目標端點(例如,目標蝕刻深度)。
本文中所使用的「機器學習模型」係經訓練的計算演算法,其中該計算演算法已受訓練而建構數據點之間的關係的計算模型。經訓練的機器學習模型可基於經學習關係而產生輸出,不需被明確編程而使用明確定義的關係產生輸出。
機器學習模型的示例包括迴歸模型、自動編碼器網路(例如,長短期記憶體(LSTM)自動編碼器、卷積類自動編碼器、深度自動編碼器、可變自動編碼器及/或任何其他合適類型的自動編碼器網路)、神經網路(例如,卷積類神經網路、深度卷積網路、重現神經網路及/或任何其他合適類型的神經網路)、叢集演算法(例如,最近相鄰者、K平均群集及/或任何其他合適類型的叢集演算法)、隨機森林模型,包括深度隨機森林、受限玻爾茲曼機、深度信念網路(DBNs)、重現張量網路及梯度提升樹。
應注意到,一些機器學習模型的特徵在於「深度學習」模型。除另有指明外,在本文中任何關於機器學習模型的參照係包括深度學習實施例。深度學習模型得以各種形式實施,例如透過神經網路(例如,卷積類神經網路)。一般而言(但非必要),深度學習模型包括複數層。此等層各者包括複數處理節點,而該等層依序進行處理,其中較接近模型輸入層的層的節點係比較接近模型輸出的層的節點更早進行處理。在各種實施例中,一層係餵給次一層等。
在各種實施例中,深度學習模型可具有顯著的深度。在一些實施例中,該模型具有多於二(或多於三、多於四或多於五)的處理節點的層,該等處理節點的層從先前層接收數值(或作為直接輸入),並且將數值輸出至後續層(或最終輸出)。內部節點經常是「隱藏」的,意思是從該模型外側看不見其輸入值及輸出值。在各種實施例中,隱藏節點的操作在操作期間係不受監控或記錄的。
深度學習模型的節點及連接可經訓練及再訓練,而不須重新設計其數量、配置等。
如指示,在各種實行例中,該等節點層可集體形成神經網路,但許多深度學習模型係具有其他結構及形式。在一些實例中,深度學習模型不具有層狀結構,在此情況下則無關上述具有許多層的「深度」特性。
應注意到,本文為適應性模型訓練所述的技術可適用於任何類型的機器學習模型。
經訓練的機器學習模型可使用於處理控制。舉例而言,經訓練機器學習模型可用於從臨場測量值預測非臨場數據以用於臨場處理控制。在一些此實施例中,經訓練機器學習模型可包括從臨場測量值預測非臨場數據所用的係數集合,其中該等係數係使用機器學習演算法的訓練結果。在經訓練機器學習模型為迴歸模型的實例中,係數集合可對應於迴歸模型中的項(term)的係數。應注意到,用於臨場處理控制的經訓練機器學習模型在本文中有時係被稱作「程式庫」。
在一些實施例中,使用臨場測量值預測非臨場數據以用於臨場處理控制的機器學習模型或程式庫可被「程式庫訓練系統」所進行訓練。本文中所使用的「程式庫訓練系統」可配置以使用從複數處理腔室接收計量學數據訓練機器學習模型或程式庫,其中該複數處理腔室可為處理腔室集群。在一些實施例中,程式庫訓練系統可例如響應於判斷該處理腔室集群所使用的程式庫係過時的(例如,由於處理腔室的處理漂移、服務時間的推移及/或其他原因)而更新程式庫。在一些實施例中,程式庫訓練系統可配置以接著將更新後的程式庫傳送至該處理腔室集群的其中一些或所有成員。
在一些實施例中,程式庫可被程式庫訓練系統訓練以將所預測的非臨場數值與計量學數據所指示的基準真相非臨場數值之間的誤差最小化。舉例而言,程式庫可經訓練以將所預測的OCD資訊與非臨場計量學數據中指示的基準真相OCD值之間的誤差最小化。
本文中所使用的「光學記錄庫」係指係數或其他資訊的集合,其可使用所量測的臨場數據(例如,反射率數據)而產生預測資訊以用於處理腔室的處理控制。應注意到,本文中所使用的光學記錄庫係用於臨場處理控制的經訓練機器學習模型的示例。舉例而言,在一些實施例中,可將光學記錄庫用以基於臨場測量值且使用光學記錄庫中的係數集合以預測非臨場測量值。在一些實行例中,處理控制邏輯係配置以將光學記錄庫中的資訊與臨場收集測量值二者進行計算結合或以其他方式使用,以用於處理控制決定。作為更特定的示例,在一些實施例中,可將光學記錄庫用以基於所測量的臨場反射率數據產生預測OCD資訊。接續此特定示例,在一些實施例中,可接著將所預測的OCD資訊使用於處理腔室的處理控制。作為明確示例,可將所預測的OCD資訊使用於終點控制,以判斷是否達到目標蝕刻深度。
應注意到,光學記錄庫可為使用複數演算法的光學記錄庫系統的一部分。此光學記錄庫系統(可將其稱作「進階光學」系統)可使用機器學習模型及/或非機器學習演算法進行處理控制。在一些此情況下,經程式庫訓練系統使用本文所述的機器學習模型而訓練的光學記錄庫可被視為「進階光學」記錄庫。
本文中所使用的「漂移」係指所預測的非臨場測量值與橫跨複數處理腔室(例如,橫跨處理腔室集群)的基準真相非臨場測量值之間的誤差增加。程式庫訓練系統可對來自處理腔室集群的計量學數據進行監測以偵測漂移。舉例而言,在一些實施例中,程式庫訓練系統可響應於判斷誤差度量(例如,誤差的累積總和)已超出閾值而偵測漂移。
「偏離規格」係指用於處理控制的程式庫在所預測的非臨場測量值中產生誤差的狀態,其中所述誤差係超出閾值或以其他方式而未能符合與可接受預測效能相關的量化要求。應注意到,偏離規格可指的是使用中的程式庫及/或使用程式庫的特定處理腔室。偏離規格的判斷可透過使用二變異數驅動的度量而進行,其中該二變異數驅動的一者為使用該程式庫的處理腔室集群所用,而另一者係使用該程式庫的獨立處理腔室所用。具體而言,可將各變異數驅動度量與閾值進行比較以識別偏離規格的狀態。
本文中所使用的「程式庫再訓練觸發器」係指程式庫正等待再訓練的判定。在一些實施例中,可基於漂移的偵測而做出該判定。另外,在一些實施例中,可基於判斷所預測的非臨場測量值(例如,使用程式庫及所測量的臨場測量值所計算的預測測量值)與基準真相非臨場測量值之間的誤差變異數已超出預定閾值而做出該判定。在一些實施例中,可基於偵測出使用程式庫的一或更多處理腔室偏離規格而做出該判定。 概論
如本文所述的程式庫訓練系統可適當地保持、評估及/或更新處理腔室集群所用的程式庫。在一些實施例中,可將程式庫用於取出臨場測量值作為輸入,並產生非臨場測量值或其他度量的預測作為輸出,其中所述其他度量係使用於處理腔室在晶圓的製造期間的臨場處理控制。舉例而言,臨場測量值可包括晶圓上的反射率數據,其指示出各種波長的反射光的強度。藉由將來自處理腔室中的發光源的光導引至處理中的基板上可產生所述反射率數據。在一些情況下,臨場反射率數據係時變的;即,所述反射率信號係在基板進行處理時於複數時點所獲取。接續此示例,可將反射率數據用於產生非臨場測量值的預測。非臨場測量值可指示處理後的基板的一或更多特性。處理後的基板的特性可包括基板特徵部的一或更多幾何特性(例如,蝕刻深度、臨界尺寸及特徵部輪廓的其他態樣)。非臨場測量值的示例包括光學臨界尺寸(OCD)資訊,其指示在製造期間的晶圓的一或更多特徵部的幾何資訊(例如,蝕刻深度等)、一或更多其他類型的計量學數據(例如,XSEM、CDSEM、TEM等)等。進一步接續此示例,接著可將非臨場測量值的預測用於處理控制。作為更特定的示例,可將所預測的OCD資訊用於晶圓蝕刻期間的終點控制以達成目標蝕刻深度。
在一些實施例中,程式庫訓練系統可配置以監測處理腔室集群的性能,以決定將更新程式庫提供至該集群的時點。舉例而言,程式庫訓練系統可配置以基於所計算的誤差度量而觸發程式庫的再訓練,其中所述誤差度量指示非臨場測量值的預測誤差及/或非臨場測量值的預測隨時間的變化。作為更特定的示例,所述誤差度量可包括非臨場測量值的預測的誤差提升及/或橫跨該集群的非臨場測量值的預測誤差的變異數提升。應注意到,在一些實施例中,程式庫訓練系統可配置以透過將所預測的非臨場測量值與作為處理後計量學數據而收集的實際非臨場測量值進行比較而計算誤差。
在一些實施例中,程式庫訓練系統可配置以透過監測預測誤差隨時間的變化而偵測相對少數樣本的誤差漂移增加。換言之,可將集群寬度的預測誤差視為處理平均值,其中藉由響應於偵測到處理平均值中的漂移而對光學記錄庫進行再訓練,可控制處理平均值中的漂移。在一些實施例中,可使用控制圖來偵測集群寬度的預測誤差中的漂移,其中所述控制圖例如為累積總合(CUSUM)圖、休哈特控制圖、指數加權移動平均(EWMA)控制圖、複數串流處理(MSP)控制圖等。透過監測橫跨該集群的誤差變化,可在誤差相對小的時候偵測誤差漂移。
在一些實施例中,程式庫訓練系統可配置以訓練更新程式庫以取代偏離規格的程式庫。接著,程式庫訓練系統可配置以藉由將該更新程式庫與偏離規格的程式庫進行比較而評估該更新程式庫,使得該更新程式庫在下列情況下被使用於該集群:1)該更新程式庫優於偏離規格的當前程式庫;及/或2)該更新程式庫滿足絕對性能基準,例如在評估測試數據時具有低於閾值的誤差變化。應注意到,在一些實施例中,可將當前程式庫及更新程式庫均以測試集進行評估,其中該當前程式庫及更新程式庫皆未以該測試集進行訓練從而該當前程式庫及該更新程式庫對於該測試集為盲測的。
在一些實施例中,若更新程式庫未滿足採用基準,則可執行第二或進一步的訓練迭代(iteration)以產生進一步更新的程式庫。在一些實施例中,各相繼的程式庫訓練迭代可使用經修改的訓練及測試集。舉例而言,在一些實施例中,可轉換相繼迭代的測試集而以較近期的晶圓數據測試程式庫。作為另一示例,在一些實施例中,可擴展將相繼迭代的訓練集而以額外訓練數據訓練程式庫。透過將分配於相繼程式庫訓練迭代的訓練集及測試集進行修改可較迅速地訓練出優化程式庫。尤其,透過在程式庫不滿足採用基準時擴展訓練集可較迅速且有效地訓練程式庫。
應注意到,雖然在本文中將程式庫訓練系統概述為用於提供基於臨場光學測量值(例如,反射率數據)來預測非臨場測量值(例如,OCD資訊)的程式庫,然而應當理解的是本文所述的技術係可延伸以適應性地訓練其他類型的機器學習模型及/或產生其他類型的程式庫,以用於臨場處理控制。舉例而言,所述技術可用於訓練機器學習模型或產生程式庫,以使用臨場熱測量值預測非臨場計量學數據、使用臨場電性測量值預測非臨場計量學數據等。 程式庫訓練系統
請參照圖1,其根據所揭示的標的主體的一些實施例顯示程式庫訓練系統的使用示意圖。
如圖所示,在一些實施例中,程式庫訓練系統100可與複數處理腔室通信,其中該等處理腔室包括處理腔室的集群,例如在圖1中顯示處理腔室110、腔室120、腔室130等。舉例而言,在一些實施例中,程式庫訓練系統100可配置以產生光學記錄庫,其中所述光學記錄庫可被傳送及被處理腔室使用而進行處理控制,如將更詳細描述於下。應注意到,在一些實施例中,處理腔室集群中的各處理腔室可實施晶圓製造的相同處理或配方。在一些實施例中,集群中的各處理腔室具有相同構件及設計。
在一些實施例中,處理腔室集群中的各處理腔室可收集晶圓製造期間的臨場反射率數據。舉例而言,如圖1所示,處理腔室110可收集反射率數據112。
反射率數據112可被處理控制邏輯114使用,以在晶圓製造期間進行處理腔室110的處理控制。舉例而言,處理控制114可修改任何合適參數以控制晶圓的目標特徵的製造。作為更特定的示例,在一些實施例中,處理控制邏輯114可配置以藉由判斷在晶圓蝕刻期間是否已達成目標蝕刻深度而執行終點控制。作為另一更特定的示例,在一些實施例中,處理控制邏輯114可配置以調整參數而控制晶圓的側壁角度。
在一些實施例中,處理控制邏輯114可配置以使用光學記錄庫而使用反射率數據112計算所預測的光學臨界尺寸(OCD)資訊。接續此示例,OCD資訊可用於預測與製造中的晶圓的特徵部相關的幾何資訊,例如電流蝕刻深度、電流側壁角度等。
處理腔室可將非臨場計量學數據傳送至程式庫訓練系統100。舉例而言,處理腔室110可將計量學數據116傳送至程式庫訓練系統100。在一些實施例中,可為處理腔室110所製造的晶圓子集合(例如,每十個晶圓、每二十個晶圓等)收集計量學數據116。在一些實施例中,計量學數據116可包括任何合適測量值,例如晶圓的任何特定特徵部所用的基準真相OCD資訊。
程式庫訓練系統100可配置以從處理腔室集群中的複數處理腔室接收計量學數據。如結合圖2及圖3而描述於下,程式庫訓練系統100可配置以基於所接收的計量學數據而判斷由處理腔室所使用以進行處理控制的當前光學記錄庫是否偏離規格。舉例而言,程式庫訓練系統100可配置以基於被包括在所接收的非臨場計量學數據中的基準真相OCD資訊而判斷在所預測的OCD資訊中的誤差已漂移超出可接受閾值。
如結合2B而更詳細描述於下,程式庫訓練系統100可配置以訓練更新光學記錄庫。程式庫訓練系統100可接著配置以將該更新光學記錄庫傳送至處理腔室集群中的處理腔室,如圖1所示。
應注意到,在一些實施例中,處理腔室集群中的各處理腔室可使用相同的光學記錄庫,其中該光學記錄庫已使用從複數處理腔室接收的計量學數據而進行訓練。進一步接續進行,在一些實施例中,處理腔室集群中的各處理腔室可接收該相同的更新光學記錄庫。
另外,應注意到,在一些實施例中,處理腔室集群中的一或更多處理腔室可不使用程式庫訓練系統100所提供的光學記錄庫以進行處理控制。舉例而言,此腔室可使用蝕刻時間的數據以進行終點控制。在一些此實施例中,程式庫訓練系統100可配置以基於使用該光學記錄庫的處理腔室的預測誤差而判斷是否提供更新光學記錄庫。然而,在一些實施例中,程式庫訓練系統100可配置以使用來自處理腔室集群中的所有處理腔室(包括未使用光學記錄庫進行處理控制的處理腔室)的計量學數據以訓練更新光學記錄庫。
請參照圖2A及圖2B,其根據所揭示的標的主體的一些實施例顯示程式庫訓練所用的示例處理。所述處理可由任何合適裝置而加以執行,例如程式庫訓練系統的一或更多伺服器,如圖1所示且結合圖1而描述於上。應注意到,不須執行圖2A及圖2B中所顯示的所有方格。另外,應注意到,得以與圖2A及圖2B中所繪示的順序不同的順序執行該等方格。
在圖2A的202處,可接收與當前程式庫相關的晶圓數據。此數據可為可助於闡明當前程式庫的性能的數據。舉例而言,晶圓數據可包括非臨場測量值,其指示處理後的基板的一或更多特性。作為更特定的示例,晶圓數據可包括非臨場計量學數據,其指示與晶圓的特徵部相關的所測量OCD資訊,例如蝕刻深度、側壁角度的大小等。
在一些實施例中,晶圓數據可包括由處理腔室使用於終點控制的臨場資訊。舉例而言,在一些實施例中,晶圓數據可包括使用當前程式庫而計算的所預測非臨場資訊(例如,OCD資訊)。作為另一示例,在一些實施例中,晶圓數據可包括所測量的反射率數據,其中可使用當前程式庫而從所述反射率數據計算所預測的OCD資訊。
應注意到,可從處理腔室集群中的任何合適數量的處理腔室(例如,五個處理腔室、十個處理腔室、二十個處理腔室等)接收晶圓數據。應額外注意的是,可從處理腔室集群中的各處理腔室非同步地接收晶圓數據。該晶圓數據可對應於複數晶圓(例如,五個晶圓、十個晶圓、五十個晶圓等)。
在204處,可評估當前程式庫的性能。得以任何合適方式評估當前程式庫的性能。舉例而言,在一些實施例中,可對使用當前程式庫(例如,基於所測量的反射率數據)而計算的所預測OCD值與被包括在或源自於非臨場計量學數據的基準真相OCD值之間的誤差進行計算。換言之,在一些實施例中,誤差=所預測OCD–基準真相OCD。應注意到,此誤差在本文中係統稱為「離線誤差」。
在一些實施例中,可將「線上誤差」計算為誤差=基準真相OCD–目標+偏置(Offset),其中目標係指各處理腔室為所製造的晶圓而達成的目標值(例如,目標蝕刻深度等),且其中偏置參數係概括該集群中的不同處理腔室之間的差異。應注意到,線上誤差可暗指臨場資訊,例如係基於臨場反射率測量值的所預測OCD。另外,在一些實施例中,在計算線上誤差的實例中,在方格202處接收的晶圓數據不須包括臨場資訊,例如臨場反射率測量值、所預測OCD資訊等。
在一些實施例中,得以任何合適方式分析誤差值。舉例而言,可對橫跨使用光學記錄庫的處理腔室集群而合計的誤差值進行分析。接續此示例,可隨時間(即,隨著接收額外晶圓數據)保持並更新集群寬度的誤差度量。保持並更新集群寬度的誤差度量的方法示例包括CUSUM控制圖、Shewhart控制圖、EWMA控制圖、MSP控制圖、在特定時間周期內監測集群寬度的誤差以偵測超出閾值的該集群寬度誤差中的變化等。應注意到,下方關於圖3係更詳細描述CUSUM的使用。
請參照圖3,其根據所揭示的標的主體的一些實施例顯示用於分析誤差值的示例圖300。
在一些實施例中,可計算誤差值302的累積總合(CUSUM)。應注意到,顯示於圖3中且更詳細描述於下的誤差值302的CUSUM係用於正性誤差值(例如,對於離線誤差係當所預測的OCD>基準真相OCD及/或對於線上誤差係當基準真相OCD>目標)。在一些實施例中,雖然圖3中未顯示,但可計算負性誤差值的相應CUSUM並將其繪製於圖300中。
在一些實施例中,對於正性誤差值,可將誤差值302的CUSUM計算為
Figure 02_image001
,其中 i為晶圓數據樣本號碼,Error( i)為第 i個樣本的誤差,而 k係指示該誤差中的可允許鬆弛(allowable slack)的參數。在一些實施例中,可將 k設定為任何值,例如誤差值分佈的所欲標準偏差。應注意到,可將CUSUM_POS(0)設定為具有數值0。
應注意到,可將對於負性誤差值的CUSUM(未顯示於圖3)計算為
Figure 02_image003
。對於負性誤差值的CUSUM得以負性誤差值進行更新,即對於離線誤差係當所預測的OCD<實際OCD,或是對於線上誤差係當基準真相OCD<目標。應注意到,可將CUSUM_NEG(0)設定為具有數值0。
對於正性誤差值的CUSUM的示例係給定於下,其中 k係被設定為0.7。若Error(1)係計算為1.1(而因此為正性誤差值),則CUSUM_POS(1)=Max[0,CUSUM_POS(0)+1.1-0.7]=Max[0,0.4]=0.4。類似地,CUSUM_NEG(1)=Max[0,CUSUM_NEG(0)-1.1-0.7]=Max[0, -1.8]=0。
進一步接續此示例,若Error(2)係計算為-0.9(且因此為負性誤差值),則對於正性誤差值的CUSUM(即,CUSUM_POS)將被更新成0。換言之,CUSUM_POS(2)=MAX[0,CUSUM_POS(1)+(-0.9)-0.7]=MAX[0,-1.2]=0。對於負性誤差值的CUSUM將被更新成0.2。換言之,CUSUM_NEG(2)=MAX[0,CUSUM_NEG(1)-(-0.9)-0.7]=MAX[0,0.2]=0.2。
仍進一步接續此示例,若Error(3)係計算為0.2,則CUSUM_POS(3)=MAX[0, CUSUM_POS(2)+0.2-0.7]=MAX[0, -0.5]=0。 類似地,CUSUM_NEG(3)=MAX[0, CUSUM_NEG(2)-(0.2)-0.7]=MAX[0, -0.7]=0。
應注意到,如在上方所給定的示例,以及如誤差值302的CUSUM所示,CUSUM值不須為單調的(monotonic) 另外,如上方的示例計算所示,CUSUM_POS及CUSUM_NEG將具有大於或等於0的數值。
在一些實施例中,可將誤差值302的CUSUM與控制閾值304進行比較,以評估當前程式庫的性能。舉例而言,可將誤差值中的漂移視為響應於判斷誤差值302的CUSUM超出控制閾值304而進行偵測。可將控制閾值304設定成任何合適數值。舉例而言,在一些實施例中,可將控制閾值304設定成橫跨處理腔室集群的誤差值分佈的所欲標準偏差(STD)的3倍,其在本文中稱作3σ。應注意到,雖然在此處通常係使用3σ,但在一些實施例中,可將任何合適數值使用於控制閾值,例如2σ、4σ及/或任何其他合適數值。
應注意到,雖然圖3未顯示,但可響應於判斷負性誤差值的CUSUM小於負性控制閾值而偵測到漂移。舉例而言,在負性控制閾值為-2.2且負性誤差值的CUSUM達到-2.5的實例中可偵測到漂移。
在一些實施例中,可計算誤差值306的變異數。應注意到,誤差值306的變異數可為橫跨該集群的所有處理腔室的誤差值變異數。尤其,應注意到,可使用橫跨所有處理腔室的數值計算誤差值變異數,而不論各腔室貢獻多少數值。在一些實施例中,在計算誤差值306的變異數之前可將所述誤差值平均數置中(mean-center)。在一些此實施例中,誤差值306的變異數可表示誤差值分佈的變異數,同時有效地忽略誤差值的平均數。反過來說,誤差值的CUSUM可有效表示橫跨該等處理腔室的誤差值的平均數變化。
在一些實施例中,可將誤差值306的變異數與控制閾值304進行比較,以評估當前程式庫的性能。舉例而言,可響應於判斷誤差值306的變異數已超出控制閾值304而偵測到橫跨該集群中的處理腔室的誤差變異數增加。
請參照回到圖2A,在206處,可做出是否對當前程式庫進行再訓練的判斷。在一些實施例中,可基於當前程式庫的性能是否滿足再訓練的基準而做出該判斷。舉例而言,所述基準可包括是否偵測到當前程式庫的誤差漂移。做為更特定的示例,可基於控制圖(例如,CUSUM控制圖、Shewhart控制圖、EWMA控制圖、MSP控制圖等)的當前數值指示預測誤差的漂移而偵測到當前程式庫的誤差漂移。作為另一更特定示例,可基於在特定時間裕度期間或是在特定數量的晶圓數據樣本期間跳躍大於一閾值量(例如,大於0.2、大於0.5等)的程式庫的誤差而偵測當前程式庫的誤差漂移。應注意到,預測誤差的漂移可能是源自於整個處理腔室集群,或是該等處理腔室的子集合。
作為特定示例,當誤差值的CUSUM超出控制閾值時可偵測到漂移。舉例而言,請參照圖3,可基於在控制閾值304之上的基於CUSUM值308而偵測到漂移。應注意到,可基於圖3未顯示的負性誤差值的CUSUM而偵測到漂移。舉例而言,當負性誤差值的CUSUM超出控制閾值304時可偵測到漂移。
作為另一示例,在一些實施例中,基準可包括橫跨集群中的該等處理腔室的經平均數置中誤差的變異數是否超出控制閾值。應注意到,在一些實施例中,用於偵測漂移的控制閾值(例如,使用誤差值的CUSUM)及與經平均數置中誤差的變異數所使用的控制閾值相關使用可為相同的控制閾值,如圖3所示且結合圖3所描述於上。相反地,在一些實施例中,可將二個不同控制閾值用於誤差值的漂移及誤差值的變異數。
在一些實施例中,該基準可包括該集群中的偏離規格的處理腔室數量是否超出腔室閾值。當與處理腔室相關的預測誤差超出誤差閾值時可判定獨立處理腔室偏離規格。請再次參照圖3,圖表350顯示在該集群中的偏離規格的處理腔室數量作為晶圓樣本數量的函數。應注意到,圖表350顯示腔室閾值352。在一些實施例中,腔室閾值352可指示在該集群中可偏離規格的最大處理腔室數量,例如二個腔室、三個腔室等。額外或替代地,在一些實施例中,腔室閾值352可指示在該集群中可偏離規格的處理腔室的最大比率,例如5%、10%等。
請參照回到圖2A,在一些實施例中,當符合來自下列群組的任何合適的基準組合時可做出對當前程式庫進行再訓練的判定:1)誤差值的CUSUM超出控制閾值;2)經平均數置中的誤差變異數超出控制閾值;以及3)偏離規格的處理腔室數量超出腔室閾值。應注意到,在一些實施例中,控制閾值及/或腔室閾值可由任何合適實體所設定,例如處理腔室集群的操作者。
舉例而言,請參照圖3,可基於晶圓樣本354(其滿足全部的三個再訓練基準)而做出對當前程式庫進行再訓練的判定。或者,在一些實施例中,可響應於已滿足的任何基準子集合而做出對當前程式庫進行再訓練的判定。
請參照回到圖2A,若在206處判定當前程式庫不需進行再訓練(在206處為「否」),則該處理可繞回202並接收與當前程式庫相關的額外晶圓數據。
相反地,若在206處判定當前程式庫需要進行再訓練(在206處為「是」),則在207處可作成是否具有足夠的晶圓數據對當前程式庫進行再訓練的判定。
可基於判斷當前可用的晶圓樣本數量是否超出訓練設定閾值而作成是否具有足夠晶圓數據對當前程式庫進行再訓練的判定。該訓練設定閾值可為任何合適的訓練樣本數量,例如50個樣本、100個樣本、200個樣本等。
若在207處判定不存在足夠晶圓數據對當前程式庫進行再訓練(在207處為「否」),則該處理可繞回到202並接收與當前程式庫相關的額外晶圓數據。應注意到,在一些實施例中,由於當前程式庫先前已受評估且被判定偏離規格,故可省略方格204及方格206。
相反地,若在207處判定具有足夠晶圓數據進行再訓練(在207處為「是」),則在208處可產生第二程式庫。可透過使用非臨場數據及臨場測量值訓練第二程式庫而產生第二程式庫。應注意到,產生第二程式庫的詳細技術係顯示於圖2B且結合圖2B而描述於下。
請參照圖2B,其根據所揭示的標的主體的一些實施例顯示一流程圖,該流程圖說明程式庫訓練所用的處理。
在210處,可識別晶圓數據的測試集及訓練集。
晶圓數據的訓練集及測試集得以任何合適方式加以識別。請參照圖4A,其根據所揭示的標的主體的一些實施例顯示一示意圖,該示意圖繪示用於識別訓練集及測試集的各種技術。
圖4A所顯示的各圓圈係代表由程式庫訓練系統接收的晶圓數據。應注意到,各圓圈可代表任何合適數量的晶圓數據樣本(例如,10個樣本、20個樣本、50個樣本等)。黑色圓圈代表該程式庫再訓練觸發時的樣本前所接收的晶圓數據(例如,晶圓數據402),且該晶圓數據包括該程式庫再訓練觸發時的該樣本,而虛線圓圈代表程式庫再訓練觸發後所接收的晶圓數據(例如,晶圓數據404)。
在一些實施例中,各晶圓數據樣本可包括臨場數據,例如在晶圓製造期間所測量的臨場反射率數據。在一些實施例中,臨場數據可為在晶圓製造期間所測量的數據,其係使用於在晶圓製造期間產生所預測的OCD資訊(例如,用於處理控制、用於終點控制等)。另外,在一些實施例中,各晶圓數據樣本可包括非臨場數據,例如在晶圓製造後收集的計量學數據。在一些實施例中,計量學數據可包括所量測的OCD資訊,例如所量測的蝕刻深度資訊。
在一些實施例中,訓練集及/或測試集中的各樣本可包括臨場數據及非臨場數據二者。舉例而言,在一些實施例中,所預測的OCD資訊可為訓練樣本或測試樣本的輸入值,而非臨場數據(例如,所量測的OCD資訊)可為訓練樣本或測試樣本的目標輸出。
在一些實施例中,可將訓練集及測試集進行分派,使得該測試集包括在程式庫再訓練觸發器後所接收的晶圓數據樣本(例如,測試集406),而訓練集包括在程式庫再訓練觸發器前所接收的晶圓數據樣本(例如,訓練集408),且該晶圓數據樣本包括該程式庫再訓練觸發器。在本文中,這通常稱為0的測試轉換比率,如圖4A所示。
在一些實施例中,可將訓練集及測試集進行分派,使得該測試集及該訓練集皆包括在觸發程式庫再訓練的樣本前所接收的晶圓數據樣本,例如測試集410及訓練集412,且該晶圓數據樣本包括觸發程式庫再訓練的樣本。在本文中,這通常稱為1的測試轉換比率。
在一些實施例中,可將訓練集及測試集進行分派,使得該訓練集包括在觸發程式庫再訓練的樣本前所接收的晶圓數據樣本(例如,訓練集414),而該測試集包括在觸發程式庫再訓練的樣本前的晶圓數據樣本,該晶圓數據樣本包括觸發程式庫再訓練的該樣本,且該測試集也包括在觸發程式庫再訓練的樣本後所接收的晶圓數據樣本(例如,測試集416)。在本文中,這通常稱為介於0至1之間的測試轉換比率,其中該測試轉換比率的數值可為介於0至1之間的任何分數值。
應注意到,測試轉換比率的不同數值可改變測試集中所包括且在程式庫再訓練觸發器後接收的晶圓數據樣本的比例。舉例而言,與較接近1的測試轉換比率相比,相對接近0的測試轉換比率值可包括較多在觸發程式庫再訓練的樣本後所接收的晶圓數據樣本。
另外,應注意到,圖4A顯示的訓練集及測試集的尺寸,以及與測試集的尺寸相對的訓練集的尺寸僅為示例性的。在一些實施例中,訓練集及測試集可各自具有任何合適數量的晶圓數據訓練樣本。
請參照回到圖2B,在212處,可使用訓練集對第二程式庫進行訓練。舉例而言,在一些實施例中,可將機器學習模型用於學習從臨場數據預測非臨場數據的係數。作為更特定的示例,第二程式庫可包括基於所測量的反射率數據來預測OCD資訊的係數。
應注意到,在一些實施例中,可使用驗證集以驗證第二程式庫。在一些實施例中,在使用訓練集的剩餘部分對第二程式庫進行訓練之前,可將驗證集建構為該訓練集的子集合。
在214處,可使用測試集對第二程式庫進行評估。
在一些實施例中,評估第二程式庫可包括計算第二程式庫的一組預測誤差。舉例而言,對於測試集中的各樣品來說,可使用第二程式庫及所述樣品的輸入值計算所預測的OCD值。接續此示例,可將樣品誤差計算作為所預測的OCD資訊與基準真相OCD資訊之間的差異。因此,該組預測誤差可指示各測試集樣品的預測誤差。
應注意到,在一些實施例中,在使用測試集評估當前程式庫時,當前程式庫可能會類似地產生一組預測誤差。換言之,在一些實施例中,可使用同一測試集各自對當前程式庫及第二程式庫進行評估。此外,在一些實施例中,由於當前程式庫及第二程式庫皆未使用該測試集所包括的樣本進行訓練,因此可將該當前程式庫及該第二程式庫視為對測試集係盲測的。
在一些實施例中,可透過計算與該組預測誤差相關的任何合適度量以評估第二程式庫,其中該組預測誤差係與測試集相關。舉例而言,所述度量可包括該組預測誤差的標準偏差(STD)、預測誤差的3σ、預測誤差的的變異數、預測誤差的平均數及/或任何其他合適度量。類似地,在一些實施例中,可為當前程式庫的該組預測誤差計算相應度量。
在216處,可做出第二程式庫是否滿足佈署基準的判定。
舉例而言,在一些實施例中,該基準可包括當以測試集進行評估時,第二程式庫的性能是否優於當前程式庫的性能。
在一些實施例中,得以任何合適度量指示第二程式庫及當前程式庫各者的性能,例如一組預測誤差的3σ。舉例而言,在第二程式庫的一組預測誤差為[0.2,2.3,0.5,0.7,0.8]且當前程式庫的一組預測誤差為[0.6,0.9,4.3,0.2,3.4]的實例中,第二程式庫的該組預測誤差的3σ為2.19,而當前程式庫的該組預測誤差的3σ為4.92。
在一些實施例中,若第二程式庫在性能度量方面的改良超越當前程式庫係超出改良閾值,則可將該第二程式庫視為對該當前程式庫的改良。舉例而言,所述改良閾值可為20%、30%及/或任何其他合適的改良閾值。接續上方示例,當使用3σ作為性能度量時,第二程式庫相對於當前程式庫在測試集方面的改良為55%。在改良閾值為20%的實例中,可將第二程式庫視為優於當前程式庫。
作為另一示例,在一些實施例中,所述基準可包括當以測試集評估第二程式庫時該第二程式庫的絕對性能。作為更特定的示例,在一些實施例中,所述基準可包括當以測試集評估第二程式庫時該第二程式庫的性能是否低於誤差閾值。作為具體示例,在性能度量為一組預測誤差的3σ的實例中,誤差閾值可為所欲的3σ值。接續此特定示例,請參照上方所給定的示例,在第二程式庫的一組預測誤差的3σ數值為2.19且誤差閾值為2.2的實例中,當以測試集評估第二程式庫時該第二程式庫的性能低於該誤差閾值,也因此可將該第二程式庫的該性能視為滿足絕對性能基準。
在一些實施例中,可基於所符合的任何合適基準組合而滿足佈署基準。舉例而言,在一些實施例中,當發生下列二者時可滿足佈署基準:1)以測試集進行評估時第二程式庫係優於當前程式庫;以及2)以測試集評估第二程式庫時該第二程式庫的性能低於該誤差閾值。應注意到,第二程式庫對於當前程式庫的改良在本文中通常係被稱作「合格」的第二程式庫。另外,應注意到,低於誤差閾值的第二程式庫的性能在本文中通常係被稱作「最佳」的第二程式庫。
若在216處判斷第二程式庫滿足佈署基準(在216處為「是」),則在218處可佈署該第二程式庫。舉例而言,可將第二程式庫傳送至集群中的各處理腔室。在一些實施例中,該等處理腔室可接著各自以第二程式庫取代當前程式庫而用於處理控制。
應注意到,在一些實施例中,即使判斷第二程式庫係合格但並非最佳的,仍可將第二程式庫佈署至集群中的處理腔室。換言之,若第二程式庫對於當前程式庫係改良的,即使第二程式庫的性能未低於誤差閾值,仍可將該第二程式庫進行佈署。在一些此實施例中,可將該第二程式庫進行佈署,並可執行下方描述的方格220-224以訓練第三程式庫。另外,在一些此實施例中,可將第二程式庫傳送至集群中的處理腔室,並配合指示該第二程式庫並非最佳程式庫的警示訊息。
若在216處判斷第二程式庫不滿足佈署基準(在216處為「否」),則在220處可識別晶圓數據的新訓練集及新測試集以訓練第三程式庫。應注意到,第二程式庫的訓練(例如,上方關於方格210-214所述)在本文中係稱作迭代1,而第三程式庫的訓練(例如,下方關於方格220-224所述)在本文中係稱作迭代2。
請參照圖4B,其根據所揭示的標的主體的一些實施例顯示用於識別晶圓數據的新訓練集及新測試集的示意圖。
測試集452及訓練集454顯示用於訓練及評估第二程式庫(即,迭代1)的測試集及訓練集。應注意到,雖然顯示測試集452及訓練集454係使用介於0與1之間的測試轉換比率(例如,上方關於圖4A所述),但在迭代1中可使用任何合適的測試轉換比率以進行第二程式庫的訓練及評估。
在迭代2期間(即,關於圖2B的方格220-224所示及上方所描述的第三程式庫的訓練及評估),訓練集456可用於訓練第三程式庫,而測試集458可用於評估。應注意到,測試集458可用於評估第三程式庫,以及當與該第三程式庫進行比較時用於評估第二程式庫(例如,用以決定該第三程式庫是否為第二程式庫的改良)。
在一些實施例中,測試集458可與測試集452具有相同尺寸。然而,在一些實施例中,測試集458可包括晶圓數據樣本,其中所述晶圓數據樣本係比測試集452所包括的晶圓數據樣本更為近期,如圖4B所示。
在一些實施例中,訓練集456的尺寸可大於訓練集454的尺寸,如圖4B所示。在一些實施例中,可將各相繼迭代所用的訓練集增加固定數量的晶圓數據樣本(例如,來自100個晶圓的數據、來自200個晶圓的數據等)。舉例而言,在圖4B所顯示的各圓圈係代表50個晶圓數據樣本的實例中,訓練集456相對於訓練集454可包括額外的50個晶圓數據樣本。另外,在一些實施例中,可將迭代2的訓練集456進行轉換以包括比迭代1的訓練集454中所包括的晶圓數據樣本更為近期的晶圓數據樣本。
測試集460及訓練集462分別顯示在例如迭代2期間產生的程式庫無法滿足佈署基準的實例中,用於程式庫訓練的迭代3的測試集及訓練集。
如圖所示,在一些實施例中,測試集460可與測試集458及/或測試集452具有相同尺寸。另外,如圖所示,在一些實施例中,可將測試集460進行轉換以包括比測試集458及/或測試集452中所包括的晶圓數據樣本更近期接收的晶圓數據樣本。
在一些實施例中,訓練集462可大於訓練集456及訓練集454。舉例而言,如圖所示,訓練集462可相對於訓練集456提升尺寸以包括額外固定數量的晶圓數據樣本。作為更特定的示例,在圖4B所顯示的各圓圈代表50個晶圓數據樣本的實例中,訓練集462可相對於迭代2的訓練集456具有50個額外晶圓數據樣本,且相對於迭代1的訓練集454具有100個額外晶圓數據樣本。
應注意到,藉由包括較近期接收的晶圓數據樣本(例如,關於訓練集456及462所示)及/或藉由包括較舊的晶圓數據樣本可達成一訓練集相對於先前迭代的訓練集的尺寸提升。舉例而言,在晶圓數據樣本的數量不足以利用新接收的晶圓數據樣本來轉換測試集及擴展訓練集的實例中,可藉由包括較舊的晶圓數據樣本而擴展訓練集。
請參照回到圖2B,在222處,可使用新訓練集訓練第三程式庫。應注意到,此為迭代2,如關於圖4B所示且描述於上。
類似於有關方格212而描述於上,可訓練第三程式庫。舉例而言,機器學習模型可用於學習係數,其中所述係數是基於臨場測量值(例如,臨場反射率測量值)來預測非臨場值(例如,在計量學數據中指示的非臨場OCD資訊)。
在一些實施例中,可使用驗證集對第三程式庫進行驗證,其中該驗證集為訓練集的一部分。在一些此實施例中,該驗證集可在訓練第三程式庫前加以建構,而該第三程式庫可使用該訓練集不包括該驗證集的剩餘部分進行訓練。
在224處,可使用新測試集評估第三程式庫。可使用上述與方格214相關的技術評估第三程式庫。應注意到,當使用新測試集進行評估時,可將第三程式庫的性能與當前程式庫的性能進行比較。
該處理可接著繞回到方格216,並且可判斷第三程式庫是否滿足佈署基準。
應注意到,在一些實施例中,可重複進行方格216-224直到已對被認為最佳的程式庫(即,滿足絕對性能基準的程式庫)進行訓練。
請參照圖5,其根據所揭示的標的主體的一些實施例顯示由程式庫訓練系統所評估及/或訓練的程式庫的示例性度量表。
欄502顯示用於評估及/或訓練特定程式庫的晶圓的晶圓數據指標。應注意到,該等晶圓數據指標係以25為群組進行分格以避免該表格過度複雜。另外,應注意到,雖然該等晶圓數據指標係以25為群組進行分格,但在一些實施例中,評估集、訓練集及/或測試集可包括所顯示以外的任何合適數量的晶圓數據樣本(例如,50、100、200等)。
欄504顯示程式庫A在第一評估時間時的性能度量。如圖所示,程式庫A係使用晶圓26-50而加以評估。應注意到,圖5所顯示的性能度量係當程式庫以所指示的樣本進行評估時的預測誤差的3σ。如上所述,對於各晶圓的預測誤差為基準真相OCD資訊與所預測的OCD資訊之間的差異,其中所預測的該OCD資訊係使用程式庫A及臨場測量值(例如,反射率數據)加以預測,而基準真相OCD資訊為非臨場計量學數據。
在一些實施例中,可響應於判斷性能度量滿足性能基準(例如,3σ值低於閾值)而再次評估程式庫A,如欄506所示。應注意到,所述閾值可為所欲的3σ值。示例閾值為1.8、2.2、2.5等。
在圖5所顯示的示例中,由於在使用晶圓26-50評估程式庫A時,程式庫A的3σ值低於閾值2.2,因此使用晶圓51-75再次對程式庫A進行評估,如欄506所示。
應注意到,當使用晶圓51-75評估程式庫A時,該程式庫A的3σ值係高於閾值2.2。因此,開始進行程式庫A的訓練,如欄508所示。如欄508所示,程式庫A1係使用晶圓1-50而加以訓練,並使用晶圓51-75進行測試。當使用晶圓51-75進行測試時,程式庫A的3σ值為2.37。如欄508所示,亦使用晶圓51-75對程式庫A進行評估,而程式庫A的相應3σ值為3.42。
在圖5所顯示的示例中,程式庫A1為程式庫A的改良,原因在於程式庫A1的3σ值(2.37)小於程式庫A的3σ值(3.42)。另外,在改良閾值為20%的實例中,可將程式庫A1視為合格的,程式庫A1相對於程式庫A的性能改良超過20%。然而,應注意到,在以晶圓51-100的測試集進行評估時,程式庫A1的3σ值大於2.2的所欲3σ閾值。因此,在第一迭代過後,程式庫A1不被認為是最佳的。
由於在第一迭代過後程式庫A1不被認為是最佳的,因此開始進行第二迭代的訓練,如欄510所示。如所繪示,第二迭代的程式庫A1係使用擴展的晶圓1-75訓練集而加以訓練。第二迭代的程式庫A1使用晶圓76-125的測試集進行評估。如所繪示,第二迭代的程式庫A1的3σ值為1.26,小於2.2的所欲3σ閾值。因此,第二迭代的程式庫A1被認為是最佳的,而將第二迭代的程式庫A1佈署至集群中的處理腔室。
接著,對第二迭代的程式庫A1進行評估,如欄512所示。舉例而言,第二迭代的程式庫A1的性能係使用晶圓126-150而加以評估。如所繪示,當使用晶圓126-150評估程式庫A1時,3σ值為1.23。由於該3σ值低於2.2的所欲3σ閾值of,故不開始進行程式庫的再訓練。
如欄514所顯示,第二迭代的程式庫A1係以晶圓151-175進行評估。對於晶圓151-175的3σ值為2.25。由於該3σ值超出2.2的所欲3σ閾值of,故開始進行程式庫的再訓練,如欄516所示。
第一迭代的程式庫A2係使用晶圓101-150的訓練集進行訓練,如欄516所示。接著,使用晶圓151-200對程式庫A2進行測試,其提供2.66的3σ值。應注意到,第二迭代的程式庫A1亦係使用晶圓151-200進行測試,而其提供2.65的3σ值。應注意到,第一迭代的程式庫A2並未比第二迭代的程式庫A1更好,原因在於第一迭代的程式庫A2的3σ值(2.66)大於第二迭代的程式庫A1的3σ值(2.65)。因此,第一迭代的程式庫A2係不合格也並非最佳的。
因此,對第二迭代的程式庫A2進行訓練,如欄518所示。如所繪示,第二迭代的程式庫A2係使用包括晶圓101-175的擴展訓練集進行訓練。接著,使用晶圓176-225對第二迭代的程式庫A2進行測試,其提供1.43的3σ值。當使用晶圓176-225進行測試時,第二迭代的程式庫A2係與程式庫A1對於同一測試集的性能進行比較。由於第二迭代的程式庫A2的3σ值小於2.2的所欲3σ閾值,且由於第二迭代的程式庫A2的3σ值係程式庫A1的改良,故第二迭代的程式庫A2被認為是最佳的,並且被佈署至集群中的處理腔室。
請參照圖6,其根據所揭示的標的主體的一些實施例顯示可由程式庫訓練系統實施的程式庫再訓練的示例流程圖。
在602處,程式庫訓練系統可配置以從例如儲存晶圓數據的數據庫讀取晶圓數據。在一些實施例中,晶圓數據可包括非臨場計量學數據。在一些實施例中,晶圓數據可額外包括任何合適的臨場測量值,例如在集群中的處理腔室的操作期間所收集的反射率測量值。
應注意到,在602處,數據庫可包括從正在使用程式庫A的處理腔室集群中的處理腔室所收集的數據,其中該程式庫A例如係程式庫訓練系統先前所提供的。
在604處,程式庫訓練系統可配置以過濾晶圓數據。在過濾程式庫數據的過程中,程式庫訓練系統可配置以移除無效數據,例如遺漏值、非數(NaN)值等。
在606處,程式庫訓練系統可配置以判斷AutoLib開關是「開啟」或「關閉」。應注意到,該AutoLib開關可指示是否已觸發程式庫再訓練。具體而言,若在606處該AutoLib開關是「開啟」的,則程式庫訓練系統可配置以處於監測模式,其中程式庫再訓練尚未觸發。反之,若在606處該AutoLib開關是「關閉」的,則該程式庫訓練系統可產生更新程式庫(即,下方所述的程式庫A1),而該程式庫訓練系統係處於測試模式以判斷是否佈署程式庫A1。
若在606處該AutoLib開關是開啟的,則在608處程式庫訓練系統可配置以判斷當前是否有足夠的晶圓數據以評估所佈署的程式庫A。
若在608處程式庫訓練系統判斷晶圓數據不足(在608處為「否」),則該程式庫訓練系統可等待以接收額外晶圓數據。
相反地,若在608處程式庫訓練系統判斷具有足夠晶圓數據,則在610處程式庫訓練系統可配置以判斷是否對程式庫A進行再訓練。在一些實施例中,是否對程式庫A進行再訓練的判斷可基於程式庫A在預測非臨場計量學測量值的性能評估,如上方關於圖2A的方格204及206所述。
若在610處程式庫訓練系統判斷程式庫不需進行再訓練(在610處為「否」),則在612處可將程式庫A繼續由該處理腔室集群使用。
相反地,若在610處程式庫訓練系統判斷程式庫需進行再訓練(在610處為「是」),則在614處程式庫訓練系統可配置以向該處理腔室集群提供程式庫A偏離規格的警示。應注意到,在一些實施例中可省略方格614。
在616處,程式庫訓練系統可配置以判斷是否具有足夠晶圓數據以對程式庫進行再訓練。
若在616處該程式庫訓練系統判斷晶圓數據不足以對程式庫進行再訓練(在616處為「否」),則程式庫訓練系統可等待以接收額外晶圓數據。
若在616處該程式庫訓練系統判斷句有足夠晶圓數據對程式庫進行再訓練(在616處為「是」),則在618處該程式庫訓練系統可配置以訓練新的程式庫(程式庫A1)。應注意到,關於訓練程式庫A1的技術係結合圖2B的方格210及212而更詳細描述於上。
接著,在620處程式庫訓練系統可配置以判斷程式庫A1是否通過驗證。舉例而言,如上方關於圖2B所述,在一些實施例中,可使用驗證集對程式庫A1進行驗證。
若在620處該程式庫訓練系統判斷程式庫A1未通過驗證(在620處為「否」),則在622處該程式庫訓練系統可配置以提供程式庫再訓練失敗的警示。舉例而言,該程式庫訓練系統可配置以傳送訊息至該處理腔室集群,指示新訓練的程式庫尚無法使用。
相反地,若在620處程式庫訓練系統判斷程式庫A1通過認證(在620處為「是」),則在624處該程式庫訓練系統可將AutoLib開關切換至關閉。換言之,藉由將AutoLib開關切換至關閉可將該程式庫訓練系統切換至指示該程式庫A1已進行訓練的模式(而因此係在程式庫A1的測試期間將不會再次觸發再訓練的模式)。
在626處,程式庫訓練系統可配置以將程式庫A1儲存在記憶體中(例如,與該程式庫訓練系統相應的伺服器的記憶體中),並且可等待以接收用於測試程式庫A1的額外晶圓數據。
請參照回到方格606,該程式庫訓練系統可配置以判斷AutoLib開關當前為關閉的。接著,在628處該程式庫訓練系統可配置以判斷晶圓數據是否足夠進行程式庫A1及程式庫A的盲測。
應注意到,在一些實施例中,晶圓數據是否足夠進行盲測試集可取決於測試轉換比率的數值,如上方關於圖2B及圖4A所述。舉例而言,在測試轉換比率為0,且因此測試集僅包括在觸發程式庫再訓練的樣品過後所接收的晶圓數據樣本的實例中,該程式庫訓練系統可能需要等待額外晶圓數據以執行盲測。相反地,在測試轉換比率為1,且因此該測試集僅包括在觸發程式庫再訓練的樣品之前所接收的晶圓數據樣本的實例中,該程式庫訓練系統可能已接收足夠晶圓數據以執行盲測。
若628處該程式庫訓練系統判斷晶圓數據不足以進行盲測(在628處為「否」),該程式庫訓練系統可等待以接收額外晶圓數據以建構測試集。
若在628處該程式庫訓練系統判斷具有足夠晶圓數據進行盲測(在628處為「是」),則在630處程式庫訓練系統可配置以判斷程式庫A1是否優於程式庫A。應注意到,圖2B的方格214及216係描述使用測試集對程式庫A1及程式庫A進行評估的詳細技術。
若在630處該程式庫訓練系統判斷程式庫A1並未優於程式庫A(在630處為「否」),則在631處該程式庫訓練系統可配置以將AutoLib開關切換成「開啟」,從而使該程式庫訓練系統處於監測及/或再訓練模式。
接著,在632處該程式庫訓練系統可配置以提供程式庫再訓練失敗的警示。接著,該程式庫訓練系統可配置以等待額外晶圓數據,並且可配置以訓練第二迭代的新程式庫(即,程式庫A2,未顯示於圖6)。
相反地,若在630處該程式庫訓練系統判斷程式庫A1優於程式庫A(在630處為「是」),則在634處該程式庫訓練系統可配置以提供與程式庫A1有關的資訊。舉例而言,如上方關於圖2B的方格214所述,該程式庫訓練系統可配置以將程式庫A1佈署至該處理腔室集群。
在636處,該程式庫訓練系統可配置以將AutoLib開關切換至「開啟」,從而使程式庫訓練系統處於監測新佈署的程式庫A1的模式。 應用
在一些實施例中,程式庫訓練系統可配置以將經訓練程式庫提供至處理腔室集群而用於處理控制。舉例而言,所提供的程式庫可使用晶圓製造期間的臨場測量值來預測非臨場測量值。作為更特定的示例,所提供的程式庫可使用臨場測量值(例如,反射率數據)來預測OCD資訊,以在蝕刻處理期間控制蝕刻深度。
在一些實施例中,當所提供的程式庫偏離規格時,該程式庫訓練系統可配置以進行判斷。換言之,當所預測的非臨場測量值的誤差漂移超出可接受界限時,程式庫訓練系統可配置以進行判斷。藉由監測程式庫對於複數處理腔室(例如,在該集群中使用該程式庫的所有處理腔室)的性能,該程式庫訓練系統可配置以偵測在該等處理腔室中的性能中的變異數增加。此外,藉由保持累積誤差總數,利用相對少量的數據偵測微小的誤差漂移。
決定在訓練程式庫時的訓練數據及測試數據的最佳數量可能是有困難的。舉例而言,使用過多的訓練數據可能會使程式庫訓練耗費過量的計算資源,並可能會花費過量的時間。相反地,以過少的數據進行訓練可能會產生訓練不足的程式庫。藉由基於程式庫的性能而在程式庫訓練的迭代期間迭代地對訓練集及測試集進行調整,該程式庫訓練系統可配置以更有效率地訓練程式庫,從而優化所需的計算資源。 對於所揭示的計算實施例的背景
本文所揭示的某些實施例係關於用於產生及/或使用機器學習模型的計算系統。本文所揭示的某些實施例係關於用於產生及/或使用在此系統上所實施的機器學習模型的方法。用於產生機器學習模型的系統還可配置以接收數據及指令,例如代表在半導體裝置製造操作期間所進行的實體處理的程式編碼。在此方式中,機器學習模型係在此系統上產生或編程。
可將具有任何各種電腦架構的許多類型的計算系統使用作為所揭露的系統,而實施機器學習模型以及產生及/或優化此模型的演算法。舉例而言,所述系統可包括在一或更多通用處理器或專用設計處理器例如特殊應用積體電路(ASIC)或可編程邏輯裝置(例如,場域可編程閘極陣列(FPGA))上執行的軟體構件。此外,所述系統可在單一裝置上實施,或是可分布在複數裝置上。可將複數計算元件的功能彼此結合,或是進一步分為複數子模組。
在一些實施例中,在合適編程系統上產生或執行機器學習模型的期間所執行的編碼得以軟體元件的形式實施,其中所述軟體元件可被儲存在非揮發性儲存媒體中(例如,光碟、快閃儲存裝置、行動硬碟等),其包括用於製造電腦裝置(例如,個人電腦、伺服器、網路設備等)的複數指令。
在一層面,軟體元件係實施作為程式設計師/開發者所準備的命令組。然而,可由電腦硬體執行的模組軟體係使用從特定機器語言指令集所選擇的「機器編碼」,或是被設計至硬體處理器中的「本機指令」而交付予記憶體的可執行編碼。所述機器語言指令集或本機指令集係硬體處理器所已知,且建構於該硬體處理器中。此為系統及應用軟體連通於硬體處理器所用的「語言」。各本機指令為分散編碼,其中該分散編碼可被處理架構所識別,且該分散編碼可指定特定紀錄器以進行算數、定址或控制功能;特定記憶體位置或偏置(offset);以及用於解譯運算元的特定定址模式。更複雜的操作係藉由結合這些簡單的本機指令而建構,其中所述本機指令係依序執行,或是由控制流程指令而另為指示。
在可執行的軟體指令與硬體處理器之間的相互關係為結構。換言之,指令本身為一系列的符號或數值。它們本質上並不表達任何資訊。而是處理器給予該等指令意義,其中該處理器係藉由設計而預先配置以解譯該等符號。
本文所使用的模型可配置以在單一位置處的單一機器上執行,在單一位置處的複數機器上執行,或是在複數位置處的複數機器上執行。當使用複數機器時,可為個別的機器定制其特定工作。舉例而言,需要大區塊編碼及/或大量處理容量的操作可在大型及/或固定機器上實施。
此外,某些實施例係關於有形及/或非瞬態電腦可讀媒體或電腦程式產品,其包括程式指令及/或數據(包括數據結構)以執行各種電腦-實施操作。電腦-可讀媒體的示例包括但不限於半導體記憶裝置、相變化裝置、磁性媒體(例如,磁碟機、磁帶)、光學媒體(例如,CD)、磁電-光學媒體,以及專門配置以儲存及執行程式指令的硬體裝置,例如唯讀記憶裝置(ROM)及隨機存取記憶體(RAM)。電腦可讀媒體可直接由終端使用者控制,或是該媒體可間接由終端使用者控制。直接控制媒體的示例包括位於使用者設施處的媒體及/或不與其他實體共享的媒體。間接控制媒體的示例包括經由外部網路及/或經由提供共享資源的伺服器(例如,雲端)而可間接及於使用者的媒體。程式指令的示例包括例如由編譯器所產生的機器編碼,以及包含可由使用解譯器的電腦執行的較高階編碼的檔案。
在各種實施例中,在所揭露方法及設備中使用的數據或資訊係以電子形式提供。此數據或資訊可包括臨場測量值、非臨場測量值、模型參數值等。如本文所使用,以電子形式所提供的數據或其他資訊能夠儲存在機器上,以及在複數機器之間傳輸。習慣上,電子形式的數據係以數字方式提供,並且可作為位元及/或位元組而被儲存在各種數據結構、表單、數據庫等之中。該數據得以電子方式、光學方式等而加以實施。
在一些實施例中,機器學習模型可各自作為與使用者及系統軟體介接的應用軟體的形式而被進行檢視。系統軟體通常係與電腦硬體及相關記憶體介接。在一些實施例中,系統軟體包括作業系統軟體及/或韌體,以及任何中介軟體及安裝在系統中的驅動器。系統軟體提供基礎的非特定任務電腦功能。相反地,所述模組及其他應用軟體係用於完成特定任務。對於模組的各本機指令係儲存在記憶裝置中,並且由數值所表示。
圖7中繪示一示例電腦系統700。如所顯示,該電腦系統700包括輸入/輸出子系統702,該輸入/輸出子系統702可執行一介面,以取決於應用而與人類使用者及/或其他電腦系統進行交互作用。本揭露的實施例可實施於利用I/O子系統702的系統700上的程式編碼,其中該I/O子系統702係用於從人類使用者接收輸入程式敘述及/或數據(例如,經由GUI或鍵盤)並將其顯示而回到該使用者。I/O子系統702可包括例如鍵盤、滑鼠、圖形化使用者介面、觸控螢幕或其他輸入用的介面,以及例如LED或其他平面螢幕顯示器或其他輸出用的介面。
通信介面707可包括任何合適構件或電路系統,用於使用任何合適通信網路(例如,網際網路、內部網路、廣域網路(WAN)、區域網路(LAN)、無線網路、虛擬私人網路(VPN)及/或任何其他合適類型的通信網路)進行通信。舉例而言,通信介面707可包括網路介面卡電路系統、無線通信電路系統等。
程式編碼可儲存在非瞬態媒體中,例如輔助記憶體710、記憶體708或該二者。在一些實施例中,輔助記憶體710可為持久儲存器。一或更多處理器704從一或更多非瞬態媒體讀取程式編碼,並且執行該編碼使電腦系統得以完成本文中的實施例所執行的方法,例如涉及產生或使用本文所述的處理模擬模型的那些方法。本發明所屬技術領域中具有通常知識者將能理解到,處理器可接收來源編碼(例如,用於執行訓練及/或模擬操作的敘述),並且將該來源編碼解譯或編譯為在該處理器的硬體閘層次處所能理解的機器編碼。匯流排705將I/O子系統702、處理器704、周邊設備裝置706、通信介面707、記憶體708,及輔助記憶體710進行耦接。
各種計算元件(包括,處理器、記憶體、指令、常用程式、模型或其他構件)可被描述或請求作為「配置以」執行一或更多任務。在此背景中,詞組「配置以」係用以藉由指示該構件包括在操作期間執行該一或更多任務的結構(例如,儲存指令、電路系統等)而賦予該結構涵義。因此,所述單元/電路/構件可被稱作係配置以執行任務,即使指定構件當前不一定是運行的(例如,未開啟)。
與「配置以」語言一起使用的構件可以指硬件—例如,電路、存儲可執行以實現操作的程序指令的記憶體等。另外,「配置以」可指向由軟體及/或韌體(例如,FPGA或執行軟體的通用處理器)操縱,從而以能夠執行所述任務的方式進行操作的通用結構(例如,通用電路)。 此外,「配置以」可以指一或更多記憶體或記憶元件,其存儲用於執行所述任務的電腦可執行指令。此記憶元件可包括位於具有處理邏輯的電腦晶片上的存儲器。 在一些背景中,「配置以」還可包括調整製造處理(例如,半導體製造設施)以製造適合實施或執行一或更多任務的設備(例如,積體電路)。 結論
在此實施方式中,數具體細節係闡述以提供對所呈現實施例的透徹理解。所揭露實施例可在不具一些或所有這些具體細節的情況下實施。在其他實例中,並未詳細描述習知的處理操作以免不必要地模糊所揭露的實施例。雖然所揭露實施例將結合特定實施例進行描述,但將能理解的是這些特定實施例的用意並非在於限制所揭露的實施例。
除非另有說明,否則本文所揭示的方法操作和裝置特徵係涉及在本領域技術範圍內的計量學、半導體裝置製造技術、軟體設計及編程以及統計中常用的技術及設備。
除非本文另有定義,否則本文使用的所有技術和科學術語具有與本發明所屬技術領域中具有通常知識者所通常理解的相同含義。包括本文包括的術語的各種科學字典是本發明所屬技術領域中具有通常知識者所皆知且可用的。儘管與本文描述的那些相似或等效的任何方法和材料均可用於本文所揭示實施例的實施或測試,但已描述一些方法和材料。
數字範圍包括定義該範圍的數字。旨在本說明書各處所給出的每個最大數值限制係包括每個較低數值限制,就好像這些較低數值限制在本文中明確地寫出一樣。在本說明書各處中給出的每一個最小數值限制都將包括每一個更高的數值限制,就好像這些更高的數值限制在本文中明確寫出一樣。在整個本說明書中給出的每個數值範圍都將包括落入此較寬數值範圍內的每個較窄數值範圍,就好像這些較窄的數值範圍都明確地寫在本文中一樣。
本文提供的標題並非旨在限制本揭露。
如本文所用,單數術語「一」及「該」包括複數提及,除非上下文另有明確指示。如本文所用,術語「或」是指非排他性的或,除非另有說明。
100:程式庫訓練系統 110:處理腔室 112:反射率數據 114:處理控制邏輯 116:計量學數據 120,130:腔室 202~224:方格 300:圖 302:誤差值 304:控制閾值 306:誤差值 308:CUSUM值 350:圖表 352:腔室閾值 354:晶圓樣本 402, 404:晶圓數據 406:測試集 408:訓練集 410:測試集 412:訓練集 414:訓練集 416:測試集 452:測試集 454:訓練集 456:訓練集 458:測試集 460:測試集 462:訓練集 502~518:欄 602~636:方格 700:電腦系統 702:輸入/輸出子系統 704:處理器 705:匯流排 706:周邊設備裝置 707:通信介面 708:記憶體 710:輔助記憶體
圖1根據所揭示的標的主體的一些實施例顯示程式庫訓練系統的使用示意圖。
圖2A及圖2B根據所揭示的標的主體的一些實施例顯示用於適應性程式庫訓練的處理器的操作。
圖3根據所揭示的標的主體的一些實施例顯示用於觸發程式庫訓練的示例數據。
圖4A及圖4B根據所揭示的標的主體的一些實施例顯示用於分配程式庫訓練的訓練集及測試集的示例性示意圖。
圖5根據所揭示的標的主體的一些實施例顯示一表格,其繪示程式庫再訓練的示例。
圖6根據所揭示的標的主體的一些實施例顯示用於適應性程式庫訓練的示例流程圖。
圖7顯示可用於本文所述的某些實施例的示例電腦系統。
100:程式庫訓練系統
110:處理腔室
112:反射率數據
114:處理控制邏輯
116:計量學數據
120,130:腔室

Claims (27)

  1. 一種用於適應性模型訓練的電腦程式產品,該電腦程式產品包括非瞬態電腦可讀媒體,在該非瞬態電腦可讀媒體上係提供複數電腦可執行指令以進行: 從複數處理腔室接收與使用該複數處理腔室所加工的複數晶圓相關的非臨場(ex situ)數據,以及複數臨場(in situ)測量值,其中該複數處理腔室係使用第一機器學習模型在該複數處理腔室製造晶圓期間進行處理控制,其中該第一機器學習模型係用於以該等臨場測量值預測該非臨場數據,且其中該非臨場數據對於一晶圓係指示該晶圓在加工後的特性; 使用來自該複數處理腔室的該非臨場數據以計算一度量,其中該度量係指示與該第一機器學習模型相關的誤差; 基於指示該誤差的該度量來判斷是否更新該第一機器學習模型;以及 響應於判斷該第一機器學習模型要進行更新而使用從該複數處理腔室所接收的該非臨場數據及該等臨場測量值產生第二機器學習模型。
  2. 如請求項1之用於適應性模型訓練的電腦程式產品,其中該非臨場數據係在一子集合的經加工晶圓加工後所測量的非臨場計量學數據。
  3. 如請求項1或2任一項之用於適應性模型訓練的電腦程式產品,其中該非臨場數據包括與晶圓的複數特徵部相關的幾何資訊。
  4. 如請求項3之用於適應性模型訓練的電腦程式產品,其中該非臨場數據包括光學臨界尺寸(OCD)資訊,該OCD資訊指示該晶圓的該等特徵部的深度。
  5. 如請求項4之用於適應性模型訓練的電腦程式產品,其中該非臨場數據包括蝕刻深度。
  6. 如請求項4之用於適應性模型訓練的電腦程式產品,其中該第一機器學習模型及該第二機器學習模型各自係用於以該等臨場測量值來產生所預測的OCD數值。
  7. 如請求項1或2任一項之用於適應性模型訓練的電腦程式產品,其中指示該誤差的該度量包括該複數處理腔室的誤差累積總和。
  8. 如請求項7之用於適應性模型訓練的電腦程式產品,其中判斷是否更新該第一機器學習模型包括判斷該誤差累積總和是否超出控制閾值。
  9. 如請求項1或2任一項之用於適應性模型訓練的電腦程式產品,其中指示該誤差的該度量包括該複數處理腔室的誤差變異數。
  10. 如請求項9之用於適應性模型訓練的電腦程式產品,其中判斷是否更新該第一機器學習模型包括判斷該誤差變異數是否超出控制閾值。
  11. 如請求項1或2任一項之用於適應性模型訓練的電腦程式產品,其中判斷是否更新該第一機器學習模型包括判斷該複數處理腔室的誤差累積總和超出控制閾值,以及該複數處理腔室的誤差變異數超出控制閾值。
  12. 如請求項1或2任一項之用於適應性模型訓練的電腦程式產品,其中產生該第二機器學習模型包括使用一訓練集來訓練機器學習模型,該訓練集係由接收自該複數處理腔室的該非臨場數據及接收自該複數處理腔室的該等臨場測量值所建構。
  13. 如請求項12之用於適應性模型訓練的電腦程式產品,其中該等臨場測量值包括反射率數據。
  14. 如請求項1或2任一項之用於適應性模型訓練的電腦程式產品,更包括複數指令以進行: 判斷該第二機器學習模型是否滿足欲佈署於該複數處理腔室的複數基準;以及 響應於判斷該第二機器學習模型滿足欲佈署於該複數處理腔室的該等基準,傳送該第二機器學習模型至該複數處理腔室的各者。
  15. 如請求項14之用於適應性模型訓練的電腦程式產品,其中判斷該第二機器學習模型是否滿足欲佈署的該等基準包括以非臨場數據及複數臨場測量值的測試集評估該第一機器學習模型及該第二機器學習模型。
  16. 如請求項15之用於適應性模型訓練的電腦程式產品,其中該等基準包括該第二機器學習模型對於非臨場數據及複數臨場測量值的該測試集具有比該第一機器學習模型更佳的預測性能。
  17. 如請求項15之用於適應性模型訓練的電腦程式產品,其中該測試集中所包含的該非臨場數據包括在判斷該第一機器學習模型需更新過後所收集的非臨場數據。
  18. 如請求項15之用於適應性模型訓練的電腦程式產品,其中該測試集中所包含的該非臨場數據包括在判斷該第一機器學習模型需更新之前所收集的第一非臨場數據子集合,以及在判斷該第一機器學習模型需更新過後所收集的第二非臨場數據子集合。
  19. 如請求項14之用於適應性模型訓練的電腦程式產品,其中判斷該第二機器學習模型是否滿足欲佈署的該等基準包括判斷該第二機器學習模型對於一測試集中所包含的所預測非臨場數據的誤差係低於閾值。
  20. 如請求項14之用於適應性模型訓練的電腦程式產品,更包括複數指令以進行: (i)             響應於判斷該第二機器學習模型未滿足欲佈署於該複數處理腔室的複數基準而產生第三機器學習模型; (ii)           判斷該第三機器學習模型是否滿足欲佈署於該複數處理腔室的該等基準; 重複進行(i)及(ii)直到判斷該第三機器學習模型滿足欲佈署於該複數處理腔室的該等基準;以及 響應於判斷該第三機器學習模型滿足欲佈署於該複數處理腔室的該等基準,傳送該第三機器學習模型至該複數處理腔室的各者。
  21. 如請求項20之用於適應性模型訓練的電腦程式產品,其中重複進行(i)及(ii)直到判斷該第三機器學習模型滿足欲佈署的該等基準包括重複進行(i)及(ii)直到判斷該第三機器學習模型是最佳的。
  22. 如請求項20之用於適應性模型訓練的電腦程式產品,其中用以產生該第二機器學習模型的訓練集比用以產生該第三機器學習模型的訓練集更小。
  23. 如請求項22之用於適應性模型訓練的電腦程式產品,其中用以產生該第三機器學習模型的該訓練集比用以產生該第二機器學習模型的該訓練集包含較新的非臨場數據及複數臨場測量值。
  24. 一種使用適應性訓練模型的電腦程式產品,該電腦程式產品包括非瞬態可讀媒體,在該非瞬態可讀媒體上係提供複數電腦可執行指令以進行: 將非臨場計量學數據傳送至模型訓練系統,該非臨場計量學數據係對應於使用從該模型訓練系統接收的第一機器學習模型所加工的晶圓,其中該第一機器學習模型係用於加工該晶圓的處理腔室的處理控制; 從該模型訓練系統接收第二機器學習模型以用於該處理腔室的處理控制,其中該第二機器學習模型係藉由該模型訓練系統使用接收自複數處理腔室的該非臨場計量學數據以及該複數處理腔室所測量的臨場晶圓上光學數據所產生;以及 以該第二機器學習模型取代該第一機器學習模型。
  25. 如請求項24之使用適應性訓練模型的電腦程式產品,更包括複數指令,用於從該模型訓練系統接收與該第一機器學習模型相關的誤差已超出閾值的訊息。
  26. 如請求項24或25任一項之使用適應性訓練模型的電腦程式產品,更包括複數指令,用於在從該模型訓練系統接收該第二機器學習模型之前,將第二非臨場計量學數據傳送至該模型訓練系統,該第二非臨場計量學數據係對應於使用該第一機器學習模型所加工的第二晶圓。
  27. 如請求項26之使用適應性訓練模型的電腦程式產品,其中該非臨場計量學數據係用於判斷與該第一機器學習模型相關的誤差已超出閾值,且其中該第二非臨場計量學數據係用於判斷該第二機器學習模型要取代該第一機器學習模型。
TW110147657A 2020-12-21 2021-12-20 用於半導體製造設備之處理控制的自適應模型訓練 TW202240735A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US202063199340P 2020-12-21 2020-12-21
US63/199,340 2020-12-21

Publications (1)

Publication Number Publication Date
TW202240735A true TW202240735A (zh) 2022-10-16

Family

ID=82157071

Family Applications (1)

Application Number Title Priority Date Filing Date
TW110147657A TW202240735A (zh) 2020-12-21 2021-12-20 用於半導體製造設備之處理控制的自適應模型訓練

Country Status (5)

Country Link
US (1) US20240047248A1 (zh)
KR (1) KR20230124043A (zh)
CN (1) CN116745895A (zh)
TW (1) TW202240735A (zh)
WO (1) WO2022140097A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20240062097A1 (en) * 2022-08-22 2024-02-22 Applied Materials, Inc. Equipment parameter management at a manufacturing system using machine learning

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7894927B2 (en) * 2008-08-06 2011-02-22 Tokyo Electron Limited Using Multi-Layer/Multi-Input/Multi-Output (MLMIMO) models for metal-gate structures
US10430719B2 (en) * 2014-11-25 2019-10-01 Stream Mosaic, Inc. Process control techniques for semiconductor manufacturing processes
US10705514B2 (en) * 2018-10-09 2020-07-07 Applied Materials, Inc. Adaptive chamber matching in advanced semiconductor process control
US10657214B2 (en) * 2018-10-09 2020-05-19 Applied Materials, Inc. Predictive spatial digital design of experiment for advanced semiconductor process optimization and control
US11133204B2 (en) * 2019-01-29 2021-09-28 Applied Materials, Inc. Chamber matching with neural networks in semiconductor equipment tools

Also Published As

Publication number Publication date
KR20230124043A (ko) 2023-08-24
CN116745895A (zh) 2023-09-12
WO2022140097A1 (en) 2022-06-30
US20240047248A1 (en) 2024-02-08

Similar Documents

Publication Publication Date Title
US11704463B2 (en) Method of etch model calibration using optical scatterometry
TWI672599B (zh) 探索裝置及探索方法
US20230049157A1 (en) Performance predictors for semiconductor-manufacturing processes
US10627788B2 (en) Retrieval apparatus and retrieval method for semiconductor device processing
JP7137943B2 (ja) 探索装置、探索方法及びプラズマ処理装置
US20230400847A1 (en) Predictive maintenance for semiconductor manufacturing equipment
TWI846635B (zh) 光阻及蝕刻模型建立
CN112136135A (zh) 使用关键尺寸扫描型电子显微镜的工艺仿真模型校正
US20240096713A1 (en) Machine-learning in multi-step semiconductor fabrication processes
TW202240735A (zh) 用於半導體製造設備之處理控制的自適應模型訓練
WO2022155635A1 (en) Generating digital twins of semiconductor manufacturing equipment
JP6754878B2 (ja) 探索装置および探索方法
Sawlani et al. Perspectives on artificial intelligence for plasma-assisted manufacturing in semiconductor industry
TWI851567B (zh) 使製程模擬模型最佳化的方法、系統、及電腦程式產品
TWI853877B (zh) 半導體設備的缺陷分類及來源分析之系統、計算方法及電腦程式產品
TW202037906A (zh) 半導體設備的缺陷分類及來源分析
KR20230137400A (ko) 프리-프로세싱 기판 샘플들과 포스트-프로세싱 기판 샘플들 매칭