用ini文件實(shí)現(xiàn)測試管理系統(tǒng)流程控制的制作方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及一種用INI實(shí)現(xiàn)集成電路量產(chǎn)測試管理系統(tǒng)流程控制,屬于集成電路 測試管理領(lǐng)域。
【背景技術(shù)】
[0002] 通常,在集成電路測試企業(yè)都有多個型號的測試系統(tǒng)W及與之相配套的測試設(shè) 備,測試的集成電路品種多,數(shù)量大;比如集成電路的晶圓測試、集成電路封裝好的成品測 試等,每一種集成電路都對應(yīng)一個測試程序,每一種集成電路的測試流程也有所不同,比 如成品測試有的需要檢測引腳后再烘干包裝,有的不需要檢測;晶圓測試有的品種需要測 試-高溫烘烤-再測試,有的一次測試就可W;同時(shí),在生產(chǎn)線上,要根據(jù)不同的產(chǎn)品級別、 不同的生產(chǎn)狀態(tài)進(jìn)行調(diào)度;復(fù)雜的工序流程控制一直是軟件系統(tǒng)開發(fā)的難題,需要投入極 大人力成本,消耗大量開發(fā)時(shí)間,調(diào)試和維護(hù)難度也很大。本發(fā)明提供一個簡單實(shí)用的解決 方案,大大降低開發(fā)難度,也使流程更加清晰且易于配置。
【發(fā)明內(nèi)容】
[0003] 本發(fā)明的目的在于提供一種量產(chǎn)測試管理系統(tǒng)流程控制的方法JNI是Windows 配置文件的一種格式,文件可分為幾個Section,每個Section的名稱用□括起來,在一個 Section中,可W有很多的Key,每一個Key可W有一個值并占用一行,格式是Key = value, 本發(fā)明很好利用了 INI的結(jié)構(gòu)特性,用W實(shí)現(xiàn)流程控制。
[0004] 具體
【發(fā)明內(nèi)容】
如下:
[0005] 所述測試管理系統(tǒng)流程控制是用INI文件控制流程;
[0006] 所述測試管理系統(tǒng)主要是對生產(chǎn)批次的管理;
[0007] 進(jìn)一步的,所述測試流程是集成電路量產(chǎn)測試一個批次要經(jīng)歷各道測試流程;
[000引進(jìn)一步的,所述一道流程存在各種狀態(tài),典型的狀態(tài)如:等待調(diào)度、等待測試、測試 中、叫停Otold)、執(zhí)行完、異常終結(jié)等;
[0009] 進(jìn)一步的,所述其中每個狀態(tài)的下一狀態(tài)都可能有多個;
[0010] 所述發(fā)明是通過ReadINI讀取,獲得配置隊(duì)列,操作步驟如下:
[0011] 第一步用DropDownListStatus控件顯示當(dāng)前狀態(tài);
[0012] 第二步用Get化OW化tions函數(shù)取得可選的下一個狀態(tài);
[0013] 第H步用DropDownListStatus控件加入所有可選狀態(tài);
[0014] 第四步用戶選擇一種狀態(tài)。
[0015] 所述發(fā)明INI文件配置具有5種配置:
[0016] [DropDownListStatus.等待調(diào)度.NextSta1:us]
[0017] DropDownListStatus =等待調(diào)度,等待執(zhí)行,異常終結(jié),
[0018] [DropDownListStatus.等待執(zhí)行.NextSta1:us]
[0019] DropDownListStatus =等待執(zhí)行,進(jìn)行中,異常終結(jié),
[0020] [DropDownListStatus.進(jìn)行中.NextSta1:us]
[0021] DropDownListStatus =進(jìn)行中,Hold,執(zhí)行完,異常終結(jié),
[0022] [DropDownLi stStatus.執(zhí)行完.NextSta1:us]
[0023] DropDownListStatus =執(zhí)行完,Hold,正常終結(jié),異常終結(jié),
[0024] [DropDownListStatus. Hold. NextSta1:us]
[00巧]化opDownListStatus =化Id,等待執(zhí)行,進(jìn)行中,異常終結(jié);
[0026] 進(jìn)一步的,所述文件中[DropDownListStatus.等待調(diào)度.NextSta1:us]是一個 Section名稱,名稱由H部分組成,其中DropDownListStatus表示控件ID,"等待調(diào)度"表示 控件當(dāng)前狀態(tài),化XtStatus表示控件下一狀態(tài)。
[0027] 進(jìn)一步的,所述文件中Section的Key都是DropDownListStatus,表示要將下一狀 態(tài)列到 DropDownListStatus 控件。
[002引過程可W由如下代碼實(shí)現(xiàn):
[0029] public String[] GetShowOptions (String strInControl, String
[0030] strInOption) { for (…)//枚舉ini所有狀態(tài)項(xiàng) PageINI2Item item = (PageINI2Item)arr[i];//item 為一個狀態(tài)項(xiàng) if ((item. StrControl == strInControl) && (item. strOption =二 StrInOption)) { //控件和狀態(tài)都匹配 return item. Strs;//返回所有可選狀態(tài) } }
[0031] 由此可見本發(fā)明提供一種清晰、且可W配置的方法實(shí)現(xiàn)了流程狀態(tài)的控制。也可 W用類似方式進(jìn)行權(quán)限管理,使用效果明顯。
【附圖說明】
[0032] 為了更清楚地說明本發(fā)明的技術(shù)方案,下面結(jié)合附圖和具體實(shí)施方案對本發(fā)明做 進(jìn)一步說明;
[0033] 附圖1是簡單的循環(huán)圖。
【具體實(shí)施方式】
[0034] 為了上述發(fā)明特征和優(yōu)點(diǎn)更加明顯,下面就本發(fā)明結(jié)合附圖作進(jìn)一步詳述;
[0035] INI是Windows配置文件的一種格式,文件可W分為幾個Section,每個Section 的名稱用□括起來,在一個Section中,可W有很多的Key,每一個Key可W有一個值并占 用一行,格式是Key = value,本發(fā)明很好利用了 INI的結(jié)構(gòu)特性,用W實(shí)現(xiàn)流程控制。
[0036] 測試管理系統(tǒng)主要是對生產(chǎn)批次的管理,一個批次要經(jīng)歷各道測試流程(即工 序),而一道流程存在各種狀態(tài),典型的狀態(tài)如:等待調(diào)度、等待測試、測試中、叫停Otold)、 執(zhí)行完、異常終結(jié)等。其中每個狀態(tài)的下一狀態(tài)都可能有多個,如:一個批次當(dāng)前狀態(tài)是 測試中,下一個狀態(tài)可能會因?yàn)闇y試異常而暫停測試,也可能因?yàn)闇y試順利而完成測試,也 可能因?yàn)榭蛻羧∠K止,等等??梢?,狀態(tài)流向具有很大不確定性,幾乎每個狀態(tài)的都 有多個走向,如果純粹通過編程來實(shí)現(xiàn),則代碼變得復(fù)雜且難W維護(hù)和調(diào)試,本發(fā)明靈活 利用INI配置文件的特性使原本復(fù)雜的關(guān)系變得很有條理。比如,當(dāng)前狀態(tài)顯示在控件 DropDownListStatus中,在DropDownListStatus列出下一步的可選狀態(tài),通過如下配置實(shí) 現(xiàn):
[0037] 郝么通過如下配置實(shí)現(xiàn):
[0038] [DropDownListStatus.等待調(diào)度.NextSta1:us]
[0039] 化opDownListStatus =等待調(diào)度,等待執(zhí)行,異常終結(jié),
[0040] [DropDownListStatus.等待執(zhí)行.NextSta1:us]
[0041] DropDownListStatus =等待執(zhí)行,進(jìn)行中,異常終結(jié),
[0042] [DropDownListStatus.進(jìn)行中.NextSta1:us]
[0043] DropDownListStatus =進(jìn)行中,Hold,執(zhí)行完,異常終結(jié),
[0044] [DropDownListStatus.執(zhí)行完.NextSta1:us]
[0045] DropDownListStatus =執(zhí)行完,Hold,正常終結(jié),異常終結(jié),
[0046] [DropDownListStatus. Hold. NextSta1:us]
[0047] DropDownListStatus = Hold,等待執(zhí)行,進(jìn)行中,異常終結(jié),
[0048] 文件中 IiDropDownListStatus.等待調(diào)度.NextSta1:us]是一個 Section 名稱,名 稱由H部分組成,其中化opDownListStatus表示控件ID,"等待調(diào)度"表示控件當(dāng)前狀態(tài), 化XtStatus表不控件下一狀態(tài)。送個Section的Ifey都是DropDownListStatus,表不要將 下一狀態(tài)列到化opDownListStatus控件(即:自己)。不難看出,"等待調(diào)度"后續(xù)狀態(tài)可 W是"等待執(zhí)行"、"異常終結(jié)",如果用戶選擇了"等待執(zhí)行",郝么"等待執(zhí)行"的下一個狀態(tài) 則可W是"進(jìn)行中"、"異常終結(jié)"。
[0049] 送樣配置后,程序只需要取得化opDownListStatus的當(dāng)前狀態(tài),程序馬上可W知 道后續(xù)有哪些狀態(tài),送個過程可W由如下代碼實(shí)現(xiàn):
[0050] public String [] GetShowOptions(String strInControl, String
[0051] strInOption) { for (".)//枚舉ini所有狀態(tài)項(xiàng) { PageINI2Item item = (PageINI2Item)arr[i];//item 為一個狀態(tài)項(xiàng) if ((item. StrControl 二二 strInControl) && (item. strOption == StrInOption)) { //控件和狀態(tài)都匹配 return item. Strs;//返回所有可選狀態(tài) } } ' ' }
[0052] 歸納一下,我們只需要在INI中對各狀態(tài)進(jìn)行配置,然后通過ReadINI讀取,獲得 配置隊(duì)列,然后動過調(diào)用函數(shù)GetShow化tions便很容易實(shí)現(xiàn)流程控制。見附圖1 ;
[0053] 上面一個簡單的循環(huán)圖,就能將原本如蜘蛛網(wǎng)般錯綜復(fù)雜的狀態(tài)關(guān)系梳理得很清 晰,無論我們選中哪個狀態(tài),則下一狀態(tài)都很容易列出。而我們要做的,只是在INI中配置 好狀態(tài)關(guān)系,而不是在代碼中進(jìn)行各種條件判斷。
【主權(quán)項(xiàng)】
1. 一種量產(chǎn)測試管理系統(tǒng)流程控制及權(quán)限管理的方法其特在于: 所述測試管理系統(tǒng)流程控制是用INI文件控制流程; 通過ReadINI讀取,獲得配置隊(duì)列,操作步驟如下: 第一步用DropDownListStatus控件顯示當(dāng)前狀態(tài); 第二步用GetShowOptions函數(shù)取得可選的下一個狀態(tài); 第三步用DropDownListStatus控件加入所有可選狀態(tài); 第四步用戶選擇一種狀態(tài)。2. 根據(jù)權(quán)利要求1所述的方法,其特征在于所述發(fā)明INI文件配置如下: [DropDownListStatus.等待調(diào)度· NextStatus] DropDownLi stStatus =等待調(diào)度,等待執(zhí)行,異常終結(jié), [DropDownListStatus.等待執(zhí)行· NextStatus] DropDownListStatus =等待執(zhí)行,進(jìn)行中,異常終結(jié), [DropDownListStatus.進(jìn)行中· NextStatus] DropDownListStatus =進(jìn)行中,Hold,執(zhí)行完,異常終結(jié), [DropDownListStatus.執(zhí)行完· NextStatus] DropDownListStatus =執(zhí)行完,Hold,正常終結(jié),異常終結(jié), [DropDownListStatus. Hold. NextStatus] DropDownListStatus = Hold,等待執(zhí)行,進(jìn)行中,異常終結(jié)。3. 根據(jù)權(quán)利要求2所述的方法,其特征在于所述文件中[DropDownListStatus.等待調(diào) 度· NextStatus]是一個Section名稱,名稱由三部分組成,其中DropDownListStatus表不 控件ID,"等待調(diào)度"表示控件當(dāng)前狀態(tài),NextStatus表示控件下一狀態(tài)。4. 據(jù)權(quán)利要求1所述的方法,其特征在于所述測試管理系統(tǒng)主要是對生產(chǎn)批次的管 理。5. 根據(jù)權(quán)利要求4所述的方法,其特征在于所述測試流程是集成電路量產(chǎn)測試一個批 次要經(jīng)歷各道測試流程。6. 根據(jù)權(quán)利要求5所述的方法,其特征在于所述一道流程存在各種狀態(tài),典型的狀態(tài) 如:等待調(diào)度、等待測試、測試中、叫停(Hold)、執(zhí)行完、異常終結(jié)等。7. 根據(jù)權(quán)利要求6所述的方法,其特征在于所述其中每個狀態(tài)的下一狀態(tài)都可能有多 個。
【專利摘要】本發(fā)明提供用INI實(shí)現(xiàn)集成電路量產(chǎn)測試管理系統(tǒng)流程控制的方法,集成電路測試管理系統(tǒng)主要作用是管控每道測試流程所處的狀態(tài),一種狀態(tài)的下一個可選狀態(tài)有很大不確定性,如果用程序來控制則非常繁瑣,本發(fā)明提供一種清晰、且可以配置的方法實(shí)現(xiàn)了流程狀態(tài)的控制。
【IPC分類】G05B19/418
【公開號】CN105527940
【申請?zhí)枴緾N201410579151
【發(fā)明人】周乃新, 石志剛
【申請人】北京確安科技股份有限公司
【公開日】2016年4月27日
【申請日】2014年10月27日