• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      線程耗時對程序時序的影響分析

      2022-10-08 12:40:08高榮榮鄭佳晶付純鶴
      電子工業(yè)專用設備 2022年4期
      關鍵詞:片晶待處理晶圓

      高榮榮,張 葉,鄭佳晶,付純鶴

      (中國電子科技集團公司第四十五研究所,北京100176)

      隨著芯片集成度和工藝復雜性的提高,對于半導體代工廠(FAB)來說,生產(chǎn)設備的性能直接影響到成本和利潤,因此生產(chǎn)設備性能提升一直是半導體代工廠最為關注的問題之一[1]。對于生產(chǎn)線上的設備而言,不僅要滿足復雜工藝的適應性問題,還需不斷提高設備的生產(chǎn)效率和穩(wěn)定性。這些因素對設備軟件的流程控制提出了更高的挑戰(zhàn)和要求。

      1 軟件方案設計

      1.1 軟件介紹

      半導體設備軟件的功能是指揮設備各個硬件協(xié)同工作,使其按照工藝要求穩(wěn)定運行。以半導體設備為例,為降低各模塊之間的耦合度,將軟件分為流程調(diào)度層和設備分控層。流程調(diào)度層主要負責業(yè)務流程的調(diào)度,即指揮各個分控層在正確的時間內(nèi)執(zhí)行正確的動作;設備分控層主要是控制硬件執(zhí)行相應的動作。

      流程控制時,常用多線程并行方式,充分利用計算機系統(tǒng)資源,從而加快系統(tǒng)工作效率[2]。

      1.2 流程調(diào)度層軟件設計

      半導體工藝過程中,將使用同一工藝參數(shù)的晶圓處理定義為一批。將批處理晶圓的數(shù)量定義為批大小。流程調(diào)度分為批調(diào)度和批隊列調(diào)度。批隊列調(diào)度是以批為單位,調(diào)度批的啟動和結束;批調(diào)度是以晶圓為單位,調(diào)度各個環(huán)節(jié)的晶圓處理。晶圓處理過程包括加載晶圓、工藝處理、卸載晶圓/交換晶圓。晶圓的加載、交換、卸載動作異步執(zhí)行,在設備分控層實現(xiàn),通過事件觸發(fā)的方式與批流程進行交互,批處理流程如圖1所示。

      圖1 批處理流程圖

      批隊列的啟停由界面觸發(fā),與隊列中批的個數(shù)無關,即隊列為空時,仍可啟動批隊列。批隊列啟動后,若隊列不為空,則隊列中的首批被啟動,批隊列調(diào)度流程如圖2所示。

      圖2 批啟動流程圖

      2 異?,F(xiàn)象及分析

      2.1 異常場景

      定義多個大小為2的批,并啟動批隊列,正常情況下,批隊列中的批按順序執(zhí)行,第一批的第一片晶圓被加載到工位,第二片晶圓及其它批的晶圓被交換到工位,每個晶圓在工位均需做工藝處理。出現(xiàn)的偶發(fā)異?,F(xiàn)象為,第一批的第一片晶圓正常執(zhí)行,第二片晶圓只被傳輸,未被工藝處理。查看異常日志,發(fā)現(xiàn)異常批的加載晶圓動作執(zhí)行了2次,交換晶圓動作執(zhí)行了1次,卸載晶圓執(zhí)行了1次。

      2.2 異常分析

      在批生產(chǎn)過程中,晶圓傳輸?shù)膭幼鲌?zhí)行結果通過事件WaferStateEvenet與批流程進行交互,事件WaferStateEvenet為自動觸發(fā)機制(AutoResetEvent)。事件的信號只允許單一狀態(tài)改變,獨占訪問,即使多線程設置為并行,每次也只能觸發(fā)1次待處理(WaitOne)信號。

      異常流程中,批啟動的線程被啟動了2次,即一個批對象被線程1和線程2同時控制。根據(jù)日志分析,發(fā)現(xiàn)批的首片晶圓加載動作執(zhí)行了2次,則說明事件待處理信號(WaitOne)被執(zhí)行了2次,首片晶圓加載晶圓操作執(zhí)行完成后,事件被設置(Set),由于資源搶占的原因,只有線程1的待處理信號(WaitOne)被觸發(fā),線程2的待處理信號(WaitOne)繼續(xù)等待。

      晶圓進入工藝處理階段,處理完成后,進入交換晶圓操作,線程1的待處理信號(WaitOne)被執(zhí)行。交換晶圓執(zhí)行完成后,首片晶圓被卸載,第二片晶圓被加載,事件被設置(Set),被線程2的待處理信號(WaitOne)搶占資源,線程2執(zhí)行首片晶圓加載完成后的邏輯,由于此時首片晶圓的狀態(tài)為已處理,則線程2執(zhí)行卸載晶圓操作,線程2的事件待處理信號(WaitOne)被執(zhí)行。

      卸載晶圓操作將批處理的第二片晶圓從工件臺上卸載,執(zhí)行完成后,事件被設置(Set),被線程1的待處理信號(WaitOne)搶占到資源,進入交換晶圓結束的后續(xù)邏輯,線程1根據(jù)第二片(批的最后一片)晶圓狀態(tài)判斷該晶圓工藝結束且被卸載,進入批結束狀態(tài)(Complete),線程1結束,批對象被釋放。

      通過以上分析,發(fā)現(xiàn)該批只有首片晶圓被處理,第二片晶圓被加載,但是未被工藝處理,批處理屬于異常結束。

      2.3 因果驗證

      啟動批處理線程的代碼如下所示:因是線程啟動,標志位IsCurrentLotStart被置為true后,被外部置為false,循環(huán)檢測時,發(fā)現(xiàn)批滿足啟動條件而未啟動,再次啟動批處理線程。

      批處理線程由批隊列管理,批隊列的線程啟動代碼如下:

      批隊列線程啟動成功分兩步,第一步是開辟ScanJobTask運行空間,第二步是啟動線程,兩步執(zhí)行完成后,ScanJobTask開始工作,即開始循環(huán)檢測批狀態(tài),并啟動批。C#代碼的Thread.Start內(nèi)部執(zhí)行完線程啟動功能后,還需置線程狀態(tài),需要消耗時間。若置線程狀態(tài)的時間大于ScanJobTask開辟運行空間的時間,則ScanJobTask啟動批在先,隊列置concurrentQueue[0]狀態(tài)在后。即批處理線程啟動后,標志位狀態(tài)IsCurrentLotStart被隊列置為false,下一次循環(huán)時,根據(jù)標志位狀態(tài)判斷該批未啟動,對批處理進行了第二次啟動。

      由于代碼執(zhí)行過程中的運行時間跟當前PC機的內(nèi)存占用率有關,在特定的時間內(nèi),會出現(xiàn)線程啟動時,線程啟動時間開銷大于ScanJobTask開始循環(huán)的時間,所以批異常為偶發(fā)現(xiàn)象。

      2.4 解除異常

      從批線程標志位著手,解決批線程重復啟動的根本原因。調(diào)整批隊列線程啟動順序,先置狀態(tài),后創(chuàng)建線程,可避免因時間差原因而導致批異常,代碼如下所示:

      3 結束語

      半導體設備軟件中,經(jīng)常將復雜的流程進行解耦,用不同的線程執(zhí)行不同的控制流程。這種多線程并行的方式,減少了CPU周期的浪費,提高了應用程序的執(zhí)行效率,從軟件層面提高了設備的性能和產(chǎn)率。但是在使用多線程時,要考慮線程開銷問題,將線程狀態(tài)標志位前置,避免時間差問題引起時序錯亂,而導致程序運行異常。

      猜你喜歡
      片晶待處理晶圓
      改進型晶圓預對準算法
      半導體制造領域的晶圓預對準系統(tǒng)綜述
      聚乙烯醇連續(xù)自成核退火實驗研究
      安徽化工(2022年5期)2022-09-28 05:25:44
      基于片晶滑移的水樹結晶破壞機理
      財產(chǎn)清查結果的賬務處理
      “待處理”事項在科學事業(yè)單位的核算探討
      會計之友(2018年4期)2018-02-02 22:05:21
      政府會計核算中待處理財產(chǎn)損溢賬戶應用探究
      基于圖像處理的晶圓表面缺陷檢測
      熱處理條件對聚丙烯流延基膜取向片晶結構及拉伸成孔性的影響
      中國塑料(2015年2期)2015-10-14 05:34:27
      超薄晶圓的貼膜研究
      南城县| 绍兴市| 文昌市| 蓝田县| 周宁县| 砚山县| 龙江县| 西安市| 巫溪县| 波密县| 三门峡市| 镇赉县| 乐山市| 屯留县| 金堂县| 图木舒克市| 怀集县| 六安市| 安化县| 吴江市| 遂宁市| 开平市| 静宁县| 柘城县| 新营市| 铜鼓县| 文山县| 新兴县| 扶风县| 章丘市| 大化| 临颍县| 平顺县| 股票| 保定市| 于田县| 黄浦区| 彭泽县| 揭东县| 宜君县| 时尚|