李華

摘 要:晶圓的測試時間對于生產企業的測試機使用效率及成本控制方面有著非常重要的影響。通過對測試時間的估計和實際測試時間的分析以及測試機的折舊率等等可以推斷出一個產品的實際成本,繼而對開發新的產品、購置更多機器或者資源配置方面都多有裨益。一個新的產品在設計階段通常有一個理論的時間,這個時間在大批量的生產過程中經常是不準確的。這是因為實際的生產過程中引入了不同的機器、不同的人、不同的時間、日常維護及檢修機器、同一個機臺更換不同產品時需要轉換部件等等因素,都導致了實際上的測試時間比理論值要長。這樣,如果我們一直使用理論時間進行成本核算,必然會引起企業利潤計算的不準確性。于是,一般情況下,在一個新產品開始大批量生產時,會預估一個測試時間,這個時間雖然已經考慮了方方面面的因素,但仍然需要在實際中進行檢驗。本文就是通過對實際測試的產品每一個晶圓測試時間的分析計算,與預估的值進行對比報告,縮小差異,從而更準確的呈現出實際的成本的一個過程。使用的是Excel VB的工具。
關鍵字:Excel VB; 測試時間;晶圓;生產
1 測試時間分析計算的方法設想及程序主體結構圖
產品數量眾多,每個產品生產的過程又分為多個步驟。考慮到Excel計算量巨大可能引起的內存占用時間過長的因素,將每個產品每個步驟的測試時間從數據庫中導出來之后,按照工作周分為幾個文檔分別計算,這樣做的另一個好處是還可以看到每一周的每個產品的平均測試時間,當在一個較長的時間段中比細致的數據更具有參考意義。
數據庫中的數據是每一個晶圓每一次測試的結果,其中包括第一次測試、自動的復測、是什么步驟、哪一個機臺、測試的起止時間、良品、測試的總數等等信息,本程序所做的是從這些數據中解析出一個晶圓一次完整測試所需要的總時間,其中需要濾除掉非正常測試、校準測試及不完整測試的數據。下面是本程序的主體結構圖。
2 主程序內容分塊描述
第一部分,從標準時間總表中解析出需要計算的產品分步驟的標準參考時間。先從所需計算的產品配置文件名單中取出一個產品名稱,在步驟配置文件中檢索出它需要的步驟名稱。用循環語句在標準時間總表中找到該產品并將其各步驟時間寫入預定位置。標準時間總表每個產品的步驟都是順序排列,即不管任何的產品在表中的名稱都是1、2、3的順序向下排列,于是我們需要把每個產品按照其實際的步驟名稱把時間對應出來,才能在實際的測試結果中找到相對應的時間。在指定位置將標準時間和其正確的步驟寫入對應的產品名稱中。
第二部分,原始數據預處理。將不需要的列刪除以避免混淆。將每一行數據中的時間轉換為日期格式后,結束時間減去開始時間得到這一行數據的實際測試時間,并換算成分鐘格式,去除小數點后位數。刪除中間運算結果,只保留最終測試時間列。
第三部分,計算完整測試的每個晶圓的時間并寫入測試時間表單中。首先第一步,從需要計算的產品名單配置文件中取出一個產品名稱,并在步驟配置文件中找到相應的步驟名稱,寫入特定的字符串中。第二步,在原始數據表單中利用循環語句找到第一個這個產品的記錄,將其行數寫入一個字符串。繼續循環語句向下比對,直到找到不同的產品記錄跳出循環,并將這個產品的記錄塊拷貝到一個臨時文件處理的表單中。第三步,在臨時文件處理的表單中計算該產品的測試時間。利用循環語句逐條比對,忽略非生產批次的晶圓測試記錄及不完整的測試記錄。對于正常的完整測試,將根據其步驟名稱將該記錄分別計入該步驟的指定位置,如果有自動的復測,其時間要一并計入該晶圓的測試時間。內容包括批次名稱、晶圓位置號、步驟名稱和測試時間,并記錄各個步驟當前填入的行數。繼續循環語句直至所有記錄行都按照其步驟名稱寫入了指定位置即可。第四步,將臨時文件處理表單中各個步驟的記錄按照順序拷貝到測試時間表單中,并計算每個步驟的平均時間,將批次名稱、晶圓位置號、步驟名稱和計算出的平均測試時間一并寫入總結表單。第五步,將測試時間表單中每個產品的每個步驟順序編號,這樣在將來作圖的時候可以準確定位每一片晶圓的結果,尤其當數據很多顯示不清楚的時候最為有用,同時還可以根據這個時間序列看到一個工作周內該產品的趨勢。第六步,在測試時間表單中將每個產品每個步驟的標準時間寫在實際測試時間的后面用作對比。第七步,在總結表單中根據一個產品實際上測試的步驟寫入相應的步驟標準時間總和,與這個產品本周內總的測試時間對比。
第四部分,將測試時間表單和總結表單的內容拷貝到報告工作簿中。將主程序與報告分開是為了使報告更短小更明晰,易于讀者更快的發現問題。
報告有三個圖表。第一個圖表是一周內通過平均測試時間和標準時間的相減差值圖。這個圖表是為了讓讀者有一個直觀的印象哪些產品是差值最大的,比標準時間長的在零點上方,比標準時間短的在零點下方。這些差異最大的產品是需要重點關注并采取措施的。第二個圖表是每個產品每周平均時間趨勢圖。標準時間會同時顯示作為參考。這個圖是為了展示一個產品在一段比較長的時間內測試時間的變化,測試時間是多種因素聯合作用的結果,這樣的歷史數據有助于讀者更好的總結規律以作為長期改進的依據。第三個圖表是一周之內一個產品每個晶圓不同步驟的測試時間序列圖,這個圖表可以輕易的定位異常點,可以看出平均時間的拉大是否是某幾個特殊異常的值導致的,這樣可以重點關注一下這幾個值的具體原因從而去解決相應的問題。
3 總結
這個程序主要實現了從紛繁的數據庫文件中提取有效的完整測試的時間,經過一些運算加和處理,直觀的顯示出了一個產品在一定時期內的趨勢變化并和標準的時間做出比對檢測。通過最終的報告圖表,讀者能很容易的定位哪些產品是需要關注的,哪些是需要重點處理的,同時可以找到導致平均測試時間變長的元兇,如果確實存在異常,就可以去其他系統中查詢當時的情況或詢問相關人士,從而避免相類似的情況發生。如果,測試時間的變長是設計的更改,程序的變更等等必要的改變,我們就可以從這個平均時間中找到一個更合理的值來更改標準時間,使之更好的體現測試成本的變化。有利于企業更有效的進行成本核算,進而能夠更好的控制成本。
參考文獻
[1] 王運堅. 《VISUAL BASIC 6.0 應用指南》[M ]. 北京: 人民郵電出版社, 1998.
[2] 段興 主編 《visual Basic數據庫實用程序設計100例 》 人民郵電出版社
[3] 管麗娜 白海波《實用Visual Basic6 教程》[M] .北京:清華大學出版社,2001.
[4] 丁寶康,董健全. 數據庫實驗教程. 北京:清華大學出版社, 2003:125-170.
[5] 張宏林,孔艷,王哲.按實例學 Visual Basic 6.0〔M〕.北京:人民郵電出版社,2000.
[6] 陳艷峰,高文姬等.Visual basic 數據庫項目案例導航[M].北京:清華大學出版社,2004.