集束型製程設備與上層主機通訊介面軟體設計,程式類別可分為功能類別與實 作類別,功能類別的應用必須依照 GEM 的劇本來傳送訊息,實做類別是實踐功能 類別的工作。假設軟體日後要轉用在其它半導體設備控制器裏,這時候只需要替 修改實作類別的程式碼,功能類別是程式的框架可以套用不需修改,換言之功能 類別汽車的儀表,實作類別是汽車的電路。
本章節將列舉說明 3 個實作類別意義與方法,功能類別的說明在第 3 章束型製 程設備與上層主機通訊介面規劃有詳細說明請參考之[11][12]。
4.3.1. Message Router 類別
圖 4-5 Message Router 類別,當訊息自上層主機傳下時 Message Router 類別 將訊息判斷後再分派到給功能類別,由功能類別來執行上層主機命令。以 S1F17 訊息例,上層主機傳送 S1F17 訊息到設備,這時候 Message Router 會從通訊模 組的 Message 類別裏擷取上層主機的訊息,經過了 dispatch()方法將訊息判斷 後再分派到 Communication 類別,當 Communication 類別執行完上層機命令後回 傳 S1F18 給上層主機。
MessageRouter
MessageRouter() dispatch() run()
(from gem)
圖 4-5 Message Router 類別圖
表格 4-1 說明 Message Router 類別的方法的功用說明 表格 4-1 Message Router 類別的方法說明
名稱 說明
Message Router Message Router 類別的建構函式
dispatch 判斷訊息種類並分派訊息給功能類別
run 執行緒,負責接收上層主機的訊息
4.3.2. Communication 類別
圖 4-6 為 Communication 類別圖,類別功能包括了連線狀態劇本與控制狀態劇 本,程式的架構是 Design patterns 裏的 Bridge pattern(橋樑樣式)。
Communication 類別為功能類別,Communication_interface 類別為實作類別的 介面,而程式碼的實作是在 Communication_Impl 類別。
Communication_Impl
表格 4-2 說明 Communication_Impl 類別的方法功用,類別是負責上層主機與 設備之間的控制狀態圖的遷移和連線狀態圖的遷移管理。劇本說明在 3.2 狀態關 係圖一節有詳細說明請參考之。
表格 4-2 Communication_Impl 類別的方法說明
名稱 說明
Communication_Impl 類別的建構函式 getS1F1 取得 S1F1 訊息物件
setcommuniState 設定連線狀態,並回傳 S1F14 訊息物件
setOnLineDisable 設定控制狀態為 Disable,並回傳 S1F16 訊息物件 setOnlineState 設定控制狀態為 Online,並回傳 S1F18 訊息物件 getS1F2 取得 S1F2 訊息物件
sendS6F11 利用 Adapter Pattern 的方式,對 EventManagement 類 別建立物件,送出事件報告
4.3.3. Recipe 類別
圖 4-7 為 RecipeManagement 類別圖,類別功能包括了程配方管理劇本,程式 的架構是 Design patterns 裏的 Bridge pattern(橋樑樣式),RecipeManagement 類別為功能類別,RecipeInterface 類別為實作類別的介面,而程式碼的實作是 在 Recipe_Impl 類別。
集束型製程設備控制器的製程配方的管理使用 MYSQL 資料庫,資料庫的存取是 由 Recipe_Impl 類別來負責,如果日後資料庫系統替換只需要修改 Recipe_Impl 類別即可。
Recipe_Impl
圖 4-7 RecipeManagement 類別圖
表格 4-3 說明 Recipe_Impl 類別的方法功用,類別是負責製程配方管理劇本的 UploadRecipeList 上傳製程配方的清單 DeleteRecipe 從資料庫刪除製程配方 UploadRecipe 上傳製程配方
AgreeDownLoad 同意上層主機下傳製程配方到資料庫 addNewRecipe 增加新的製程配方到資料庫
ReplyCheckReport 上傳製程配方的檢查結果 LinkMySQLDriver 程式連結資料庫
setS6F11 送出事件報告
4.3.4. Data Collection 類別
圖 4-8 為 DataCollection 類別圖,類別功能為追蹤資料收集劇本,程式的架 構是 Design patterns 裏的 Bridge pattern(橋樑樣式)。DataCollection 類別 為功能類別,DataCollection_Interface 類別為實作類別的介面,而程式碼的 實作是在 DataCollection _Impl 類別。
DataCollection
(from gem) DataCollection_Interface
getS2F24()
圖 4-8 DataCollection 類別圖
表格 4-4 說明 DataCollection _Impl 類別的方法功用,當上層主機利用追蹤 資料收集劇本向設備要溫度、壓力、等製程資料。劇本說明在 3.3.2 資料收集 一節有詳細說明請參考之。
表格 4-4 DataCollection 類別
名稱 說明
getS2F24 建立新追蹤資料收集(Trace Report)
getSV 取得狀態變數目前資料內容
getSVlist 取得狀態變數名稱清單
getECIDData 取得設備常數目前資料內容 getECIDList 取得設備常數名稱清單
run 執行緒,追蹤資料收集(Trace Report)
第5章 軟體的應用說明
本章將說明軟體畫面操作與軟體的擴充性,軟體畫面操作一章節主要是讓使用 者可以掌握集束型製程設備控制器與上層主機之間的通訊狀態,軟體的擴充性一 章節,說明如何修改軟體使軟體可以很容易的應用其它半導體設備的控制器裏。