TWI389033B - 測試模擬裝置、測試模組模擬裝置以及記錄此程式之記錄媒體 - Google Patents
測試模擬裝置、測試模組模擬裝置以及記錄此程式之記錄媒體 Download PDFInfo
- Publication number
- TWI389033B TWI389033B TW093108804A TW93108804A TWI389033B TW I389033 B TWI389033 B TW I389033B TW 093108804 A TW093108804 A TW 093108804A TW 93108804 A TW93108804 A TW 93108804A TW I389033 B TWI389033 B TW I389033B
- Authority
- TW
- Taiwan
- Prior art keywords
- test
- simulation
- module
- unit
- time
- Prior art date
Links
- 238000012360 testing method Methods 0.000 title claims description 1166
- 238000004088 simulation Methods 0.000 claims description 757
- 230000006870 function Effects 0.000 claims description 275
- 238000000034 method Methods 0.000 claims description 127
- 230000007274 generation of a signal involved in cell-cell signaling Effects 0.000 claims description 104
- 230000008859 change Effects 0.000 claims description 77
- 230000001360 synchronised effect Effects 0.000 claims description 73
- 230000009471 action Effects 0.000 claims description 27
- 238000005259 measurement Methods 0.000 claims description 22
- 230000008569 process Effects 0.000 claims description 21
- 102100032392 Circadian-associated transcriptional repressor Human genes 0.000 claims description 8
- 101710130150 Circadian-associated transcriptional repressor Proteins 0.000 claims description 8
- 238000012545 processing Methods 0.000 description 80
- 238000004891 communication Methods 0.000 description 68
- 238000010586 diagram Methods 0.000 description 28
- 239000011800 void material Substances 0.000 description 26
- 238000011084 recovery Methods 0.000 description 15
- 238000003860 storage Methods 0.000 description 15
- 238000011161 development Methods 0.000 description 12
- 238000011990 functional testing Methods 0.000 description 12
- 230000010365 information processing Effects 0.000 description 11
- 239000004065 semiconductor Substances 0.000 description 11
- 238000010276 construction Methods 0.000 description 10
- 238000001514 detection method Methods 0.000 description 10
- 238000012423 maintenance Methods 0.000 description 9
- 238000009434 installation Methods 0.000 description 7
- 238000012217 deletion Methods 0.000 description 6
- 230000037430 deletion Effects 0.000 description 6
- 230000015654 memory Effects 0.000 description 6
- 230000004044 response Effects 0.000 description 6
- 230000007704 transition Effects 0.000 description 6
- 238000009826 distribution Methods 0.000 description 5
- 239000000463 material Substances 0.000 description 5
- 238000002360 preparation method Methods 0.000 description 5
- 230000003068 static effect Effects 0.000 description 5
- 230000004913 activation Effects 0.000 description 4
- 238000013500 data storage Methods 0.000 description 4
- 238000000354 decomposition reaction Methods 0.000 description 4
- 238000003745 diagnosis Methods 0.000 description 4
- 238000013459 approach Methods 0.000 description 3
- 230000008901 benefit Effects 0.000 description 3
- 239000003795 chemical substances by application Substances 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 238000012795 verification Methods 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 238000012937 correction Methods 0.000 description 2
- 230000001419 dependent effect Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 230000009977 dual effect Effects 0.000 description 2
- 238000001914 filtration Methods 0.000 description 2
- 230000008571 general function Effects 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 230000011664 signaling Effects 0.000 description 2
- 230000001502 supplementing effect Effects 0.000 description 2
- 208000033748 Device issues Diseases 0.000 description 1
- 230000002159 abnormal effect Effects 0.000 description 1
- 239000008186 active pharmaceutical agent Substances 0.000 description 1
- 235000008429 bread Nutrition 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 238000005314 correlation function Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000009795 derivation Methods 0.000 description 1
- 230000008676 import Effects 0.000 description 1
- 230000005764 inhibitory process Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000007493 shaping process Methods 0.000 description 1
- 230000008054 signal transmission Effects 0.000 description 1
- 238000010998 test method Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/317—Testing of digital circuits
- G01R31/3181—Functional testing
- G01R31/3183—Generation of test inputs, e.g. test vectors, patterns or sequences
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/317—Testing of digital circuits
- G01R31/3181—Functional testing
- G01R31/319—Tester hardware, i.e. output processing circuits
- G01R31/31903—Tester hardware, i.e. output processing circuits tester configuration
- G01R31/31908—Tester set-up, e.g. configuring the tester to the device under test [DUT], down loading test patterns
- G01R31/3191—Calibration
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/317—Testing of digital circuits
- G01R31/3181—Functional testing
- G01R31/3183—Generation of test inputs, e.g. test vectors, patterns or sequences
- G01R31/318307—Generation of test inputs, e.g. test vectors, patterns or sequences computer-aided, e.g. automatic test program generator [ATPG], program translations, test program debugging
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/317—Testing of digital circuits
- G01R31/3181—Functional testing
- G01R31/3183—Generation of test inputs, e.g. test vectors, patterns or sequences
- G01R31/318342—Generation of test inputs, e.g. test vectors, patterns or sequences by preliminary fault modelling, e.g. analysis, simulation
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/317—Testing of digital circuits
- G01R31/3181—Functional testing
- G01R31/319—Tester hardware, i.e. output processing circuits
- G01R31/31903—Tester hardware, i.e. output processing circuits tester configuration
- G01R31/31907—Modular tester, e.g. controlling and coordinating instruments in a bus based architecture
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/317—Testing of digital circuits
- G01R31/3181—Functional testing
- G01R31/319—Tester hardware, i.e. output processing circuits
- G01R31/31917—Stimuli generation or application of test patterns to the device under test [DUT]
- G01R31/31922—Timing generation or clock distribution
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Tests Of Electronic Circuits (AREA)
- Test And Diagnosis Of Digital Computers (AREA)
- Debugging And Monitoring (AREA)
Description
對於認定下述參考文獻的指定國家,下述申請所記載的內容是以引用方式組合在本申請中而構成為本申請的組成部分:美國專利申請號10/404002,申請日2003年3月31日;美國專利申請號10/403817,申請日2003年3月31日;國際專利申請號PCT/JP2004/001649,申請日2004年2月16日;以及國際專利申請PCT/JP2004/001648,申請日2004年2月16日。
本發明涉及測試模擬裝置、測試模組模擬裝置、以及記錄相應程式用的記錄媒體。本發明特別涉及可以分別向被測試元件供給測試信號,對具有可實施交換的數個測試模組的測試裝置實施模擬,從而可以在不使用被測試元件和測試模組等實物的條件下對測試環境實施驗證的測試模擬裝置、測試模組模擬裝置、以及記錄相應程式用的記錄媒體。
能够不使用被測試元件和測試模組等實物對測試環境實施驗證的一些在先技術,已經由日本特開平10-320229號公報、日本特開2000-267881號公報、日本特開
2001-51025號公報、日本特開2001-134457號公報、日本特開2003-333469號公報所公開。
日本特開平10-320229號公報公開的是一種具有對半導體測試裝置中各硬體組件的功能實施模擬的各模擬組件,對DUT的功能實施模擬的元件模擬部,依據測試程式由各模擬組件處對測試程式運行所需要的資料實施收集用的組件,以及依據所收集到的資料使元件模擬部產生測試信號、並且對與元件模擬部給出的結果信號進行比較的結果實施儲存的元件測試模擬部的模擬裝置。
日本特開2000-267881號公報公開的是一種能够可靠地對隨DUT內部阻抗變化的電壓值、電流值實施模擬的半導體模擬裝置。
日本特開2001-51025號公報公開的是一種具有對半導體測試裝置的動作實施模擬的測試模擬組件,依據硬體描述語言對DUT實施模擬的硬體描述語言模擬組件,以及依據DUT的模擬結果對半導體測試用程式實施調試的調試組件的半導體測試用程式調試裝置。
日本特開2001-134457號公報公開的是一種可以在模擬半導體測試裝置的動作時,高速生成出與各接腳相對應的波形資料的半導體測試用程式調試裝置。
日本特開2002-333469號公報公開的是一種對按照具有模擬輸出端子的半導體調試方式製作的半導體測試用程式,實施驗證的半導體測試用程式調試裝置。
如上所述的測試裝置的模擬裝置,主要是由測試裝置
銷售方獨自開發出的軟體建構實現的測試裝置。然而在另一方面,技術人員所希望的測試裝置應該是一種能够通過開放型軟體建構實現的測試裝置,並且希望能够有一種可以對不同銷售方開發出的模組實施組合以構成測試裝置的適當方式,從而能够對混合使用各種模組的測試裝置實施適當模擬的模擬裝置。
本發明的目的就是解決上述這些問題。
為了能够實現這些目的,本發明提供的第一構成形式是一種對具有將測試信號分別供給至被測試元件的數個測試模組的測試裝置實施模擬的測試模擬裝置,並且可以具有對依據不同循環周期生成測試信號用的所述數個測試模組實施模擬的數個測試模組模擬部;對控制所述被測試元件的測試用的控制裝置實施模擬的控制模擬部;依據所述控制模擬部給出的指令,使所述數個測試模組模擬部,分別對模擬生成與該測試模組模擬部的循環時間相對應的測試信號的測試信號生成用計時時間實施生成的同步模擬部;對所述同步模擬部生成出的數個所述測試信號生成用計時時間,按時間順序進行排列並實施依次輸出用的計時時間排列部;以及使與所述計時時間排列部輸出的一個所述測試信號生成用計時時間相對應的所述測試模組模擬部,在與該一個測試信號生成用計時時間相對應的循環時間裏模擬生成測試信號用的進度安排部。
而且,這種測試模擬裝置還可以進一步具有依據模擬
生成的所述測試信號,模擬被測試元件動作用的被測試元件模擬部。
而且,這種測試模擬裝置還可以使所述同步模擬部進一步使數個所述測試模組模擬部,在與所述測試信號生成用計時時間相對應的循環時間裏模擬實施測試信號的生成操作,對相對所述控制裝置的中斷信號實施收集用的中斷信號收集用計時時間;所述計時時間排列部對數個所述測試信號生成用計時時間和數個所述中斷信號收集用計時時間,按時間順序進行排列並實施依次輸出;所述進度安排部對於所述計時時間排列部輸出有一個所述中斷信號收集用計時時間的場合,使與該中斷信號收集用計時時間相對應的所述測試模組模擬部,將在該中斷信號收集用計時時間之前由該測試模組模擬部生成測試信號的循環時間裏模擬產生的所述中斷信號,通知至所述控制模擬部處。
而且,這種測試模擬裝置還可以進一步使所述數個測試模組模擬部,分別在與所述測試信號生成用計時時間相對應的循環時間裏生成測試信號的過程中,對該循環時間裏的測試信號變化用計時時間實施生成;該測試模擬部還進一步具有獲取通過所述數個測試模組模擬部生成出的數個所述變化用計時時間用的,依據所述數個變化用計時時間使測試信號按時間順序依次產生模擬變化的被測試元件連接部。
而且,這種測試模擬裝置還可以進一步使所述被測試元件連接部將由所述數個測試模組模擬部獲得的數個所述
變化用計時時間供給至所述計時時間排列部;所述計時時間排列部將所述數個變化用計時時間,所述數個測試信號生成用計時時間和所述數個中斷信號收集用計時時間,按時間順序進行排列並實施依次輸出;所述進度安排部對於所述計時時間排列部輸出有一個所述變化用計時時間的場合,在所述被測試元件連接部處使該變化用計時時間內的測試信號產生模擬變化。
而且,這種測試模擬裝置還可以進一步使所述數個測試模組模擬部,分別在與所述測試信號生成用計時時間相對應的循環時間裏測試信號生成的過程中,分別將表示該循環時間結束用的循環結束用計時時間通知至所述同步模擬部;所述同步模擬部依據由所述數個測試模組模擬部分別通知來的所述循環結束用計時時間,對與該測試模組模擬部模擬生成下一循環時間相對應的測試信號的所述測試信號生成用計時時間實施生成。
而且,這種測試模擬裝置還可以進一步在與下一循環時間相對應的所述測試信號生成用計時時間輸出至所述計時時間排列部處的場合中,使所述進度安排部在該測試信號生成用計時時間之前的循環時間裏生成測試信號的過程中,將與該測試信號生成用計時時間相對應的所述測試模組模擬部模擬生成的中斷信號,通知至所述控制模擬部處。
而且,這種測試模擬裝置還可以進一步使所述數個測試模組模擬部,分別通過由電腦運行與該測試模組模擬部相對應的測試模組模擬程式的方式實現;所述測試模組模
擬程式可以具有按照使所述測試模組與分別由所述控制裝置接收到的數個指令分別相對應的方式設置的,對與該指令相對應所述測試模組的動作實施模擬用的數個硬體模擬函數;以及使所述進度安排部在與所述測試信號生成用計時時間相對應的循環時間裏對測試信號實施生成用的控制函數。
本發明提供的第二構成形式是一種對使電腦具有作為對包括將測試信號分別供給至被測試元件的數個測試模組的測試裝置實施模擬的測試模擬裝置使用的功能的程式實施記錄用的記錄媒體,其中所述程式使所述電腦可以具有作為下述組件使用的功能:對依據不同循環周期生成測試信號用的所述數個測試模組實施模擬的數個測試模組模擬部;對控制所述被測試元件的測試用的控制裝置實施模擬的控制模擬部;依據所述控制模擬部給出的指令,使所述數個測試模組模擬部分別對模擬生成與該測試模組模擬部的循環時間相對應的測試信號的測試信號生成用計時時間實施生成的同步模擬部;對所述同步模擬部生成出的數個所述測試信號生成用計時時間,按時間順序進行排列並實施依次輸出用的計時時間排列部;以及使與所述計時時間排列部輸出的一個所述測試信號生成用計時時間相對應的所述測試模組模擬部,在與該一個測試信號生成用計時時間相對應的循環時間裏模擬生成測試信號用的進度安排部。
本發明提供的第三構成形式是一種在對具有依據不同
循環周期,將測試信號分別供給至被測試元件的數個測試模組的測試裝置實施模擬的測試模擬裝置中,對一個所述測試模組實施模擬的測試模組模擬裝置,其中所述測試模擬裝置可以具有對控制所述被測試元件的測試用的控制裝置實施模擬的控制模擬部;依據所述控制模擬部給出的指令,使所述數個測試模組分別對模擬生成與該測試模組的循環時間相對應的測試信號的測試信號生成用計時時間實施生成的同步模擬部;對所述同步模擬部生成出的數個所述測試信號生成用計時時間,按時間順序進行排列並實施依次輸出用的計時時間排列部;以及向與所述計時時間排列部輸出的一個所述測試信號生成用計時時間相對應的所述測試模組模擬裝置,發出在與該一個測試信號生成用計時時間相對應的循環時間裏模擬生成測試信號用的指令的進度安排部;而且該測試模組模擬裝置可以具有依據所述進度安排部給出的指令,在與所述一個測試信號生成用計時時間相對應的循環時間裏模擬生成測試信號用的測試圖案發生器模擬部。
而且,這種測試模組模擬裝置還可以進一步具有將與所述一個測試信號生成用計時時間相對應的、表示循環結束用的循環結束用計時時間通知至同步模擬部,使所述同步模擬部依據所述循環結束用計時時間,對該測試模組模擬裝置的下一測試信號實施模擬生成用的所述測試信號生成用計時時間實施再次生成的測試模組介面模擬部。
本發明提供的第四構成形式是一種在依據不同循環周
期,對具有將測試信號分別供給至被測試元件的數個測試模組的測試裝置實施模擬的測試模擬裝置中,使電腦具有作為對一個所述測試模組實施模擬的測試模組模擬裝置使用的功能的程式實施記錄用的記錄媒體,其中所述測試模擬裝置可以具有對控制所述被測試元件的測試用的控制裝置實施模擬的控制模擬部;依據所述控制模擬部給出的指令,使所述數個測試模組分別對模擬生成與該測試模組的循環時間相對應的測試信號的測試信號生成用計時時間實施生成的同步模擬部;對所述同步模擬部生成出的數個所述測試信號生成用計時時間,按時間順序進行排列並實施依次輸出用的計時時間排列部;以及向與所述計時時間排列部輸出的一個所述測試信號生成用計時時間相對應的所述測試模組模擬裝置,發出在與該一個測試信號生成用計時時間相對應的循環時間裏模擬生成測試信號用的指令的進度安排部;而且所述程式使所述電腦可以具有作為依據所述進度安排部給出的指令,在與所述一個測試信號生成用計時時間相對應的循環時間裏模擬生成測試信號用的測試圖案發生器模擬部使用的功能。
本發明提供的第五構成形式是一種具有將測試信號供給至被測試元件的測試模組的測試裝置,可以具有對所述被測試元件的測試實施控制的控制裝置;依據循環周期對測試信號實施生成用的測試模組;對所述測試模組實施模擬的測試模組模擬部;而且所述控制裝置對實施所述被測試元件的實際測試或模擬測試用的指令實施輸入;對於接
收到對所述被測試元件實施實際測試用的指令的場合,將實施被測試元件的測試用的測試程式供給至所述測試模組,通過所述測試模組進行所述被測試元件的測試,對於接收到對所述被測試元件實施模擬測試用的指令的場合,將所述測試程式供給至所述測試模組模擬部,通過所述測試模組模擬部進行所述被測試元件的測試。
而且,這種測試裝置還可以進一步使所述控制裝置運行在該控制裝置與所述測試模組間進行通信處理的通信軟體;所述通信軟體與所述控制裝置協調動作,依據包含呼叫所述通信軟體初始化程式用的所述指令,對將所述測試程式供給至所述測試模組還是所述測試模組模擬部實施判斷。
本發明提供的第六構成形式是一種對具有將測試信號供給至被測試元件的數個測試模組的測試裝置實施模擬的測試模擬裝置,可以具有對依據循環周期生成測試信號的所述數個測試模組實施模擬的數個測試模組模擬部;對控制所述被測試元件的測試用的控制裝置實施模擬的控制模擬部;以及使所述數個測試模組模擬部,對與循環時間相對應的模擬生成測試信號用的測試信號生成用計時時間實施進度安排的進度安排部;而且所述測試模組模擬部對呼叫函數用的所述測試信號生成用計時時間的相關信息實施接收,將與該測試信號生成用計時時間相對應的循環時間裏測試信號的電壓變化,通過數次呼叫對輸出通道實施模擬的輸出通道對象的電壓設定方法的方式實施輸出;當與
該循環時間相對應的測試信號電壓變化輸出結束之後,通過呼叫所述輸出通道對象的結束方法的方式,對與該循環時間相對應的測試信號電壓變化輸出結束的信息實施通知。
而且,這種測試模擬裝置還可以進一步使所述進度安排部依據由所述數個測試模組模擬部分別給出的所述結束方法,對由全部所述測試模組模擬部結束測試信號電壓變化輸出的時間實施計算;而且還可以進一步具有獲取所述期間內的所述測試信號,並且依據該測試信號對被測試元件在所述期間內的動作實施模擬的被測試元件模擬部。
而且,這種測試模擬裝置還可以進一步使所述輸出通道對象在對所述結束方法的呼叫實施接收之後,禁止由該結束方法給出的、在測試信號電壓變化輸出結束之後的期間裏的電壓變化。
而且,上述的發明僅僅是以例舉形式給出了本發明的全部必要特徵,然而對這些特徵組的不完全組合形成也屬於本發明。
為讓本發明之上述和其他目的、特徵和優點能更明顯易懂,下文特舉較佳實施例,並配合所附圖式,作詳細說明如下。
下面參考附圖,對本發明的一種實施形式進行說明。
圖1為表示作為本發明一種實施形式的測試裝置10的構成形式用的示意圖。測試裝置10可以將生成出的測試信
號供給至DUT100(Device Under Test;被測試元件),並且可以按照作為DUT100依據測試信號動作的結果輸出的結果信號,是否與期待值一致的方式,判斷該DUT100運行是否良好。作為本實施形式的測試裝置10,可以通過開放型軟體建構實現,向DUT100供給測試信號的測試模組170等等,可以採用基於開放型軟體建構構成的各種模組。而且,測試裝置10還可以具有對DUT100的實際測試實施模擬用的測試模擬裝置190,通過該測試模擬裝置190,可以按照與實際測試使用的測試模組170等等的變更相對應的方式適當改變其構成,從而可以提供出能够對DUT100的實際測試環境進行適當模擬的模擬環境。
測試裝置10可以具有系統控制裝置110,通信網路120,站點(site)控制裝置130a~130c,匯流排開關140,同步模組150a~150b,同步連接模組160a~160b,測試模組170a~170b,載入板180和測試模擬裝置190,並且可以與DUT100a~100b相連接。
系統控制裝置110可以通過外部網路等等,對測試裝置10進行DUT100a~100b用的測試控制程式、測試程式、測試資料等等實施信號接收和儲存。通信網路120與系統控制裝置110、站點控制裝置130a~130c和測試模擬裝置190間相連接,從而可以在這些部件間實施通信連接。
站點控制裝置130a~130c是根據本發明構造的一個控制裝置實例,用於對DUT100的測試進行控制。在這兒,可以採用數個站點控制裝置130,分別對一個DUT100的
測試進行控制。如果舉例來說,可以如圖1所示,站點控制裝置130a對DUT100a的測試進行控制,站點控制裝置130b對DUT100b的測試進行控制。而且,也可以採用數個站點控制裝置130,分別對數個DUT100的測試進行控制。
如果更具體的講就是,站點控制裝置130可以通過通信網路120,由系統控制裝置110處獲取到測試控制程式。隨後,站點控制裝置130可以依據該測試控制程式,由系統控制裝置110處獲取出實施DUT100測試用的測試程式和測試資料,並且通過匯流排開關140將其儲存在實施該DUT100測試用的、諸如同步模組150和一個或數個測試模組170等等的模組處。站點控制裝置130可以依據測試程式和測試資料開始進行測試,通過匯流排開關140向同步模組150發出指令信號。而且,站點控制裝置130在由諸如同步模組150等處接收到表示測試結束的中斷信號時,還可以依據測試結果在各模組處進行下一測試。
匯流排開關140分別將數個站點控制裝置130,與控制該站點控制裝置130用的同步模組150和一個或數個測試模組170相互連接,從而可以在這些部件間實施通信連接。在這兒,預先確定的一個站點控制裝置130,可以依據測試裝置10的使用者和測試控制程式等給出的指令,對匯流排開關140實施設定,以便使匯流排開關140能够將數個站點控制裝置130,分別與由該站點控制裝置130進行DUT100的測試用的同步模組150和一個以上的測試模
組170相互連接。如果舉例來說,在圖1中的站點控制裝置130a,可以按照與同步模組150a和數個測試模組170a相互連接的方式進行設定,從而可以利用這些部件進行DUT100a的測試。而且,站點控制裝置130b可以按照與同步模組150b和數個測試模組170b相互連接的方式進行設定,從而可以利用這些部件進行DUT100b的測試。
在這兒,站點控制裝置130b使用同步模組150b、同步連接模組160b、一個或數個測試模組170b進行DUT100b測試所需要的構成形式和動作方式,與站點控制裝置130a使用同步模組150a、同步連接模組160a、一個或數個測試模組170a進行DUT100a測試所需要的構成形式和動作方式大體相同,其不同點僅如下所述,所以在這兒主要對使用站點控制裝置130a對DUT100a進行測試所需要的構成形式和動作方式進行說明。
同步模組150a可以依據站點控制裝置130a給出的指令,按照由進行DUT100a的測試使用的測試模組170a生成測試信號的方式,對測試信號生成用計時時間實施生成。而且,同步模組150a還通過同步連接模組160a,對由一個或數個測試模組170a給出的測試結果實施信號接收,並且通過一個或數個測試模組170a運行與測試結果是否良好相對應的測試程式的進度安排程式。
同步連接模組160a將由同步模組150a生成出的測試信號生成用計時時間,通知至實施與該測試信號生成用計時時間相應動作的測試模組170a處,從而可以使一個或數
個測試模組170a按照指定的計時時間值動作。同步連接模組160a還對由一個或數個測試模組170a給出的測試結果實施信號接收,並將其通知至同步模組150a處。
數個測試模組170a分別與具有DUT100a的數個端子中的一部分進行連接,通過站點控制裝置130a依據所儲存的測試程式和測試資料進行對DUT100a的測試。在DUT100a的測試過程中,測試模組170a可以依據由測試程式確定的進度安排,由測試資料生成出測試信號,並且將測試信號供給至與測試模組170a相連接的DUT100a的端子處。隨後,測試模組170a將DUT100a依據測試信號實施動作的結果輸出,作為結果信號實施獲取,並且與期待值進行比較。測試模組170a還將結果信號與期待值的比較結果,作為測試結果通知至同步連接模組160a處。在這兒的數個測試模組170a,可以依據測試程式和測試資料,在測試信號的循環周期產生有變化時,還可以依據不同的循環周期生成出測試信號。
而且,測試模組170a對於測試程式處理結束的場合,以及測試程式在運行中出現異常的場合等等場合,可以相對站點控制裝置130a發出中斷信號。這種中斷信號可通過匯流排開關140,通知至與測試模組170a相對應的站點控制裝置130a處,利用具有站點控制裝置130a的處理程式裝置,實施中斷處理。
載入板180搭載有數個DUT100,並且與和數個測試模組170相對應的、位於DUT100上的端子相連接。
測試模擬裝置190可以依據儲存在系統控制裝置110出的測試控制程式、測試程式和測試資料,對測試裝置10實施模擬,利用DUT100的模擬模型模擬進行對DUT100的測試。在本實施形式中,測試模擬裝置190可以對一個站點控制裝置130,由該站點控制裝置130控制的同步模組150、同步連接模組160和一個或數個測試模組170a,以及以該站點控制裝置130作為測試對象的DUT100的動作進行模擬。通過採用這種測試模擬裝置190的方式,測試裝置10的使用者可以不通過準備諸如DUT100、同步模組150、同步連接模組160和/或測試模組170等實物的階段,直接開始對測試控制程式、測試程式和/或測試資料實施驗證操作。而且,通過製備數個測試模擬裝置190的方式,還可以使數個使用者在不占有價格昂貴的實際測試環境的條件下,分別開發出測試控制程式、測試程式和/或測試資料。
如上所述,測試裝置10可以通過採用開放型軟體建構的方式實現,並且可以使用滿足開放型軟體建構的各種模組。而且,測試裝置10還可以將諸如同步模組150、同步連接模組160和測試模組170等模組,插入至具有匯流排開關140的各種連接插口中使用。在這時,諸如測試裝置10的使用者等等,可以通過諸如站點控制裝置130a等等,改變與匯流排開關140間的連接形式,使實施DUT100測試所使用的數個模組,與控制該DUT100測試的站點控制裝置130相連接。採用這種構成形式,測試裝置10的使用
者還可以根據數個DUT100上的端子數目、端子配製方式、端子種類、或測試種類等等,選擇適當的模組,並將其安裝至測試裝置10處。
還可以不採用上述方式,而是通過採用共用設計在使用測試裝置10的全部測試模組170上的一個同步連接部的方式,實現同步連接模組160a和同步連接模組160b。對於這種場合,諸如測試裝置10的使用者等等,可以通過在改變匯流排開關140的連接形式的同時,改變同步連接部和測試模組170間連接形式的方式,選擇與數個DUT100的特性相對應的模組。
圖2為表示作為本發明一種實施形式的測試模擬裝置190的功能構成用的示意圖。測試模擬裝置190具有站點控制模擬部230、匯流排開關模擬部240、同步模組模擬部250、同步連接模組模擬部260、一個或數個測試模組模擬部270、DUT連接部280、DUT模擬部200、進度安排控制部275。下面,以測試模擬裝置190模擬通過站點控制裝置130a實施DUT100a的測試的場合為例進行說明。
站點控制模擬部230可以對如圖1所示的站點控制裝置130a實施模擬。換句話說就是,站點控制模擬部230可以通過通信網路120,實施由系統控制裝置110處獲取測試控制程式的操作。隨後,站點控制模擬部230可以依據該測試控制程式,由系統控制裝置110處獲取出實施DUT100測試用的測試程式和測試資料,並且通過匯流排開關模擬部240將其儲存在諸如同步模組模擬部250和一
個或數個測試模組模擬部270等等的模組模擬部處。
在這兒,站點控制模擬部230可以由站點控制裝置130a,相對同步模組150a和一個或數個測試模組170a給出指令,並且相對匯流排開關模擬部240,對由該模組內的儲存區域中的讀取存取、寫入存取等指令實施模擬發出。站點控制模擬部230通過採用相對匯流排開關模擬部240模擬發出測試程式和測試資料的寫入存取指令的方式,可以通過匯流排開關模擬部240將測試程式和測試資料儲存在同步模組模擬部250和一個或數個測試模組模擬部270等等處。
而且,站點控制模擬部230還可以通過匯流排開關模擬部240,對由同步模組模擬部250和測試模組模擬部270模擬發出的中斷信號實施信號接收,並模擬實施站點控制裝置130a的中斷處理操作。
匯流排開關模擬部240可以對如圖1所示的匯流排開關140實施模擬,從而可以在站點控制模擬部230、同步模組模擬部250和一個或數個測試模組模擬部270間實施通信連接。
同步模組模擬部250可以對如圖1所示的同步模組150實施模擬,從而可以依據由站點控制模擬部230給出的指令,利用數個測試模組模擬部270,按照分別模擬生成與該測試模組模擬部270的循環時間相對應的測試信號的方式,生成出測試信號生成用計時時間。隨後,同步模組模擬部250對由該生成測試信號的測試模組模擬部270給出
的循環時間結束用的計時時間,作為循環結束用計時時間實施接收。同步模組模擬部250依據該循環結束用計時時間,生成下述四種計時時間:由測試模組模擬部270生成出下一測試信號用的測試信號生成用計時時間、對測試模組模擬部270給出的測試結果實施收集的測試結果收集用計時時間、結束該測試模組模擬部270的循環時間處理用的循環結束處理用計時時間,以及對由測試模組模擬部270至站點控制模擬部230的中斷信號實施收集用的中斷信號收集用計時時間。在這兒,由測試模組模擬部270相對站點控制模擬部230給出的中斷信號,可以是由數個測試模組模擬部270分別給出的、相對於與測試信號生成用計時時間相對應的循環時間裏模擬生成測試信號的站點控制裝置130a的中斷信號。
同步連接模組模擬部260對如圖1所示的同步連接模組160實施模擬,從而可以將由同步模組模擬部250模擬生成出的測試信號生成用計時時間、對同步模組模擬部250實施模擬所生成出的測試結果收集用計時時間、循環結束處理用計時時間和中斷信號收集用計時時間,通知至進度安排控制部275處。而且,同步連接模組模擬部260還可以對由一個或數個測試模組模擬部270給出的測試結果實施信號接收,並通知至同步模組模擬部250處。
測試模組模擬部270可以由接收測試信號生成指令的同步模組模擬部250處接收循環開始指令信號,依據儲存在站點控制模擬部230處的測試程式和測試資料,在與該
測試信號生成用計時時間相對應的循環時間裏模擬生成出測試信號。如果更具體的講就是,測試模組模擬部270在與測試信號生成用計時時間相對應的循環時間裏生成測試信號的過程中,模擬生成出在該循環時間中的測試信號變化用計時時間。在這兒,測試模組模擬部270按照與一個循環時間相對應的方式,對作為測試信號變化用計時時間的、按照與該測試模組模擬部270相對應的測試模組170的模式確定的數目變化用計時時間實施生成操作。測試模組模擬部270可以依據DUT模擬部200的測試信號,獲取出作為模擬動作結果輸出的輸出信號,並且將其與依據測試程式和測試資料確定的期待值進行比較。測試模組模擬部270還可以通過同步連接模組模擬部260,將結果信號與期待值的比較結果作為測試結果,通知至同步模組模擬部250處。
而且,測試模組模擬部270還可以由進度安排部277處接收表示中斷發生用的指令,並且在生成接收到中斷發生指令之前的最後一個測試信號用的循環時間裏,將模擬發生的中斷信號,通過匯流排開關模擬部240通知至站點控制模擬部230處。
DUT連接部280可以獲取出由數個測試模組模擬部270生成出的數個變化用計時時間,並且可以依據該數個變化用計時時間,按時間順序模擬測試信號的變化。
DUT模擬部200可以依據通過DUT連接部280獲取到的測試信號,對通過諸如Verilog-HDL和VHDL等等硬
體描述語言描述的DUT100的動作實施模擬。DUT模擬部200還可以按照模擬方式,對作為DUT100依據測試信號動作結果輸出的結果信號實施生成,並且可以通過DUT連接部280通知至測試模組模擬部270處。
進度安排控制部275可以在通過同步模組模擬部250、同步連接模組模擬部260、數個測試模組模擬部270和DUT連接部280,對DUT100實施的模擬測試過程中,依據由這些模組模擬部生成出的各種計時時間,分別對模組模擬部的動作時間進度實施控制。進度安排控制部275可以包含有計時時間排列部276、進度安排部277。
計時時間排列部276可以對由同步模組模擬部250生成出的數個測試信號生成用計時時間、數個中斷信號收集用計時時間、數個循環結束處理用計時時間和數個測試結果收集用計時時間,和通過一個或數個測試模組模擬部270實施生成的、通過DUT連接部280供給出的數個變化用計時時間,按照時間順排列並依次輸出至進度安排部277處。進度安排部277可以將計時時間排列部276依次輸出的各計時時間,通知至與該計時時間相對應的模組模擬部和DUT連接部280處,使模組模擬部和DUT連接部280實施與該計時時間相對應的動作。下面,對與計時時間排列部276輸出的計時時間種類相對應的進度安排部277的動作進行說明。
(1)計時時間排列部276對測試信號生成用計時時間實施輸出的場合
進度安排部277將該測試信號生成用計時時間通知至同步模組模擬部250處,以通過同步模組模擬部250發出由與該測試信號生成用計時時間相對應的測試模組模擬部270實施測試信號生成的指令。採用這種構成形式,進度安排部277可以通過同步模組模擬部250,使與該測試信號生成用計時時間相對應的測試模組模擬部270,對與該測試信號生成用計時時間相對應的循環時間裏的測試信號實施模擬生成。
(2)計時時間排列部276對中斷信號收集用計時時間實施輸出的場合
進度安排部277可以向與該測試信號生成用計時時間相對應的測試模組模擬部270,發出中斷信號出現用的指令。採用這種構成形式,進度安排部277可以使該測試模組模擬部270,將與該中斷信號收集用計時時間之前生成測試信號的計時時間裏模擬發生的中斷信號,通過匯流排開關模擬部240通知至站點控制模擬部230處。
(3)計時時間排列部276對循環結束處理用計時時間實施輸出的場合
進度安排部277將已經接收到循環結束用計時時間的信息,通知至與該循環結束處理用計時時間相對應的測試模組模擬部270處。
(4)計時時間排列部276對測試結果收集用計時時間實施輸出的場合
進度安排部277將已經接收到測試結果收集用計時時
間的信息,通知至與該測試結果收集用計時時間相對應的測試模組模擬部270處。當接收到這一信息時,測試模組模擬部270將在該循環時間裏結果信號與期待值的比較結果,通過同步連接模組模擬部260通知至同步模組模擬部250處。
(5)計時時間排列部276對變化用計時時間實施輸出的場合
DUT連接部280將由數個測試模組模擬部270給出的數個變化用計時時間,通知至計時時間排列部276處。當接收到這一信號時,計時時間排列部276將數個變化用計時時間和其它各種計時時間,一並按時間順序實施排列。
當計時時間排列部276輸出該變化用計時時間時,進度安排部277可以按照該變化用計時時間,使測試信號產生模擬變化,並且將已經接收到的變化用計時時間的信號,通知至DUT連接部280處。當接收到這一信號時,DUT連接部280可以在該變化用計時時間裏使測試信號產生模擬變化。
在這兒,測試模組模擬部270將作為獲取結果信號計時時間的測試結果獲取用計時時間,通知至進度安排控制部275,從而可以通過計時時間排列部276,與其它各種計時時間一並按時間順序實施排列。對於這種場合,進度安排部277對於計時時間排列部276輸出有測試結果獲取用計時時間的場合,還可以通過DUT連接部280在該測試結果獲取用計時時間裏,將結果信號通知至獲取該結果信
號用的測試模組模擬部270處。
而且,DUT連接部280還可以對由數個測試模組模擬部270生成出的數個變化用計時時間實施獲取,並且按照按時間順序實施排列的方式,將信號供給至DUT模擬部200。對於這種場合,DUT模擬部200可以對所獲得的數個變化用計時時間按時間順序實施排列,並且依據該排列後的數變化用計時時間,實施DUT100的模擬操作。
如果採用如上所述的測試模擬裝置190,可以按照分別與對測試裝置10實施實際測試時的同步模組150、同步連接模組160、一個或數個測試模組170相對應的方式,設置同步模組模擬部250、同步連接模組模擬部260、一個或數個測試模組模擬部270,並且使這些模組模擬部可以容易地與其它模組模擬部相互置換。採用這種構成形式,對於在DUT100實施實際測試時需要將某一模組置換為其它模組的場合,可以將測試模擬裝置190中與該模組相對應的模組模擬部,置換為與另一模組相對應的模組模擬部,從而可以在測試模擬裝置190上提供出與測試裝置10的實際測試環境大體相同的測試環境。
當然也可以不採用上述方式,而是使站點控制模擬部230、匯流排開關模擬部240、同步模組模擬部250、測試模組模擬部270、進度安排控制部275、DUT連接部280和DUT模擬部200,由作為站點控制裝置130等等的一台電腦實現,或是由數台電腦構成的分散系統實現。
圖3為表示作為本發明一種實施形式的測試模擬裝置
190的一個硬體構成實例用的示意圖。作為本實施形式的測試模擬裝置190,可以通過具有CPU300、ROM310、RAM320、通信介面部330、硬碟驅動部340、軟盤驅動部350、CD-ROM驅動部360的電腦20實現。
CPU300可以依據儲存在ROM310和RAM320處的程式實施動作,進行對各部分的控制。在ROM310處儲存有電腦20啟動時由CPU300實施的基本程式,以及與電腦20的硬體相關的程式等等。在RAM320處儲存有由CPU300實施的程式和由CPU300使用的資料等等。通信介面部330可以通過通信網路與其它裝置間實施通信連接。硬碟驅動部340儲存有供電腦20使用的程式和資料,並且可以通過RAM320供給至CPU300。軟盤驅動部350可以由軟盤390處對程式和資料實施讀取,並供給至RAM320。CD-ROM驅動部360可以由CD-ROM395處對程式和資料實施讀取,並供給至RAM320。
通過RAM320供給至CPU300處的程式,可以儲存在軟盤390、CD-ROM395或諸如IC卡等等的記錄媒體處,並且可以依據使用者的指令實施供給。這些程式可以由記錄媒體處讀取,通過RAM320安裝在電腦20上,由電腦20實施運行。
安裝並在電腦20中運行的、使電腦20具有作為測試模擬裝置190使用的功能的程式模組,可以包括DUT模擬模組、站點控制模擬模組、匯流排開關模擬模組、同步模組模擬模組、測試模組模擬模組、進度安排控制模組、
計時時間排列模組、進度安排模組、DUT連接模組。這些程式或稱模組,使得電腦20可以具有分別作為DUT模擬部200、站點控制模擬部230、匯流排開關模擬部240、同步模組模擬部250、同步連接模組模擬部260、測試模組模擬部270、進度安排控制部275、計時時間排列部276、進度安排部277和DUT連接部280使用的功能。
如上所示的這些程式或稱模組,也可以儲存的外部記錄媒體處。記錄媒體除了可以為軟盤390、CD-ROM395之外,還可以為諸如DVD和PD等等的光學記錄媒體,諸如MD等等的光磁記錄媒體,磁帶媒體,和諸如IC卡等等的半導體媒體等等。而且,還可以採用諸如與專用通信網路和內部網路相連接的、設置在子系統處的硬碟或RAM等等記錄裝置作為這種記錄媒體,也可以通過通信網路將程式由外部網路供給至電腦20處。
圖4為表示作為本發明一種實施形式的測試模組模擬部270的功能構成用的示意圖。正如圖4所示,可以通過使電腦20按照與該測試模組模擬部270相對應的測試模組模擬程式或測試模組模擬模組動作的方式,實現該測試模組模擬部270。
測試模組模擬部270具有與測試模組170通過匯流排開關140由站點控制裝置130處接收到的數個指令相對應的數個硬體模擬函數,以及為將各種計時時間通知至測試模組模擬部270處而實施呼叫的控制函數,並且可以按照對由匯流排開關模擬部240和進度安排控制部275處給出
的這些函數實施呼叫的方式實施接收動作。在這兒,控制函數可以指令進度安排控制部275在與測試信號生成用計時時間相對應的循環時間裏對測試信號實施模擬生成,並且指令將在中斷信號收集用計時時間之前由測試模組模擬部270生成測試信號的循環時間裏模擬生成出的中斷信號,通知至站點控制模擬部230處等等。
測試模組模擬部270可以包含有測試模組IF模擬部400(測試模組介面模擬部)、測試圖案發生器模擬部430、波形整形器模擬部440、接腳(pin)控制模擬部450、參數測定模擬部460。
對於由匯流排開關模擬部240接收到硬體模擬函數呼叫的場合,以及對於由進度安排控制部275接收到控制函數的呼叫信息的場合,可以使測試模組IF模擬部400啟動,對與該函數呼叫相對應的測試模組模擬部270的動作進行控制。測試模組IF模擬部400可以包含有計算機字(machine word)DB420、控制函數處理部410。
計算機字DB420用於對儲存在位於測試模組170處的儲存區域中的儲存區域實施模擬,對於依據硬體模擬函數的呼叫信號,對由站點控制模擬部230通過匯流排開關模擬部240給出的指令實施模擬接收的場合,可以對與該指令相對應的、位於計算機字DB420內的儲存區域實施存取操作。
如果更具體的講就是,作為本實施形式的測試模組IF模擬部400,安裝有可以對與諸如讀出存取和寫入存取等
數指令相對應的、由測試模組模擬部270實施的動作進行模擬的數個硬體模擬函數。當通過匯流排開關模擬部240由站點控制模擬部230處獲取到讀出存取指令時,測試模組IF模擬部400可以通過匯流排開關模擬部240,將與作為該讀出存取對象的儲存區域相對應的、位於計算機字DB420內的資料返回至站點控制模擬部230處。而且,當獲取到寫入存取指令時,計算機字DB420可以將作為寫入對象的資料,儲存在與作為該寫入存取對象的儲存區域相對應的計算機字DB420內。如果舉例來說,計算機字DB420在通過匯流排開關模擬部240,由站點控制模擬部230處接收到測試程式或測試資料的寫入存取指令時,可以將這些測試程式或測試資料,儲存在與該寫入存取相對應的、位於計算機字DB420內的儲存區域處。
控制函數處理部410對於由進度安排控制部275處獲取到控制函數呼叫信號的場合,可以使與該控制函數相對應的測試圖案發生器模擬部430、波形整形器模擬部440、接腳控制模擬部450和參數測定模擬部460動作,從而可以對與該控制函數指令相對應的測試模組170的動作進行模擬。如果更具體的講就是,當進度安排控制部275利用控制函數,在與測試信號生成用計時時間相對應的循環時間裏,給出實施測試信號生成用的指令時,控制函數處理部410可以由儲存在計算機信息元DB420處的測試程式和測試資料中,讀取出在該循環時間裏測試模組模擬部270需要處理的程式部分和資料部分,並且由測試圖案發生器
模擬部430、波形整形器模擬部440、接腳控制模擬部450和參數測定模擬部460,實施與該程式部分和資料部分相對應的處理操作。
測試圖案發生器模擬部430可以對具有測試模組170的信號測試圖案發生器實施模擬。換句話說就是,測試圖案發生器模擬部430可以利用諸如函數呼叫方式,通過控制函數處理部410對儲存在計算機字DB420處的測試程式和測試資料實施信號接收和儲存。而且,對於在某循環時間裏需要生成測試信號的指令,可以利用諸如函數呼叫方式,通過控制函數處理部410由進度安排控制部275處實施接收,進而對與該循環時間裏需要產生的測試信號實施模擬生成。
測試圖案發生器模擬部430還可以通過DUT連接部280和波形整形器模擬部440,對DUT模擬部200依據測試信號動作的、作為結果模擬輸出的結果信號實施獲取,並且將其與期待值進行比較。
波形整形器模擬部440可以用於對具有測試模組170的波形整形器實施模擬。換句話說就是,波形整形器模擬部440可以通過測試圖案發生器模擬部430對測試信號實施接收,進而對測試信號的波形實施模擬整形,並輸出至DUT連接部280處。
接腳控制模擬部450可以用於對具有測試模組170的接腳控制部實施模擬。換句話說就是,接腳控制模擬部450可以依據測試程式,對波形整形器模擬部440和/或參數測
定模擬部460上測試信號模擬輸出用的各端子,實施諸如動作電壓等等參數的設定。
參數測定模擬部460用於對具有測試模組170的參數測定部實施模擬。換句話說就是,參數測定模擬部460可以通過控制函數處理部410,利用函數呼叫方式,由進度安排控制部275處獲取到實施直流測試(DC參數測試)的指令,並且可以對直流測試中該循環時間裏需要產生的測試信號實施模擬生成。而且,參數測定模擬部460還可以對DUT模擬部200在直流測試中依據測試信號進行動作的、作為結果模擬輸出的結果信號實施獲取。
控制函數處理部410對於在與測試信號生成用計時時間相對應的循環時間裏,測試模組模擬部270生成出測試信號的場合,還可以將表示與該測試信號生成用計時時間相對應的循環結束用的循環結束用計時時間,通知至同步模組模擬部250處。
如上所述,控制函數處理部410可以在與測試信號生成用計時時間相對應的循環時間中對測試信號實施生成的過程中,將表示該循環結束用的循環結束用計時時間,通過進度安排控制部275通知至同步模組模擬部250處。採用這種構成形式,控制函數處理部410可以使同步模組模擬部250,依據該循環結束用計時時間,對測試模組模擬部270的下一測試信號實施模擬生成所需要的測試信號生成用計時時間實施再次生成。
而且,控制函數處理部410對於由進度安排控制部275
接收到中斷信號發生指令的場合,可以通過諸如函數呼叫等方式,將中斷信號發生指令通知至測試圖案發生器模擬部430、波形整形器模擬部440和接腳控制模擬部450處。接收到該中斷信號發生指令的測試圖案發生器模擬部430、波形整形器模擬部440和接腳控制模擬部450,可以在測試模組模擬部270生成測試信號的各循環時間中該中斷信號收集用計時時間之前的循環時間裏,將模擬生成的中斷信號通知至控制函數處理部410處。控制函數處理部410在接收到該中斷信號時,可以通過對諸如具有匯流排開關模擬部240的中斷信號通知用硬體模擬函數實施呼叫的方式,通過匯流排開關模擬部240將該中斷信號通知至站點控制模擬部230處。
圖5為表示作為本發明一種實施形式的軟體類層分級建構500的一個實例用的示意圖。在本實施形式中,實現諸如同步模組模擬部250、同步連接模組模擬部260和測試模組模擬部270等等模組模擬部用的模組模擬程式,是採用按照能够模擬實現測試裝置10的開放型軟體建構的方式設定的、作為模組模擬程式框架的類層函數實施製作的。
模擬組成部分類層510是一種通過假定方法函數的方式,對模組模擬程式所具有的、諸如數個方法函數中的參數和返回值等等實施呼叫的規則實施定義的類層。模擬組成部分類層510可以具有數個假定硬體模擬函數512,以及數個假定控制函數514。
在這兒,read( )為對於站點控制模擬部230對讀出存取指令實施模擬發出的場合實施呼叫的、對與讀出存取相對應的模組動作實施模擬用的方法函數。write( )為對於站點控制模擬部230對寫入存取指令實施模擬發出的場合實施呼叫的、對與寫入存取相對應的模組動作實施模擬用的方法函數。getChannel( )為對於在對具有測試模組170的儲存區域的資料庫位址實施設定時站點控制裝置130給出的資料庫位址設定指令,相對站點控制模擬部230實施模擬發出的場合實施呼叫的方法函數。
registerEvent( )是一種使由同步模組模擬部250處接收到信號的同步連接模組模擬部260、測試模組模擬部270和DUT連接部280,對於將中斷信號收集用計時時間、變化用計時時間和測試結果獲取用計時時間等通知並登錄在計時時間排列部276的場合實施呼叫的方法函數。handlerEvent( )是一種在獲得諸如測試信號生成用計時時間、中斷信號收集用計時時間、變化用計時時間和測試結果獲取用計時時間等等時,為在同步模組模擬部250、同步連接模組模擬部260、測試模組模擬部270和DUT連接部280處實施與這些計時時間相對應的處理,而通過進度安排控制部275實施呼叫的方法函數。raiseEvent( )是一種使同步模組模擬部250、同步連接模組模擬部260、測試模組模擬部270和DUT連接部280,對於將與計時時間無關的非同步處理事件通知至進度安排控制部275的場合實施呼叫的方法函數。
A公司模組類層520和B公司模組類層530,是由模擬組成部分類層510派生出來的類層,而且是一種可以通過諸如提供模組的製作方實施提供的、可以對該製作方提供的模組所共同具有的共用功能實施模擬的模組模擬程式。A公司模組類層520和B公司模組類層530可以分別具有數個實際硬體模擬函數522和數個實際控制函數524。數個實際硬體模擬函數522和數個實際控制函數524,是按照分別與數個假定硬體模擬函數512和數個假定控制函數514相對應的方式實施表述,對與假定方法函數相對應的實際方法函數(非假定方法函數)的處理內容實施記述用的模組模擬程式。
A公司模組類層520和B公司模組類層530還可以進一步具有派生類層。如果舉例來說,在圖5中的B公司模組類層530,就還進一步派生有數位測試模組類層540、電源模組類層560和同步模組類層590。
數位測試模組類層540是對進行DUT100的功能測試用的測試模組170實施模擬用的測試模組模擬程式所在的類層。數位測試模組類層540還可以進一步派生出對在頻率為250MHz時動作的DUT100實施功能測試用的測試模組170實施模擬用的250MHz數位測試模組類層550。電源模組類層560是對向DUT100實施電源供給用的模組實施模擬的模組模擬程式所在的類層。電源模組類層560還可以進一步派生出對向DUT100供給高電壓電源的模組實施模擬用的高電壓電源模組類層570,以及對向DUT100
供給低電壓電源的模組實施模擬用的低電壓電源模組類層580。同步模組類層590是對同步模組150實施模擬的模組模擬程式所在的類層。
250MHz數位測試模組類層550、高電壓電源模組類層570、低電壓電源模組類層580和同步模組類層590,可以分別與包含在B公司模組類層530內的handlerEvent( )置換(覆蓋)使用,並且包含有可分別對模組自有功能實施模擬的實際方法函數handlerEvent( )。
具有測試模擬裝置190的同步模組模擬部250、同步連接模組模擬部260、一個或數個測試模組模擬部270等等,還可以通過將包含在軟體類層分級建構500處的模組模擬程式所在的類層中的某一個,作為實際裝置化部分實施實現。
通過如上所述的內容可知,具有測試模擬裝置190的同步模組模擬部250、同步連接模組模擬部260和測試模組模擬部270等等的模組模擬部,可以通過與包含在軟體類層分級建構500中的某一個類層相對應的模組模擬程式實施實現。測試模擬裝置190的使用者,可以通過對由與實際安裝在諸如測試裝置10上的模組組合相對應的類層組合構成的模組模擬程式的實際裝置化部分實施生成的方式,在測試模擬裝置190上建構出與測試裝置10的實際測試環境大體相同的測試環境。對於製作有與新模組相對應的新類層的場合,也可以通過將該新類層作為某一類層的派生類層的方式,减少模組模擬程式的製作步驟。
圖6為表示作為本發明一種實施形式的測試模擬裝置190的測試信號生成處理程式,在使用一個測試模組模擬部270進行測試時用的示意圖。
在測試程式和測試資料儲存在同步模組模擬部250、同步連接模組模擬部260、一個或數個測試模組模擬部270處的狀態下,當站點控制模擬部230將開始實施測試的指令發送至同步模組模擬部250時,測試模擬裝置190將按照如下所述的順序進行模擬測試。
首先,進度安排控制部275(圖中的SCHED)中的進度安排部277,對於計時時間排列部276輸出有測試信號生成用計時時間的場合,對同步模組模擬部250(圖中的SYNC)的handlerEvent( )函數實施呼叫,並且在到達測試信號生成用計時時間時實施信號通知(程式步S600)。採用這種構成形式,進度安排控制部275可以通過同步模組模擬部250,使與測試信號生成用計時時間相對應的測試模組模擬部270,在與該測試信號生成用計時時間相對應的循環時間裏實施測試信號的模擬生成。在這兒,進度安排控制部275還可以通過在handlerEvent( )函數的參數中,包含表示已經到達由相應的測試模組模擬部270給出的測試信號生成用計時時間用的事件識別元的方式,將測試信號生成用計時時間通知至同步模組模擬部250處。
隨後,同步模組模擬部250對於在該測試信號生成用計時時間裏模擬生成測試信號用的測試模組模擬部270(圖中的TM),通知出作為開始循環時間處理、生成測
試信號用的指令的循環開始信號(程式步S605)。在這兒,同步模組模擬部250通過將指示循環開始用的事件識別元,包含在raiseEvent( )函數的參數中的進度安排控制部275實施呼叫的方式,通過與計時時間排列部276按時間順序處理後的計時時間非同步的進度安排控制部275,將循環開始信號通知至測試模組模擬部270處。
測試模組模擬部270對該循環開始信號實施接收,在相應的循環時間裏對測試信號實施模擬生成(程式步S610)。換句話說就是,在程式步S610中,進度安排控制部275可以在與測試信號生成用計時時間相對應的循環時間裏,將測試信號生成用計時時間通知至對測試信號實施模擬生成的同步模組模擬部250處,接收到該信號的同步模組模擬部250,可以按照通過進度安排控制部275將循環時間開始信號通知至測試模組模擬部270處的方式,使測試模組模擬部270在該循環時間裏對測試信號實施模擬生成。在這兒,測試模組模擬部270可以在該循環時間裏的測試信號生成過程中,對該循環時間裏的測試信號變化用計時時間實施模擬生成。
隨後,DUT連接部280(圖中的LB)接收由測試模組模擬部270給出的測試信號變化用計時時間,並且將該變化用計時時間登錄在計時時間排列部276處(程式步S615)。
測試模組模擬部270將表示該循環時間結束用的計時時間通知至同步模組模擬部250處(程式步S620)。在這
兒,測試模組模擬部270可以按照測試程式和測試資料給出的指令信息,動態地改變各循環時間,並且由測試圖案發生器模擬部430對測試信號實施生成。因此,位於測試模組模擬部270中的測試模組IF模擬部400內的控制函數處理部410,可以將由測試圖案發生器模擬部430處獲取到的、表示各循環時間結束的計時時間,通知至同步模組模擬部250處,從而可以由同步模組模擬部250正確地生成出測試信號生成用計時時間。
隨後,同步模組模擬部250可以在程式步S620中,依據由測試模組模擬部270給出的循環結束用計時時間,使測試模組模擬部270對與下一循環時間相對應的測試信號模擬生成用的測試信號生成用計時時間實施生成,並通知、登錄在計時時間排列部276處(程式步S625)。同步模組模擬部250對由測試模組模擬部270給出的、收集測試結果用的測試結果收集用計時時間,使測試模組模擬部270結束該循環時間用的循環結束處理用計時時間,以及在該循環時間裏測試信號生成的過程中對測試模組模擬部270模擬生成出的中斷信號實施收集用的中斷信號收集用計時時間,實施再次生成,並且通知、登錄在計時時間排列部276處(程式步S625)。在這兒,同步模組模擬部250通過對進度安排控制部275的registerEvent90( )函數實施呼叫的方式,將這些計時時間登錄在計時時間排列部276處。
而且,同步模組模擬部250還可以將與由測試模組模
擬部270接收到的循環結束用計時時間大體相同的計時時間,作為該測試模組模擬部270中的下一測試信號生成用計時時間、測試結果收集用計時時間、循環結束處理用計時時間和中斷信號收集用計時時間實施生成。
隨後,計時時間排列部276在程式步S615中,輸出所登錄的變化用計時時間時,進度安排部277對該變化用計時時間中對測試信號實施模擬改變,並且將接收到該變化用計時時間的信息通知至DUT連接部280處(程式步S630)。
當由進度安排部277處接收到變化用計時時間時,DUT連接部280通過在該變化用計時時間裏對測試信號實施模擬變化的方式,對測試信號實施生成,並供給至DUT模擬部200(程式步S635)。DUT模擬部200依據由DUT連接部280獲取到的測試信號,對DUT100的動作實施模擬。DUT模擬部200對DUT100依據測試信號動作的、作為結果輸出的結果信號實施模擬生成,並通過DUT連接部280供給至測試模組模擬部270。測試模組模擬部270對結果信號和期待值進行比較,以獲得比較結果。
隨後,當計時時間排列部276在程式步S625中,對所登錄的測試結果收集用計時時間實施輸出時,進度安排部277依據由DUT模擬部200供給至測試模組模擬部270處的結果信號,對結果信號是否良好進行收集,並且將獲得測試結果收集用計時時間的信息通知至測試模組模擬部270處(程式步S640)。當接收到測試結果收集用計時時
間時,測試模組模擬部270將該循環時間裏結果信號與期待值間的比較結果,通過同步連接模組模擬部260通知至同步模組模擬部250處。同步模組模擬部250依據由測試模組模擬部270收集到的比較結果,判斷測試結果是否良好(測試通過或視為廢品),並且通過信號發送的方式將表示測試結果是否良好的信息通知至測試模組模擬部270處(程式步S645)。供給至數個測試模組模擬部270處的測試程式和測試資料,還可以依據該測試結果是否良好,按照改變該循環時間以後的測試時間順序的方式實施記述。
隨後,當計時時間排列部276在程式步S625中,對所登錄的循環結束處理用計時時間實施輸出時,進度安排部277在到達該循環結束用的計時時間值時,向測試模組模擬部270發送出信號(程式步S650)。
當計時時間排列部276在程式步S625中,對所登錄的中斷信號收集用計時時間實施輸出時,進度安排部277在到達該中斷信號收集用計時時間時,向測試模組模擬部270發送出信號(程式步S655)。當接收到表示中斷信號收集用計時時間的信號時,測試模組模擬部270在位於該中斷信號收集用計時時間之前的測試模組模擬部270生成測試信號的循環時間裏,模擬生成出中斷信號,並且通過匯流排開關模擬部240向站點控制模擬部230給出模擬信號通知。
測試模擬裝置190在直至測試結束之前,重復進行如
上述程式步S600至程式步S655所示的處理(程式步S660)。
對於使用數個測試模組模擬部270進行測試的場合,進度安排控制部275還可以對這數個測試模組模擬部270的動作計時時間按時間順序實施排列處理,形成時間進度表。因此,可以按照時間順序表,由數個測試模組模擬部270按順序依次進行如程式步S600、程式步S630、程式步S640、程式步S650和程式步S655所示的處理。
圖7為表示由作為本發明一種實施形式的測試模擬裝置190模擬生成的一個測試信號實例用的示意圖。正如該圖所示,測試模擬裝置190可以包含有作為測試模組模擬部270的、對測試模組A實施模擬用的測試模組模擬部270a,以及對測試模組B實施模擬用的測試模組模擬部270b。
在到達時刻t1之前,計時時間排列部276對測試模組模擬部270a的測試信號生成用計時時間t1、測試模組模擬部270b的測試信號生成用計時時間t2實施登錄,對其按時間順序進行排列處理並輸出其結果,即首先輸出測試信號生成用計時時間t1。在接收到該信號時,進度安排部277在時間進入至t1的同時,將到達測試信號生成用計時時間t1的信號通知至同步模組模擬部250處。
當接收到測試信號生成用計時時間t1的信號時,同步模組模擬部250通過同步連接模組模擬部260和測試模組模擬部270,向與該測試信號生成用計時時間t1相對應的
測試模組模擬部270a通知出表示循環時間開始的信號。當接收到該信號時,測試模組模擬部270a在由圖中循環時間1表示的循環時間裏對測試信號實施模擬生成。在這兒,測試模組模擬部270a在到達該循環時間裏的變化用計時時間t4時,將測試信號改變為H電位的信號,並通知至DUT連接部280處。當接收到該信號時,DUT連接部280將變化用計時時間t4登錄在計時時間排列部276處。
隨後,測試模組模擬部270a在循環時間1的測試信號生成結束時,將表示循環時間1的循環結束用計時時間t6的信號通知至同步模組模擬部250處。當接收到該信號時,同步模組模擬部250依據該循環結束用計時時間t6,對下一測試信號生成用計時時間t6、測試結果收集用計時時間t6-△、循環結束處理用計時時間t6-△、中斷信號收集用計時時間t6-△實施生成,並將其登錄在計時時間排列部276處。在這兒,t6-△表示的是在下一測試信號生成用計時時間t6的微小時間之前的時間。
計時時間排列部276對所登錄的計時時間按時間順序實施排列處理,輸出測試信號生成用計時時間t2。當接收到該信號時,進度安排部277在時間進入至t2的同時,將到達測試信號生成用計時時間t2的信息通知至同步模組模擬部250處。
當接收到該測試信號生成用計時時間t1時,同步模組模擬部250通過進度安排控制部275,向與該測試信號生成用計時時間t2相對應的測試模組模擬部270b通知出表
示循環時間開始的信號。當接收到該信號時,測試模組模擬部270b在測試模組模擬部270b的循環時間1裏對測試信號實施模擬生成。採用這種構成形式,測試模組模擬部270b可以對測試信號的變化用計時時間t3和t5實施生成,並且可以由DUT連接部280將這些變化用計時時間登錄在計時時間排列部276處。
隨後,測試模組模擬部270b在循環時間1的測試信號生成結束時,將表示循環時間1的循環結束用計時時間t7用的信號通知至同步模組模擬部250處。當接收到該信號時,同步模組模擬部250依據該循環結束用計時時間t7,對下一測試信號生成用計時時間t7、測試結果收集用計時時間t7-△、循環結束處理用計時時間t7-△、中斷信號收集用計時時間t7-△實施生成,並將其登錄在計時時間排列部276處。
計時時間排列部276對所登錄的計時時間按時間順序實施排列處理,依次輸出變化用計時時間t3、t4、t5。當接收到這些變化用計時時間信號時,進度安排部277將這些變化用計時時間通知至DUT連接部280處。採用這種構成形式,DUT連接部280可以在該變化用計時時間裏使測試信號產生模擬變化,並供給至DUT模擬部200。
隨後,計時時間排列部276對測試結果收集用計時時間t6-△實施輸出。當接收到該信號時,進度安排部277在時間進入至t6-△的同時,將表示測試結果收集用計時時間t6-△的信號通知至測試模組模擬部270a處。採用這種構成
形式,可以在測試模組模擬部270a與同步模組模擬部250間進行測試結果的收集和信號通知操作。
隨後,計時時間排列部276對循環結束用計時時間t6-△實施輸出。當接收到該信號時,進度安排部277向測試模組模擬部270a發送出表示循環時間1結束的通知。
隨後,計時時間排列部276對中斷信號收集用計時時間t6-△實施輸出。當接收到該信號時,進度安排部277向測試模組模擬部270a發送出表示中斷信號收集用計時時間t6-△用的信息。採用這種構成形式,測試模組模擬部270a還可以向站點控制模擬部230,通知出在循環時間1裏模擬生成的中斷信號。
隨後,計時時間排列部276對測試信號生成用計時時間t6實施輸出。當接收到該信號時,進度安排部277在時間進入至t6的同時,將表示到達測試信號生成用計時時間t6的信號通知至同步模組模擬部250處。隨後測試模擬裝置190按照與時間t1相類似的方式,對變化用計時時間t8、表示獲取結果信號的計時時間用的測試結果獲取用計時時間t11、下一測試信號生成用計時時間t12、測試結果收集用計時時間t12-△、循環結束處理用計時時間t12-△、中斷信號收集用計時時間t12-△實施生成,並將其登錄在計時時間排列部276處。
隨後,計時時間排列部276對所登錄的計時時間按時間順序實施排列處理,並對測試信號生成用計時時間t7實施輸出。當接收到該信號時,進度安排部277在時間進入
至t7的同時,將到達測試信號生成用計時時間t7的信號通知至同步模組模擬部250處。隨後測試模擬裝置190按照與時間t2相類似的方式,對變化用計時時間t9和t10、下一測試信號生成用計時時間t13、測試結果收集用計時時間t13-△、循環結束處理用計時時間t13-△、中斷信號收集用計時時間t13-△實施生成,並將其登錄在計時時間排列部276處。
正如上面所描述的那樣,如果採用作為本實施形式的測試模擬裝置190,可以利用進度安排控制部275,對測試信號生成用計時時間、測試信號變化用計時時間、測試結果收集用計時時間、測試結果獲取用計時時間、中斷信號收集用計時時間等等的各種計時時間,按照時間順序實施排列處理,形成進度安排表。因此,測試模擬裝置190對於安裝有具有不同循環周期的數個測試模組170的場合,也可以對測試裝置10的動作實施適當的模擬。
而且在本實施形式中,同步連接模組模擬部260對於由測試模組170處接收到循環結束用計時時間的場合,是將測試結果收集用計時時間、循環結束處理用計時時間和中斷信號收集用計時時間登錄在計時時間排列部276處的,然而也可以不採用這種方式,而是採用如下所述的方式。
比如說在如圖6所示的程式步S625中,同步模組模擬部250可以依據循環結束用計時時間,通過測試模組模擬部270對與下一循環時間相對應的測試信號實施模擬生成
用的測試信號生成用計時時間實施生成,並且將其通知並登錄在計時時間排列部276處。在另一方面,同步模組模擬部250在該時刻,不對測試結果收集用計時時間、循環結束處理用計時時間、中斷信號收集用計時時間實施生成,所以也不相對計時時間排列部276實施登錄操作。
採用這種構成形式,測試模擬裝置190在進行完成如圖6所示的程式步S630和程式步S635之後,不進行如程式步S640、程式步S650和程式步S655所示的操作,進入至程式步S600。對於在程式步S600中,將與下一循環時間相對應的測試信號生成用計時時間輸出至計時時間排列部276的場合,進度安排部277可以將表示到達測試信號生成用計時時間的信號通知至同步模組模擬部250處。當接收到該信號時,同步模組模擬部250可以在下一循環時間的測試信號生成之前,將與測試結果收集信息、循環結束通知信息和中斷信號收集信息,發送至與該測試信號生成用計時時間相對應的測試模組模擬部270處。
通過採用如上所述的這種處理方式,進度安排控制部275可以在下一循環時間的測試信號生成之前,在諸如同步模組模擬部250、同步連接模組模擬部260和測試模組模擬部270等等處,實施如程式步S640、程式步S645、程式步S650和程式步S655所示的處理。如果更具體的講就是,進度安排控制部275可以在位於該測試信號生成用計時時間之前的循環時間裏的測試信號生成過程中,依據供給至測試模組模擬部270的結果信號,通過同步模組模
擬部250和同步連接模組模擬部260,對表示測試結果是否良好的信息實施收集和信號通知,並且由測試模組模擬部270將模擬生成的中斷信號,通知至站點控制模擬部230處。
上面對本發明的數實施形式進行了說明,然而本發明的技術保護範圍並不僅限於上述實施形式,還可以對上述實施形式進行各種各樣的改變,在權利要求記載的範圍內實施本發明。這些實施形式也屬於本發明的技術保護範圍之內,並且可以由權利要求記載的範圍所明確獲知。
如果舉例來說,如上所述的測試裝置10是通過同步模組150、同步連接模組160和測試模組170等等進行DUT100的實際測試,通過同步模組模擬部250、同步連接模組模擬部260、測試模組模擬部270和DUT模擬部200等等進行DUT100的模擬測試的,然而還可以將可運行相同測試控制程式和/或測試資料的測試裝置10提供給使用者,由使用者對實際測試和模擬測試實施切換操作。
換句話說就是,站點控制裝置130還可以將對DUT100實施實際測試或模擬測試的指令,通過表示諸如測試開始指令的選擇信號等等實施輸入。系統控制裝置110或站點控制裝置130對於接收到對DUT100進行實際測試用的指令的場合,可以通過匯流排開關140將進行DUT100的測試用的測試程式,供給至一個或數個測試模組170,進而通過這些測試模組170進行DUT100的測試。在另一方面,站點控制裝置130對於接收到對DUT100進行模擬測
試用的指令的場合,可以將能够在諸如測試模擬裝置190或站點控制裝置130等等上通過軟體實現的測試程式,供給至測試模組模擬部270,進而通過測試模組模擬部270等等進行對DUT100的模擬測試。
如上所述,站點控制裝置130可以對與該測試模組170間實施通信處理用的通信軟體(通信程式庫)實施運行,從而可以通過該通信軟體對實際測試環境和模擬測試環境實施存取操作。對於這種場合,在站點控制裝置130上運行的測試控制程式,可以利用該通信軟體提供的同一存取函數(read/write函數等等),對同步模組150、同步連接模組160和測試模組170等等實施進行存取操作的實際測試,並且可以對同步模組模擬部250、同步連接模組模擬部260和測試模組模擬部270等等實施進行存取操作的模擬測試。
在這兒,上述通信軟體可以包含在與站點控制裝置130協同動作,對該通信軟體實施初始化處理的呼叫信號中,從而可以依據對實際測試環境和模擬測試環境實施選擇的指令,對將測試程式供給至測試模組170等等還是測試模組模擬部270等等實施判斷。採用這種方式的一個實際實例,還將通過補充說明C.2.4.3等進行進一步的說明。
而且如果舉例來說,如上所述的測試模組模擬部270還可以採用如下所述的構成形式。各測試模組模擬部270可以通過函數呼叫方式,由進度安排控制部275內的進度安排部277處獲取進度安排用的測試信號生成用計時時間
信號。各測試模組模擬部270可以對與該測試信號生成用計時時間相對應的循環時間裏的測試信號的電壓變化,通過對模擬輸出通道用的輸出通道對象電壓設定方法(set方法)實施數次呼叫的方式實施輸出。測試模組模擬部270還可以在與該循環時間相對應的測試信號電壓變化輸出結束之後,將表示與該循環時間相對應的測試信號電壓變化輸出結束的信號,通過對輸出通道對象結束方法(end方法)實施呼叫的方式,通知至進度安排部277等等處。採用這種方式的一個實際實例,還將通過補充說明B.3.3等進行進一步的說明。
而且,進度安排部277可以依據由數個測試模組模擬部270分別給出的結束方法,對全部測試模組模擬部270的測試信號電壓變化輸出的結束時間實施計算,確定在該時間裏對DUT100的動作實施模擬的DUT模擬部200。當接收到該信號時,DUT連接部280可以對該時間裏的測試信號實施獲取,並且依據該測試信號,對被測試元件在該時間裏的動作實施模擬。
如上所述,輸出通道對象在接收到結束方法呼叫的信號之後,通過該結束方法實施信號通知,即在測試信號的電壓變化輸出結束的時間裏禁止電壓出現變化。採用這種構成形式,還可以在模擬結束期間防止與模擬結果不吻合的現象出現。採用這種方式的一個實際實例,還將通過補充說明B.3.5等進行進一步的說明。
下面,對作為本實施形式的測試裝置10和測試模擬裝
置190的各種具體實例和模式實例進行說明。
(補充說明A)軟體建構的具體實例
圖8為表示使用在本發明一種實施形式中的軟體建構2200用的示意圖。軟體建構2200與相關的硬體系統要素110、130、150、160和170相對應,並且可以表述為具有系統控制部2220、至少一個站點控制部2240、至少一個模組2260的構成要素的分散操作系統。除了模組2260之外,軟體建構2200還可以包含有呈軟體形式的、與模組模擬部相對應的SW(軟體)模組模擬部2280。
作為一種舉例示出的可選擇方案,這種平臺的開發環境可以在微軟的windows下進行。使用這種軟體建構方式可以具有程式和支持的可移植性等輔助優點(如果舉例來說,現場維護工程師可以與進行高度診斷用的、使測試操作系統動作的筆記本型(lap-top)電腦相連接)。然而,對於大規模計算集約型動作(諸如測試測試圖案的組合部分等等),相關軟體還可以通過橫跨可實施獨立動作的分散平臺的作業調度程式,利用獨立的構成要素實施建構。因此,與批量作業相關的軟體程式,可以通過數個平臺類型實施運行。
作為一種舉例示出的可選擇方案,ANSI/ISO標準的C++可以是一種軟體使用的自然語言。當然,第三方也可以自己選擇替代語言建構軟體系統,並且可以使用數個選擇通路(比如說所謂提供至C++介面上的層等等)。
圖8表示的是由所謂的源程式形成的組織(或稱為子
系統的集合展開),它包含有通過陰影方式表示的測試操作系統介面2290、使用者組成部2292(比如說為了測試的目的而由使用者提供的部分)、系統組成部2294(比如說為了能够實現基本連接和通信而作為軟體基礎結構實施提供的部分)、模組開發組成部2296(比如說由模組開發部實施提供的部分)、外部組成部2298(比如說由除了模組開發部之外的外部源程式實施提供的部分)等各要素。
從源程式資料庫構成的角度看,測試操作系統(TOS)介面2290可以包含有系統控制用站點控制介面2222、軟體框架類層2224、站點控制模組用介面2245、軟體框架類層2246、預定模組電位用介面2247、背板通信程式庫2249、機殼插槽IF(介面)2262、載入板硬體IF2264、背板模擬IF2283、載入板模擬IF2285、DUT模擬用IF2287、DUT的Verilog模型用的VerilogPLI(程式設計語言介面)2288、DUT的C/C++模型用的C/C++語言支持部2289。
使用者組成部2292可以包含有使用者測試計劃部2242、使用者檢測類層2243、硬體載入板2265、DUT2266、DUT Verilog模型2293和DUTC/C++模型2291。
系統組成部2294可以包含有系統工具部2226、通信程式庫2230、檢測類層2244、背板驅動部2250、包含著匯流排開關140的HW背板2261、模擬軟體框架部2281、背板模擬部2282和載入板模擬部2286。
模組開發組成部2296可以包含有模組指令執行部2248、模組硬體部2263和模組模擬部2284。
外部組成部2298可以包含有外部工具部2225。
可以在如圖1所示的系統控制裝置110上運行的、作為軟體的系統控制部2220,包含有與站點控制部相對的介面22、軟體框架類層2224、系統工具部2226、外部工具部2225和通信程式庫2230。系統控制用軟體的主要特點是可以與使用者相互作用。而且在這兒,還可以提供出本實施形式中站點控制部用的閘道(gateway)部分,以及由轉讓給同一受讓人的美國申請第60/449622號所記載的、在多站點/DUT環境中使站點控制部用的同步處理部。使用者應用部和工具部除了可以採用圖形使用者介面(GUI)和工具部之外,還可以通過系統控制部運行。系統控制部具有可以作為包含測試計劃、測試測試圖案和測試參數檔案的測試計劃相關信息儲存庫使用的功能。測試參數檔案在本發明的一種實施形式中,包含有對象指向環境中的測試類層用的參數化資料。
第三方的開發部,可以作為附加在標準系統工具部2226上(或是作為取代該程式)的工具部實施提供。系統控制部2220上的標準介面2222,具有由工具部對檢測部和測試對象實施存取用的介面。工具部(應用部)2225、2226,可以對檢測部和測試對象間實施相互的批量控制。這種工具部可以包含有提供(諸如通常在SECS/TSEM等中使用的)自動化處理能力的應用部。
位於系統控制部2220處的通信程式庫2230,可以對使用者應用部和測試程式處的、呈透明形式的站點控制部
2240間的通信提供系統維護。
介面2222常住在與系統控制部2220相關的儲存器處,為在系統控制部處運行的軟體框架對象提供開放型介面。站點控制資料庫中的模組軟體包含有可以對測試圖案資料實施存取、獲取用的介面。而且,應用部和工具部包含有對檢測部和測試對象實施存取操作用的介面,以及能够通過手寫引擎組件對檢測部和測試對象實施存取操作的手寫介面。採用這種構成形式,還可以使諸如實施人機對話等等的、批量處理和遠程應用共用的系統維護組件,能够運行相應的功能。
與系統控制部2220相關的軟體框架類層2224,可以提供與這些上述對象間相互作用的系統維護部,進而可以提供標準介面的基準執行部。如果舉例來說,本實施形式的站點控制部2240可以提供功能測試對象。系統控制部的軟體框架類層,可以代理該功能測試對象的遠程系統控制資料庫,提供與其對應的功能測試單元塊。因此,標準的功能檢測介面可以相對系統控制部2220處的工具部實施利用。系統、模組開發組成部界面組成部2294、2296、2290,也可以採用分散在系統控制部和站點控制部間的操作系統。軟體框架類層實際上可以提供與主系統控制部相關的操作系統介面。而且,它還可以由提供與站點控制部相對的門路部用的軟體要素構成。因此,這種層不需要實施直接通過通信層對站點控制部實施操作,適當地進行存取操作,從而可以提供出作為本發明一種實施形式使用的對象
模型。
在如圖1所示的站點控制裝置130上運行的、作為軟體的站點控制部2240,可以構成為使用者測試計劃部2242、使用者檢測類層2243、標準檢測類層2244、標準介面2245、站點控制部軟體框架類層2246、模組高電位指令用介面(如果舉例來說,也可以為預定模組電位用的介面)2247、模組指令執行部2248、背板通信程式庫2249、背板驅動部2250的主機。在一種實施形式中,大部分測試功能均可以由站點控制部2104/2240獲得,因此可以相對於測試站點部2110獨立地動作。
測試計劃部2242可以通過由使用者實施的寫入操作實現。這種測試計劃部可以利用諸如C++等等標準的電腦語言直接表述,也可以通過生成出可運行的測試程式和編譯語言的C++編碼,用更高層次的測試程式語言實施表述。
這種測試計劃部可以使用軟體框架類層2246,和/或與站點控制部相關的標準、由使用者提供的檢測類層2244,製作出測試對象,構成可以使用標準介面2245的硬體,對測試計劃部的程式實施定義。而且,還可以根據需要,在測試計劃部的運行過程中,提供所需要追加的邏輯部。測試計劃部可以對所謂的基本維護實施支持,提供諸如調試維護(比如說框架點等等)之下的對象維護用的介面,以及位於其下的軟體框架和標準類層的存取部等等。
與站點控制部相關的軟體框架類層2246,為對共用的檢測器相關動作實施執行的類層和方法設置。如果舉例來
說,站點控制電位軟體框架可以包含有電力供給和接腳電子元件的順序序號、電位和計時時間條件的設定,測定值獲取,測試程式控制所在的類層。軟體框架對象也可以通過實施標準介面的方式動作。如果舉例來說,測試接腳軟體框架類層的執行程式,可以通過測試類層與硬體模組接腳間的相互作用,採用實施通用的測試接腳介面的方式將其統一起來。
軟體框架對象也可以通過與模組間通信用的模組電位用介面2247的輔助動作實施執行操作。站點控制部軟體框架類層實質上具有作為對各站點控制部實施支持的本機操作系統使用的功能。
一般說來,程式編碼中90%以上為裝置測試用的資料,其餘10%的編碼為實現測試方法用的編碼。裝置測試資料為依賴於DUT的資料(比如說電力供給條件、信號電壓條件、計時時間條件等)。測試編碼可以由將指定的裝置條件加載到ATE硬體上的方法構成,或是由使用者為實現指定目的(資料記錄等等)所需要的方法構成。作為本發明一種實施形式的軟體框架,可以提供出依賴於硬體的檢測器,以及使用者完成DUT測試操作任務用的測試對象模型。
為了能够提高測試編碼的再次利用率,這種編碼還可以相對於裝置特有的資料(比如說接腳的標識符號,活化資料等等),或是裝置測試所特有的資料(比如說DC組件的條件,測定接腳,目標接腳數目,測試圖案檔案的標
識符號,測試圖案程式的位址等等)中的一個相對獨立。如果測試編碼為這些類型的資料,並且為編譯語言,則測試編碼的再次利用率比較低。因此,如果採用本發明的一種實施形式,使裝置特有的資料或是裝置測試所特有的資料在編碼運行期間實施輸入,將可以由外部利用這種測試編碼。
在本發明的一種實施形式中,標準測試介面的執行用測試類層,在這兒是記載為ITest的,並且可以與特定類型的測試相關的檢測器資料和編碼相分離(因此可以使編碼具有可再次利用性能)。這種測試類層,也可以為與裝置特有的資料/裝置測試所特有的資料不同的其它測試類層中的“模板”。測試類層是在測試類層檔案中實施指定的。各測試類層的典型情况是,對具體類型的裝置測試或是裝置測試用的設置構成實施執行操作。如果舉例來說,本發明的一種實施形式可以將與DUT相關的功能類層取為基本類層,並且可以提供出ITest介面的具體執行程式、比如說Functional Test等等。而且,還可以具有依據測試條件的設定、測試圖案的實現和失敗行程的存在狀况,對測試狀况實施判斷的基本功能。其它類型的執行程式,在這兒還可以包含作為ACPararnetric Test和DCParametric Test的、表示為AC和DC測試類層的程式。
全部測試類型,還可以提供出某種假想方法的省略執行程式(如果舉例來說,可以為init( )、preExec( )和
postExec( ))。這些方法可以作為略過省略的動作,設定測試特有參數的測試引擎部用的入口點。因此,還可以使用在用戶方測試類層和測試計劃部中。
測試類層可以用來提供對與該測試特定場合相關的隨機選擇實施指定用的參數,從而可以由使用者實施類層的構成作業。如果舉例來說,功能測試可以對實施測試圖案一覽表、測試用的電位和計時時間條件實施指定,所以可以採用參數PLIst和TestCondition。通過對(可以通過對測試計劃部記述檔案中不同的“類層”塊使用的)這些參數的不同值實施指定的方式,使用者還可以製作出功能測試不同的實例。圖9表示的就是由某一單一測試類層導出的不同測試實例。模板程式庫可以採用由常規算法和資料建構的常規程式庫。檢測器的使用者可以瞭解這種程式庫,所以使用者可以通過諸如使用者定義測試類層的方式,改變測試類層的執行部。
與由使用者開發的測試類層相關的一種系統實施形式,為可以通過將全部測試類層統一在單一的測試介面、比如說通過ITest獲得的軟體框架處的方式,對這種測試類層實施支持,因此這種軟體框架可以按照與系統測試類層的標準設置相同的方式實施處理。不難理解,使用者還可以採用構成追加元件用的自行開發的測試程式中的算法編碼,從而可以根據需要追加自行開發出的測試類層,進而實現功能的追加。
正如圖1所示,按照包含有站點控制裝置130、同步模
組150、同步連接模組160和測試模組170的方式構成的各測試站點,可以是一個以上的DUT100測試專用的,所以可以具有作為構成測試模組170等等測試模組的集合體使用的功能。各測試模組是實施特定測試類層的主體。如果舉例來說,測試模組可以通過DUT電源、接腳插件、模擬插件等構造。由模組構成的這種構成方式具有比較高靈活性和構成性。
模組指令執行部分類層2248還可以由模組硬體銷售方實施提供,所以可以按照與銷售方選擇的指令實施方法相對應的方式,提供出與硬體模組相關的模組電位用介面的執行程式,或是標準介面模組所特有的執行程式。這種類層的外部介面,可以通過預定的模組電位用介面要素和背板通信程式庫要素給予規定。這種層還可以通過對標準設置的測試指令實施擴張的方式提供,所以還可以對方法(功能)和資料要素實施追加。
背板通信程式庫2249可以提供使用背板的標準通信用的介面,從而可以提供在與測試站點相連接的模組間實施通信所需要的功能。採用這種構成形式,還可以使用同步模組模擬部250,在與銷售方特有的模組軟體相對應的硬體間實施通信。背板通信協議(網路)為資料包的基礎格式。
測試接腳對象可以表示為物理上的測試通道,在這兒可以由表示為ITesterPin的測試接腳介面構造。作為本發明一種實施形式的軟體開發工具箱(SDK),可以提供被
稱為TesterPin的ITesterPin的省略執行程式,因此可以按照與預定模組電位介面IChannel相關的方式實施執行。銷售方如果需要對與該IChannel相關的其它模組功能實施執行,可以根據需要自由使用TesterPin,如果不採用這種方式,將不能提供使其它模組動作用的ITesterPin執行程式。
由作為本實施形式的測試系統提供的標準模組介面,在這兒表示為IModule,而且通常為可以由銷售方提供的硬體模組。由銷售方提供的系統模組所特有的軟體,以可以通過延遲鎖定回路(DLL)方式運行的形式提供。由銷售方提供出的各模組類型用的軟體,也可以呈通過真空模盒方式製作出的單一DLL的形式。這種軟體模組還可以分別具有模組軟體開發用的API,並且可以通過將特有的執行程式提供給模組介面指令銷售方的方式實現。
模組介面指令為兩個層面。第一,具有作為使用者與系統中特定硬體模組間實施(間接)通信用的介面使用的功能,第二,為第三方開發部門將其他方提供的自有模組統合在站點控制部電位軟體框架提供一個介面。因此,由軟體框架提供的模組介面指令,可以分為兩種類型。
一種類型為幾乎沒有懷疑餘地的,可以通過軟體框架介面對使用者發出“指令”。因此如果舉例來說,測試接腳介面(ITesterPin)可以按照能够獲得、設定電位和計時時間值的方式實施提供,在另一方面,電源介面(IPowerSupply)可以按照使電力上升或下降的方式實施提供。
而且,軟體框架可以使用在模組間的通信中,並且可以提供出預定模組電位用介面的特別類型。在這兒,採用的是可以與銷售方提供的模組間實施通信所需要的軟體框架類層用的介面(即軟體框架介面的“標準”執行程式)。
因此,還可以根據需要,使用作為第二層面的模組電位用介面。採用這種構成形式的優點是,銷售方可以通過執行模組電位用介面,對由相對彼此間硬體給出的具體信息內容給予關注,從而可以靈活地應用諸如ITesterPin和IPowerSupply等等的執行程式。如果這些介面與銷售方的不吻合,還可以選擇提供這些軟體框架介面中的用戶方執行程式(諸如ITesterPin、IPowerSupply等的銷售方執行程式)。如果採用這種構成形式,將可以獲得與這些硬體相對應的適當的用戶方功能。
因此,模組所特有的銷售方軟體統合操作,可以通過兩種方式實現,即通過相關的軟體框架類層和介面的用戶方執行程式,或是模組電位用介面的特別類型的用戶方執行程式實現。
下面參考圖10,對這兩種方法的實例應用進行說明。圖10為表示作為本發明一種實施形式的測試系統與由銷售方供給的模組間相互作用的統一建模語言(UML)類層結構圖。
作為新的數位模組銷售方的第三方A(TPA),可以提供出與該軟體模組間實施通信的軟體模組。這種軟體模組可以執行標準的介面IModule。這種模組對象被稱為
TPAPinModule。銷售方TPA可以使該模組中相關的預定模組電位介面,通過對於這種場合執行IChannel的方式,利用在這兒表示為TesterPin的、可以作為ITesterPin介面的標準系統執行程式。在這兒,TesterPin實際上可以作為與模組間通信用的IChannel的標準預定模組電位介面使用。因此,TPAPinModule可以提供出單獨製作TesterPin對象時用的接腳。
在這兒,IChannel介面判斷自行開發的硬體是否產生有動作,由此對作為不同銷售方的第三方B(TPB)進行分析。因此,TPB不僅需要提供自己的IModule執行程式(TPBPinModule),還需要提供ITesterPin介面的執行程式TPBTesterPin。
這種構成方式可以在對諸如第三方開發部門等等自行開發出的硬體實施選擇和軟體支持的過程中,向第三方開發部門提供比較大的靈活性。在獲取另一種IModule介面的執行程式時,可以對模組電位介面實施執行操作,進而從中選擇出適當的TesterPin等等的對象實施執行操作。
實際上,銷售方還可以選擇不支持對ITesterPin介面實施開發用的TesterPin執行程式。軟體框架可以向使用者,提供獲取特定介面用的系統維護或是供給至對象的執行指示信息。對於使用者編碼具有ITesterPin指示信息的場合,意味著可以對需要軟體框架時所謂的TPBTesterPin對象是否實施指示給出判斷。(請注意,這種特徵可以通過標準的C++運行時間類型識別(RTTI)實施提供)。換句話說
就是,測試計劃部可以要求具有ITesterPin介面,而且該介面可以直接呼叫TesterPin類層的銷售方提供的測試接腳執行程式,其模組內含有特有的信息(如果舉例來說,包括按照對特定DUT實施刺激的方式設定的寄存器位址等等)。
在這時,軟體框架編碼可以使用常規的ITesterPin介面,所以使用者可以依據需要,自由採用由模組銷售方提供的具體特徵,並可以實施進一步開發。換句話說就是,模組銷售方還可以在諸如類層標準系統執行程式中附加有方法部(功能部)。相對於使用者的交換使用,對具體銷售方提供的進一步擴展靈活應用,將會降低其它銷售方提供的模組的測試編碼的有用性。
利用模組的電位,可以使測試裝置10具有所謂的兩種動作模式。在聯機動作模式下,可以採用通過包含有匯流排開關140、同步模組150、同步連接模組160、測試模組170、載入板180和DUT100的方式構成的模組單元2260(比如說硬體單元),而且在離線動作模式下,可以採用通過包含有匯流排開關模擬部240、同步模組模擬部250、同步連接模組模擬部260、測試模組模擬部270、進度安排控制部275、DUT連接部280和DUT模擬部200的方式構成的軟體中的模組模擬部2280。
在聯機動作模式下,模組單元2260可以具有包含有如圖1所示的匯流排開關140的HW(硬體)背板2261,機殼插槽IF(介面)2262,包含有同步模組150、同步連接
模組160和測試模組170的模組硬體部2263,載入板硬體IF2264,與載入板180相對應的硬體載入板2265,以及與如圖10所示的DUT100相對應的DUT2266。
在離線動作模式下,作為軟體的模組模擬部2280可以具有包含有如圖2所示的進度安排控制部275的模擬軟體框架部2281,包含有匯流排開關模擬部240的背板模擬部2282,背板模擬IF2283,包含有同步模組模擬部250、同步連接模組模擬部260和測試模組模擬部270等等的模組模擬部2284,載入板模擬IF2285,包含有DUT連接部280的載入板模擬部2286,以及DUT模擬用IF2287。兩種模型均與DUT模擬相關。使用Verilog的模型,具有Verilog PLI(程式設計語言介面)2288和DUT Verilog模型2293。使用C/C++的模型具有C/C++語言支持部2289和DUT C/C++模型2291。而且,這種模擬也可以在諸如PC等等的電腦上運行。
在聯機模式下,模組銷售方可以對於數位測試通道、DUT電源或DC測定組件,提供出支持測試用的物理硬體組成部。模組可以通過機殼插槽IF2262,與HW背板2261間介面連接。
在離線模式下進行的作業,還可以在與系統控制部等價動作的PC資料庫或其它環境之外,附加提供站點控制部電位軟體框架,和軟體中更低的層的運行時間環境,同時可以完成對硬體實施模擬的全部任務。
背板模擬部2282還可以通過物理HW背板2261的軟
體實施替代提供。在這兒,可以通過背板模擬介面2283(由銷售方提供的),與模組模擬部2284間實施通信連接。
模組模擬部2284可以由模組銷售方提供,且通常與模組2263的特定銷售方執行程式緊密結合。因此,模組模擬軟體通常在由不同銷售方供給的模組間詳細描述其不同。對於這種場合,通過模組模擬方式,銷售方將能够通過軟體模型(比如說模組模擬軟體2284)獲得作為硬體使用的功能,從而可以相對實施模擬的載入板2286發送出活性化信號,通過DUT模擬用IF2287與DUT模型實驗軟體2291和2293相連接,進而可以對由實施模擬的載入板2286給出的DUT應答信號實施接收處理。而且,當對提供模組單純功能模擬用的模組固件實施迂回模擬更有利時,還可以選擇更適當的銷售方。還可以通過模組模擬軟體,將相對實施模擬的模組活性化信號的模擬DUT的應答,與已知應答良好的DUT應答進行比較。依據這種比較,軟體可以對通過該模組運行的測試與所希望的、對DUT進行檢測的目標間是否合適進行判斷,使用者可以先在聯機的實際檢測部的IC(實際DUT)上使用,以便能够更好地進行模組的調試。
載入板模擬介面2285具有作為在模組模擬層和實施模擬的載入板2286間進行信號接收與發送的管路使用的功能。載入板模擬部2286能够支持與元件套接映象部(socket mapping)和DUT模擬用IF2287間進行的信號接收與發送。
DUT模擬部可以為自然語言編碼(即C/C++)模擬部
2291,或是相對作為對象的DUT模型2293的功能模型的Verilog過程語言介面(PLI)。這種模型可以通過DUT模擬介面2287,與實施模擬的載入板間實施介面連接。
對這些層進行的整體控制,可以通過模擬軟體框架部2281實施。模擬軟體框架部可以通過對已知活性化信號實施模擬的DUT應答實施測定。系統模擬方法也可以採用如美國申請第10/403817所公開的方法。
通信和控制
通信和控制可以通過對相關軟體對象的管理實現。在一種實施形式中,通信的系統維護部可以隱藏在系統控制部上的對象模組之後。這種對象模組可以給出能够在站點控制部上觀察到的類層和相對對象的代理服務部,因此還可以提供出應用軟體開發(比如說對IC裝置的測試)用的、方便的程式設計模型。採用這種構成形式,應用軟體的開發方(比如說ATE系統的使用者)可以回避開不需要的、有關應用軟體和站點/系統控制部間的具體通信信息。
圖11為表示保持在站點控制裝置130內的站點控制軟體2240處的站點控制對象的一種具體實施形式用的示意圖。站點控制對象具有CmdDispatcher2602、FunctionalTestMsgHandler2604和FunctionalTest2606。介面具有IMsgHandler2608和ITest2610。
站點控制部2240最好包含有應用程式存取所需要的全部功能類層。這種類層可以包括測試部、模組、接腳等等。使用者測試部和軟體工具部通常位於不同的電腦上,所以
信息需要由系統控制部的工具部處通知至站點控制部的服務器處。這種服務器需要具有與實施指令發送對象相關的方法。
指令發送對象(CmdDispatcher)2602,可以保持有執行IMsgHandler介面2608用的信息處理程式對象的映象部,圖11表示出了IMsgHandler的一個具體執行程式FunctionalTestMsgHandler2604。通過CmdDispatcher對象2602接收到的信息,包含有實施通信所需要的對象識別元。這種識別元可以由內部映象部處看見,具體的執行程式在這種場合中,可以歸在如圖所示的FunctionalTestMsgHandler對象2604處。
在本實例中,IMsgHandler2608可以由單一方法handlerMessage( )構成。這種方法還可以採用作為單一應用類層的執行程式。對於如圖所示的場合,FunctionalTestMsgHandler2604可以按照與輸入信息的正確性質相對應的方式,通知出六種方法中的一種信息。輸入的信息標題,包含有可以對信息處理程式等等的信息實施解釋,以確定可以對哪個信息實施通知用的信息ID。
與系統控制裝置110相對應的通信環境,與系統控制軟體2220中的工具部2225、2226部相關。圖12為表示在系統控制軟體部2220中保持在系統控制裝置110上的工具部對象(或稱為系統控制部對象)的一種實施形式,它與如圖11所示的站點控制對象相對應。工具部對象可以包含有對象CmdDispatcher2702、FunctionalTestMsgHandler2704
和FunctionalTestProxy2706。介面包含有IMsgHandler2708、ITestClient2710和IDispatch2712。而且,還可以包含有公共應用部2714。
在這一實例中,類層CmdDispatcher2702、IMsgHandler2708和FunctionalTestMsgHandler2704,與如圖11所示的部分相同。然而,FunctionalTest2606(或稱其它的站點控制部分類層)並沒有被實際裝置化。與其相對應的是,工具部對象具有對站點控制裝置130上的各對象實施通信用的代理類層。因此在該實例中,工具部對象包含有取代FunctionalTest2606用的FunctionalTestProxy2706。類似的,工具部對象中的ITestClient2710,也與站點控制對象中的ITest2610不同。一般說來,在站點控制裝置130上動作的應用程式,還可以設置在站點控制裝置130上而不再需要使用介面。對於這種場合,ITest2610中的三種方法(即preExec( )、execute( )和postExec( )),可以被置換為ITestClient2710中的一種方法(即runTest( ))。而且,ITestClient2710最好還能够與對偶介面、即IDispatch2712相接,以便能够作為微軟組成部對象模型(COM)實施執行。而且,這還可以提供出對這種介面用的對象的手寫引擎部實施存取用的介面。如果採用這種構成形式,系統可以通過微軟視窗平臺實施表述。
在如圖11和圖12所示的實施形式的一個構成實例中,(使諸如工具部組塊2226、2228中的一個)在系統控
制裝置110上動作用的應用程式,可以使測試計劃部2242與具有一個以上的FunctionalTest對象2606的站點控制裝置130間實施通信。在對站點控制裝置130上的測試計劃部2242實施初始化過程中,相對應的測試計劃對象被閂鎖在站點控制裝置130上,構成為TestPlanMessageHandler對象,並且同時將其登錄在CmdDispatcher2602上。這樣可以在信息處理程式處具有獨立的ID。還可以通過構成測試計劃部2242的其它TestPlan對象,啟動類似的動作。
利用系統控制裝置110上的(比如說工具部2226、2228中的)應用程式,可以使通信程式庫2230初始化,通過通信通道與站點控制裝置130連接,從而可以獲得TestPlan對象用的ID。在這種初始化過程中,代理對象在其包含有測試部時,可以確定它們的類型和ID。而且,可以將它們的類型(對於這種場合僅有一種類型)閂鎖在適當的DLL處,構成與其相關的代理對象,並且可以利用ID值使其初始化。
TestProxy對象也可以被初始化。採用這種構成形式,還可以將信號發送至由獲取它們名稱符號(使用它們的ID值)用的適當信息構成的站點控制裝置130的通信服務器處。通信服務器可以將信息傳遞至CmdDispatcher2602。這種對象可以在其內部映象部中調入位址ID,並且可以將信息傳遞至FunctionalTestMsgHandler2604的handlerMessage( )處。如果舉例來說,當信息表示需要對測試部的名稱實施獲取時,這些對象可以分別獲取到測
試部名稱,並通過適當的文字說明列對應用程式的TestProxy對象實施應答。
當初始化完成時,應用程式可以對TestPlan對象實施遠程存取,進而可以通過其對兩方Test對象實施遠程存取。在這時,使用者可以按壓下諸如應用程式上的“測試計劃啟動”按鈕。因此,應用程式可以呼叫出TestPlanproxy對象上的RunTestPlan( )方法。這種方法可以通過TestPlan對象的位址ID,構成RunTestPlan信息,並且可以通過RPC代理呼叫出sendMessage( )功能。利用這種功能將可以把信息發送至站點控制部處。
站點控制裝置130上的通信服務器,可以呼叫出CmdDispatcher對象2602上的handlerMessage( )方法,將其轉換為TestPlan對象的ID。CmdDispatcher對象2602可以通過其內部映象部呼叫該ID,對TestPlan對象用的信息處理程式實施觀察,呼叫其對象上的handlerMessage( )方法,進而由此呼叫出的TestPlan對象上的RunTestPlan( )方法。通過使用類似的方法,應用程式可以獲取到名稱符號和Test對象的最近動作情况。
使用通信程式庫的方法
下面對使用通信程式庫2230的一個實例進行說明。
通信程式庫2230在一種實施形式中是靜態的程式庫。應用程式可以通過CommLibrary.h檔案使用該通信程式庫。需要導出程式庫類層的應用程式,除了包含有上述執行檔案,還必須具有定義了的預處理程式定義
COMMLIBRARY_EXPORTS、COMMLIBRARY_FORCE_LINKAGE。需要導入通信程式庫的應用程式,不需要對預處理程式定義實施定義。通信程式庫可以作為服務器使用,應用程式需要呼叫CcmdDispatcher的下一靜態函數:InitializeServer(unsigned long portNo)。
這種portNo是服務器要求的訪問口序號。與服務器相對應的指令調度程式,可以通過在CcmdDispatcher類層上呼叫靜態函數getServerCmdDispatcher的方式實施讀取。
如果將通信程式庫作為委托單位使用,應用程式還需要對CcmdDispatcher的靜態函數“InitializeClient(const OFCString serverAddress,unsigned long serverportNo,CcmdDispatcher **pCmdDispatcher,OFCString serverID)”實施呼叫。
這種serverAddres和serverPortNo可以與委托單位間實施連接。這種函數可以用來使委托單位用指令調度程式指示部,以及和其相連接的服務器ID初始化。在隨後的時間裏,委托單位可以通過呼叫靜態函數getServerCmdDispatcher的方式,對與服務器ID相對應的指令調度程式實施讀取。
還可以對通信程式庫實施編譯,以便可以通過檔案ClientInterface.idl和ServerInterface.idl,由構建實施排除。在一種最佳實施形式中,可以採用與這種介面定義檔案相關的、已經生成出的存根(stub)和代理檔案,並且在代理和存根執行檔案相同的程式庫處形成環路。因此,服務
器和委托單位可以在相同的位址空間中被實際裝置化。介面定義檔案和類層檔案中的下述變更,最好能够使通信程式庫在服務器和委托單位相同的位址空間中動作。
介面定義檔案中的變更
下面的名稱空間說明部分,可以附加在各介面定義檔案中。而且,需要避免在代理執行功能部和介面功能部的自身執行程式的名稱符號間出現衝突。下面的名稱空間說明部,就是附加在ServerInterface.idl中的。
存根執行檔案中的函數,可以通過對介面中具有說明部功能的、自行建構的執行函數實施呼叫的方式進行變更。換句話說就是,自行建構的部可以具有與在介面中具有說明部的功能分別相對應的不同名稱符號函數。
為了能够在函數呼叫時避免出現衝突,可以將通過“COMM_”列開始的名稱符號,取為執行程式函數的名稱符號。如果採用這種構成形式,類層函數中的編碼,可以通過呼叫“COMM_functionName”取代“functionName”的方式實施變更。
按照這種方法動作時,所出現的全部功能類層,均需要具有相對應的信息處理程式對象和代理類層。全部的信息處理程式對象,可以由通信程式庫提供的IMsgHandler類層處獲得。IMsgHandler類層是一種抽象的類層。信息處理程式的執行任務,最好還能够提供出handlerMessage、setObject、handlerError的定義。全部信息類型可以由1開始(零的含義為存在handlerError)。功
能類層可以具有與該成員變化情况相對應的信息處理程式。在功能類層的構建中,功能類層可以通過對該信息處理程式提供的函數實施呼叫的方式,對信息處理程式自身實施登錄處理。信息處理程式對象可以通過對addMsgHandler函數在指令調度程式上,作為參數的信息處理程式實施獲取的方式,對指令調度程式實施登錄。addMsgHandler函數在信息處理程式和功能類層處可以作為ID使用。功能類層的調度程式,可以通過對作為參數的功能類層識別元實施發送的方式,在指令調度程式處呼叫出removeMsgHandler函數。而且,代理類層也可以按照對功能類層進行相關說明的方式,依據相同的登錄順序進行處理。
系統構成和測試部
圖13為表示作為本發明一種實施形式的所謂的測試指令序列2800用的示意圖。測試指令序列2800包含有位於測試環境部2804中的模組安裝部2815,進而包含有測試準備部2806和系統測試部2808。在初始時,對新模組(硬體或軟體或它們的組合形式)2810實施認證為的認證部2812(依據銷售方的品質管理,或是依據與其無關的外部順序)。安裝部2815包含有測試準備部2806,後者可以對離線模擬部2809用的硬體模組模擬部實施設定,對測試程式展開部2814用的模組軟體和介面實施設定,並且對測試圖案編譯部2816用的模組所特有的測試圖案編譯部實施設定。隨後,系統測試部2808可以利用由校正部2817、
診斷部2818和構成部2820輸入的方式實施運行。相對於新模組,可以由系統測試部2808運行包含(1)介面控制、(2)同步、順序設置和再現性、(3)錯誤/報警操作、(4)多重控制和(5)多指令()模組控制等程式。
(補充說明B)DUT100的系統軟體框架的具體實例
B.1概要
本具體實例表示的是以由測試模擬裝置190,或系統控制裝置110和站點控制裝置130等分散系統構成的模擬環境(離線環境)為中心,面向DUT100的系統軟體使用者和開發方的軟體框架。
B.2使用者的具體實例
本部表示的是測試裝置10的系統軟體面向使用者的軟體框架。
B.2.1 SimTester
“SimTester(模擬的測試裝置)”,是一種使電腦20具有作為如圖2所示的測試模擬裝置190使用的功能的應用程式。SimTester可以對各模組和DUT的DLL實施閂鎖,對由系統軟體給出的指令實施應答的測試裝置進行模擬。在這兒,系統軟體是一種可以對實施模擬的測試圖案進行閂鎖的運行軟體。
SimTester在啟動時,對模擬配置檔案實施讀取。因此,可以將測試模擬裝置190閂鎖為具有同步模組模擬部250、同步連接模組模擬部260和/或測試模組模擬部270
的全部功能的模組模擬部DLL。當對DLL實施閂鎖時,SimTester可以處於等待與系統控制裝置110相連接的狀態。系統控制裝置110還可以對測試計劃部實施閂鎖,並且與SimTester相連接。測試計劃部包含有離線配置檔案。系統控制裝置110可以在對測試計劃部的資料實施實際閂鎖之前,將離線配置檔案通知至SimTester處,並且結束初始化操作。如果離線配置檔案被閂鎖成功,SimTester對DUT模型實施閂鎖,對DUT連接部280和作為DUT模擬部200的測試模組模擬部270等等的模組模擬部實施連接。在這時,模擬部可以實施測試圖案讀取和運行的準備操作。
當測試計劃部未被閂鎖時,SimTester接收未對DUT模型實施閂鎖的信號,並且等待接收有關新的離線配置檔案的信號。
B.2.2建構檔案
SimTester可以使用兩個建構檔案。第一檔案為模擬配置檔案。該檔案可以確定是否可以使用模擬部中的模組。第二檔案為離線配置檔案。這一檔案可以確定是否對DUT模型實施閂鎖,是否與測試裝置相互連接。
B.2.2.1模擬配置檔案
圖14、圖15表示的是模擬配置檔案的一個實例。模擬配置檔案可以呈階層組塊形式。
全局組塊5010可以實施整體設定。InitialVoltage參數可以在模擬開始時對全部配線的電壓初始值實施設定。該
值也可以用來對不實施驅動的配線電壓電位實施指定。
RecovertRate參數為選擇用參數,在兩個模擬信號相對驅動的場合使用。如果更具體的講就是,該參數對於通過兩個模擬信號對配線實施驅動的場合,可以用來確定到達一定電壓電位所需要的時間,表示的是單位時間的電壓變化量。
模組模擬組塊5020可以對模組DLL實施指定,並且可以對該模組DLL實施設定。
Waveform組塊給出的是各模組使用的波形模型說明部。波形模型可以在與DUT端子相連接的各通道處,對Step(步長波形)、Slew(旋轉波形)和Analog(模擬波形)等實施指定。
Port組塊給出的是使測試模擬裝置190,具有作為同步模組模擬部250、同步連接模組模擬部260和/或測試模組模擬部270等使用的功能的模組模擬部的介面。
LogicalPort參數對於實際運行時某通道出現問題,而需要使用其它模組對插入至該通道處的模組實施替換的場合,將這種替換記載在模組模擬部上用的信息。
模組模擬組塊5020處的Params組塊,表示的是通知至模組DLL處的參數。
B.2.2.2離線配置檔案
圖16和圖17表示的是離線配置檔案的一個實例。
全局組塊5110可以實施整體設定。RegSelect參數可以在測試圖案掃描軌迹時對軌述寄存器實施選擇用的檔案
進行指定。
DUT模型組塊5120可以對由DUT模型構成的DLL檔案實施指定和各種設定。
Waveform參數可以對各DUT端子處的波形模型實施設定。DUT組塊主要包含有Params組塊和PinConnections組塊。
Params組塊對通知至模組DLL處的參數實施記載。
PirnConnections組塊對測試裝置的資源(resource)和DUT端子間的連接狀况實施指定。如果舉例來說,“L3.11 10 1.0ns”表示的是邏輯訪問口3上的序號為11的資源與DUT的端子10相連接,並且配線延遲為1.0ns。在這兒,邏輯訪問口可以是諸如安裝模組用的訪問口,資源可以是設置在該模組內部處的通道對應邏輯回路等等。
B.3面向開發方的具體實例
測試裝置模組和DUT模型,可以採用如圖5所示的模組模擬程式的軟體框架,比如說可以採用由諸如C++語言的類層函數派生的方式實施製作。隨著這種派生,需要對基本類層中的幾個假想函數實施實際設置。這種軟體框架可以包含有使測試裝置模組和DUT模型間I/O實現容易用的函數。而且,通過使用這種軟體框架的方式,還可以進行將所獲得的DLL與測試模擬裝置190上的其它組成部相連接的模擬操作。
B.3.1離線軟體框架類層的構成形式
圖18為更詳細地表示如圖5所示的軟體類層分級建構
用的一種軟體類層分級建構5200的示意圖。ThirdPartyModule類層和ThirdPartyDUT類層內的各方法是假想方法,然而也可以實際安裝有對本模型的動作實施定義用的實際方法。SimComponent基本類層內的createDomain、registerDomain、releaseDomain、getDomain、registerEvent、和raiseEvent方法,可以使測試模擬裝置190具有作為進度安排控制部275等等使用的功能,並且可以對DUT100的軟體模擬部實施的存取操作給予支持。
圖19為表示該軟體框架中作為介面使用的通道對象的使用圖表用的示意圖。測試裝置模組和DUT模型,可以包含有SimChannel對象序列。SimChannel對象的各實際裝置化部分與該模型的I/O通道相對應。I/O通道可以通過SimChannelID對象實施識別。SimChanne類層可以通過模組和DUT模型,將輸出電壓的計時時間寫入至輸出通道,並且在由特定輸入通道給出的計時時間裏對電壓實施讀取。對於在由輸入通道的時間窗口間,掃描到輸入信號錯誤的場合,可以呼叫出SimChannel::getWaveformIter方法,從而可以獲得simWaveformIter的實際裝置化部分。而且,simWaveformIter對象可以在呼叫側通道處,對於有限時間窗口中的全部錯誤實施返回處理。
圖20為表示該軟體框架中作為介面使用的事件對象的使用圖表用的示意圖。事件使用在該軟體框架和第三方模組間實施的通信作業中。事件可以通過SimEvent類層被模封成型化。SimEvent的實際裝置化部分可以通過
SimEventmgr類層實施生成。一般說來,一個模型可以對SimEventmgr的一個實際裝置化部分實施支持。對於一個模型與其它模組間實施特定事件信號通知的場合,需要採用數個SimEventmgr的實際裝置化部分。
B.3.2測試裝置模組的安裝
本部分以單純數位驅動模組和數位選通模組(digital strobe module)為例,對模組的安裝方法進行說明。
圖21為表示作為測試裝置一個實例的單純數位模組的基本類層用的示意圖。數位驅動模組和數位選通(strobe)模組的類層,是作為基本類層的派生類層實施生成的。
開發方可以依據該基本類層,對基本類層的構造類層、返回通道對象用的getChannel方法、設定模組儲存器位址用的setBaseAddress方法、設定匯流排開關140的插槽序號用的setBusNumber方法、設定中斷禁止/許可用的lockInterrupt/unlockInterrupt方法、對模組存儲器位址空間實施尋址用的read/write方法等等,實施實際安裝。
B.3.2.1本機事件
對象的模擬可以通過事件驅動方式實現。換句話說就是,可以在各模組處對事件實施登錄。事件發生時,還可以對登錄事件的模組handlerEvent方法實施獲取。
事件可以通過對SimEvent類層實施的定義,分類為同步事件和非同步事件。非同步事件還可以進一步分類為系統事件和本機非同步事件。如果舉例來說,系統事件可以為系統中斷、測試圖案生成結束等等。
B.3.2.1.1本機非同步事件
本機非同步事件可用於在模組間的通信。這種事件和時間不相關。對於需要對非同步事件實施信號接收的場合,模組將會被覆蓋,通過不具有時間自變量的registerEvent方法對事件實施登錄。對於發生非同步事件的場合,模組可以呼叫出raiseEvent方法。接收到非同步事件的模組將被覆蓋,在不具有時間自變量的registerEvent方法中對事件實施處理。
B.3.2.1.2本機同步事件
本機同步事件(同步事件)可用作模組的讀取事件和寫入事件,即信號選通和驅動實施時間進度安排。同步事件可以在特定時間裏將通知傳遞至模組處,然而不能用於模組間的通信。
B.3.3單純數位驅動模組
圖22表示的是單純數位驅動模組的一個類層說明部分。開發方可以對該類層的構造、返回銷售方/模組信息用的getModuleIDs方法,以及對驅動模組實施初始化處理用的initEvent方法實施安裝。
圖23為表示數位驅動模組的handlerEvent方法的一個實例用的示意圖。數位驅動模組在目前的循環時間裏,可以將邊緣部(edge)寫入在各通道處。這種寫入操作可以通過作為SimChannel對象配置列的m_channel的各要素中的set方法進行。SimChannel對象除了包括set方法之外,還可以包括off方法和end方法。off方法可以對信號
驅動實施中斷。end方法可以將該通道在預定時間裏、比如說在循環時間裏的信號生成結束信息通知至軟體框架。當接收到這種通知信息時,相對位於通道相反側的組成部分,即諸如DUT連接部280,可以給出由通道實施讀取的指令信號。因此,可以通過該組成部對生成出的信號實施讀取。一般說來,使用者可以在通過數個set方法對特定期間的電壓實施設定之後,對該期間的最後一個end方法實施獲取,從而可以對該期間的信號實施生成和通知。而且,set方法和end方法間的關係,將在B.3.5中進行詳細說明。
B.3.4單純數位選通模組
圖24表示的是單純數位選通模組的一個類層說明部分。開發方可以與數位驅動模組相類似,對構建、getModuleIDs方法,以及initEvent方法實施安裝。在這兒,數位選通模組可以對將DUT的輸出值和期待值的比較結果儲存在故障儲存器用的read就write方法實施變更。
圖25為表示數位選通模組的handlerEvent方法的一個實例用的示意圖。數位選通模組可以採用SimChannel的read方法,在特定計時時間裏對該通道的電壓實施讀取。而且,在循環時間裏的處理結束之後,SimEventMgr對象在要求通知下一循環時間的結束計時時間的事件的同時,還可以通過registerEvent方法對該事件實施登錄。
B.3.5 DUT模型的安裝
DUT模型除了不包括事件驅動之外,可以按照與測試
裝置模組相同的方式實施製作。因此,DUT模型的基本類層SimComponentStepped,可以安裝有initEvents方法、handlerEvent方法和I/O方法。為了能够在測試圖案運行期間對DUT模型的動作實施定義,還需要對函數run實施安裝。
圖26表示的是通過測試裝置實施驅動的八條配線,對再次輸入至測試裝置的DUT模型實施的類層定義。開發方可以依據該類層,對構建、getChannel方法和run方法實施安裝。
圖27為表示本DUT模型的run方法的一個實例用的示意圖。run方法具有開始時刻和結束時刻這兩個自變量。通過這些自變量,DUT模型可以依據由輸入端子處輸入的信號,由開始時刻至結束時刻間進入至內部狀態,並且可以依據DUT內部狀態的變化結果,實施資料輸出。輸入操作可以通過SimChannel對象進行,輸出操作可以相對SimChannel對象實施發送。在這兒,輸出可以在結束時刻後立刻進行。
run方法包含有對輸入端子實施掃描、對DUT的內部狀態實施更新、將資料輸出至DUT的輸出通道處等步驟。在這兒,即使對於在運行時間窗口之外仍存在有輸出信號的fall邊緣的場合,也可以根據需要通過set方法,將該fall邊緣寫入至輸出通道處。當呼叫到end方法時,需要使輸出信號處於fall狀態。採用這種構成形式,為了不使輸出信號的值產生變化,位於該通道相反側的組成部在到
達結束時刻之前,可以一直正確讀取出通道的電壓值。為了能够實現這一點,軟體框架可以在最後的end方法呼叫出之後,在比該end方法之前的時刻禁止向通道的寫入操作。
B.3.6離線的DLL介面
隨後,依據該軟體框架,對模組和DUT模型的DLL實施構建,對生成這種模型的介面用的函數,以及處理結束後清零用的函數實施導出。採用這種構成形式,可以對模擬測試裝置模組用的DLL和模擬DUT的DLL實施生成。
(補充說明C)系統匯流排存取程式庫的具體實例
C.1概要
圖28(a)、28(b)為表示實際環境6000和模擬環境6050中系統匯流排存取程式庫6014的位置分布用的示意圖。DUT100的實際環境6000和測試模擬裝置190用的模擬環境6050呈共用形式。
圖28(a)為表示實際環境6000(聯機環境)中系統匯流排存取程式庫6014的位置分布用的示意圖。軟體6010為可以在如圖1所示的站點控制裝置130上運行的軟體。軟體6010包含有由測試裝置10的測試實施控制用的程式獲取HLC(High Level Command)用的、對硬體6030實施存取指令生成的HLC處理部6012,包含依據存取指令進行通信處理用的通信程式庫和依據通信程式庫的指示對系統匯流排(在本實例中,為PCI匯流排)實施存取用
的匯流排存取程式庫的系統匯流排存取程式庫6014,以及依據系統匯流排存取程式庫6014的指示對系統匯流排實施控制用的PCI匯流排驅動部6016。
硬體6030包含有具有如圖1所示的站點控制裝置130的匯流排IF6032,以及匯流排開關140、同步模組150、同步連接模組160和/或測試模組170等等。與站點控制裝置130中的匯流排插槽部相連接的匯流排IF6032,可以將通過PCI匯流排驅動部6016給出的存取指令,通過匯流排開關140通知至同步模組150和/或測試模組170等等處,以便進行該存取處理。
圖28(b)為表示模擬環境6050(離線環境)中系統匯流排存取程式庫6014的位置分布用的示意圖。離線處理程式6060為可以在如圖1所示的站點控制裝置130或測試模擬裝置190上運行的軟體,從而使測試模擬裝置190具有作為站點控制模擬部230使用的功能。離線處理程式6060是在軟體6010中將對硬體6030的控制,取代為對測試裝置模擬處理器6080進行的控制用的變更處理程式。離線處理程式6060可以採用與軟體6010大體相同的HLC處理部6012和系統匯流排存取程式庫6014,從而可以對軟體6010的使用者提供出與軟體6010共用的使用者電位介面。
測試裝置模擬處理器6080為對測試裝置10實施模擬用的處理程式,包含有對匯流排開關140實施模擬用的系統匯流排模擬器6084,以及對同步模組150、同步連接模
組160和/或測試模組170實施模擬用的模組模擬器6086。系統匯流排模擬器6084具有使測試模擬裝置190作為匯流排開關模擬部240使用的功能。模組模擬器6086具有將測試模擬裝置190作為同步連接模組模擬部260和/或測試模組模擬部270使用的功能。下面在沒有明確限定時,“模組模擬部”為聯機環境中的同步模組150、同步連接模組160和測試模組170,離線環境中的同步模組模擬部250、同步連接模組模擬部260和測試模組模擬部270的統稱。
C.2模組控制通用函數
在本部分中,對使用控制在站點控制裝置130上運行的同步模組150、同步連接模組160和/或測試模組170用的模組驅動部時所具有的通用功能進行說明。在模組驅動部內,可以對使用該程式庫的各種模組內的寄存器和儲存器實施存取,以便可以對實施元件測定所需要的資料實施讀取/寫入操作。由本部分所說明的主要功能如下所述。
1、使用程式IO進行的匯流排存取操作
2、使用DMA功能進行的匯流排存取操作
3、中斷操作處理
4、程式庫/系統的控制
C.2.1使用程式IO進行的匯流排存取操作
系統匯流排存取,包括向連接在匯流排上的各模組的寄存器處實施MW(Machine Word)直接寫入的方式,以及向各模組處實施HLC(High Level Command)通知的方式這兩種。無論對於那種場合,均有Address和Data
在系統匯流排上流動。對於在各模組側使用Address對HLC實施識別的場合,可以在各模組側運行與其HLC相對應的處理。由站點CPU(站點控制裝置130)向各模組實施資料寫入的信號,可以與資料一起向與CPU相連接的各模組實施通知,從而可以由各模組側對該資料實施獲取。
在系統匯流排和各模組內配置有FIFO,對於由站點CPU向各模組實施資料通知的場合,可以通過等待各模組寫入操作結束的方式結束CPU的寫入動作(posted write)。將資料實際儲存在寄存器處之前的時間,會受到位於由CPU給出的目標寄存器間的FIFO占空狀態的影響。對於需要對全部模組實施信號可靠通知的場合,可以利用FIFO的刷新(flush)等待功能。對於使用各模組內的寄存器讀取的實施FIFO刷新的場合,還可以保證僅對作為讀取對象的模組的FIFO實施刷新。
離線的系統匯流排模擬器6084包含有FIFO。因此,對於不具有FIFO的模組模擬器6086實施PIO寫入的場合,還可以由將資料儲存在模組模擬器6086的寄存器處用的函數實施返回操作。
而且類似的,對於聯機場合,當將資料寫入至具有FIFO的模組模擬器6086時,可以在將資料儲存在模組模擬器6086的FIFO處之後,立刻結束寫入處理。
C.2.1.1使用程式IO的寫入操作
可以相對於模組的寄存器實施資料寫入操作。站點CPU可以在寫入資料到達模組之前,結束寫入動作(posted
write)。
.名稱:BCL_GBI_write
.形式:int BCL_GBI_write(unsigned int address,unsigned int data)
.自變量:address(計算機字位址),data(寫入資料)
.返回值:BCL_GBI_OK(正常結束),BCL_GBI_ERROR(出現錯誤)
C.2.1.2使用程式IO的讀取操作
可以相對於模組的寄存器實施資料的讀取操作。站點CPU可以在讀取出資料之前處於待機狀態。而且,位於由CPU給出的目標寄存器間的FIFO內的資料被刷新之前,作為對象的寄存器處於等待讀取狀態。
.名稱:BCL_GBI_read
.形式:int BCL_GBI_read(unsigned int address,unsigned int *data)
.自變量:address(計算機字位址),data(對資料讀取變量的指示)
.返回值:BCL_GBI_OK(正常結束),BCL_GBI_ERROR(出現錯誤)
C.2.1.3使用程式IO的組塊寫入操作
可以相對於模組的寄存器實施成組資料的寫入操作。資料格式可以通過對偶關係,對位址和資料實施指定。系統匯流排可以分幾次運行對寫入循環實施的指定。
對於需要對數任意位址實施資料寫入的場合,可以實
現比每次寫入BCL_GBI_write( )函數速度更快的操作。在這兒當已經對函數實施一次呼叫時,將不需要進行數次的排它處理。
.名稱:BCL_GBI_writeBlock
.形式:int BCL_GBI_writeBlock(unsigned int *address,unsigned int *data,unsigned int number)
.自變量:address(對位址儲存列的指示),data(對資料儲存列的指示),number(寫入的資料數目)
.返回值:BCL_GBI_OK(正常結束),BCL_GBI_ERROR(出現錯誤)
C.2.1.4使用程式IO的組塊讀取操作
可以相對於模組的寄存器實施成組資料的讀取操作。寄存器位址可以被指定為不連續的值。系統匯流排可以分幾次運行對讀取循環實施的指定。
對於需要對數任意位址實施資料讀取的場合,可以實現比每次讀取BCL_GBI_write( )函數速度更快的操作。在這兒當已經對函數實施一次呼叫時,將不需要進行數次的排它處理。
.名稱:BCL_GBI_readBlock
.形式:int BCL_GBI_readBlock(unsigned int *address,unsigned int *data,unsigned int number)
.自變量:address(對位址儲存列的指示),data(對資料讀取列的指示),number(讀取的資料數目)
.返回值:BCL_GBI_OK(正常結束),BCL_GBI
_ERROR(出現錯誤)
C.2.1.5使用程式IO的連續組塊寫入操作
可以相對於配置在模組等間隔位址處的寄存器實施資料列的寫入操作。可以由指定的開始位址處實施資料列的寫入操作,並且將每次資料寫入的位址叠加在偏置值上。偏置值可以被指定為由0至0x3ffffff間的值。系統匯流排可以分幾次運行對寫入循環實施的指定。
對於需要對數具有固定偏置值的位址實施資料寫入的場合,可以實現比寫入BCL_GBI_writeBlock( )函數速度更快的操作。在這兒可以通過使用軟體進行位址叠加運算的方式,减少PCI匯流排上流動的資料包數目。
.名稱:BCL_GBI_writeSeq
.形式:int BCL_GBI_writeSeq(unsigned int address,unsigned int *data,unsigned int number,unsigned int offset)
.自變量:address(計算機字位址),data(對資料儲存列的指示),number(寫入資料的數目),offset(對每次資料通知的位址實施叠加運算的偏置值)
.返回值:BCL_GBI_OK(正常結束),BCL_GBI_ERROR(出現錯誤)
C.2.1.6使用程式IO的連續組塊讀取操作
可以相對於配置在模組等間隔位址處的寄存器實施資料列的讀取操作。可以由指定的開始位址處實施資料列的讀取操作,並且將每次資料讀取的位址叠加在偏置值上。
偏置值可以被指定為由0至0x3ffffff間的值。系統匯流排可以分幾次運行對讀取循環實施的指定。
對於需要對數具有固定偏置值的位址實施資料讀取的場合,可以實現比讀取BCL_GBI_readBlock( )函數速度更快的操作。在這兒可以通過使用軟體進行位址叠加運算的方式,减少PCI匯流排上流動的資料包數目。
.名稱:BCL_GBI_readSeq
.形式:int BCL_GBI_readSeq(unsigned int address,unsigned int *data,unsigned int number,unsigned int offset)
.自變量:address(計算機字位址),data(對資料讀取列的指示),number(讀取資料的數目),offset(對每次資料通知的位址實施叠加運算的偏置值)
.返回值:BCL_GBI_OK(正常結束),BCL_GBI_ERROR(出現錯誤)
C.2.2使用DMA功能進行的匯流排存取操作
使用DMA的資料通知,可以準備出如下所述的同步/非同步的寫入/讀取這四種函數。而且,可以利用由此對突髮式(burst)DMA/單道式(single)DMA實施選擇。
(1)同步/非同步DMA
對於為同步DMA的場合,函數可以在等待DMA結束時結束函數。如果在等待DMA結束時結束函數,通知資料會殘留在系統匯流排IF和模組內的FIFO處。
對於為非同步DMA的場合,函數可以不在等待DMA
結束時結束函數。因此在DMA結束之前,需要在使用者側保證資料區域的寫入循環。對於非同步DMA的通知未結束,需要進一步利用DMA運行函數的場合,可以在前一DMA通知結束之前使函數處於等待狀態。還可以製作出通知ID,作為等待非同步DMA處理結束用的識別信息。這種通知ID可以是由32比特符號構成的資料,對於通知DMA的次數超過32比特的場合,可以返回至0再次加以利用。
(2)突髮式/單道式DMA
突髮式DMA的通知,可以通過系統匯流排上突發專用資料包實施資料通知。這種通知可以將一個位址和N個(最大為64個)資料構成一組資料包,在指定的資料結束之前對資料包實施重復通知。因此,這種通知可以是高速通知。
而且,在實施DMA通知時,還可以對各種模組側的位址增加值實施指定。這種增加值可以在對第二組以後的資料包實施通知時,利用資料包的前側位址實施計算。換句話說就是,有“(資料包位址)=((指定的增加值)*(前一次資料包中的資料個數))+(前一次資料包的前側位址)”。
可以實施突髮式通知的寄存器與模組相關,所以需要對是否為可利用的寄存器實施確認。
單道式DMA的通知,與在系統匯流排上的程式IO相類似,可以通過設置位址和資料的方式實施通知。因此,
通知速度會比突髮式DMA低,然而可以相對某個寄存器實施通知。在實施DMA通知時,還可以對系統匯流排側的位址增加值實施指定。這種增加值可以在每次實施尋址時,將增加值叠加在位址處。
對於為離線的場合,即使指定為突髮式通知,內部也可以按照實施單道式通知的形式構造。對於這種場合,也將可以向不支持突髮式通知的寄存器實施通知。然而,當在聯機狀態下利用這種方式時,仍需要避免相對硬體不支持突髮式通知的寄存器實施通知。而且,對於離線的同步/非同步DMA可以與聯機狀態相類似。
C.2.2.1使用DMA功能的同步寫入操作
可以利用DMA,將配置在站點CPU的儲存器上的資料通知至各模組處。這種函數可以通過同步寫入操作,對突髮式/單道式實施指定。
.名稱:BCL_GBI_writeSyncDMA
.形式:int BCL_GBI_writeSyncDMA(unsigned int address,unsigned int *data,unsigned int number,unsigned int offset,unsigned int mode)
.自變量:address(計算機字位址),data(對資料儲存列的指示),number(寫入資料的數目),offset(對每次資料通知的位址實施叠加運算的偏置值),mode(Burst/Single的動作模式)
.返回值:BCL_GBI_OK(正常結束),BCL_GBI_ERROR(出現錯誤)
C.2.2.2使用DMA功能的同步讀取操作
可以利用DMA,由模組內的寄存器處將資料讀取至站點CPU的儲存器上。這種函數可以通過同步讀取操作,對突髮式/單道式實施指定。
.名稱:BCL_GBI_readSyncDMA
.形式:int BCL_GBI_readSyncDMA(unsigned int address,unsigned int *data,unsigned int number,unsigned int offset,unsigned int mode)
.自變量:address(計算機字位址),data(對資料r讀取列的指示),number(讀取資料的數目),offset(對每次資料通知的位址實施叠加運算的偏置值),mode(Burst/Single的動作模式)
.返回值:BCL_GBI_OK(正常結束),BCL_GBI_ERROR(出現錯誤)
C.2.2.3使用DMA功能的非同步寫入操作
可以利用DMA,將配置在站點CPU的儲存器上的資料通知至各模組處。這種函數可以通過非同步寫入操作,對突髮式/單道式實施指定。
.名稱:BCL_GBI_writeAsyncDMA
.形式:int BCL_GBI_writeAsyncDMA(unsigned int address,unsigned int *data,unsigned int number,unsigned int offset,unsigned int mode,unsigned int *transferID)
.自變量:address(計算機字位址),data(對資料儲
存列的指示),number(寫入資料的數目),offset(對每次資料通知的位址實施叠加運算的偏置值),mode(Burst/Single的動作模式),transferID(對通知結束等待ID的指示)
.返回值:BCL_GBI_OK(正常結束),BCL_GBI_ERROR(出現錯誤)
C.2.2.4使用DMA功能的非同步讀取操作
可以利用DMA,由模組內的寄存器處將資料讀取至站點CPU的儲存器上。這種函數可以通過非同步讀取操作,對突髮式/單道式實施指定。
.名稱:BCL_GBI_readAsyncDMA
.形式:int BCL_GBI_readAsyncDMA(unsigned int address,unsigned int *data,unsigned int number,unsigned int offset,unsigned int mode,unsigned int *transferID)
.自變量:address(計算機字位址),data(對資料讀取列的指示),number(讀取資料的數目),offset(對每次資料通知的位址實施叠加運算的偏置值),mode(Burst/Single的動作模式),transferID(對通知結束等待ID的指示)
.返回值:BCL_GBI_OK(正常結束),BCL_GBI_ERROR(出現錯誤)
C.2.2.5對非同步DMA通知的結束等待操作
可以利用DMA,等待非同步通知的通知結束。這種函
數對於DMA已經結束的場合或已經經過指定時間的場合,可以實施函數結束操作。時間的指定範圍,可以採用分解能力為1ms的32比特符號的計時時間值,即可以為0~(INT_MAX/1000)。對於對該範圍之外實施指定的場合,可以類似的對BCL_GBI_INFINITE實施指定。
而且,對於transferID由錯誤值實施指定的場合,可以立刻返回BCL_GBI_OK,結束這一函數的運行。
.名稱:BCL_GBI_waitDMA
.形式:int BCL_GBI_waitDMA(unsigned int transferID,unsigned int timeOut)
.自變量:、transferID(在非同步模式通知時返回的通知結束等待ID),timeOut(等待時間。等待直至BCL_GBI_INFINITE:DMA的結束)
.返回值:BCL_GBI_OK(DMA為正常的結束),BCL_GBI_ERROR(DMA出現錯誤),BCL_GBI_TIMEOUT(計時時間結束)
C.2.2.6對非同步DMA實施通知的操作
可以對非同步DMA通知的當前狀態實施信號通知。對於transferID被錯誤指定的場合,可以按照與DMA結束相同的狀態實施信號通知。
.名稱:BCL_GBI_getConditionDMA
.形式:int BCL_GBI_getConditionDMA(unsigned int transferID)
.自變量:transferID(在非同步模式通知時返回的通知
結束等待ID)
.返回值:BCL_GBI_OK(DMA為正常的結束),BCL_GBI_ERROR(DMA出現錯誤),BCL_GBI_BUSY(DMA運行過程中)
C.2.3中斷操作處理
通過系統匯流排存取程式庫,可以獲得進行中斷基本操作用的功能。可以利用系統匯流排存取程式庫實施操作的中斷,具有下述的四種類型。
1、Bus錯誤產生的中斷(僅僅為聯機狀態)
可以對最大為65個的中斷處理程式實施登錄。
2、Bus計時時間結束產生的中斷
可以對最大為65個的中斷處理程式實施登錄。
3、Sync錯誤產生的中斷(僅僅為聯機狀態)
可以對最大為65個的中斷處理程式實施登錄。
4、由各種模組發生的中斷
可以利用各匯流排序號,對最大為2個的中斷處理程式實施登錄。
如上所述的中斷,可以通過中斷專用線程(thread)實現。
當出現系統匯流排I/F時,Bus錯誤、Bus計時時間結束、Sync錯誤產生的中斷,可以在中斷專用線程的內部對中斷實施截止,隨後依次實行分別登錄的對象中斷處理程式。在作為對象的中斷處理程式結束之後,中斷專用線程對中斷的原因實施清零處理,由內部使中斷恢復正常。
對中斷信號的接收除了對中斷專用線程內實施恢復正常/截止操作之外,還可以通過程式庫函數對恢復正常/截止操作進行控制。由各模組產生的中斷,可以在內部由中斷專用線程對中斷實施截止,從而可以相對各模組實施中斷狀態的閂鎖。隨後,可以按照與產生中斷的匯流排序號相對應的方式,依次實行中斷處理程式。在作為對象的中斷處理程式結束之後,中斷專用線程對與該模組相對應的中斷原因實施清零處理,隨後解除中斷閂鎖,通過內部使中斷恢復正常。
對中斷信號的接收除了對中斷專用線程內實施恢復正常/截止操作之外,還可以通過程式庫函數對恢復正常/截止操作進行控制。可以分別通過系統匯流排I/F訪問口和各種模組,對中斷的禁止/許可操作實施控制。
由系統匯流排I/F訪問口側實施的禁止/許可操作,可以通過單個模組對中斷實施恢復正常/截止操作。由模組側實施的禁止/許可操作,可以通過模組側的中斷發生元對中斷的發生實施控制。在閂鎖期間,可以禁止在模組內出現新的中斷處理程式,進而可以禁止中斷關係出現狀態變化。在解除閂鎖之後,可以由模組側實施中斷操作處理。
C.2.3.1對模組中斷處理程式的登錄
當由模組側產生中斷時,可以對中斷處理程式函數實施登錄。對於所登錄的函數為中斷發生的場合,可以通過中斷處理程式專用的線程實施運行。中斷處理程式可以同時對匯流排序號實施登錄,而且可以在出現中斷的模組序
號和所登錄的匯流排序號相等時,啟動中斷處理程式。
而且對於中斷處理程式,可以對登錄時設定的值同時實施返回。中斷處理程式可以在每個匯流排序號處登錄兩個。匯流排序號可以指定為由1至64間的數位。登錄成功時的返回值可以返回的是按鍵序號。當使用這種按鍵序號實施登錄時,還可以對該按鍵序號的中斷處理程式實施再次登錄和删除處理。當對為0的按鍵序號實施登錄時,可以將中斷處理程式設定在空著的按鍵序號處。對於沒有空著的按鍵序號的場合,將返回表示出現錯誤的返回值-1。對於實施的中斷處理程式為兩個登錄的場合,可以由某個按鍵序號開始依次進行。
對於中斷處理程式的删除處理,可以將回調(callback)函數的位址作為BCL_GBI_IGNORE_MODULE_HANDLER實施登錄。中斷專用線程可以運行BCL_GBI_IGNORE_MODULE_HANDLER的中斷處理程式。對於每個匯流排序號處有兩個中斷處理程式,而且兩個均為BCL_GBI_IGNORE_MODULE_HANDLER的場合,可以使為該匯流排序號的中斷處理程式返回至初始狀態(對位址程式庫內的標準中斷處理程式實施設定)。
.名稱:BCL_GBI_addInterruptHandler
.形式:int BCL_GBI_addInterruptHandler(unsigned int BusNo,int KeyNo,BCL_GBI_MODULE_HANDLER handler,unsigned int arg)
.回調函數:void InterruptRoutine(unsigned int
BusNo,unsigned int Factor,unsigned int arg)
.自變量:BusNo(匯流排序號),KeyNo(按鍵序號),handler(回調函數的位址),arg(向中斷處理程式的過渡值),Factor(中斷原因(與各模組相關))
.返回值:中斷處理程式登錄的按鍵序號(對於為-1的場合,表示為登錄失敗的“不正確的匯流排序號或按鍵序號”)
C.2.3.2對匯流排錯誤中斷處理程式的登錄
對於系統匯流排發生錯誤的場合,可以對錯誤處理函數實施登錄。對於系統匯流排發生錯誤的場合,中斷處理程式可以運行所登錄的函數。而且對於系統匯流排發生錯誤的場合,可以中斷專用線程對中斷處理程式實施清零處理。還可以在中斷處理程式中實施清零處理。
由於Bus錯誤產生的中斷處理程式的登錄數目,可以一直達65個。登錄成功時的返回值可以返回的是按鍵序號。當使用這種按鍵序號實施登錄時,還可以對該按鍵序號的中斷處理程式實施再次登錄和删除處理。當對為0的按鍵序號實施登錄時,可以將中斷處理程式設定在空著的按鍵序號處。對於沒有空著的按鍵序號的場合,將返回給出返回值-1。對於中斷處理程式的删除處理,可以將回調函數的位址作為BCL_GBI_IGNORE_BUSERROR_HANDLER實施登錄。
中斷專用線程可以運行BCL_GBI_IGNORE_BUSERROR_HANDLER的中斷處理程式。對於65個中
斷處理程式均為BCL_GBI_IGNORE_BUSERROR_HANDLER的場合,可以返回至初始狀態(對位址程式庫內的標準中斷處理程式實施設定)。Bus錯誤可能由系統匯流排上的通信錯誤和硬體故障等產生。
而且,由於在離線狀態下不會出現Bus錯誤,所以本函數登錄的是驅動部分的動作。
.名稱:BCL_GBI_addBusErrorInterruptHandler
.形式:int BCL_GBI_addBusErrorInterruptHandler(int KeyNo,BCL_GBI_BUSERROR_HANDLERhandler,unsigned int arg)
.回調函數:void BusErrorInterruptRoutine(unsigned int arg)
.自變量:KeyNo(按鍵序號),handler(回調函數的位址),arg(向中斷處理程式的過渡值)
.返回值:中斷處理程式登錄的按鍵序號(對於為-1的場合,表示為登錄失敗的“不正確的匯流排序號或按鍵序號”)
C.2.3.3對匯流排計時時間結束中斷處理程式的登錄
對於系統匯流排出現計時時間結束的場合,可以對錯誤處理函數實施登錄。對於系統匯流排出現計時時間結束的場合,中斷處理程式可以運行所登錄的函數。而且對於系統匯流排出現計時時間結束的場合,還可以通過中斷專用線程對中斷操作實施清零處理。
可以在中斷處理程式中實施清零處理。由於Bus計時
時間結束產生的中斷處理程式的登錄數目,可以一直達65個。登錄成功時的返回值可以返回的是按鍵序號。當使用這種按鍵序號實施登錄時,還可以對該按鍵序號的中斷處理程式實施再次登錄和删除處理。當對為0的按鍵序號實施登錄時,可以將中斷處理程式設定在空著的按鍵序號處。對於沒有空著的按鍵序號的場合,將返回給出返回值-1。對於中斷處理程式的删除處理,可以將回調函數的位址作為BCL_GBI_IGNORE_TIMEOUT_HANDLER實施登錄。
中斷專用線程可以運行BCL_GBI_IGNORE_TIMEOUT_HANDLER的中斷處理程式。對於65個中斷處理程式均為BCL_GBI_IGNORE_TIMEOUT_HANDLER的場合,可以返回至初始狀態(對位址程式庫內的標準中斷處理程式實施設定)。Bus計時時間結束可能在纜線拔起狀態下實施寫入操作時,和在沒有接收到信號的場合實施寫入操作時發生。而且,硬體故障等等也可能是出現這種現象的原因。
.名稱:BCL_GBI_addTimeoutInterruptHandler
.形式:int BCL_GBI_addTimeoutInterruptHandler(int KeyNo,BCL_GBI_TIMEOUT_HANDLERhandler,unsigned int arg)
.回調函數:void TimeoutInterruptRoutine(unsigned int address,unsigned int Factor,unsigned int arg)
.自變量:KeyNo(按鍵序號),handler(回調函數的
位址),address(產生計時時間結束的計算機字位址),Factor(產生計時時間結束的原因“BCL_GBI_FACTOR_MODULE:模組的讀取操作,BCL_GBI_FACTOR_CONFIG:配置部分的讀取操作,BCL_GBI_FACTOR_WRITE:全部的寫入操作”),arg(向中斷處理程式的過渡值)
.返回值:中斷處理程式登錄的按鍵序號(對於為-1的場合,表示為登錄失敗的“不正確的匯流排序號或按鍵序號”)
C.2.3.4對Sync錯誤產生的中斷處理程式的登錄
對於系統匯流排發生Sync錯誤的場合,可以對錯誤處理函數實施登錄。對於系統匯流排發生Sync錯誤的場合,中斷處理程式可以運行所登錄的函數。而且對於系統匯流排發生Sync錯誤的場合,還可以中斷專用線程對中斷操作實施清零處理。還可以在中斷處理程式中實施清零處理。
由於Sync錯誤產生的中斷處理程式的登錄數目,可以一直高達65個。登錄成功時的返回值可以返回的是按鍵序號。當使用這種按鍵序號實施登錄時,還可以對該按鍵序號的中斷處理程式實施再次登錄和删除處理。當對為0的按鍵序號實施登錄時,可以將中斷處理程式設定在空著的按鍵序號處。對於沒有空著的按鍵序號的場合,將返回給出返回值-1。
對於中斷處理程式的删除處理,可以將回調函數的位址作為BCL_GBI_IGNORE_SYNCERROR_
HANDLER實施登錄。中斷專用線程可以運行BCL_GBI_IGNORE_SYNCERROR_HANDLER的中斷處理程式。對於65個中斷處理程式均為BCL_GBI_IGNORE_SYNCERROR_HANDLER的場合,可以返回至初始狀態(對位址程式庫內的標準中斷處理程式實施設定)。Sync錯誤可能由軟體設定缺陷和硬體設計不良等產生。而且,硬體故障等等也可能是出現這種現象的原因。
而且,由於在離線狀態下不會出現由Bus產生的Sync錯誤,所以本函數登錄的是驅動部的動作。
.名稱:BCL_GBI_addSyncErrorInterruptHandler
.形式:int BCL_GBI_addSyncErrorInterruptHandler(int KeyNo,BCL_GBI_SYNCERROR_HANDLER handler,unsigned int arg)
.回調函數:void SyncErrorInterruptRoutine(unsigned int arg)
.自變量:KeyNo(按鍵序號),handler(回調函數的位址),arg(向中斷處理程式的過渡值)
.返回值:中斷處理程式登錄的按鍵序號(對於為-1的場合,表示為登錄失敗的“不正確的匯流排序號或按鍵序號”)
C.2.4程式庫/系統匯流排的控制
C.2.4.1 FIFO的刷新等待操作
在與站點CPU相連接的系統匯流排處連接著的全部模組,均可以實施FIFO的刷新等待操作。FIFO位於系統匯
流排I/F訪問口之內和模組之內。當這一函數結束時,意味著該函數運行前位於FIFO之內的資料,寫入在全部模組處。在這種函數的運行過程中,CPU相對PCI發出讀取循環時間用的、直至FIFO刷新之前的匯流排被硬性閂鎖。因此,這時DMA通知和中斷信號接收會出現延遲。而且,通過運行這一函數還會出現計時時間結束現象。
對於為離線的場合,還存在有系統匯流排模擬的FIFO。而且,模組內的FIFO還與銷售方相關。
.名稱:BCL_GBI_waitFlushFIFO
.形式:int BCL_GBI_waitFlushFIFO(void)
.自變量:無
.返回值:BCL_GBI_OK(刷新結束),BCL_GBI_ERROR(出現錯誤)
C.2.4.2模組的復位操作
對於與站點CPU相連接的模組,可以實施復位操作。利用這種函數可以進行下述的處理操作。
1、向系統匯流排發送出匯流排復位用資料包。
2、向系統匯流排發送出中斷清零用資料包。
3、向系統匯流排發送出中斷卸載資料包。
而且,復位動作和相應的時間與各模組的構成形式相關。
.名稱:BCL_GBI_resetModule
.形式:int BCL_GBI_resetModule(void)
.自變量:無
.返回值:BCL_GBI_OK(正常結束),BCL_GBI_ERROR(出現錯誤)
C.2.4.3程式庫的初始化操作
可以對系統匯流排存取程式庫實施初始化操作。對於利用系統匯流排存取程式庫的場合,需要在最初進行這種初始化處理。而且,利用這種函數可以進行下述的處理操作。
1、位址程式庫變量的初始化操作
2、實施中斷處理程式的線程啟動操作
而且,系統匯流排I/F上的中斷可以處於禁止狀態。
對於為離線的場合,可以使用這種函數進行系統匯流排模擬部的組塊間通信的準備作業。當系統匯流排模擬部間不能在30秒內建立連接,可以使其處於計時時間結束狀態。
.名稱:BCL_GBI_init
.形式:int BCL_GBI_init(unsigned int siteNo,int mode)
.自變量:siteNo(站點序號“1~8”),mode(對聯機/離線狀態的指定。BCL_GBI_ONLINE:聯機,BCL_GBI_OFFLINE:離線)
.返回值:BCL_GBI_OK(正常結束),BCL_GBI_ERROR(站點序號位於規定範圍之外),BCL_GBI_TIMEOUT(在離線狀態下30秒內未能與系統匯流排間建立連接)
C.2.4.2程式庫的開放操作
用於對系統匯流排存取程式庫實施使用結束的處理操作。
.名稱:BCL_GBI_finish
.形式:int BCL_GBI_finish(unsigned int siteNo)
.自變量:siteNo(站點序號“1~8”)
.返回值:BCL_GBI_OK(正常結束),BCL_GBI_ERROR(站點序號位於規定範圍之外)
C.2.4.5對聯機/離線的識別操作(BCL_GBI_isOnline)
用於對當前動作中的系統匯流排存取程式庫,是處於聯機動作狀態還是處於離線動作狀態進行識別。
.名稱:
.形式:int BCL_GBI_isOnline(void)
.自變量:無
.返回值:BCL_GBI_ONLINE(聯機),BCL_GBI_OFFLINE(離線)
C.2.4.6對與GBSC間是否進行通信實施的確認操作
用於對系統匯流排I/F與GBSC(系統控制裝置110)間是否進行通信實施確認。採用這種構成形式,可以對GBSC的電源接入實施確認。
.形式:BCL_GBI_getConnected(unsigned int *connect)
.自變量:connect(對儲存是否進行通信的結果用的變量的指示)
.返回值:BCL_GBI_OK(正常結束),BCL_GBI_ERROR(出現錯誤)
C.2.4.7詳細錯誤信息的獲取操作
系統匯流排存取程式庫在返回有BCL_GBI_ERROR時,可以對詳細錯誤信息實施返回。
.名稱:BCL_GBI_getLastError
.形式:unsigned int BCL_GBI_getLastError
.自變量:無
.返回值:返回無符號的32比特錯誤信息。
bit31:確定錯誤編碼種類用的值
0:Windowe的錯誤編碼(參考System Error Codes)
1:位址程式庫固有的錯誤編碼
bit30-24:確定發生錯誤的函數內的位置用的值
bit23-16:確定發生錯誤的位址程式庫函數用的值
bit15-0:錯誤編碼
當bit31取為0時:為getLastError( )的下位16bit值
當bit31取為1時:為位址程式庫的內部錯誤值
C.2.4.8詳細錯誤信息歷史的獲取操作
直至目前一直使用著的系統匯流排存取程式庫在返回有BCL_GBI_ERROR時,可以對最多為16次的過去詳細錯誤信息實施返回。
.形式:unsigned int BCL_GBI_getPreviousErrors(unsigned int *error,unsigned int size)
.名稱:BCL_GBI_getPreviousErrors
.自變量:error(對儲存錯誤信息用的列變量的指示。錯誤信息的格式與BCL_GBI_getLastError( )相同),size(儲存錯誤信息用的列變量的尺寸)
.返回值:返回所儲存的錯誤信息數目。
C.3計時時間函數
本部分對利用系統匯流排I/F訪問口上的計時時間硬體的函數進行說明。安裝在系統匯流排I/F訪問口上的硬體的計時時間分解能力為1(us)。
C.3.1對已經過時間的讀取
C.3.1.1對時間的讀取
可以對系統匯流排存取程式庫由實施初始化時起的經過時間按秒(s)實施讀取。
〈限制事項〉
分解能力需要為1(us),然而對於對double型實施的變換、讀取,需要對double的有效數位*1(us)以上的值實施讀取的場合,是一種不能獲得1(us)分解能力的場合。當double的有效數位為十進制的15數位時,理論上講需要在系統匯流排存取程式庫由實施初始化時起經過大約31年的時間,才能够獲得為1(us)的分解能力。
硬體計數組件是按照64比特實施動作的,所以理論上講需要在系統匯流排存取程式庫由實施初始化時起經過大
約58萬年的時間,才能够返回至0。對於程式需要按照一定時間間隔實施讀取的場合,差分(經過時間)並不能由CPU的負載狀態、PCI匯流排的負載狀態和FIFO狀態構成為一定值。
〈離線狀態〉
在離線狀態下,可以通過離線處理程式,對站點CPU由啟動時起的經過時間按秒(s)實施讀取。
.名稱:BCL_TMR_readTime
.形式:int BCL_TMR_readTime(double*time)
.自變量:time(系統匯流排存取程式庫由實施初始化時起的經過時間(s))
.返回值:BCL_TMR_OK(正常結束)
C.3.1.2對時間計數組件值的讀取
可以利用計數組件值,對系統匯流排存取程式庫由實施初始化時起的經過時間實施讀取。計數組件值每經過1(us)增加數量1。
〈限制事項〉
硬體計數組件是按照64比特實施動作的,所以理論上講需要在系統匯流排存取程式庫由實施初始化時起經過大約58萬年的時間,才能够返回至0。對於程式需要按照一定時間間隔實施讀取的場合,差分(經過時間)並不能由CPU的負載狀態、PCI匯流排的負載狀態和FIFO狀態構成為一定值。
在離線狀態下,可以通過離線處理程式,對站點CPU
由啟動時起的經過時間按計數組件值實施讀取。
e名稱:BCL_TMR_readCount
.形式:int BCL_TMR_readCount(unsigned_int64*count)
.自變量:count(系統匯流排存取程式庫由實施初始化時起的計數組件值為(1(us)/1的計數組件值))
.返回值:BCL_TMR_OK(正常結束)
C.3.2時間等待相關函數
C.3.2.1時間等待
在經過指定時間之後,可以使函數實施返回。對於等待時間(time)被指定為小於1(us)的值的場合,可以直接實施函數返回操作。當經過時間比通過CPU負載狀態指定的時間更長時,實施返回操作。
在離線狀態下,可以按照捨弃小於1(us)的值的方式實施時間等待操作。換句話說就是,對於等待時間(time)被指定為小於1(us)的值的場合,直接實施函數返回操作。而且,最大的等待時間為4294967.296(s)(大約為49天)。
.名稱:BCL_TMR_wait
.形式:int BCL_TMR_wait(double time)
.自變量:time(以秒(s)為單位指定的等待時間)
.返回值:BCL_TMR_OK(正常結束),BCL_TMR_ERROR(等待被删除)
C.3.2.2時間等待函數的删除操作
可以在當前運行過程中,對全部BCL_TMR_wait函數實施删除操作。對於按數個線程動作的場合,可以對全部BCL_TMR_wait函數實施删除操作。
.名稱:BCL_TMR_cancel
.形式:int BCL_TMR_cancel(void)
.自變量:無
.返回值:BCL_TMR_OK(正常結束)
C.4配置/診斷專用函數
本部分對硬體配置和硬體診斷所使用的函數進行說明。對於利用於硬體配置和硬體診斷之外的場合,還可以通過各種模組的資料通知和介面處理實施正確的處理。當對系統匯流排I/F訪問口、Bus Switch、各種模組等等的硬體構造已經熟知時,可以容易地利用這種硬體配置和硬體診斷函數。
對於程式庫運行出現運行時間錯誤,不能利用匯流排配置函數和硬體診斷函數的場合,也可以保障實施與該程式庫和系統匯流排I/F訪問口的元件驅動介面相關的動作。
C.4.1配置控制(特殊函數)
由本部分說明的函數,是通過系統匯流排I/F訪問口和各種模組的配置實施利用的函數。當出現誤操作時,將不能實施各種模組的資料通知操作,所以需要在充分瞭解硬體和軟體的基礎上對其加以利用。
C.4.1.1匯流排配置寫入操作
可以對系統匯流排I/F和各種模組的配置驅動部實施
資料寫入操作。而且,可以在將配置資料儲存在系統匯流排I/F和各種模組處之後,結束該函數的運行。
.名稱:BCL_GBI_writeBusConfig
.形式:int BCL_GBI_writeBusConfig(unsigned_int address,unsigned_int config)
.自變量:address(配置資料的位址),config(寫入的配置資料)
.返回值:BCL_GBI_OK(正常結束),BCL_GBI_ERROR(出現錯誤)
C.4.1.2匯流排配置讀取操作
可以由系統匯流排I/F和各種模組的配置寄存器處對資料實施讀取操作。
.名稱:BCL_GBI_readBusConfig
.形式:int BCL_GBI_readBusConfig(unsigned_int address,unsigned_int *config)
.自變量:address(配置資料的位址),config(對儲存配置資料的變量的指示)
.返回值:BCL_GBI_OK(正常結束),BCL_GBI_ERROR(出現錯誤)
C.4.1.3匯流排開關配置的設定結束操作
在聯機狀態下,可以在需要時實施運行。
在離線狀態下,可以在匯流排開關的配置寫入操作結束之後,通過對該函數的運行,對離線狀態的連接實施切換。
.名稱:BCL_GBI_decideBusMatrix
.形式:int BCL_GBI_decideBusMatrix(void)
.自變量:無
.返回值:BCL_GBI_OK(正常結束),BCL_GBI_ERROR(出現錯誤)
C.4.2中斷控制(特殊函數)
由本部分說明的函數,是通過系統匯流排I/F訪問口和各種模組的配置實施利用的函數。為了對系統匯流排I/F訪問口的中斷狀態實施直接控制,而出現誤操作時,可以通過系統匯流排I/F訪問口的元件驅動和相應程式庫,對中斷正確地實施處理。
C.4.2.1 BusI/F訪問口的中斷處理程式
各種中斷信號均可以通過系統匯流排I/F訪問口實施恢復操作。中斷信號可以分成各種模組產生的中斷、Bus錯誤產生的中斷、Bus計時時間結束產生的中斷和Sync錯誤產生的中斷這四種類型。這些信號可以按照下述方式定義的比特信息實施設定。對於指定有數個中斷信號的場合,可以將其作為邏輯和實施設定。這種函數可以對系統匯流排I/F處的中斷實施恢復的狀態實施確認之後,結束操作。
.名稱:BCL_GBI_interruptEnable
.形式:int BCL_GBI_interruptEnable(unsigned int status)
.自變量:status(對中斷信號的指定。BCL_GBI_INT
_MODULE:模組產生的中斷,BCL_GBI_INT_BUSERROR:Bus錯誤產生的中斷,BCL_GBI_INT_TIMEOUT:Bus計時時間結束產生的中斷,BCL_GBI_INT_SYNCERROR:Sync錯誤產生的中斷)
.返回值:BCL_GBI_OK(正常結束),BCL_GBI_ERROR(出現錯誤)
C.4.2.2 BusI/F訪問口的中斷禁止操作
各種中斷信號均可以通過系統匯流排I/F訪問口實施禁止操作。中斷信號可以分成各種模組產生的中斷、Bus錯誤產生的中斷、Bus計時時間結束產生的中斷和Sync錯誤產生的中斷這四種類型。這些信號可以按照下述方式定義的比特信息實施設定。對於指定有數個中斷信號的場合,可以將其作為邏輯和實施設定。這種函數可以對系統匯流排I/F處的中斷實施恢復的狀態實施確認之後,結束操作。
.名稱:BCL_GBI_interruptDisable
.形式:int BCL_GBI_interruptDisable(unsigned int status)
.自變量:status(對中斷信號的指定。BCL_GBI_INT_MODULE:模組產生的中斷,BCL_GBI_INT_BUSERROR:Bus錯誤產生的中斷,BCL_GBI_INT_TIMEOUT:Bus計時時間結束產生的中斷,BCL_GBI_INT_SYNCERROR:Sync錯誤產生的中斷)
.返回值:BCL_GBI_OK(正常結束),BCL_GBI
_ERROR(出現錯誤)
C.4.2.3 BusI/F訪問口的中斷讀取操作
各種中斷信號均可以通過系統匯流排I/F訪問口實施讀取操作。中斷信號可以分成各種模組產生的中斷、Bus錯誤產生的中斷、Bus計時時間結束產生的中斷和Sync錯誤產生的中斷這四種類型。這些信號可以按照下述方式定義的比特信息實施讀取。
.名稱:BCL_GBI_interruptRead
.形式:int BCL_GBI_interruptRead(unsigned int *status)
.自變量:status(對讀取中斷信號的變量的指示。BCL_GBI_INT_MODULE:模組產生的中斷,BCL_GBI_INT_BUSERROR:Bus錯誤產生的中斷,BCL_GBI_INT_TIMEOUT:Bus計時時間結束產生的中斷,BCL_GBI_INT_SYNCERROR:Sync錯誤產生的中斷)
.返回值:BCL_GBI_OK(正常結束),BCL_GBI_ERROR(出現錯誤)
C.4.2.4 BusI/F訪問口的中斷清零操作
各種中斷信號均可以通過系統匯流排I/F訪問口實施清零操作。中斷信號可以分成各種模組產生的中斷、Bus錯誤產生的中斷、Bus計時時間結束產生的中斷和Sync錯誤產生的中斷這四種類型。這些信號可以按照下述方式定義的比特信息實施設定。對於指定有數個中斷信號的場合,可以將其作為邏輯和實施設定。
對於僅指定由模組產生的中斷(BCL_GBI_INT_MODULE)的場合,當在運行該函數之前對給模組的FIFO實施刷新操作時,可以對系統匯流排I/F處的中斷信號實施清零,並且可以在對系統匯流排I/F處的中斷實施恢復的狀態實施確認之後,結束操作。
.名稱:BCL_GBI_interruptClear
.形式:int BCL_GBI_interruptClear(unsigned int status)
.自變量:status(對中斷信號的指定。BCL_GBI_INT_MODULE:模組產生的中斷,BCL_GBI_INT_BUSERROR:Bus錯誤產生的中斷,BCL_GBI_INT_TIMEOUT:Bus計時時間結束產生的中斷,BCL_GBI_INT_SYNCERROR:Sync錯誤產生的中斷)
.返回值:BCL_GBI_OK(正常結束),BCL_GBI_ERROR(出現錯誤)
C.4.2.5對Sync的模組數對象設定操作
可以通過系統匯流排I/F訪問口,對連接在與站點CPU相連接的系統匯流排上的全部模組數目實施設定。通過實施這種設定方式,可以對FIFO實施Sync的模組數目確定。
在離線狀態下,與系統匯流排模擬器的FIFO相關。而且,模組內設置的FIFO也與銷售方相關。
.名稱:BCL_GBI_setSyncCount
.形式:int BCL_GBI_setSyncCount(unsigned int number)
.自變量:number(實施Sync的模組數目)
.返回值:BCL_GBI_OK(正常結束),BCL_GBI_ERROR(出現錯誤)
C.4.2.6對中斷設定狀態的救援操作
可以對系統匯流排I/F訪問口上的中斷信號設定狀態(禁止/恢復),以及由模組產生中斷信號的設定狀態(閂鎖/解除閂鎖)實施救援。這種函數可以在進行諸如診斷等等的中斷處理程式之前,作為對當前設定狀態實施救援的對象使用。救援的內容為通過BCL_GBI_restoreInterruptCondition( )函數實施恢復。對於這種函數運行兩次以上的場合,可以對以前的救援設定狀態實施取消操作,僅使最後的救援設定狀態處於有效狀態。
在離線狀態下呈無效功能狀態,所以可以在需要時運行該函數。
.名稱:BCL_GBI_saveInterruptCondition
.形式:int BCL_GBI_saveInterruptCondition(void)
.自變量:無
.返回值:BCL_GBI_OK(正常結束),BCL_GBI_ERROR(出現錯誤)
C.4.2.7對中斷設定狀態的恢復操作
可以通過BCL_GBI_restoreInterruptCondition( )函數,對救援後的系統匯流排I/F訪問口上的中斷信號設定狀態(禁止/恢復),以及由模組產生中斷信號的設定狀態(閂鎖/解除閂鎖)實施恢復。這種函數可以在進行諸如診
斷等等的中斷處理程式之後,作為返回至操作前設定狀態的對象使用。對於通過BCL_GBI_restoreInterruptCondition( )函數,運行不實施救援的本函數的場合,可以返回錯誤信息。這種函數對於兩次以上的運行均產生錯誤時,通常取最後的救援設定狀態實施恢復操作。
在離線狀態下呈無效功能狀態,所以可以在需要時運行該函數。
.名稱:BCL_GBI_restoreInterruptCondition
.形式:int BCL_GBI_restoreInterruptCondition(void)
.自變量:無
.返回值:BCL_GBI_OK(正常結束),BCL_GBI_ERROR(出現錯誤)
C.4.2.8對模組中斷原因的讀取操作
可以對出現由各種模組產生的中斷時的原因和該原因數目實施讀取操作。中斷的原因為最大256個(4比特/原因)。可以僅僅對按照這種方式產生的中斷原因數目部實施原因返回。原因讀取用的緩衝部,需要確保在最大原因數目部的中斷發生時使用的最大原因數目(unsigned int型時為256個)。
在離線狀態下呈無效功能狀態,所以可以在需要時運行該函數。
.名稱:BCL_GBI_readInterruptFactor
.形式:int BCL_GBI_readInterruptFactor(unsigned int *Factor,unsigned int *number)
.自變量:Factor(對讀取中斷原因的配置列實施的支持),number(儲存中斷原因數對象指示部)
.返回值:BCL_GBI_OK(正常結束),BCL_GBI_ERROR(出現錯誤)
C.5非公開函數
下面說明的是非公開函數。
C.5.1.1非同步DMA通知的删除操作(非公開部分)可以對實際運行時的非同步DMA通知實施删除操作。可以對同步DMA通知實施删除操作。而且,對於指定為錯誤的transferID的場合,可以不對DMA實施删除操作,返回至正常結束的開始部。
.名稱:BCL_GBI_cancelDMA
.形式:int BCL_GBI_cancelDMA(unsigned int transferID)
.自變量:transferID(返回至非同步模式通知時的通知結束等待ID)
.返回值:BCL_GBI_OK(正常結束),BCL_GBI_ERROR(出現錯誤)
C.5.1.2 PCI資料庫位址的獲取操作(非公開部分)
可以對系統匯流排I/F訪問口使用的PCI匯流排的資料庫位址的實施獲取操作。這種函數可以通過諸如系統匯流排I/F訪問口診斷等等方式使用。這種位址可以僅供獲取
到的處理程式使用。對於所獲取到的位址為NULL的場合,可以對本程式庫實施初始化設定。可以使用BCL_GBI_init函數進行程式庫的初始化操作。
在離線狀態下呈無效功能狀態,所以可以在需要時運行該函數。
.名稱:BCL_GBI_exportPCIBaseaddress
.形式:int BCL_GBI_exportPCIBaseaddress(void)
.自變量:無
.返回值:NULL(出現錯誤),NULL之外(系統匯流排I/F的PCI資料庫位址)
C.5.1.3模組中斷的閂鎖操作(非公開部分)
可以通過發生元禁止模組產生的中斷信號出現。當對中斷信號實施閂鎖設定時,可以由模組側禁止以後新的中斷信號出現。而且,這種函數可以在將閂鎖指令儲存在各模組處之後實施結束操作。
.名稱:BCL_GBI_interruptLock
.形式:int BCL_GBI_interruptLock(void)
.自變量:無
.返回值:BCL_GBI_OK(正常結束),BCL_GBI_ERROR(出現錯誤)
C.5.1.4模組中斷的解除閂鎖操作(非公開部分)
用於通過發生元允許模組產生的中斷信號出現。當運行該函數時,可以由各種模組側,允許在閂鎖過程中產生的等待中斷信號和解除閂鎖操作之後產生的中斷信號出
現。
這種函數可以在將解除閂鎖指令儲存在各模組處之後實施結束操作。
.名稱:BCL_GBI_interruptUnlock
.形式:int BCL_GBI_interruptUnlock(void)
.自變量:無
.返回值:BCL_GBI_OK(正常結束),BCL_GBI_ERROR(出現錯誤)
C.5.1.5詳細錯誤信息的輸出操作(非公開部分)
當系統匯流排存取程式庫返回有BCL_GBI_ERROR時,可以將詳細錯誤信息輸出至標準輸出流式部(stream)處。
.名稱:BCL_GBI_printLastError
.形式:int BCL_GBI_printLastError(void)
.自變量:無
.返回值:無
C.5.1.6詳細錯誤信息歷史的輸出操作(非公開部分)
當直至目前使用的系統匯流排存取程式庫返回有BCL_GBI_ERROR時,可以將詳細錯誤信息按照最大為16次的方式,輸出至標準輸出流式部處。
.名稱:BCL_GBI_printPreviousErrors
.形式:int BCL_GBI_printPreviousErrors(void)
.自變量:無
.返回值:無
C.5.1.6調試模式的控制操作(非公開部分)
用於對安裝在位址程式庫處的調試模式實施控制操作。
.名稱:BCL_GBI_verbose
.形式:void BCL_GBI_verbose(int val)
.自變量:val(對調試模式的指定)
.返回值:無
C.5.1.8軌迹功能的恢復操作(非公開部分)
可以對系統匯流排存取部程式庫的軌迹功能實施恢復操作。當對軌迹功能實施恢復操作時,可以使匯流排存取部和函數的掃描部發揮作用。通過對匯流排存取部的掃描,可以將構成存取部的位址和資料,以及讀取和寫入識別信息,顯示在標準輸出流式部處。通過對函數的恢復操作,可以將已經運行的函數名稱顯示在標準輸出流式部處。而且,實施恢復的函數,還可以登錄、置換為所需要的函數。
實施匯流排存取恢復用的存取程式庫函數如下所述。
BCL_GBI_write BCL_GBI_read BCL_GBI_writeBlock BCL_GBI_readBlock BCL_GBI_writeSeq BCL_GBI_readSeq BCL_GBI_writeSyncDMA
BCL_GBI_readSyncDMA BCL_GBI_writeAsyncDMA BCL_GBI_readAsyncDMA BCL_GBI_writeConfig BCL_GBI_readConfig
實施函數恢復用的存取程式庫函數如下所述。
BCL_GBI_waitFlushFIFO BCL_GBI_waitDMA BCL_GBI_cancelDMA BCL_GBI_conditionDMA BCL_GBI_syncCount BCL_GBI_resetModule
.名稱:BCL_GBI_ioTraceEnable
.形式:BCL_GBI_ioTraceEnable(void)
.自變量:無
.返回值:BCL_GBI_OK(正常結束),BCL_GBI_ERROR(出現錯誤)
C.5.1.9軌迹跟踪功能的禁止操作(非公開部分)
可以對系統匯流排存取部程式庫的軌迹跟踪功能實施禁止操作。當軌迹跟踪功能被禁止時,可以使匯流排存取部和函數處於無效狀態。
.名稱:BCL_GBI_ioTraceDisable
.形式:BCL_GBI_ioTraceDisable(void)
.自變量:無
.返回值:BCL_GBI_OK(正常結束),BCL_GBI_ERROR(出現錯誤)
C.5.1.10軌迹跟踪功能的位址濾波指定操作(非公開部分)
可以對與匯流排存取部的軌迹跟踪功能相關的位址濾波部實施指定操作。對濾波部的指定方法,可以是通過模式實施的單一指定方法,也可以是連續指定方法。指定的組合最大可以為16項的指定。對於軌述跟踪功能被恢復的場合,可以將這種組合中的某一個位址作為軌迹跟踪對象。
.名稱:BCL_GBI_ioTraceaddress
.形式:int BCL_GBI_ioTraceaddress(int mode,......)
int BCL_GBI_ioTraceaddress(0)int BCL_GBI_ioTraceaddress(1,addr)int BCL_GBI_ioTraceaddress(2,start_addr,stop_addr)
.自變量:mode(濾波模式的指定。0:對濾波部的指定實施解除,1:實施單一位址指定,2:實施連續位址指定),addr(實施單一位址指定時的對象位址),start_addr(實施連續位址指定時的開始位址),stop_addr(實施連續位址指定時的結束位址)
.返回值:BCL_GBI_OK(正常結束),BCL_GBI_ERROR(出現錯誤)
C.5.1.11軌迹跟踪功能的設定信息輸出操作(非公開部
分)
可以將與目前設定的軌迹跟踪功能相關的設定信息輸出至標準輸出流式部處。而且,可以對軌迹跟踪的恢復/禁止狀態和位址濾波部的設定狀態實施確認。
.名稱:BCL_GBI_ioTraceShow
.形式:BCL_GBI_ioTraceShow(void)
.自變量:無
.返回值:無
C.5.1.12軌迹跟踪功能的簡單幫助信息輸出操作(非公開部分)
可以將與軌迹跟踪功能相關的簡單幫助信息輸出至標準輸出流式部處。
.名稱:BCL_GBI_ioTraceHelp
.形式:BCL_GBI_ioTraceHelp(void)
.自變量:無
.返回值:無
C.5.1.13軌迹跟踪功能的登錄操作(非公開部分)
運行軌迹跟踪功能的不履行軌迹跟踪函數,可以根據需要置換為所需要的軌迹跟踪函數。如果對軌迹跟踪功能實施恢復操作,隨後可以對由軌迹跟踪對象存取程式庫函數登錄的函數實施運行。對於登錄的函數為一個,且已經登錄的場合,可以通過覆蓋方式實施登錄。對於返回有不履行軌迹跟踪函數的場合,可以實施BCL_GBI_ioTraceResetHandler函數。
實施軌迹跟踪用的存取程式庫函數如下所述。
BCL_GBI_write BCL_GBI_read BCL_GBI_writeBlock BCL_GBI_readBlock BCL_GBI_writeSeq BCL_GBI_readSeq BCL_GBI_writeSyncDMA BCL_GBI_readSyncDMA BCL_GBI_writeAsyncDMA BCL_GBI_readAsyncDMA BCL_GBI_writeConfig BCL_GBI_readConfig BCL_GBI_waitFlushFIFO BCL_GBI_waitDMA BCL_GBI_cancelDMA BCL_GBI_conditionDMA BCL_GBI_syncCount BCL_GBI_resetModule
.名稱:BCL_GBI_ioTraceHandler
.形式:void BCL_GBI_ioTraceHandler(BCL_GBI_TRACE_HANDLER handler,void*arg)
.自變量:handler(回調函數的位址),arg(向軌迹跟踪處理操作的過渡值)
.返回值:無
.返回值:BCL_GBI_OK(正常結束),BCL_GBI_ERROR(出現錯誤)
C.5.1.14不履行軌迹跟踪函數的登錄操作(非公開部分)
可以根據需要,將通過BCL_GBI_ioTraceHandler函數置換為所需要的軌迹跟踪函數,返回至不履行軌迹跟踪函數處。
.名稱:BCL_GBI_ioTraceResetHandler
.形式:BCL_GBI_ioTraceResetHandler(void)
,自變量:無
.返回值:無
C.5.1.15軌迹跟踪功能的運行操作(非公開部分)
可以對由通過BCL_GBI_ioTraceHandler函數登錄的、所需要的軌迹跟踪函數獲得的不履行軌迹跟踪函數,實施運行操作。
.名稱:BCL_GBI_ioTraceExecuteDefaultHandler
.形式:void BCL_GBI_ioTraceExecuteDefaultHandler(int cmd,unsigned int address,unsigned int data,void*arg)
.自變量:cmd(作為軌迹跟踪對象的函數),address(軌述跟踪對象的位址),data(軌迹跟踪對象的資料),arg(向軌迹跟踪處理程式過渡的自變量)
.返回值:無
由上述的說明可知,如果採用本發明,可以獲得能够對混合使用各種各樣模組的測試裝置實施適當模擬的測試模擬裝置,測試模組模擬裝置,以及對它們的程式實施記錄用的記錄媒體。
雖然本發明已以較佳實施例揭露如上,然其並非用以限定本發明,任何熟習此技藝者,在不脫離本發明之精神和範圍內,當可作些許之更動與潤飾,因此本發明之保護範圍當視後附之申請專利範圍所界定者為準。
110‧‧‧系統控制裝置
190‧‧‧測試模擬裝置
120‧‧‧通信網路
130a‧‧‧站點控制裝置
130b‧‧‧站點控制裝置
130c‧‧‧站點控制裝置
140‧‧‧匯流排開關
150a‧‧‧同步模組
160a‧‧‧同步連接模組
170a‧‧‧測試模組
170a‧‧‧測試模組
150b‧‧‧同步模組
160b‧‧‧同步連接模組
170b‧‧‧測試模組
180‧‧‧載入板
200‧‧‧DUT模擬部
230‧‧‧站點控制模擬部
240‧‧‧匯流排開關模擬部
250‧‧‧同步模組模擬部
260‧‧‧同步連接模組模擬部
270‧‧‧測試模組模擬部
275‧‧‧進度安排控制部
276‧‧‧計時時間排列部
277‧‧‧進度安排部
280‧‧‧DUT連接部
330‧‧‧通信I/F
340‧‧‧硬碟驅動部
350‧‧‧FD驅動部
360‧‧‧CD-ROM驅動部
400‧‧‧測試模組介面模擬部
410‧‧‧控制函數處理部
420‧‧‧計算機字DB
430‧‧‧測試圖案發生器模擬部
440‧‧‧波形整形器模擬部
450‧‧‧接腳控制模擬部
460‧‧‧參數測定模擬部
510‧‧‧模擬組成部分
520‧‧‧A公司模組
530‧‧‧B公司模組
540‧‧‧數位測試模組
560‧‧‧電源模組
590‧‧‧同步模組
550‧‧‧250MHz數位測試模組
570‧‧‧高電壓電源模組
580‧‧‧低電壓電源模組
2226‧‧‧工具部
2225‧‧‧工具部
2224‧‧‧軟體框架類層
2220‧‧‧系統控制部
2222‧‧‧標準介面
2230‧‧‧通信程式庫
2242‧‧‧使用者測試計劃部
2243‧‧‧使用者檢測類層
2244‧‧‧標準檢測類層
2246‧‧‧軟體框架類層
2245‧‧‧標準介面
2247‧‧‧模組電位用介面
2248‧‧‧模組指令執行部
2249‧‧‧背板通信程式庫
2250‧‧‧PCI背板驅動部分
2282‧‧‧背板模擬部
2261‧‧‧HW背板
2283‧‧‧背板模擬IF
2262‧‧‧機殼插槽IF
2284‧‧‧模組模擬部
2263‧‧‧模組硬體部
2285‧‧‧載入板模擬IF
2264‧‧‧載入板硬體IF
2280‧‧‧SW中的模組模擬部
2286‧‧‧載入板模擬部
2265‧‧‧硬體載入板
2287‧‧‧DUT模擬用IF
2293‧‧‧DUT VERILOG模型
2291‧‧‧DUTC/C++模型
2281‧‧‧模擬軟體框架部
2290‧‧‧介面
2292‧‧‧使用者
2294‧‧‧系統
2296‧‧‧模組開發
2298‧‧‧外部
2608‧‧‧《介面》IMsgHandler
2610‧‧‧《介面》ITest
2714‧‧‧公共應用部分Application
2712‧‧‧《介面》IDispatch
2708‧‧‧《介面》IMsgHandler
2710‧‧‧《介面》ITestClient
2804‧‧‧測試環境部
2817‧‧‧校正部
2818‧‧‧診斷部
2820‧‧‧構成部
2806‧‧‧測試準備部
2816‧‧‧測試圖案編譯部
2814‧‧‧測試程式展開部
2809‧‧‧離線模擬部
HW‧‧‧模擬模組
2808‧‧‧系統測試部
2815‧‧‧安裝部
2810‧‧‧新的HW或SW模組
2812‧‧‧認證部
6000‧‧‧站點CPU上的軟體
6014‧‧‧系統匯流排存取程式庫
6016‧‧‧PCI匯流排驅動部
6032‧‧‧匯流排IF
140‧‧‧匯流排開關
150、160、170‧‧‧各種模組
6050‧‧‧站點CPU上的離線處理程式
6014‧‧‧系統匯流排存取程式庫
6080‧‧‧測試裝置模擬處理器
6084‧‧‧系統匯流排模擬器
6086‧‧‧模組模擬器
S600‧‧‧通知測試信號生成用計時時間
S605‧‧‧通知循環開始
S610‧‧‧產生循環時間的測試信號
S615‧‧‧登錄對測試信號變化用計時時間
S620‧‧‧通知循環結束用計時時間
S625‧‧‧對下一測試信號生成用計時時間、測試結果收集用計時時間、循環結束處理計時時間、中斷信號收集用計時時間實施登錄
S630‧‧‧通知變化用計時時間
S635‧‧‧生成測試信號,獲取結果信號
S640‧‧‧通知測試結果收集用計時時間
S645‧‧‧測試結果收集、配送
S650‧‧‧通知循環結束用計時時間
S655‧‧‧通知中斷信號收集用計時時間
S660‧‧‧完成?
圖1為表示作為本發明一種實施形式的測試裝置10的構成形式用的示意圖。
圖2為表示作為本發明一種實施形式的測試模擬裝置190的功能構成用的示意圖。
圖3為表示作為本發明一種實施形式的電腦20的一個硬體構成實例用的示意圖。
圖4為表示作為本發明一種實施形式的測試模組模擬部270的功能構成用的示意圖。
圖5為表示作為本發明一種實施形式的軟體類層分級建構500的一個實例用的示意圖。
圖6為表示作為本發明一種實施形式的測試模擬裝置190的測試信號生成處理程式用的示意圖。
圖7為表示由作為本發明一種實施形式的測試模擬裝置190模擬生成的一個測試信號實例用的示意圖。
圖8為表示使用在本發明一種實施形式中的軟體結構用的示意圖。
圖9為表示使用在本發明一種實施形式中的一個測試類層用的示意圖。
圖10為表示作為本發明一種實施形式的、測試系統與由不同銷售方提供的模組源程式間相互作用的統一建模語言(UML)示意圖表。
圖11為表示通過站點控制部保持著的、對使用者的檢測實施管理用的站點控制對象的一種實施形式的示意圖。
圖12為表示如圖11所示的站點控制對象用的系統控制部側的對象代理的一種實施形式用的示意圖。
圖13為表示作為本發明一種實施形式的測試環境用的示意圖。
圖14為表示作為本發明一種實施形式的模擬配置檔案的一個實例用的第一示意圖。
圖15為表示作為本發明一種實施形式的模擬配置檔案的一個實例用的第二示意圖。
圖16為表示作為本發明一種實施形式的離線配置檔案的一個實例用的第一示意圖。
圖17為表示作為本發明一種實施形式的離線配置檔案的一個實例用的第二示意圖。
圖18為表示作為本發明一種實施形式的軟體類層分級建構5200的一個實例用的示意圖。
圖19表示的是作為本發明一種實施形式的通道對象的
使用圖表。
圖20表示的是作為本發明一種實施形式的事件對象的式樣圖表。
圖21為表示作為本發明一種實施形式的數位模組的基本類層的一個實例用的示意圖。
圖22為表示作為本發明一種實施形式的數位驅動模組的類層說明部分的一個實例用的示意圖。
圖23為表示作為本發明一種實施形式的數位驅動模組的handlerEvent方法的一個實例用的示意圖。
圖24為表示作為本發明一種實施形式的數位選通模組的類層說明部分的一個實例用的示意圖。
圖25為表示作為本發明一種實施形式的數位選通模組的handlerEvent方法的一個實例用的示意圖。
圖26為表示作為本發明一種實施形式的DUT模型的類層定義的一個實例用的示意圖。
圖27為表示作為本發明一種實施形式的DUT模型的run方法的一個實例用的示意圖。
圖28(a)、28(b)為表示實際環境6000和模擬環境6050中系統匯流排存取程式庫6014的位置分布用的示意圖。
110‧‧‧系統控制裝置
190‧‧‧測試模擬裝置
200‧‧‧DUT模擬部
230‧‧‧站點控制模擬部
240‧‧‧匯流排開關模擬部
250‧‧‧同步模組模擬部
260‧‧‧同步連接模組模擬部
270‧‧‧測試模組模擬部
275‧‧‧進度安排控制部
276‧‧‧計時時間排列部
277‧‧‧進度安排部
280‧‧‧DUT連接部
Claims (12)
- 一種測試模擬裝置,適用於模擬一測試裝置對被測試元件的測試,該測試裝置具有:系統控制裝置、測試模擬裝置及將測試信號分別供給至該被測試元件的數個測試模組,其特徵在於該測試模擬裝置包括:數個測試模組模擬部,模擬該些測試模組而生成依據不同循環周期的測試信號;一控制模擬部,連接到該系統控制裝置,模擬一控制裝置以控制該被測試元件的測試;一同步模擬部,連接到該控制模擬部與該些測試模組模擬部的每一個,依據該控制模擬部給出的指令產生測試信號用計時時間,該測試信號用計時時間是使該些測試模組模擬部模擬生成與該些測試模組模擬部的循環時間相對應的測試信號的時間;一計時時間排列部,連接到該同步模擬部,對該同步模擬部生成出的該些測試信號生成用計時時間,按時間順序進行排列並依次輸出;以及一進度安排部,連接到該計時時間排列部與該些測試模組模擬部,使對應的各該測試模組模擬部模擬地生成測試信號,其中該測試信號是與該些測試信號生成用計時時間的每一個相對應的循環時間的測試信號,且對應的各該測試模組模擬部是與該計時時間排列部輸出的各該測試信號生成用計時時間相對應的各該測試模組模擬部。
- 如申請專利範圍第1項所述的測試模擬裝置,其特 徵在於更包括一被測試元件模擬部,依據模擬生成的該測試信號,模擬該被測試元件的動作。
- 如申請專利範圍第1項所述的測試模擬裝置,其特徵在於該些測試模組模擬部,在與該測試信號生成用計時時間相對應的循環時間裏的測試信號的生成期間,分別模擬地產生對該控制裝置的中斷信號,該同步模擬部還進一步生成用以收集該些中斷信號的中斷信號收集用計時時間;該計時時間排列部對該些測試信號生成用計時時間和該些中斷信號收集用計時時間,按時間順序進行排列並依次輸出;當該計時時間排列部輸出該些中斷信號收集用計時時間中的一個時,該進度安排部是使與該中斷信號收集用計時時間相對應的該測試模組模擬部,於該中斷信號收集用計時時間之前由該測試模組模擬部生成測試信號的循環時間裏,使模擬產生的該中斷信號,通知至該控制模擬部。
- 如申請專利範圍第3項所述的測試模擬裝置,其特徵在於該些測試模組模擬部,分別在與該測試信號生成用計時時間相對應的循環時間裏生成測試信號的過程中,生成該循環時間裏的測試信號變化用計時時間;該測試模擬裝置更包括一被測試元件連接部,獲取由該些測試模組模擬部生成出的該些測試信號變化用計時時間,依據該些測試信號變化用計時時間使測試信號按時間順序依次模擬地變化。
- 如申請專利範圍第4項所述的測試模擬裝置,其特徵在於該被測試元件連接部將由該些測試模組模擬部獲得的該些測試信號變化用計時時間供給至該計時時間排列部;該計時時間排列部將該些測試信號變化用計時時間、該些測試信號生成用計時時間和該些中斷信號收集用計時時間,按時間順序進行排列並依次輸出;當該計時時間排列部輸出該些測試信號變化用計時時間中的一個時,該進度安排部是在該被測試元件連接部使該測試信號變化用計時時間內的該測試信號模擬地變化。
- 如申請專利範圍第1項所述的測試模擬裝置,其特徵在於該些測試模組模擬部,分別在與該測試信號生成用計時時間相對應的循環時間裏生成測試信號的過程中,分別將用以終止該循環時間的循環結束用計時時間通知至該同步模擬部;該同步模擬部依據由該些測試模組模擬部分別通知來的該循環結束用計時時間,產生該測試信號生成用計時時間,該測試信號生成用計時時間是用於模擬生成對應於該測試模組模擬部之下一循環時間的測試信號。
- 如申請專利範圍第6項所述的測試模擬裝置,其特徵在於當與下一循環時間相對應的該測試信號生成用計時時間輸出至該計時時間排列部時,該進度安排部在該測試信號生成用計時時間之前的循環時間裏生成測試信號的過程中,將與該測試信號生成用計時時間相對應的該測試模 組模擬部所模擬生成的中斷信號,通知至所述控制模擬部。
- 如申請專利範圍第1項所述的測試模擬裝置,其特徵在於該些測試模組模擬部,分別透過由電腦執行與該測試模組模擬部相對應的測試模組模擬程式的方式而實現,其中該測試模組模擬程式包括:數個硬體模擬函數,分別對應該測試模組之由該控制裝置接收到的數個指令而設置,模擬與該指令相對應的該測試模組的動作;以及一控制函數,用於使該進度安排部生成與該測試信號生成用計時時間相對應的循環時間裏的測試信號。
- 一種電腦可讀取記錄媒體,適用於儲存使一電腦具有一測試模擬裝置之功能的程式,該測試模擬裝置模擬具有多個測試模組的一測試裝置,該些測試模組是分別把測試信號供給至一被測試元件,其特徵在於該程式使該電腦具有下述組件的功能:數個測試模組模擬部,對生成依據不同循環周期之測試信號的該些測試模組實施模擬;一控制模擬部,對控制該被測試元件之測試的控制裝置實施模擬;一同步模擬部,依據該控制模擬部給出的指令,使該些測試模組模擬部分別產生一測試信號生成用計時時間,該些測試信號生成用計時時間是用於模擬生成與該些測試模組模擬部的循環時間相對應的測試信號;一計時時間排列部,對該同步模擬部生成出的該些測 試信號生成用計時時間,按時間順序進行排列並依次輸出;以及一進度安排部,使與該些測試信號生成用計時時間的每一個相對應的循環時間的測試信號,模擬生成在與該計時時間排列部輸出的一個該測試信號生成用計時時間相對應的該測試模組模擬部。
- 一種測試模組模擬裝置,適用於在模擬具有數個測試模組之測試裝置的一測試模擬裝置中,模擬一個前述測試模組,該些測試模組是把依據不同循環周期的測試信號分別供給至被測試元件,其特徵在於該測試模擬裝置包括:一控制模擬部,對控制該被測試元件之測試的控制裝置實施模擬;一同步模擬部,連接到該控制模擬部,依據該控制模擬部給出的指令產生測試信號生成用計時時間,該測試信號生成用計時時間是使該些測試模組分別模擬生成與該些測試模組的循環時間相對應的測試信號的時間;一計時時間排列部,連接到該同步模擬部,對該同步模擬部生成出的該些測試信號生成用計時時間,按時間順序進行排列並依次輸出;以及一進度安排部,連接到該計時時間排列部,指示對應的該測試信號模組模擬裝置模擬地生成測試信號,其中對應的該測試模組模擬裝置是與該計時時間排列部輸出的該些測試信號生成用計時時間的一個相對應的該測試模組模 擬裝置,且該測試信號是與該些測試信號生成用計時時間的一個相對應的循環時間裏的測試信號,其中該測試模組模擬裝置還包括:一測試圖案發生器模擬部,依據該進度安排部給出的指令,模擬地生成與該些測試信號生成用計時時間中的一個相對應的循環時間裏的測試信號。
- 如申請專利範圍第10項所述的測試模組模擬裝置,其特徵在於更包括一測試模組介面模擬部,將終止該些測試信號生成用計時時間的一個所對應之循環時間的循環結束用計時時間通知至同步模擬部,並產生該測試信號生成用計時時間,該測試信號生成用計時時間是用於依據該同步模擬部中之該循環結束用計時時間,使該測試模組模擬裝置模擬生成下一測試信號。
- 一種電腦可讀取記錄媒體,適用於記錄一程式,該程式使一電腦在模擬具備數個測試模組之測試裝置的測試模擬裝置中,具有模擬一個該測試模組之測試模組模擬裝置的功能,該些測試模組用以將依據不同循環周期的測試信號分別供給至被測試元件,其特徵在於該測試模擬裝置包括:一控制模擬部,對控制該被測試元件之測試的控制裝置實施模擬;一同步模擬部,連接到該控制模擬部,依據該控制模擬部給出的指令產生測信號生成用計時時間,該測試信號生成用計時時間是使該些測試模組分別模擬生成與該些測 試模組的循環時間相對應的測試信號的時間;一計時時間排列部,連接到該同步模擬部,對該同步模擬部生成出的該些測試信號生成用計時時間,按時間順序進行排列並依次輸出;以及一進度安排部,連接到該計時時間排列部,指示對應的該測試信號模組模擬裝置模擬地生成測試信號,其中對應的該測試模組模擬裝置是與該計時時間排列部輸出的該些測試信號生成用計時時間的一個相對應的該測試模組模擬裝置,且該測試信號是與該些測試信號生成用計時時間的一個相對應的循環時間裏的測試信號,其中該程式使所述電腦具有一測試圖案發生器模擬部的功能,依據該進度安排部給出的指令,模擬地生成與該些測試信號生成用計時時間的一個相對應的循環時間裏的測試信號。
Applications Claiming Priority (4)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US10/403,817 US7290192B2 (en) | 2003-03-31 | 2003-03-31 | Test apparatus and test method for testing plurality of devices in parallel |
| US10/404,002 US7460988B2 (en) | 2003-03-31 | 2003-03-31 | Test emulator, test module emulator, and record medium storing program therein |
| PCT/JP2004/001648 WO2004072669A1 (en) | 2003-02-14 | 2004-02-16 | Method and apparatus for testing integrated circuits |
| PCT/JP2004/001649 WO2004072670A1 (en) | 2003-02-14 | 2004-02-16 | Method and structure to develop a test program for semiconductor integrated circuits |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| TW200428200A TW200428200A (en) | 2004-12-16 |
| TWI389033B true TWI389033B (zh) | 2013-03-11 |
Family
ID=33161956
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| TW093108804A TWI389033B (zh) | 2003-03-31 | 2004-03-31 | 測試模擬裝置、測試模組模擬裝置以及記錄此程式之記錄媒體 |
Country Status (7)
| Country | Link |
|---|---|
| EP (3) | EP1767955B1 (zh) |
| JP (1) | JP3735636B2 (zh) |
| KR (1) | KR20050113273A (zh) |
| DE (2) | DE602004007498T2 (zh) |
| MY (1) | MY134825A (zh) |
| TW (1) | TWI389033B (zh) |
| WO (1) | WO2004090562A1 (zh) |
Families Citing this family (26)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US7460988B2 (en) | 2003-03-31 | 2008-12-02 | Advantest Corporation | Test emulator, test module emulator, and record medium storing program therein |
| US7913002B2 (en) * | 2004-08-20 | 2011-03-22 | Advantest Corporation | Test apparatus, configuration method, and device interface |
| JP2006275986A (ja) * | 2005-03-30 | 2006-10-12 | Advantest Corp | 診断プログラム、切替プログラム、試験装置、および診断方法 |
| KR100731106B1 (ko) * | 2005-12-29 | 2007-06-22 | 동부일렉트로닉스 주식회사 | 라이브러리 테스트 회로 및 그 방법 |
| KR100768916B1 (ko) * | 2006-07-03 | 2007-10-19 | 삼성전자주식회사 | 패킷 수집/분석 장치 및 이를 이용한 에뮬레이션 방법 |
| JP5023582B2 (ja) * | 2006-07-05 | 2012-09-12 | 横河電機株式会社 | 半導体集積回路試験装置及び方法 |
| KR100873956B1 (ko) * | 2006-08-17 | 2008-12-15 | 삼성전자주식회사 | 에뮬레이션 시스템 |
| KR100884983B1 (ko) * | 2007-06-26 | 2009-02-23 | 주식회사 동부하이텍 | 표준 셀 라이브러리의 성능 개선을 위한 측정 장치 |
| US20090119084A1 (en) * | 2007-11-05 | 2009-05-07 | Advantest Corporation | System, method, and program product for simulating test equipment |
| US7779313B2 (en) * | 2008-03-30 | 2010-08-17 | Advantest Corporation | Testing apparatus and testing method |
| US8165027B2 (en) | 2008-12-08 | 2012-04-24 | Advantest Corporation | Test apparatus and test method |
| KR20110003182A (ko) | 2009-07-03 | 2011-01-11 | 삼성전자주식회사 | 인쇄 회로 기판 설계 방법 및 인쇄 회로 기판을 포함하는 패키지 테스트 디바이스 |
| JP2013113665A (ja) * | 2011-11-28 | 2013-06-10 | Advantest Corp | 試験パターン生成装置、試験プログラム生成装置、生成方法、プログラム、および試験装置 |
| KR101310609B1 (ko) * | 2012-03-30 | 2013-09-24 | 주식회사 이노와이어리스 | Yaml을 이용하여 lte 계측 장비를 위한 데이터 및 인터페이스 생성장치 및 생성방법 |
| CN108628734B (zh) * | 2017-03-21 | 2023-03-28 | 中兴通讯股份有限公司 | 一种功能程序调试方法和终端 |
| KR102583174B1 (ko) | 2018-06-12 | 2023-09-26 | 삼성전자주식회사 | 테스트 인터페이스 보드, 이를 포함하는 테스트 시스템 및 이의 동작 방법 |
| CN111949365B (zh) * | 2019-05-17 | 2024-06-18 | 中车株洲电力机车研究所有限公司 | 离线仿真方法及计算机存储介质 |
| US11302412B2 (en) * | 2019-06-03 | 2022-04-12 | Advantest Corporation | Systems and methods for simulated device testing using a memory-based communication protocol |
| CN111447016B (zh) * | 2020-04-02 | 2022-06-21 | 上海创远仪器技术股份有限公司 | 针对信道模拟器的信道模型实现正确性验证处理的方法 |
| CN113624250B (zh) * | 2020-05-09 | 2024-05-10 | 航天科工惯性技术有限公司 | 一种自动温循测试装置和方法 |
| TWI719917B (zh) * | 2020-07-14 | 2021-02-21 | 金麗科技股份有限公司 | 將類比動態電路運用於數位測試工具的處理方法 |
| CN113157573B (zh) * | 2021-04-19 | 2024-06-07 | 上海湃星信息科技有限公司 | 一种软件测试验证系统及其构建方法 |
| TWI772189B (zh) * | 2021-09-24 | 2022-07-21 | 英業達股份有限公司 | 硬碟模擬裝置及應用該裝置的測試系統及其測試方法 |
| CN117294363A (zh) | 2022-06-23 | 2023-12-26 | 欧姆佳科技股份有限公司 | 多射频元件群测系统及其方法 |
| CN115774663B (zh) * | 2022-09-15 | 2024-07-09 | 江苏瑞蓝自动化设备集团有限公司 | 一种LabVIEW的测试系统的优化方法、装置、设备及存储介质 |
| KR102558492B1 (ko) * | 2022-10-12 | 2023-07-25 | 한국철도기술연구원 | 열차자동운행장치 시뮬레이션 고속화 시스템 및 이를 이용한 고속화 방법 |
Family Cites Families (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2570558B2 (ja) * | 1992-11-20 | 1997-01-08 | 日本電気株式会社 | ハードウェア・エミュレータ |
| JP2001184225A (ja) * | 1999-12-27 | 2001-07-06 | Toshiba Microelectronics Corp | エミュレータ及びエミュレート方法 |
-
2004
- 2004-03-30 DE DE602004007498T patent/DE602004007498T2/de not_active Expired - Lifetime
- 2004-03-30 EP EP06077162A patent/EP1767955B1/en not_active Expired - Lifetime
- 2004-03-30 MY MYPI20041158A patent/MY134825A/en unknown
- 2004-03-30 KR KR1020057018755A patent/KR20050113273A/ko not_active Ceased
- 2004-03-30 EP EP04724396A patent/EP1610136B1/en not_active Expired - Lifetime
- 2004-03-30 WO PCT/JP2004/004527 patent/WO2004090562A1/ja not_active Ceased
- 2004-03-30 DE DE602004016891T patent/DE602004016891D1/de not_active Expired - Lifetime
- 2004-03-30 JP JP2005505208A patent/JP3735636B2/ja not_active Expired - Fee Related
- 2004-03-30 EP EP07075858A patent/EP1870724A1/en not_active Withdrawn
- 2004-03-31 TW TW093108804A patent/TWI389033B/zh not_active IP Right Cessation
Also Published As
| Publication number | Publication date |
|---|---|
| DE602004007498D1 (de) | 2007-08-23 |
| KR20050113273A (ko) | 2005-12-01 |
| EP1610136A1 (en) | 2005-12-28 |
| DE602004016891D1 (de) | 2008-11-13 |
| JPWO2004090562A1 (ja) | 2006-07-06 |
| TW200428200A (en) | 2004-12-16 |
| EP1767955A1 (en) | 2007-03-28 |
| EP1610136A4 (en) | 2006-05-17 |
| WO2004090562A1 (ja) | 2004-10-21 |
| DE602004007498T2 (de) | 2008-03-13 |
| EP1767955B1 (en) | 2008-10-01 |
| JP3735636B2 (ja) | 2006-01-18 |
| MY134825A (en) | 2007-12-31 |
| EP1610136B1 (en) | 2007-07-11 |
| EP1870724A1 (en) | 2007-12-26 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| TWI389033B (zh) | 測試模擬裝置、測試模組模擬裝置以及記錄此程式之記錄媒體 | |
| CN100489554C (zh) | 测试装置与测试模拟方法 | |
| US20080010524A1 (en) | Test emulator, test module emulator and record medium storing program therein | |
| CN117422025B (zh) | 一种基于risc-v架构的随机中断调试验证系统 | |
| US6678625B1 (en) | Method and apparatus for a multipurpose configurable bus independent simulation bus functional model | |
| US8180620B2 (en) | Apparatus and method for performing hardware and software co-verification testing | |
| CN106503308A (zh) | 一种基于uvm的can控制器ip验证平台 | |
| JP5022262B2 (ja) | デバッグ中にツールを使用可能な試験システム及び方法 | |
| CN116795728B (zh) | 一种基于uvm的多核缓存一致性验证模组及方法 | |
| JP5519060B2 (ja) | オンチップデータプロセッサのトレースおよびタイミング情報の獲得と出力 | |
| CN107861850B (zh) | 一种中断验证系统及其使用方法、计算机设备、存储介质 | |
| EP1139108B1 (en) | Scan interface with TDM feature for permitting signal overlay | |
| US7036046B2 (en) | PLD debugging hub | |
| CN100456043C (zh) | 检测集成电路的方法和装置 | |
| JP2007057541A (ja) | 試験エミュレート装置 | |
| JP2004178590A (ja) | データ一致認定および完全または部分的重複によって、多数のサイズのメモリ・アクセスを検出するアドレス範囲比較器 | |
| TWI287639B (en) | A distributed operating system for a semiconductor test system for testing at least one device under test | |
| US6718498B2 (en) | Method and apparatus for the real time manipulation of a test vector to access the microprocessor state machine information using the integrated debug trigger | |
| JP2005285092A (ja) | 試験エミュレート装置 | |
| Fogarty et al. | On‐chip support for software verification and debug in multi‐core embedded systems | |
| CN207946806U (zh) | 一种调试器和调试装置 | |
| US7210111B1 (en) | Systems and methods for conducting future signal checks | |
| JP2001318805A (ja) | 組み込みシステムのテスト方法及びテストシステム | |
| Shilaskar et al. | Post Silicon Validation for I2C (SMBUS) Peripheral | |
| Ueda et al. | Automated system level functional test program generation on ATE from EDA using Functional Test Abstraction |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| MM4A | Annulment or lapse of patent due to non-payment of fees |