TWI502209B - 操控運算裝置以產生並行式測試計畫之資訊的方法、包含實施該方法之指令的非暫存電腦可讀取儲存媒體、及依據該方法製造半導體裝置的方法 - Google Patents

操控運算裝置以產生並行式測試計畫之資訊的方法、包含實施該方法之指令的非暫存電腦可讀取儲存媒體、及依據該方法製造半導體裝置的方法 Download PDF

Info

Publication number
TWI502209B
TWI502209B TW100115740A TW100115740A TWI502209B TW I502209 B TWI502209 B TW I502209B TW 100115740 A TW100115740 A TW 100115740A TW 100115740 A TW100115740 A TW 100115740A TW I502209 B TWI502209 B TW I502209B
Authority
TW
Taiwan
Prior art keywords
test
pins
resource
candidate
resources
Prior art date
Application number
TW100115740A
Other languages
English (en)
Other versions
TW201142332A (en
Inventor
Wagenen Bethany Van
Seng J Edward
Original Assignee
Teradyne Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Teradyne Inc filed Critical Teradyne Inc
Publication of TW201142332A publication Critical patent/TW201142332A/zh
Application granted granted Critical
Publication of TWI502209B publication Critical patent/TWI502209B/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L22/00Testing or measuring during manufacture or treatment; Reliability measurements, i.e. testing of parts without further processing to modify the parts as such; Structural arrangements therefor
    • H01L22/20Sequence of activities consisting of a plurality of measurements, corrections, marking or sorting steps
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/3181Functional testing
    • G01R31/319Tester hardware, i.e. output processing circuits
    • G01R31/31903Tester hardware, i.e. output processing circuits tester configuration
    • G01R31/31907Modular tester, e.g. controlling and coordinating instruments in a bus based architecture
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/26Functional testing
    • G06F11/263Generation of test inputs, e.g. test vectors, patterns or sequences ; with adaptation of the tested hardware for testability with external testers
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L2924/00Indexing scheme for arrangements or methods for connecting or disconnecting semiconductor or solid-state bodies as covered by H01L24/00
    • H01L2924/0001Technical content checked by a classifier
    • H01L2924/0002Not covered by any one of groups H01L24/00, H01L24/00 and H01L2224/00

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Power Engineering (AREA)
  • Quality & Reliability (AREA)
  • Manufacturing & Machinery (AREA)
  • Tests Of Electronic Circuits (AREA)
  • Testing Of Individual Semiconductor Devices (AREA)
  • Testing Or Measuring Of Semiconductors Or The Like (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)

Description

操控運算裝置以產生並行式測試計畫之資訊的方法、包含實施該方法之指令的非暫存電腦可讀取儲存媒體、及依據該方法製造半導體裝置的方法
本發明基本上係有關於半導體裝置之製造,特別是關於開發用於半導體裝置之測試程式。
半導體裝置在其製造期間一般而言至少接受測試一次。此測試係由一自動測試系統執行,其能夠產生大量的刺激信號並量測大量的回應信號。該測試系統具有可以產生一待測裝置(device under test)運作時發生於其內的各種不同信號之多種儀器。情況類似地,該等儀器可以量測該裝置產生的各種不同信號。
舉例而言,現今許多半導體裝置係以一種"系統單晶片(system on a chip;SoC)"或"系統級封裝(system in a package;SiP))"之形式生產製造,其包含有時稱為"核心(core)"或"功能區塊"的子電路,共同執行一電子裝置中可以執行的多種運作。舉一特定之實例,一個可以使用於行動電話之中的晶片可能具有傳送及接收射頻(radio frequency;RF)信號之核心。其他核心可能控制RF電路,而另外的核心又可能充當一個一般用途處理器,可以被編程以執行應用程式。為了完整測試此一SoC或SiP裝置,一測試系統可以具有產生並量測RF信號的儀器以及產生並量測諸如可以在控制核心及處理器核心之內被處理的數位信號的儀器。一測試系統同時亦將具有能夠產生並量測可以發生於一運作中之半導體裝置內的其他型態信號之儀器,諸如可以在裝置運作期間由電源所施加的電壓及電流型態之信號,或是可以自一感測器讀取之信號。這些儀器共同提供用以執行測試的資源。
當裝置愈益複雜,測試系統測試裝置所需的複雜度亦隨之增加。並且,測試計畫之建立以及測試之執行均需要更多時間,此使得裝置生產廠商投注其關切於測試成本之上。化解此關切的一種方式係透過採用並行式的測試程序。對於一特定裝置,其可以藉由並行測試多個核心或該裝置的其他區域以使得測試程序並行化。其可以針對該等區域各自開發出個別的測試或測試之群組,有時稱為測試區塊(test block)。為了使此等測試效用正確,一測試區塊之執行不應該影響到裝置中正由另一測試區塊並行測試中的任何其他部分之運作。因此,製做一並行式測試計畫的困難度之一係找出一個適當的測試"流程",其中所有測試區塊最終均得以執行,但包含一起執行的適當測試區塊以節省更多測試時間。
製做一並行式測試計畫的另一困難處在於確保主導測試的測試系統具有足夠的資源以產生並量測並行使用於一測試中的所有測試點所需要的所有信號。裝置中每一個待施用測試信號或被量測的位置有時稱為一"接腳(pin)"。製做一並行式計畫之一特色係確保測試系統具有足夠的儀器以對涉入於一測試中的每一接腳提供其所需的資源。儀器經常是與測試系統分開販售,使得其可以藉由安裝儀器以提供所需資源而組構用以測試一特定裝置之測試系統。當愈多測試區塊被並行測試時,可能需要愈多儀器。製做一並行式測試計畫時,其可能在並行測試的區塊數目與測試系統組態中的儀器數目之間加以權衡。
建立一並行式測試計畫的另一考量係確保來自測試系統內的儀器的信號能被繞送至一接腳。在許多測試系統之中,此介於接腳和儀器之間的繞送係透過一裝置介面板(device interface board;DIB)執行,其可能針對每一種待測試裝置之型態而專門設計。一測試系統具有一預定數目之存取點,其各自均可以被稱為一通道(channel)。每一通道均可以充當一儀器信號的輸入、輸出或二者兼具。上述的DIB將每一通道繞送至一點,在該點處配合一機構以連接至待測裝置上的一個特定測試點。
一測試系統可以具有數百或數千個通道,取決於安裝於測試系統之中的儀器數目。一待測裝置具有的接腳可以少於一測試系統中的通道。因此,其亦可以藉由並行測試多個裝置而使得一測試程序並行化。在此種情況下,其可以定義多個"部位(site)",每一個部位均提供通往其中一個待測裝置的連接。同一個測試程式可以並行運作於每一個部位之上,有效地在每一個測試部位複製待測裝置之接腳,並各自具有所需測試資源的對應複製。
為了使此並行性可行,DIB必須被設計成將通道連接至部位,使得在一測試流程中的每一個步驟,一適當之儀器被耦接至每一部位,以產生或量測在該測試流程中的該步驟處每一部位中的所有接腳上所需之信號。當接腳之數目以及需要被產生及量測的信號型態之數目增加時,設計一DIB的時間和複雜度亦隨之增加。雖然其有一些工具可在此程序中提供協助,但大部分的設計仍然是由清楚如何將測試系統通道分派至接腳的測試工程師以人工方式完成。除了DIB設計的成本之外,裝置生產者的延滯成本可能亦相當可觀,因為測試組態之開發可能延遲裝置的量產。
本揭示係有關於一種使用於形成一並行式測試計畫的自動化工具。
在一特色之中,本發明係有關於一種針對具有複數接腳之裝置產生並行式測試計畫之資訊的方法,該測試計畫係待由一具有複數資源的測試系統執行。該方法包含識別出接腳之複數群組以及在一並行式測試流程期間該等群組各自的一組資源規格;識別出測試系統資源之複數集合,該複數集合包含一或多組各自均共同符合一規格之測試系統資源之集合;以及將該複數集合中之集合分別與該複數群組中之群組進行匹配。
其可以利用一運算裝置之至少一處理器執行此一方法。儘管如此,本發明之特色可以實施成一系統、一方法、一電腦可讀取媒體或一製造半導體裝置之方法。
在另一特色之中,本發明係有關於一種操控一運算裝置以產生用於至少一裝置之並行式測試之計畫之資訊的方法,該至少一裝置各自均具有複數接腳,且該測試係由一具有可連接至該複數接腳的複數資源的測試系統執行,該並行式測試包含複數區塊。該方法包含疊代式地執行包含依據一啟發式方法(heuristic)識別出一候選流程之程序,該候選流程對區塊進行排程以在區塊之間避開先前識別出之衝突。對於每一候選流程,其嘗試將該複數資源中的多個資源分配給該複數接腳中的多個接腳以依據該候選流程執行並行式測試。當嘗試分配造成一成功的資源分配之時,其計算利用該候選流程執行該並行式測試的測試時間。當由於測試區塊間之衝突致使一資源分配不成功時,則致使測試區塊之間發生牴觸的衝突被記錄下來,使得後續疊代中的候選流程不包含該衝突。
在另一特色之中,本發明係有關於至少一電腦可讀取儲存媒體,包含複數電腦可執行指令,當其由至少一處理器執行時,實施一用以產生一用於至少一裝置之並行式測試之計畫之資訊的工具,該至少一裝置各自均具有複數接腳,且該測試係由一具有可連接至該複數接腳的複數資源的測試系統執行,該並行式測試包含複數區塊。該電腦可執行指令構成複數模組,包含至少二模組的複數個模組,其可以是二或多個模組。一第一可能模組可以,依照指定一第一技術之輸入,藉由以下動作識別出並行式測試的至少一流程:列舉出候選流程;嘗試將該複數資源中的多個資源分配給該複數接腳中的多個接腳以依據每一個列舉出之候選流程執行該並行式測試;以及提供一輸出,指出資源分配已成功之複數列舉出之候選流程以及列舉出之候選流程之一個別估計測試時間。一第二模組可以,依照指定一第二技術之輸入,藉由疊代式地產生複數候選流程直到抵達一第一終止條件為止以識別出並行式測試的至少一流程,在每一次疊代之中,其均係藉由隨機產生具有一啟發式方法所指明之特性之一候選流程以在一短於一先前疊代中計算出之一先前候選流程之一測試時間之時間內執行該並行式測試。對於每一次疊代,該第二模組可以,針對每一個產生的候選流程,嘗試將該複數資源中的多個資源分配給該複數接腳中的多個接腳以依據每一個列舉出的候選流程執行該並行式測試該第二模組可以提供一輸出,指出資源分配成功的至少一產生之候選流程。一第三模組,依照指定一第三技術之輸入,可以藉由疊代式地產生複數候選流程直到抵達一第二終止條件為止以識別出並行式測試的至少一流程,在每一次疊代之中,藉由產生具有一啟發式方法所指明之特性之一候選流程以在一長於一先前疊代中計算出之一先前候選流程之一測試時間的時間內執行該並行式測試。該第三模組亦可以,針對每一個產生的候選流程,嘗試將該複數資源中的多個資源分配給該複數接腳中的多個接腳以依據每一被列舉候選流程執行並行式測試。該第三模組之輸出可以指出資源分配成功的至少一產生之候選流程。
在另一特色之中,本發明可以是關於至少一電腦可讀取儲存媒體,包含複數電腦可執行指令,當其由至少一處理器執行時,實施一用以產生一用於至少一裝置之並行式測試之計畫之資訊的工具,該至少一裝置各自均具有複數接腳,且該測試係由一具有可連接至該複數接腳的複數資源的測試系統執行,該並行式測試包含複數區塊。該電腦可執行指令可以接收指定一測試系統組態之輸入;接收指定一候選流程之輸入;以及判定該複數資源中的多個資源是否能夠被成功地分配至該複數接腳中的多個接腳以利用被指定之該測試系統組態依據該輸入之候選流程執行該並行式測試。
以上係本發明之非限定摘要,本發明係由所附之申請專利範圍所界定。
發明人體認並領略到一個用以將測試器通道對映至接腳的自動化工具能夠加速一並行式測試計畫之開發並可以產生一更具成本效益之並行式測試計畫。藉由取得一個能夠快速地構建出有效率的指派方式之工具,可以變更並行式測試計畫之中的多個參數之數值,以搜尋出一個在測試時間和測試設備成本之間做出適切權衡的計畫。該工具之使用可以導致一測試系統組態、測試流程以及通道指派之確認,其在用於測試特定裝置的時間和成本之間提供所需之權衡。
此一工具可以應付有關找出能夠在特定情境下達成的並行式流程之挑戰。例如,該工具可以藉由辨識出彼此完全無關的區塊,或者,反之,辨識出無法並行測試的衝突區塊,而協助使用者識別出裝置致能(device-enabled)流程。"完全無關"意指區塊未共用接腳或內部資源。替代性地或附加性地,一工具可以協助使用者識別出測試器致能(tester-enabled)流程。當一測試系統包含彼此完全無關的足夠資源且可以並行式地運行,使得資源能夠被分派以依據一流程執行一測試程式,則該流程可以稱為測試器致能。
在工具運作之時,並行式測試計畫中的參數之數值可以是以疊代方式變更。此等疊代可以由工具自動地執行。儘管如此,在一些實施例之中,該工具可以在測試系統通道和測試接腳之間充分快速地找出一適當的指派方式,使得其可以被一測試工程師以疊代方式反複地使用。因此,該工具可以包含一使用者介面,一測試工程師可以經由該介面輸入參數數值並接收有關並行式測試計畫之資訊,使得該測試工程師可以選定一並行式測試計畫。除了在通道和接腳之間找到一適當對映關係(mapping)時提供測試工程師有關一並行式測試計畫之效能的資訊之外,若該工具無法找出一適當的對映關係,則該工具可以對該測試工程師提供在並行式測試計畫之中可被變更以增加找到一對映關係的可能性的參數的相關資訊。舉例而言,該工具可以指出可被加入一測試系統以達成一適當對映關係的額外儀器,或者可以根據一特定的測試系統組態,對並行式測試可以支援的測試部位之數目提供回饋。以此種方式,測試工程師可以利用該工具迅速地確定一並行式測試計畫,使得其在測試時間和設備成本之間反映出一個合意的權衡。
此一工具之一特色係一種用於迅速確定一介於通道和接腳之間的適當對映關係的方式,或者,若該對映關係不可能,則快速地指出該事實。此快速執行可以使得一使用者可以在疊代式地運用該工具之下,決定特定測試組態下的測試時間,或者測試執行的其他特性。若使用者不滿意測試執行的該等特性,則使用者可以指定一個不同的測試組態並判定對於測試特性之影響。
一工具可以藉由套用規則及彙合關係(association)以確認接腳群組之規格而構建出接腳和通道之間的對映關係。接腳之群組及相關規格可以被視為界定出"資源引擎(resource engine)規格"。該工具亦可以識別出能夠滿足可能規格的測試資源之集合。測試資源之集合可以被視為界定出"資源引擎"。該工具可以搜尋介於資源引擎規格與資源引擎間之一可行對映關係。搜尋"資源引擎規格"與"資源引擎"間的對映關係在計算上可以比搜尋個別接腳與資源間的匹配更有效率。
該工具可以利用排序技術以增加迅速找出一有效率指派方式的可能性。例如,其可以根據若流程可以實施則將達成之一推斷測試時間對可能的測試流程加以排序。該工具可以測試其是否能夠針對依照最快到最慢之順序排序的流程找到一個可行的指派方式。一旦找出一預定數目的可行選項之後,該工具可以結束其對更多流程之分析。舉另一實例而言,該工具可以根據滿足此等規格的資源引擎的出現頻率或者找出滿足規格之對應關係的困難度的其他指標排定資源引擎規格之順序。該工具可以藉由將資源引擎優先指派以滿足較困難之規格而建構出對映關係。
圖1例示本發明之一些實施例可以運作於其中之一環境。圖1例示一測試系統100,其可以被編程以藉由使用一個如本文所述之工具執行並行式測試。在圖1所例示的環境之中,測試系統100被調構以測試一晶圓130,其可以是一已知型態之晶圓。晶圓130可以包含諸如被編號為晶粒132之多個半導體晶粒。通常,一晶圓上的所有晶粒均具有同一設計,使得其可以在晶圓130的製造期間執行共同處理步驟時,於單一晶圓上製造出許多晶粒。
圖1之實例例示測試系統運行於一有時稱為"探測(probe)"的生產作業之階段的測試情境,其係在裝置仍然是一晶圓的一部分時進行測試。半導體裝置可以在生產作業的其他階段進行測試,包含在裝置封裝之後做為最終測試的一部分。因此,其應理解,本文所述之技術並不受限於其被套用的生產階段。
測試系統100包含多個可以產生及量測測試信號的儀器。測試系統100內所包含的儀器之特定型態可以取決於測試系統100所測試的半導體裝置之性質。例如,一些儀器可以產生或量測數位測試信號,而另外一些儀器可以產生及量測RF信號。然而,安裝於測試系統100內之儀器的特定型態並非本發明之關鍵。
在圖1之中,一儀器之集合102被例示以提供多種實體資源,其各自均可被用以在一測試期間產生或量測一測試信號。在圖1的實例之中,其例示實體資源104A、104B和104C。舉例而言,這些實體資源可以代表能夠產生或量測一類比信號之儀器。情況類似地,其例示實體資源106A、106B和106C。例如,這些資源可以代表能夠產生或量測數位測試信號之儀器。
其應可領略,圖1提供一測試系統之過分簡化之例示,測試系統100內的儀器集合102可能提供遠遠超過六個實體資源。其亦應理解,測試系統100可以利用一模組化架構建構而成,使得其可以藉由適當地組構該測試系統而增加或減少其中的儀器數目。此處,圖1例示測試系統100包含用以接收更多儀器之插槽,以容納諸如實體資源108A、108B及108C等更多儀器。依據本發明之一些實施例,決定一並行式測試計畫之一特色在於決定一所需之儀器集合以在測試系統100之中提供一所需之實體資源集合以執行並行式測試。
無論測試系統100內的儀器數目有多少,針對半導體裝置之測試,測試信號必須被耦接於實體資源與半導體待測裝置之間。在所例示的實例之中,測試系統100包含一外露多個接觸點之介面。在此實例之中,該等接觸點構成通道110。每一通道均可以被耦接至一實體資源104A...104C或106A...106C。
部分或全部的通道110可以被指派以在一待測裝置上的測試點產生及接收信號。與實體資源相連之通道和一待測裝置上的測試點之間的對映關係可以透過使用一如下所述之工具加以建立。一旦此對映關係被建立之後,其可以透過一介面結構實施,例示為裝置介面板(DIB)112。DIB 112可以包含一上表面,用以接觸通道110。DIB 112之一下表面可以包含探針(probe needle)122或用以電性連接至一待測裝置的其他結構。
每一探針122均可以被置於一與一測試"接腳"相連之測試點以接觸一待測裝置。介於測試系統資源與接腳之間的對映關係可以藉由探針122與通道110之間的電性連接實施於DIB 112之內。一個如本文所述之工具可被用以協助一測試工程師或其他使用者找出一適當的對映關係,使得DIB 112可以依據一測試計畫被設計來支援測試。一測試計畫可以具體指定晶圓130之並行式測試。並行式測試可以執行於晶圓130上的多個晶粒。然而,每一晶粒的測試點數目以及每一晶圓上的晶粒數目常常使得並行式地產生及量測並行測試晶圓130上所有晶粒所需要的所有測試信號顯得不切實際。退而求其次,測試系統100可以被組構成並行式地測試晶圓130上的晶粒之一子集合。在一測試作業期間,一用以處置晶圓130之裝置(未例示於圖1之中)可以移動晶圓130以連續地定位晶圓130上的晶粒群組而由測試系統100進行並行式測試。以並行方式連接至測試系統的每一晶粒均係經由多個測試接腳連接,其有時共同被稱為一個"部位"。
可以被並行測試的部位之數目取決於多種因素。情形類似地,可以被並行執行的測試區塊之數目亦取決於多種因素。待測裝置之性質以及測試系統100內可用的實體資源均可以影響能夠達成的並行程度。此外,測試系統100內的實體資源與待測裝置上的測試點之間的對映關係的效率性亦可以影響可能的並行程度。
雖然圖1例示極少量型態之實體資源,諸如實體資源104A...104C以及實體資源106A...106C,但一用於測試複雜SoC及SiP裝置的測試系統可以具有眾多型態之資源。因此,將一測試接腳對映至任意的資源係不適切的。更確切言之,一個成功的對映關係將每一測試接腳對應至一個能夠產生或量測需要在該測試接腳處產生或量測之信號的資源,以成功地測試待測裝置。識別出一個有效率地使用測試系統資源的對映關係可能相當複雜,不僅因為測試系統資源的龐大數目,並且肇因於一些測試系統資源可以滿足不同型態規格的可能性。若其可以使用多種測試系統資源滿足一特定測試接腳之規格,則被選擇給該接腳的資源可能影響滿足其他測試接腳規格的測試系統資源的可取得性。因此,有關哪一個測試系統資源將被對映至特定測試接腳的選擇可能影響可以與適當資源相連的測試接腳的總數。
在計畫一並行式測試程序時,無法將一測試系統資源指派給一部位中之一測試接腳可能可以藉由找出資源和其他測試接腳之間的一個不同的對映關係使得資源能分配給所有的測試接腳而解決。舉例而言,若測試系統具備足夠數目能夠獨立運作的資源以分派給需要信號被獨立產生或量測的每一接腳,則測試工程師可以選擇此種方式。替代性地或附加性地,其可以增加測試系統資源之數目,諸如藉由將更多儀器加入測試系統100。另一種可能性是,其可以減少測試信號必須被並行產生或量測的測試接腳的數目。加入更多測試系統資源需要增加資金成本。減少並行性降低裝置被測試的速率,此間接地影響測試成本。因此,其可能想要在測試系統資源和測試接腳之間找出一個對映關係,在測試期間支援高等級並行性的流程,以有效率地利用測試系統資源。
圖2例示一開發測試系統資源與測試接腳間之一有效率對映關係以支援並行測試之程序。一個對映關係是否適合一裝置及測試可能取決於所使用的流程及/或測試系統組態,諸如被並行測試的部位數目,或其他參數。因此,除了識別資源的對應關係之外,該工具之輸出可以替代性地或附加性地包含一或多個流程之確認,其可被用於測試一裝置及/或有關於一測試系統組態或其他參數之資訊。
更廣泛而言,該工具可用以判定,對於一組參數而言,是否可找到一對映關係。該工具可用以接收一些該等參數做為輸入數值。該工具從而可以搜尋允許達成一資源對映關係的其他參數之數值。此搜尋可以在一或多個限制下進行,該等限制的部分或全部可以被提供做為該工具之輸入。
例示於圖2之程序可以實施成一個執行於一電腦系統上的工具。此一工具可以是實施成互動式的,允許一測試工程師利用該工具產生對並行測試程序設計期間有用之資訊。儘管如此,在一些實施例之中,其可以以一自動化或半自動化的方式取得輸入,且亦可以以一自動化或半自動化的方式運用輸出控制一並行式測試程序。
在一些實施例之中,該工具可以支援多種運作模式。例如,該工具可以支援以輸入數值之形式接收參數,諸如可用之資源以及測試系統組態。根據此等輸入,該工具可以識別出一測試流程,以及對應的資源對映關係,允許針對一特定裝置之一特定測試以該測試系統執行。在此情境之下,該工具之輸出可以是資源對映關係以及可以找出一測試流程之指示。替代性地或附加性地,其可以輸出一估計測試時間。在找不到任何資源對映關係的情境下,輸出可以指出否定的結果以及其他對一測試工程師可能有用的資訊,諸如必須被加入測試系統以找出一資源對映關係的資源。
在一些實施例之中,其並非識別出候選測試流程,而是該工具可以接受一候選測試流程做為一輸入。該工具可以從而判定是否可以針對該候選流程找到一種資源配置方式。若是可以,則該工具可以輸出資訊,諸如資源對映關係、估計測試時間或者是其他參數之數值。舉運作模式之另一實例而言,該工具可以支援針對一或多個並行測試流程"反向檢查"一組資源對接腳的指派。就"反向檢查"而言,使用者已經具有一裝置介面板(DIB)以及通道對映圖(channelmap),而想要看看是否有任何並行式流程被此通道對映圖致能。
圖2例示的實施例之中,該工具被用以針對一特定的測試系統組態識別出一流程以及資源對映關係。在此實例之中,該工具執行的程序可以開始於區塊210。在區塊210處可以接收輸入。此等輸入可以是接收自一測試工程師或該工具的其他使用者。替代性地或附加性地,此等輸入可以是以一自動化或半自動化的形式接收自使用於設計一半導體裝置及對其產生一測試程式的其他電腦化工具。
該等輸入可以指出測試可以在其上執行之一測試系統之一組態。此組態可以對應至已然到位以執行測試的實體硬體,或者可以描述理論上的硬體以決定對一測試系統取得額外儀器或其他組件之需求或效益。
圖3例示一輸入之集合310,其代表可提供給一執行圖2之程序之排程及指派工具350的輸入之型態。輸入310可以提供工具350有關於待測裝置、執行測試之測試系統或有關於測試本身的資訊。在需要並行測試多個部位的並行方式的實施例之中,關於定義一待測裝置或一測試程式之參數的輸入可以針對單一晶粒提供,諸如晶粒132,或者是針對一部位處準備被測試的其他裝置。因此,輸入312,代表一接腳佈局(pinout),可以代表一諸如晶粒132之單一待測裝置之接腳佈局。輸入312可以定義藉由工具350之運作最後將資源對映至其上的接腳。
輸入314可以指定在一針對待測裝置所建立的測試程式中的測試區塊。每一測試區塊均界定測試程式中的一個可分離部分,其可以被排程而以一並行式測試計畫的一部分的形式執行。工具350可以使用輸入314排程測試區塊之執行,使得一些測試區塊並行式地執行。
輸入316可以提供一接腳對區塊之對映關係。此資訊可以指定在每一如輸入314所定義的測試區塊的執行期間所使用的如輸入312所定義的接腳中的哪些部分。在一些情況之中,單一接腳可以對應至多個測試區塊。因此,輸入316可以指定相對於每一接腳的多個測試區塊。然而,輸入314或任何其他輸入310的特定格式並非本發明之關鍵。
輸入322可以提供有關於測試程式的進一步資訊。在此實例之中,輸入322包含每一測試區塊之測試區塊執行時間之一估計。此資訊可以被工具350用以估計一依據一並行式測試計畫之測試之整體執行時間,使得其可以產生一有效率的並行式測試計畫。
輸入324可以指定已知的衝突,該等衝突可能阻止找到特定測試流程中的測試系統資源和接腳間的可行對映關係或者資源相對於接腳的指派。更廣泛而言,一或多個輸入可以被用以描繪該工具應列入考慮,或不應列入考慮,的候選流程之特徵。例如,輸入324可以指定不應該並行出現於候選流程中的區塊。此輸入可以是以待測裝置為基礎加以指定,因為測試區塊需要被並行輸入或輸出於同一裝置接腳的輸入。替代性地或附加性地,此輸入可以是以測試系統組態為基礎加以指定。例如,若二個區塊共同需要比測試系統現有者更多的資源,則並行測試該等區塊的流程可以不被該工具列入考慮。
輸入324,或任何其他適當的輸入,可以被工具350用以控制考慮候選測試流程或考慮相對於接腳之候選資源指派的順序。這些輸入可以被使用以控制該工具試圖解決的問題的規模。舉例而言,在一些實施例之中,根據一輸入,該工具可以嘗試產生測試區塊的每一個可能特有組合。在此情況之下,該工具可以嘗試決定是否能夠針對一個使每一區塊並行執行於單一流程步驟中的測試流程找出一資源對映關係。該工具亦可以試圖決定對於一個使每一區塊循序執行於多個其數目等於測試區塊數目之流程步驟中的測試流程,是否能夠找出一資源對映關係。該工具亦可以試圖決定對於中等數目的流程步驟,配合每一流程步驟中產生一特有測試流程的每一種測試區塊可能組合,是否能夠找出一資源對映關係。
雖然如此,其他輸入數值可以指定其他運作模式,使得不同的技術被用來產生一較少數目的候選流程。流程之產生可以是依據一啟發式方法,其提供在限制時間內識別出流程的高可能性,該等流程係將執行迅速且可為其找出一資源對映關係者。此等啟發式方法,舉例而言,可以按照從並行性最佳,因此可能最快,到並行性最差的順序產生候選流程。或者,其可以使用一疊代式方法,其中候選流程被隨機產生,但僅在其相對於一已找出一成功資源對映關係之先前候選流程的並行性更佳因而可能較快速時列入考慮。無論用以產生候選測試流程的技術為何,輸入可以限制所產生候選測試流程的數目或性質。
輸入326可以包含指定一測試期間所需資源之資訊。此資訊可以針對測試程序中的任何適當元素加以指定。舉例而言,其可以針對一接腳或一測試區塊指定資源規格。包含於輸入326中的資訊可以針對每一測試區塊中的每一接腳指定合併的資源使用方式。舉例而言,針對一測試區塊,一些接腳可能需要連接不同型態的資源。舉一特定實例,在一測試的一個步驟之中,可以在一接腳量測一漏損電流。在該測試的一個後續步驟之中,可能將一數位信號施加至同一接腳。因此,該接腳可能需要產生一數位信號以及能夠量測電流的資源。
儘管如此,其亦可以指定其他規格做為輸入326的一部分。例如,其可以輸入指定一群一起運作的接腳,因而必須搭配亦是一起運作的資源,的資訊。舉一特定實例,一接腳之集合可以形成一匯流排,其在測試期間係被供予具有一共同時序的時脈。
其他輸入可以界定工具350所產生之一預定測試計畫之特性。例如,輸入318可以界定被並行測試之部位之一預定數目。工具350可以利用此輸入決定待構建的資源指派方式所對應的接腳總數。
輸入320可以指定一測試器組態,透過工具350開發出的並行式測試計畫將在其中執行。此組態可以指定,除了其它事項之外,測試系統之中的資源數目及種類。工具350可以使用輸入320識別出可用以匹配接腳的資源。
其應理解,圖3係例示可以提供給工具的輸入之種類,在一些實施例之中,其可以提供不同或更多輸入。無論區塊210(圖2)接收的特定輸入為何,該等輸入均可被使用於一個產生候選測試計畫的流程之中,直到可以構建出有效的資源對映關係的一或多個候選測試計畫被識別出來為止。依據一些實施例,其產生候選並行式測試計畫,並依照一個迅速地引致一有效的資源指派之確認的順序,查驗一有效的資源指派方式,若有效的指派是不可能的,則迅速確認此事實,使得其可以測試其他的候選並行式測試計畫。
回到圖2,用以產生候選測試計畫的程序可以是以多種方式中的其中一種進行。在圖2的實例之中,其例示二種選項,取決於使用者輸入而選擇特定的選項。一第一選項,包含產生一組完整的候選流程,被例示為開始於區塊212。在區塊212之中,其列舉出可能的測試流程。在一些實施例之中,其可以產生所有的可能測試流程,而後加以排序。(當組合的數目夠小而電腦足以管理時可以使用此方式。)圖4A及4B例示候選測試流程之列舉。如同相關技術所習知,一個諸如晶粒132之裝置可以具有多個可以利用不同測試區塊測試的區段。在圖4A的極簡化實例之中,其例示測試區塊A、B、C及D。每一測試區塊均可以對應至裝置132的一部分。基本上,其產生每一測試區塊以測試晶粒132執行一可辨識功能的一個部分。然而,產生測試區塊的特定方式並非本發明之重點。
該等測試區塊提供晶粒132中多個部分並行測試之可能性。當晶粒132中的不同部分可以並行測試而執行於一區塊之中的動作不會干擾執行於另一測試區塊中的動作之時,只要能夠確認存在一有效的資源指派方式支援此並行式的執行,則有可能並行式地執行該等區塊。一並行式測試的一"流程"包含測試區塊並行執行以及循序執行者。
圖4B例示可以根據圖4A的測試區塊產生的候選流程。流程1例示測試區塊A、B、C及D之循序執行。相對地,流程2例示測試區塊A和B的並行執行,其後跟隨測試區塊C,而後是D,的循序執行。流程3係另一候選流程,其例示測試區塊A和B的並行執行,其後跟隨測試區塊C和D的並行執行。雖然未例示於圖4B之中,其他流程亦有可能,且可以藉由形成並行測試區塊的不同群組以及不同數目的並行執行測試區塊而產生。
候選流程可以是以任何適當的方式列舉於區塊212(圖2)。用以產生有限數目元素之組合的已知技術均可用以列舉候選流程。一旦被列舉之後,候選流程即可以被記錄於電腦記憶體中以供圖2程序的後續使用。
一旦候選流程被列舉之後,程序可以繼續執行區塊214,此處候選流程被過濾,而將可以確定無法導致依據該候選流程執行一測試時所必需的測試系統資源相對於接腳的有效指派方式的候選流程,自產生於區塊212的該組候選流程之中移除。
在區塊214之中,其可以根據任何適當的準則自列入考慮者選擇被移除的候選流程。若一候選流程指定二個實際上無法同時執行的測試區塊並行執行,則該候選流程可以自考慮清單中移除。舉例而言,若候選流程需要待測裝置中將會彼此干擾的部分並行執行,則其可以被移除。就一特定之實例而言,一RF傳送器核心的測試動作即可能會干擾一RF接收器核心之測試。因此,一個包含分別關聯RF傳送器及RF接收器的測試區塊的並行執行之測試流程即可以被移除。根據接腳重疊使用可以辨識出其他衝突。例如,圖4A例示測試區塊C測試晶粒132之中包含亦牽涉於測試區塊B和D中的接腳的部分。在此特定的實例之中,需要測試區塊C與測試區塊B或D並行執行的流程均可以被移除。在圖4B的實例之中,其可以基於此原因而在區塊214移除流程3。舉另一實例,當一組區塊之測試需要一群超過測試系統資源的獨立運作資源時,則該等區塊可以被確認為衝突,而需要此等區塊並行執行的候選流程可以被濾除。任何其他適當的準則均可以使用於區塊214以濾除可以被確認無法導致一可行的並行式測試計畫的候選流程。例如,輸入324,指定已知衝突,可以被區塊214運用以濾除流程。並且,其應理解,區塊214之功能不一定需要被實施成一個獨立於列舉流程組合之外的步驟。在某些情境之中,舉例而言,用於形成測試區塊組合的規則可以被套用以排除不被容許的流程產生於區塊212之中。
無論濾除候選流程的方式如何,程序可以繼續進行至區塊216,此處留下的候選流程被進一步處理。在區塊216之中,候選流程被排序以定義出一順序,其以該順序使用候選流程嘗試找出測試系統資源對於接腳之一有效的指派方式。在區塊216,其可以排序候選流程以依照估計測試時間從最快到到最慢定出流程的順序。每一流程的估計測試時間均可以根據輸入322或是每一測試區塊的測試執行時間可以自其決定出來的其他適當資訊進行計算。循序執行區塊的執行時間可以被加總以產生一流程執行時間的整體估計。舉例而言,需要測試區塊A、B、C而後D的循序執行的流程1,其測試執行時間可以藉由加總每一測試區塊A、B、C及D的測試執行時間的個別估計而計算出來。對於測試區塊C和D之執行跟隨於測試區塊B的執行之後的候選流程2而言,其測試執行時間可以藉由加總每一測試區塊B、C及D的測試執行時間的個別估計而計算出來。由於測試區塊A係與測試區塊B並行執行,故測試區塊A的執行時間部分並未納入流程2的整體測試執行時間。
無論候選流程之數目多少,均可以計算每一候選流程的整體測試執行時間並用以將候選流程依照測試執行時間從最快到最慢排出順序。此順序可以是以任何適當的方式取得。在一些實施例之中,排序可以意味重新排列有關每一候選流程之資訊,使得其以定義之順序實際儲存於電腦記憶體之中。儘管如此,在其他的實施例之中,排序可以意味儲存定義順序之資訊,而不改變資訊儲存於電腦記憶體中的方式。
一旦候選流程被排出順序之後,流程繼續進行至區塊218(圖2)。當執行係循此路徑進行之時,來自整套流程組合的候選流程均被列入考慮,以所提供之順序判定是否可識別出一成功的資源指派方式。在使用流程疊代器(flow iterator)的實施例之中,其可以類似地依序考慮候選流程。
用以產生候選流程之一第二選項例示於區塊215之處理。在區塊215之中,其執行建立一流程疊代器之處理。其可以藉由組構軟體以依據一或多個啟發式方法產生候選流程而建立流程疊代器。該疊代器可以疊代式地產生流程,此意味當一流程之處理完成時,即可以執行產生另一流程之處理。
此處之啟發式方法可以是由一程式實施以取得人為指定之邏輯。該邏輯之取得可以是以逐行來源碼之形式、透過一規則引擎執行之規則或者是以任何其他適當的方式。此處之啟發式方法取得有關一候選流程特性之邏輯,其係有關於候選流程將迅速執行及/或能夠為該流程識別出一成功的資源對映關係的可能性。
一啟發式方法之一特定實例係具有較少流程步驟的流程很可能快於具有較多流程步驟的流程。其他啟發式方法可以是根據一資源對映關係成功的可能性。例如,包含一具有共同含有構成測試器中之巨幅比例通道之接腳之測試區塊之流程步驟之流程,相較於包含於每一流程步驟中之最大數目接腳佔通道數目之一較小比例者,較不可能導至一成功的配置。其可以根據資源規格或是在試圖構建一介於接腳和資源之間的對映關係之前可以確定的其他準則,定義類似的啟發式方法。這些啟發式方法可以分別或一起運用。若一起運用,則可以採用任何適當的加權或其他技術以結合啟發式方法。
此處,其支援二種流程疊代器,而使用者輸入可以指定使用其中的一種或另一種。在此實例之中,其中一種疊代器可以實施一"智慧式疊代(smart-iterative)"方法以產生候選流程。一第二種疊代器可以實施一"智慧式隨機(smart-random)"方法。該智慧式疊代方法可以意味從並行性最佳的流程開始,而在後續的疊代之中,移到並行性較弱之流程。該智慧式隨機方法可以意味隨機產生流程,但是一旦找到一候選流程的一個資源對映關係,則僅提供預期執行時間較快的後續候選流程。
一個產生候選流程完整組合的方法最終可以導致最快的可能測試時間之確認。然而,即使對於數目不大的測試區塊,可能即存在大量的候選流程。為使該工具產生所有此等候選流程,並執行判定每一候選流程之一資源對映關係是否可能之計算,可能耗費無法接受的處理時間,特別是若該工具係以一互動式的方式作業之時。該"智慧式疊代"方法可以執行較快,且亦具有較佳的可能性以找出一個與最快的可能流程執行一樣快或幾乎一樣快的流程。因此,當處理完整組合顯得不切實際時,使用者可以選擇"智慧式疊代"。"智慧式隨機"可以提供比"智慧式疊代"方法更快的執行時間,且具有一更多數的測試區塊之測試可以加以選用。
在一些實施例之中,一工具可以包含執行有關產生候選流程的每一該等選項或其他選項功能之模組。一工具可以是實施為一群模組之集合以及另一接收指明待執行功能之使用者輸入的模組。該模組可以根據指定選擇性地召用其他模組。
在一些實施例之中,一些處理可以被超過一個選項共用。例如,其可以執行一相當於區塊214之過濾步驟,即使一流程疊代器被建立於區塊215處亦然。該過濾動作可以在候選流程被產生之後施用。替代性地或附加性地,達成一相當程度過濾的步驟可以被套用以阻止候選流程的產生。在疊代式地產生候選流程的實施例之中,試圖在候選流程產生時構建資源指派方式,過濾器準則可以被動態地修改。例如,有關產生於一次疊代中的衝突區塊之資訊可以影響用以產生一後續候選流程之過濾器準則。
無論一候選流程如何取得-藉由自一先前產生之集合中選擇或是疊代式地產生-之後均可以嘗試針對該候選流程找出一資源指派方式。在區塊218,該工具試圖針對一或多個候選流程找尋出一或多個有效的資源指派方式。該工具可以運用有關流程順序之資訊以優先搜尋對應於較快流程的有效指派方式。順序資訊可以藉由區塊216的排序動作取得,或是衍用產生自一流程疊代器之候選流程的順序。無論此一順序如何界定,藉由依此順序搜尋有效的指派方式,該工具可以在識別出一預定數目的有效資源指派方式之後停止有效指派方式之搜尋,因為在所例示的實施例之中,進一步的搜尋將不會找到支援更快並行式測試計畫之資源指派方式,意即其不太可能找到一個更有效率的測試計畫。儘管如此,在一些實施例之中,其可以一直嘗試構建出一個資源指派方式,直到候選流程的完整組合均已處理過為止。在其他的實施例之中,候選流程將一直產生,直到抵達一些終止條件為止。舉例而言,該終止點可以是經過一段時間或是執行過一特定數目之疊代。或者,其可以使用與測試執行時間或其他準則相關之一度量以判定其已評估一充足數目之候選流程。
識別出一有效資源指派之方式於以下配合圖5-8進一步詳細說明。無論以何種方式識別出有效的指派,程序均可以從區塊218繼續進行至220。在區塊220之中,該工具可以提供輸出,其包含在區塊218針對有效資源指派方式之搜尋識別出一或多個有效資源指派方式的情況下,指出並行式測試處理參數之輸出。在區塊218之搜尋並未識別出任何有效的資源指派方式之情形,區塊220之輸出可以指出其並未找到有效的資源指派方式,且可以包含指出為何無法找到一有效的資源指派方式之資訊。舉例而言,區塊220之輸出在該情況下可以包含指出一必要的資源,因為其導致無資源可用以指派。
圖3例示可以由執行圖2程序之工具350提供的輸出370。此等輸出可以是同時提供給一使用者。或者,其可以依照一使用者的請求而提供各種不同之輸出,諸如藉由操控圖形使用者介面(graphical user interface)中的控制項目。
圖3中的例示性輸出包含輸出372,其指出接腳及/或測試區塊之間的衝突,該衝突使得一需要衝突測試區塊並行執行之流程或者一測試接腳之並行式運作無法產生一有效的資源指派方式。在疊代式的實施例之中,除了輸出此資訊之外,該工具本身可以使用此產生於先前疊代中之資訊,而在之後的疊代中影響更多候選流程之產生。
輸出374可以指出被識別出的候選流程。在一些實施例之中,其可能識別出單一候選流程。輸出374可以包含所有在區塊212列出的流程或者是經過區塊214過濾之後者。
輸出376可以指出其有效資源指派方式在區塊218被識別出來之流程。在一些實施例之中,一工具可以輸出單一有效資源指派方式,使得其可以在一有效資源指派方式被識別出來之後即停止處理。在其他的實施例之中,一工具350可以指定多個流程選項,並將執行時間、所需要的系統組態或其他參數之數值納入該等選項,使得一使用者可以選擇一個具有預定特性之流程。
輸出378可以包含有關輸出376所指出的候選流程的測試時間之估計。輸出380可以指出在區塊218被識別出來之有效資源指派方式。若在區塊218針對有效資源指派之搜尋並未找到任何有效的資源指派方式,則輸出382可以指出針對完成資源對所有接腳之有效指派的衝突或資源短缺,或者提供工具350所產生的可以指明為何未找到一有效指派方式之資訊。
無論區塊222(圖2)所提供之輸出有何性質,工具350之一使用者均可以檢視該輸出,而後輸入包含其他數值之輸入310,使得工具可以根據其他參數搜尋有效的資源指派方式。舉例而言,在針對指定於輸入318的一些目標部位達成一有效資源指派的情形下,使用者可以請求工具350嘗試針對一更大數目的目標部位達成一個有效的資源指派。
反之,一輸出382可以指出阻礙一或多個候選流程之一成功資源對映關係之衝突或局限處。在一流程疊代器已啟用的實施例之中,此資訊可以在一次疊代之中產生並使用於一後續的疊代之中以影響候選流程之產生。此資訊可以替代性地或附加性地提供給一使用者。例如,當輸出382指出其未找到有效的指派方式之時,一使用者可以改變輸入318以降低目標測試部位的數目。
替代性地或附加性地,一使用者可以改變輸入320,指定一個不同的目標測試器組態。舉例而言,一使用者可以在輸出382指出其缺少一特定型態之資源而無法找到一有效的指派方式之時,在測試系統之中指定額外的資源。情形類似地,若輸出378顯示出一長於預定長度的測試時間估計,則一使用者可以在輸入320處指定具有額外資源的目標測試系統組態。反之,若輸出376及378指出一有效資源指派導致一測試流程之執行較預期快速,則使用者可以減少指定於輸入320處之一目標測試系統中的資源數量。以此種方式,一使用者可以操控輸入並觀察輸出370以迅速地確定一並行式測試計畫中的參數數值,此在測試系統資源與測試時間之間提供一符合所需之權衡。
如圖2所示,該程序可以疊代式地循迴圈返回區塊210,直到使用者在決策區塊222指出一預定之並行式測試計畫已產生為止。在此情形下,該程序可以繼續進行至區塊224。在區塊224處,工具350之輸出可以被視為界定出並行式測試計畫。資源指派方式,諸如產生於輸出380處者,可以被用以指定一DIB之結構,諸如連接一測試系統100內的資源的DIB 112,以在並行式測試計畫執行時測試可以耦接信號至一待測裝置的探測點。在區塊226處,此並行式測試計畫可以從而被使用於半導體裝置之生產。例如,一半導體裝置生產者可以依據該並行式測試計畫組構多個測試系統,且在裝置生產時依據該並行式測試計畫來測試裝置。通過測試之裝置可以被進一步處理並出貨給客戶。未通過測試之裝置可以被丟棄、二次加工、當成次級品出售或是以其他方式處理掉。
圖2程序之有效率執行可能取決於區塊218處之有效資源指派的迅速確認,或者在不存在有效資源指派時,迅速辨識出該情況。在一些實施例之中,一工具350可以迅速地辨識出一有效的指派方式是否可能,且若是如此,則亦藉由將被彙合之接腳群聚分類並針對每一群組確認其資源規格而完成該指派。該等規格可以被表示成資源引擎規格之形式。此外,測試系統內的儀器可以被表示成資源引擎,使得每一資源引擎均包含一組共同執行一共用功能之個別資源。
一介於資源規格與資源引擎之間的對映關係之一實例顯示於圖5。在圖5的實例之中,其例示三個儀器,數位儀器510A、510B以及510C。每一數位儀器均包含一群I/O接腳,各自連接至一測試系統通道110。該等輸入/輸出(I/O)通道各自均可以被視為一測試系統資源。每一此種資源均能夠產生或量測一數位信號。
儘管如此,圖5例示測試器通道110並非完全可彼此互換,因為數位儀器510A、510B及510C中的一些輸出能夠執行其他測試系統通道無法執行的功能。資源引擎可以根據連接至該等通道之儀器能夠執行的功能被定義為包含通道110之群組。
圖5的簡化實例例示可以根據功能將與數位儀器510A、510B及510C相連之通道分組的多種方式。該等分組各自均可以被視為一"資源引擎"。用以將通道110分群成資源引擎之一參數可以是藉由時域(time domain)。每一數位儀器510A、510B及510C均分別包含一相連之圖形產生器(pattern generator)512A、512B及512C。每一圖形產生器512A、512B及512C均可以被編程以在一分隔的時域之中運作。儘管如此,在所例示的實施例之中,某些圖形產生器可以同步,諸如圖形產生器512A及512C,使得與不同數位儀器510A、510B及510C相連之通道均可以運作於同一時域,但同一數位儀器的個別I/O無法被控制成在不同的時域之中運作。因此,與數位儀器510A相連之通道集合520A可以界定一提供位於一共同時域中之信號之資源引擎。同樣地,通道集合520B及520C可以各自界定出一具有一組位於一共同時域中之輸入/輸出之資源引擎。
儀器之其他功能可以界定出其他資源引擎。例如,數位儀器510A及510C各自分別配具一掃描控制器(scan controller)514A及514C。其可以控制掃描控制器514A及514C以在一相連的通道110中的一個通道做為可用於掃描測試之型態中的一個序列I/O。因此,與掃描控制器514A及514C相連之通道均可以各自被視為另一個資源引擎。因此,圖5顯示資源引擎522A,其包含通道組110中可以被耦接至掃描控制器514A者。情形類似地,資源引擎522C包含可以被耦接至掃描控制器514C之通道。資源引擎522A及522C各自均可以被視為一資源引擎,以一數位接腳或一掃描控制器之形式運作。
茲舉資源引擎之另一實例,圖5例示數位儀器510B亦包含一匯流排控制器(bus controller)516B。其可以在一測試期間操控匯流排控制器516B,以使得一群通道依據一匯流排協定同步運作。因此,圖5顯示一群通道110耦接至可以以一資源引擎524之形式運作的匯流排控制器516B。此例中,資源引擎524提供一組數位I/O通道,其亦可以做為一匯流排。雖然圖5之中例示四種資源引擎,但其可以根據一測試系統內的實際儀器,定義出任何數目及種類之資源引擎。除了該等例示於圖5中的資源引擎之外,資源引擎可以與能夠產生或量測任何預定型態信號之測試器通道相連,無論是以獨立或是彙合其他測試器通道之方式。此種資源引擎之實例可以包含可以產生或量測DC信號之數位通道、可以產生特定頻率信號之類比通道或是可以產生具有任意波形形狀之類比通道。
其應能領略,資源引擎所處理之信號最後均係經由安裝於測試系統100內的儀器產生或量測。然而,資源引擎係依據一諸如可藉由輸入320(圖3)指定之組態,由工具350建立成一目標測試系統之性能的表示方式。因此,資源引擎可以是由工具350以任何適當的方式定義出來,諸如藉由儲存資訊於電腦記憶體之中。同樣地,資源引擎規格係根據處理有關裝置和測試之輸入,配合有關一目標測試系統中實際資源之資訊,由工具350定義出來。資源引擎規格可以同樣地被表示成任何適當的形式,包含電腦記憶體中的記憶結構。
圖5亦例示構建測試接腳及測試系統通道間的指派的一種方式,其係根據測試接腳群組的相關資源引擎規格以及針對測試系統通道群組所定義之資源引擎。圖5例示待構建指派方式的三個測試部位532A、532B及532C。此一組態代表輸入318(圖3)指定一部位數目等於三的目標部位之情況。儘管如此,指派方式並行構建於上的部位數目對本發明而言並非關鍵。
部位532A、532B及532C各自均包含多個接腳,若能夠識別出一個有效的指派方式,則其各自均將被對映至一測試器通道110。工具350之運作可以藉由識別出每一部位之中的彙合測試接腳之群組,而後針對群組識別出一資源引擎規格。彙合測試接腳之識別可以是根據輸入310,包含接腳佈局312,其指定可以在一待測裝置的各個測試接腳上施用或感測之信號之功能。工具350可以套用彙合關係準則(association criteria),其可以被預先編定入工具350之中或者以其它方式取得而為該工具所用。每一彙合關係準則均可以指定應該被歸類在一起的接腳之特性,且若符合該等特性之接腳群組被識別出來,則其可以在識別資源引擎規格時被分入同一群組。
舉例而言,有關每一接腳的相關時域資訊可以使得工具350能夠識別出根據時域被彙合的接腳之群組。此一彙合關係可以運用於識別資源引擎規格,意即群組之中被對映至在同一時域之中提供信號之一資源引擎之相關接腳。
舉另一實例,指出一群接腳提供對一匯流排上之信號線之存取之資訊,可被用以形成一群彙合接腳。此資訊亦可以允許識別出該群組之一資源引擎規格,意即該群接腳被對映至可以產生或量測代表可以發生於一匯流排上之信號的相關信號之一資源引擎。
再舉另一實例,資訊可以允許分別耦接至一待測裝置內之一差動對(differential pair)之各個輸入端的接腳被彙合。對於此由彙合接腳構成之一群組,一資源引擎規格可以被定義為指出該接腳群組應該與形成一具有發出或量測一差動信號對功能之資源引擎之通道相連。
再舉另一實例,一接腳可以被指定為耦接至一序列測試埠。對於此一群組,即使該群組僅包含單一接腳,亦可以同樣地定義一資源引擎規格。此例中,該資源引擎規格指出該群組中之一接腳應該被指派至一個與數位來源及/或能夠提供一掃描控制功能的儀器之擷取功能相關之通道。
接腳之彙合群組之數目及種類可以取決於一待測裝置之設計及運作,且並非本發明之關鍵。此外,儘管圖5例示每一接腳均僅關聯單一資源引擎規格,但本發明並不受限於此種方式。對於一些待測裝置,單一接腳可以具有針對多重資源引擎之規格。並且其應理解,圖5係例示在某一時間瞬間的資源指派方式。資源引擎規格取決於在該時間由一接腳執行之功能。因此,一測試流程期間,不同的時間下可能指定不同的資源對映關係。在一些實施例之中,其可能藉由將一資源引擎在一群組中的接腳正被用於執行一第一功能時指派給該接腳群組而反映出此種時間依賴性。在一稍後的時點上,當該等接腳正被用於執行一不同功能時,該等資源可以被釋出。該等釋出的資源可以被分配給其他接腳,而其他資源可以被分配給該等接腳。在一些實施例之中,分配可以維持一流程步驟之持續時間。舉例而言,在一測試執行期間,測試系統可以在一流程步驟開始處分配資源,而在該流程步驟結束處做出對應的資源釋出。儘管如此,其應理解,資源指派的時效區間可以是任何適當的持續時間,且可以比一流程步驟更粗糙或更細緻。
無論對一待測裝置識別出的彙合接腳之群組之數目及種類為何,群組及相關資源引擎規格之確認使得其可以在不需要考慮接腳及通道間的每一種可能的對映關係下,針對接腳及通道間的適當對映關係加以搜尋。為了找到此對映關係,工具350嘗試將一資源引擎匹配至每一資源引擎規格,而匹配的方式係使得針對提供資源引擎指派之功能的諸如一儀器之一實體資源之運作的任何規則或其他準則被滿足。其可以是以規則或者彙合關係或者任何其他適當的形式提供此等規格。
例如,當彙合接腳之一群組550A已被識別出來,而一資源引擎規格已針對該群組定義,則一有效的對映關係將包含群組550A中之接腳相對於關聯一符合資源引擎規格之資源引擎之通道之一指派方式。在此實例之中,此一資源引擎包含一匯流排控制器。在圖5之單純實例之中,群組550A中的接腳根據此資訊被迅速地對應至與資源引擎524相連之通道。
其可以針對群組550B及550C構建類似的對映關係。由於圖5的測試系統組態僅包含一個具有一匯流排控制器的資源引擎,故工具350可以迅速地確定群組550B及550C之接腳將同樣地需要被對映至資源引擎524之通道。此一對映可以是一有效的指派,取決於實施資源引擎524之實體儀器之性能。若配合儀器510指定的規則指出資源引擎524具有一小於三的最大扇出(fan out),意味每一通道均無法同時被連接至三個接腳,則工具350可以迅速地識別出在一根據例示於圖5的測試系統組態之三個部位的並行式測試計畫之中,接腳和通道間之一有效的對映關係是不可能的。在此情況下,工具350可以輸出一指示,指出由於測試系統具有的匯流排控制器資源之數目不足,故指派失敗。反之,若資源引擎524之通道可以扇出三或更多接腳,則其可以迅速構建出從接腳群組550A、550B和550C到資源引擎524之通道的對映關係。而後其可以考慮其他接腳的分派。
確認資源引擎與具有相關資源引擎規格之接腳群組而後根據此資訊構建對映關係的方法可以被擴充成針對一待測裝置之其他接腳迅速地確認出對映關係。圖6例示可運用此方法之一程序。
圖6例示一個可以被用於如同區塊218中(圖2)之搜尋有效資源指派方式之程序。此程序可以藉由工具350或任何其他適當的方式實施。
圖6之程序可以於區塊600開始一迴圈。在區塊600之中,其選擇一候選流程。此一選擇可以是根據決定於區塊216之順序。儘管如此,在採用一流程疊代器的實施例之中,可以藉由自流程疊代器取得一候選流程而選定候選流程。舉出另一可能性,候選流程可以是以使用者輸入的形式提供。例如,在圖6之流程將被用以使一工具能夠輸出是否可針對候選流程構建出一成功的資源指派方式之一指示的情形下,可以提供此輸入。
無論候選流程如何選擇,在迴圈之中,其嘗試進行資源之指派。有效的指派方式必須允許所選擇候選流程之執行。開始於區塊600的迴圈可以一直重複,直到針對一候選流程,或者在一些實施例之中係針對一預定數目之候選流程,確認出一個成功的指派方式為止。
根據所選擇的候選流程,程序繼續進行至區塊610,進行測試系統資源及資源引擎之識別。在區塊610處識別資源引擎之處理可以是根據在區塊210(圖2)接收之輸入,包含界定一測試系統組態之輸入320。執行於區塊610之識別動作可以是以任何適當的方式執行。然而,做為一單純實例,區塊610之處理可以是根據描述包含於目標測試系統組態中之儀器的功能性的儲存資訊。舉例而言,其可以預先知悉某些型號的數位儀器,諸如數位儀器510A或510C,包含掃描控制器。根據目標測試器組態之中此型式數位儀器之數目,可以決定提供掃描控制的資源引擎之數目。同樣地,某些型號的數位儀器,諸如數位儀器510B,可以配具匯流排控制器。此種儀器之數目可以定義提供匯流排控制功能的資源引擎之數目。目標測試器組態中之儀器的其他特性可以定義出其他資源引擎,且其應能領略,圖5僅係可以根據一目標測試器組態而存在的資源引擎之數目及種類之一實例。
無論存在於一目標測試系統組態中之資源引擎之數目及種類為何,一旦資源引擎被確定,則程序可以繼續進行至區塊612。在區塊612,其可以確定接腳群組。其可以根據先前已定義之彙合關係確認出接腳群組,其中每一彙合關係均指出接腳分群之準則。每一彙合關係均可以指定一個介於一或多個接腳之間的關聯性,若此一關聯性存在於一待測裝置中的接腳群組,則該等接腳應該被彙合成為一群組的一部分。該等彙合關係可以被預先編定為該工具的一部分,或者可以根據使用者輸入被加入或更新。該等彙合關係可以被記錄於電腦記憶體之中,使得其可以被運作中的工具存取。當記錄於電腦記憶體之中時,該等彙合關係可以具有任何適當的形式,包含"若-則式(if-then)"規則或是被彙合的接腳的特性之一列表。
工具350可用的特定彙合關係可以取決於待測裝置之性質。儘管如此,一般而言,該等彙合關係可以確認出在執行一動作的過程中一起運作的接腳之群組。例如,輸入或輸出諸如可以出現於一匯流排上的信號之接腳可以加以彙合。輸入或輸出一差動信號之接腳亦可以被彙合。再舉另一實例,輸入或輸出可以被輸入或輸出至一位於一待測裝置上的掃描連接埠之信號之接腳可以類似地被彙合。耦接至在單一時域內之信號的接腳亦可以被彙合。儘管如此,其應可領略,工具350可以辨認的彙合關係之數目及種類並非本發明之關鍵。
在一些實施例之中,每一接腳均可以被彙合於單一群組。儘管如此,其應理解,在其他的實施例之中,一接腳可以被彙合於多重群組。儘管如此,在另一實施例之中,同一測試區塊進行期間可能具有多重功能規格之一接腳可以被表示成一個同時被彙合於所有功能規格之單一接腳之群組。這些規格在測試流程進行期間的不同時間亦可以不同。
在一些情況下,一接腳群組可以包含少至單一接腳,此可以被視為一"單調(flat)"接腳。在一些實施例之中,單調接腳可以是以異於一接腳群組之方式處理,而基於一逐接腳之形式完成資源指派。單調接腳可被用以代表在不同測試區塊之中具有不同功能之接腳,使得其具有不同的資源規格,或者在不同時間參與一或多個接腳群組。因此,該工具可以支援界定一包含在適當時間針對此等單調接腳分配及釋出資源之資源對映關係。儘管如此,其應理解,一群組中的接腳數目以及一測試流程進行期間資源指派至該群組維持的時效區間長度均並非本發明之關鍵。因此,其應理解,"單調"接腳可以在構建資源對接腳之指派方式時與接腳群組一同處理。
在一流程進行期間測試多個部位的實施例之中,其可以構成群組以代表每一部位中的接腳的體例。儘管如此,由於每一部位中的對應裝置均具有對應的功能,故對應的群組將存在於每一部位之中。
圖8例示基於彙合關係的接腳群組之構成。三個測試部位832A、832B及832C例示於圖8之中。然而,由於測試部位832B及832C中的群組均將對應至針對測試部位832A識別出之群組,故為簡單起見,其僅例示測試部位832A內的群組。在測試部位832A之中,接腳之間的彙合關係被識別出來。圖8中的實例例示接腳可以是超過一個彙合關係的一部分。因此,其形成群組,使得所有被彙合之接腳均位於同一群組之內。舉一特定實例,每一群組均可以是形成以包含滿足準則的最少可能數目之接腳,該準則係每一群組均包含與該群組中任何接腳有彙合關係之其他接腳。
其可以使用任何適當的運算技術以找出滿足此一準則的接腳之群組。在圖8的實例之中,其例示彙合關係840、842、844、850、852、854以及856。這些彙合關係可以界定出接腳之間任何適當的關係,諸如施加至該等接腳的信號之所需時序之間的關係,或是有關該等接腳所執行之功能之關係。針對測試部位832A中之接腳所識別出的彙合關係形成三個接腳群組。第一群組係由與彙合關係840相關的接腳所定義。此例中,與彙合關係850及852相關之接腳僅包含於群組1之內。群組2係由與彙合關係854相關的接腳所定義。群組3包含與彙合關係842相關的接腳以及經由彙合關係854及856與該等接腳產生關聯的額外接腳。以此種方式,每一群組均包含接腳,其各自均關聯群組中的至少一其他接腳,且均未與群組外部之接腳有關聯。類似的分群方式將適用於其他每一個測試部位832B及832C,雖然圖8之中並未明確例示。
回到圖6之程序,一旦群組在區塊612確認之後,即可以針對每一群組識別其資源引擎規格。根據包含於群組內的接腳之數目及種類,每一群組均可以包含多個資源引擎規格。圖8示意性地例示分別關聯至群組1、群組2以及群組3的資源引擎規格870、872以及874。該等資源引擎規格可以是藉由工具350之運作而形成且暫時被儲存於電腦記憶體之中以供該工具所執行的後續動作使用。用以儲存資源引擎規格的特定格式並非本發明之關鍵,且可以使用任何適當的表示方式。
其可以根據一群組內每一接腳之相關功能識別出資源引擎規格。其亦可以根據待測裝置的相關輸入指定該等規格,諸如定義每一測試接腳之結構及功能的資訊,或者是有關一測試程式之運作或被正被評估中的候選測試流程之資訊。其可以藉由運用工具350內所編定的資訊,將該等資訊對映至一特定之資源引擎規格。舉一特定實例,就群組1而言,資源引擎規格870已被確認其指出群組1之內的所有接腳均必須自運作於一單一時域(被表示為時域1)中的儀器接收信號,以使得一有效的指派方式存在。時域係相關技術所習知,且可以表示在一特定時域中之接腳係運作於與一特定時序源相干(coherent)之信號,該時序源可以是可編程的。藉由提供多個時域,不同的接腳可以運作於不同的時序,且該等時序無須同步。
此外,群組1需要十二個數位接腳,其必須符合進一步的其中三個係匯流排接腳、其中二個形成一差動對以及其中一個係一掃描接腳的"疊加規格"。儘管如此,其應理解,此等特定實例係例示可能存在於一群組中的資源引擎規格之性質,不同或額外的資源引擎規格可能存在於不同的群組以及不同型態的待測裝置。並且,其應能領略,雖然一接腳的資源引擎規格被顯示為指派單一資源引擎至該接腳,但其並不需要每一規格均以單一資源加以滿足。一資源引擎規格可以是由多個資源引擎加以滿足,其可以是諸如一儀器的同一實體資源的一部分,或者可以是分散於多個實體資源之間。此等多個資源引擎可以在測試流程的持續時間內或者流程進行期間中的任何時效區間中被指派給接腳。
規格872指出資源引擎規格必須藉由群組2之內的測試系統通道對接腳的指派加以滿足以使一有效的指派方式存在。在此實例之中,資源引擎規格872需要四個數位I/O,其不是位於時域1或時域2之中。資源引擎規格874指出群組3之中的接腳共同需要九個位於時域2之中的數位I/O。
儘管如此,其應理解,資源引擎規格可以是呈任何適當的形式且其可以有任何數目的資源引擎規格。在區塊612之中,其可以定義一組規格,其取得每一部位中的每一接腳之規格,包含每一接腳在一流程進行期間如何可以或不可以與其他接腳互動。此等規格可以定義每一部位中每一接腳的必需的或禁止的指派方式之特性。
無論針對多接腳群組以及未關聯一群組中其他接腳的單一接腳所識別出來的資源引擎規格之數目及種類為何,一旦資源引擎規格被確認之後,程序即可以繼續進行至區塊616。在區塊616之中,其可以針對每一單一接腳或多接腳群組之多組資源引擎規格加以評分。在所例示的實施例之中,該評分表示將資源引擎匹配至一群組之資源引擎規格的一個困難程度。在所例示的實施例之中,該評分係根據加權式的啟發式方法以及資源可取得性加以指派。儘管如此,此一評分可以是以任何適當的方式指派。舉例而言,其可以將一個正比於目標測試系統組態之中可以滿足該規格的資源引擎數目之數值指派給每一資源引擎規格。其可以根據具有一被同一型態資源引擎滿足之資源規格之群組數目替代性地或附加性地比例調整該數值。以此種方式,一個指派給每一資源引擎規格之數值可以隨著資源引擎型態之短缺而增加,同時亦正比於符合該資源引擎規格的資源引擎型態之需求度。
此外,該等數值可以根據資源引擎型態被加權。此一加權可以影響資源指派被試驗的順序。藉由改變其權重,可以改變資源指派被試驗的順序。因此,此一權重可被用於一搜尋資源引擎相對於資源引擎規格之有效指派方式的疊代式程序之中,藉由改變加權方式以變更被試驗的指派方式之性質。任何適當地改變順序之加權方式均可以替代性地或附加性地用以計算一評分。
使用於計算一評分的適當數值可以是以任何適當的方式決定。在一些實施例之中,該等數值可以是根據計算於區塊612的資源引擎規格之合計以及指定於區塊614之所有資源引擎之合計而動態地計算出來。在其他的實施例之中,該數值可以被預先計算並儲存於電腦記憶體之中以根據測試系統組態之歷史資料以及表示測試其他裝置之資源引擎規格之歷史資料配合工具350使用。
無論該等數值關聯資源引擎規格的特定方式為何,每一群組中的規格的該等數值均可以被結合以產生該群組之一整體評分。茲舉一實例,其可以藉由加總個別數值而將關聯每一群組的規格的數值加以結合。儘管如此,其他用以結合數值的方式亦有可能,諸如藉由形成一加權平均或選擇其最大值做為群組之評分。
無論用以計算每一群組之評分的特定方式為何,一旦評分被計算出來,程序可以繼續進行至區塊618。在區塊618之中,其可以將群組的多組規格,包含單調接腳,依照其個別的評分排出順序。區塊618之順序排定可以找出若資源以一隨機順序分配給接腳則最可能無法獲致一有效資源規格之群組。在後續的處理之中,執行於區塊618的順序排定可被用以將資源先指派給最具挑戰性的群組而建立候選資源指派方式。
區塊618可以採用除了評分之外的因素。舉一實例而言,關聯多個部位的對應群組可被排定順序以成為連續之形式。此一方式可以輔助在每一測試部位中導致對應群組之類似處置方式的某些啟發式指派方法之使用。
一旦群組在區塊618被排定順序,程序可以繼續進行至子程序630,此處工具350嘗試分派資源引擎以符合資源引擎規格。執行於子程序630之中的處理配合圖7進一步詳述如下。儘管如此,簡要言之,子程序630之中的處理需要一個構建資源引擎對資源引擎規格之候選指派方式的疊代式程序,使得實施資源引擎的實體資源能夠被對映至每一測試部位之中關聯該資源引擎規格之接腳。其係以區塊618對資源引擎規格排定之順序建立候選指派方式。當考慮每一資源引擎規格時,若一符合規格的資源引擎存在,則建立一候選指派方式。若多個資源引擎可以被指派以符合一規格,則套用啟發式方法以在可能的資源引擎之中進行選擇。若所有資源引擎規格均可建立候選指派方式,則子程序630結束於一個資源引擎對資源引擎規格的成功指派,其可用以定義接腳與連結個別資源的測試系統通道間之一對映關係。此一方式在一有效的資源指派方式存在時,提供一高可能性使其可以被迅速確定。
因此,若子程序630結束於一成功指派,則程序可以從決策區塊640繼續進行至區塊650,結果於此處輸出。輸出於區塊650之結果可以是呈任何適當之形式,包含如同上述的輸出370(圖3)之中形式。
在所例示的實施例之中,子程序630被建構以限制根據資源引擎規格之一特定排序找出一有效資源指派方式的嘗試次數。舉一特定實例,根據資源引擎規格之一特定排序將資源引擎規格匹配至資源引擎之嘗試可以進行二或三次。無論嘗試之次數多寡,若子程序630之處理並未找到一個將資源引擎規格成功對映至目標測試系統組態中之資源引擎之指派方式,則子程序630可以在無成功指派下結束。在此情況之下,程序可以從決策區塊640岔出而進入決策區塊641。
在決策區塊641之中,其考慮針對一候選流程尋找一有效對映關係的嘗試次數。如前所述,資源引擎規格在區塊618被排定順序,排定之方式係使得其在一有效資源對映存在時能快速產生一確認。在一些實施例之中,若針對一第一排序無法找到一有效的資源對映,則其可以嘗試根據一不同的排序構建一有效的指派方式。儘管如此,嘗試之次數可加以限制,因為若在前幾個較佳排序方式下無法找出一有效的指派方式,則找到一有效對映的可能性即隨之減少。因此,決策區塊641之處理需要決定是否要嘗試更多資源引擎規格之排序方式。
若是如此,則程序可以循著迴圈返回區塊616,而套用不同的加權方式至資源引擎型態,並重新計算資源引擎規格之順序排定。舉例而言,一個不同的加權方式可以對調二個均告短缺的資源引擎型態之相對權重。以此種方式,可以在每一次疊代使用順序已排定之資源引擎型態之不同排列組合。
反之,若其在決策區塊641決定不再嘗試資源引擎規格的其他排序方式,諸如由於嘗試之次數已超過門檻值,則程序可以岔出而進入決策區塊642。
在決策區塊642,程序可以再次岔出,取決於是否尚有候選流程待嘗試指派。嘗試指派的流程數目可以取決於工具之一操作者所選擇的特定方法或其他輸入。
在一流程疊代器已被建立的情況下,程序之進行可以根據下列狀況循迴圈返回區塊600,諸如所考慮的候選流程之數目、工具執行疊代已然經過的時間或者已找到一有效流程之候選流程之數目及/或適切性。
在一些實施例之中,若針對一第一、最快速流程無法構建出一有效的指派,則可以根據下一流程嘗試指派。如前配合圖2所述,候選流程可以從最快到最慢排定順序,此通常將產生一個在測試程序中從並行性較佳到並行性較差的順序排定。當並行的程度降低,群組之數目以及群組的相關規格可能亦隨之降低。舉例而言,當例示於圖8中的群組1及群組2之接腳被並行測試之時,規格之一係群組1中的接腳耦接的資源引擎運作的時域必須異於耦接至群組3中之接腳的資源引擎。此規格可以限定能夠提供測試信號給群組1中的接腳以及群組3中的接腳的資源引擎之種類。然而,若群組1及群組3之中的接腳係循序測試,則資源引擎必須運作於不同時域之規格即不再適用。其可以藉由,舉例而言,構成同一數位儀器一部分的資源引擎滿足群組1以及群組3的規格。因此,藉由選擇一個不同的流程並重複包含子程序630之程序,則可以找出一個成功的指派方式。
因此,程序可以循迴圈自決策區塊642返回區塊600,直到構建出一個成功的指派方式或者無其他流程殘留為止。若無其他的候選流程殘留,或者發生一逾時或其他終止條件,則程序進行可以從決策區塊642岔出而進入區塊650。在決策區塊650之中,可以提供諸如輸出370(圖3)之輸出。然而,當程序進行係經由來自決策區塊642之岔出路線而抵達區塊650之時,表示其針對任何可能的流程並未找到成功的指派,輸出於區塊650之結果可以指出此事實。例如,輸出382可以指出導致一資源引擎規格未能被滿足的系統資源衝突或局限處。
參見圖7,其中例示子程序630的進一步細節。圖7例示可以被執行以構建出符合資源引擎規格的指派方式之處理程序,該等資源引擎規格係針對區塊214中識別出之一特定可能流程所識別出者。
在圖7的程序進行中,接腳被依序處理。據此,圖7之程序開始於區塊710,代表針對每一接腳重複執行之一迴圈之起始。執行開始於區塊710的迴圈之時,其按照建立於區塊618處之順序處理接腳。
從區塊710進入決策區塊711。程序在決策區塊711岔出,取決於所選擇的接腳是否是已然構建出一指派方式之一多接腳群組的一部分。若其並非如此,則程序繼續進行至區塊712。在區塊712處,針對一正被處理之接腳,其識別出一組候選資源以符合該接腳以及其彙合群組中其他接腳的規格。在所例示的實施例之中,藉由識別出符合該組接腳之資源引擎規格之一或多個可用之資源引擎,而選擇一組候選資源。在此例之中,若一資源引擎尚未被納入一候選指派方式的一部分,則該資源引擎被視為可用。在一些情況下,一資源引擎可以具有一個可被指派以滿足超出一資源引擎規格之容量。在此種情況下,若一資源引擎尚未被指派給符合等於其容量之資源引擎規格,則該資源引擎仍被視為可用。舉一特定實例,一資源引擎可以具有一驅動多個接腳的扇出能力。若該資源引擎在一測試流程步驟期間尚未被指派以驅動其能夠驅動的接腳總數,則該資源引擎可以視為可用,使得其可以在該測試流程步驟執行期間針對指派被選擇以滿足進一步的資源引擎規格。
儘管如此,即使一資源引擎可用,其將只有在其能夠滿足處理中的該組規格之需求時,方能在區塊712處被選擇。在由於一資源引擎尚未被指派給其能夠扇出的接腳數目而被視為可用的實例之中,若該資源引擎無法符合該組規格的一或多個需求,則其仍不能被選擇。舉一實例而言,資源引擎可以被指派給要求該資源引擎運作於一不同於符合該組正在區塊712接受處理之規格的需求所必需的時序群組之接腳。在此情況下,一資源引擎在區塊712可能不夠資格被選為一候選資源引擎。
在一些情況中,符合正被處理之一組資源引擎規格的可用資源引擎可能不止一個。在此情況下,候選資源引擎的其中之一可以於區塊712處被選擇。一資源引擎之選擇可以是根據一或多個啟發式方法或者其他促使整組規格達成一可行指派方式之準則。例如,若二種資源引擎均能夠滿足一資源引擎規格,則可以選擇其種類較可取得之資源引擎。舉另一啟發式方法之實例,在一資源引擎被選擇以進行多部位並行測試的實施例之中,其可以選擇資源引擎使得同一資源引擎,若可能的話,被對映至每一部位中的對應接腳。舉另一特定實例,若一資源引擎可以提供三個差動對的來源信號,但處理中的該組規格需要一資源引擎提供一差動對之來源,則可以提供三個差動對的來源的資源引擎可以被優先選擇,使得同一資源引擎可以被指派給每一其他部位中的對應接腳對。一對應的啟發式方法適用於針對關聯其他部位中的群組的對應規格選擇資源,換言之,若一資源引擎先前已經被指派給另一部位中之一對應群組,但仍有可用容量,則該資源引擎將被優先選用。排定資源引擎規格之群組之順序以將不同部位中的對應接腳群組置於順序上的連續形式,對此啟發式方法之應用有所助益,其中在分配資源引擎至資源引擎規格時,將多個部位之中各自的對應群組之指派列入考慮。
其可以使用其他啟發式方法或其他準則以從符合一組規格已選定的資源引擎規格的多個可用資源引擎中進行選擇。舉另一實例,其可以選擇符合規格的最小資源引擎。舉此種啟發式方法之一實例,一資源引擎規格可以是針對一單一數位接腳。若一第一可用資源包含一個尚未分派之數位接腳,而一第二可用資源包含八個尚未分派之數位接腳,則區塊712將偏向於選擇具有一個尚未分派數位接腳之資源引擎。
其應理解,某些準則之應用可以導致彼此衝突之選擇。例如,一個選擇最小資源引擎之啟發式方法可能與一個指定選擇一資源引擎以符合多個部位中對應群組之規格的啟發式方法發生衝突。因此,其可以使用規則或其他準則決定其他選擇標準的優先順序。
無論區塊712中用以選擇一資源引擎的準則為何,在區塊712執行之後,程序可以根據區塊712中之一選擇是否可能而在決策區塊714岔出。若一選擇可能,則程序可以岔出而進入區塊720,此處所選資源引擎的相關測試系統資源可以被指派給處理中的該組規格的相關群組之接腳。在區塊722處,此指派可以被記錄為一產生中的資源候選指派方式的一部分。該指派可以是以任何適當的方式記錄。例如,識別出該指派之資訊可以被記錄於電腦記憶體內的資料結構之中。
若所有的規格組均已滿足,則在區塊722記錄的資訊可被用以定義一最終指派方式。此外,在圖7之程序正被執行之時,被記錄的資訊亦可以用以追蹤可用的資源引擎。並且,在區塊722儲存的資訊可以包含未被選擇的可用資源之一識別方式。如以下配合區塊732所述,若抵達程序之中無法找出任何資源引擎以滿足一資源規格之點,則已處理者可以被"回復"以測試先前在程序中一個不同的資源選擇是否將產生一有效的指派。
程序進行亦可以自決策區塊711通過區塊713而抵達決策區塊722。此岔出路線可以在一所選擇處理之接腳係先前處理一群組中的另一接腳時已構建出指派方式的該群組中的一部分時進入。在此情況之中,區塊713之處理導致該選擇的接腳被指派給該接腳群組中的下一個可用通道。然而,在所例示的實施例之中並未指派額外的資源。
程序可以從區塊722繼續進行至決策區塊724。在決策區塊724處,程序可以根據全組規格是否已被滿足而岔出。若尚有規格組殘留,則程序循迴圈自決策區塊724返回區塊710,於此處選擇下一組規格並進行處理以識別出符合該組規格的資源引擎。反之,若全組規格均已藉由候選資源引擎之指派而被滿足,則程序可以結束於終止點726。若程序抵達終止點726,則子程序630(圖6)將結束,表示已識別出一個成功的指派方式。
反之,若在區塊712無法選出符合一組規格的資源引擎,則程序可以在決策區塊714岔出至決策區塊730。在決策區塊730處,程序可以視先前尚未被選為候選資源者之中是否存在可替代任一已被選為候選資源的資源引擎者而再次岔出,而根據替代資源引擎取代選擇資源引擎之選擇嘗試一指派方式。因此,在此情況下,程序進行可以從決策區塊730岔出至區塊732。在區塊732處,在區塊722記錄的指派之狀態可以被回復至候選資源引擎之選擇進行之前的狀態,以測試一替代之選擇。
準備被一替代者取代的所選擇的候選資源,以及從而包括程序準備回復的點,均可以是以任何適當的方式決定。在一些實施例之中,存有尚未試過的替代資源引擎的最近選用的候選資源可以被取代。或者,存有尚未試過的替代者的最先選用的候選資源引擎可以被選擇並被取代。儘管如此,任何適當的技術均可被用以識別出一個準備被一替代性選擇取代之候選資源。舉例而言,準備被取代之候選資源引擎之選擇可以是根據取代發生時資源引擎的可取得性。儘管如此,其仍可以使用其他的啟發式方法選擇一個準備被取代的資源引擎。例如,其可以根據資源引擎與一群組中做為其指派對象的接腳之間的適配程度,選擇準備被取代的候選資源引擎。使資源引擎完全符合一群組之規格而未留下額外的容量供予其他接腳的指派方式,相對於一資源引擎未完全符合該群組之規格或者一指派資源引擎尚具有未使用容量的指派方式,可以被優先保留。替代性地或附加性地,類似的準則可以被套用於其中一資源引擎符合所有部位中對應接腳群組之規格的資源引擎指派。
無論指定候選資源引擎的方式為何,在候選資源指派之前的時間中於區塊722建立的指派記錄之狀態可以被重新建立。用以追蹤指派狀態的任何適當技術均可以在區塊722使用,並且在區塊732用以回復指派記錄狀態的特定處理可以取決於儲存指派記錄的特定格式。舉一簡單實例,在區塊722記錄的資訊可以是以數據框(frame)的形式記錄,每一數據框均定義程序狀態資訊,諸如已經構建完成之指派、可用之資源以及已試過的替代。回復可能需要刪除數據框,直到發現一個適當的數據框為止。儘管如此,在其他的實施例之中,可以利用一具有遞迴結構(recursion)之堆疊(stack)實施回復。
無論識別一先前指派資源以進行取代的方式為何,一旦適當的處理條件建立完成,程序即可以繼續進行至終止點734。程序之進行可以自終止點734跳回區塊712,此處程序可以根據嘗試構成一資源引擎對資源規格之指派之一替代資源引擎之選擇重新開始。
反之,若不存在待嘗試的進一步替代候選資源引擎或者因其他緣故已然抵達一終止條件,則程序之進行可以自決策區塊730岔出至區塊740。在區塊740,一記錄可以是由不可能選擇一候選資源引擎的資源引擎規格構成。此資訊可以做為輸出370的一部分,諸如在輸出382之中,指出目標測試器組態之中阻止一指派被構建出來的局限處。
程序從而可以繼續進行至終止點742。在終止點742處,圖7之程序可以結束,使得子程序630以一失敗的狀況告終。在此情況下,圖6的程序可以在決策區塊640岔出並循著失敗路徑行進至決策區塊641,此處程序可以以一不同的加權方式再次重複,或者行進至決策區塊642,此處程序可以以一不同的可能流程或其他適當的處理方式再次重複。程序之進行可以以此方式一直疊代直到一個資源引擎對資源引擎規格的成功指派方式被識別出來或者對每一可能流程均已嘗試指派且無法識別出有效的指派方式為止。
儘管如此,其應能領略,其他終止條件亦有可能。例如,結合圖6及圖7的程序可以在一預置的時間長度之後終止。同樣地,圖6及圖7的程序中的任一部分均可以在一預定的時間長度之後終止。舉例而言,決策區塊730處的程序可以岔出至區塊740,即使在一預定數目之替代嘗試或一預定長度的處理時間之後仍存在未試過的可用資源引擎符合該組規格亦然。
參見圖9,其示意性地例示實施一依據本發明一些實施例之工具之一電腦系統。實施該工具的電腦系統可以包含相關領域所習知的硬體組件。例如,其可以提供一或多個處理器以及輸入/輸出裝置做為此一電腦系統的一部分。此外,其可以提供電腦儲存媒體以儲存該工具處理或產生的資料。
在所例示的實施例之中,工具900可以實施成可以執行於一或多個處理器上的任何適當電腦語言所製備的電腦可執行指令。該等電腦可執行指令可以包含一對映元件(mapping component)910,其識別出在一待測裝置之測試接腳和支援一並行式測試計畫之一測試系統的通道之間是否能夠建立一對映關係。對映元件910可以實施諸如以上配合圖6和圖7所述之程序,以判定一有效的對映關係是否存在,且若是存在,則決定該對映關係。
對映元件910之運作可以是根據透過一介面元件912提供的輸入。介面元件912可以自一或多個來源接收輸入,且可以被實施成一個用以自工具900正於其上執行的電腦系統之一使用者接收輸入的圖形使用者介面。替代性地或附加性地,介面元件912可以包含一或多個應用程式介面(application programming interface;API)以使得工具900能夠自用以設計一裝置或測試程序的其他電腦化工具接收輸入。
圖9提供可能經由介面元件912輸入的資料型態之實例。舉例而言,其可以提供一裝置接腳佈局以具體定義一裝置之接腳。該接腳佈局可以是由一使用者透過一圖形使用者介面以手動方式輸入。儘管如此,在一些實施例之中,可以經由一應用程式介面提供一檔案或一檔案之識別代號以輸入該接腳佈局。在此實例之中,該裝置的接腳佈局可以被編碼於一個檔名為"Pinmap.txt"的檔案之中。
有關一目標測試器之組態之資訊可以類似地透過一圖形使用者介面或一應用程式介面提供。在此實例之中,目標測試器組態可以被編碼於一個檔名為"CurrentConfig.txt"的檔案之中。諸如輸入310(圖3)的其他輸入可以類似地透過介面元件912輸入。此等數值同樣地可以透過一圖形使用者介面或一API輸入。
介面元件914提供工具900之一輸出機制。任何適當的資料均可以經由介面元件914輸出,包括輸出370(圖3)中的任一個。此資訊可以經由一圖形使用者介面輸出,諸如藉由將該資訊顯示於一電腦螢幕之上或者在一連接至其上執行工具900的電腦的裝置上列印。替代性地或附加性地,該資訊可以經由一應用程式介面輸出,其可以將該資訊記錄於可以被其他電腦化系統存取的一個檔案或其他適當的資料結構之中,或者該資訊可以經由介面元件914內之一API直接被傳送至另一電腦化工具。以經由一API傳送該資訊為例,圖9顯示工具900可以產生多個檔案,該等檔案可被用以依據一指定的並行式測試計畫建立一個當裝置正被生產時用以測試該等裝置之測試環境。此資訊可以是以一種被一測試開發環境所採用的格式被記錄下來,諸如IG-XLTM 測試開發環境。在圖9的實例之中,諸如"SimulatedConfig.txt"以及"Pinmap.txt"以及"Channelmap.txt"等檔案均可以是以XML或是可以被一測試開發環境工具存取的其他適當語言產生出來。
該工具執行之結果可以被以一種人類可讀取且可編輯之格式錄存於一文件之中,諸如例示於圖9之中的"report(.doc)"文件。此份報告可以包含工具900所產生的任何資訊,諸如嘗試過的流程、未取得以致於無法完成一特定流程之對映關係的資源、可以建立對映關係的流程的計畫測試執行時間或者任何其他可能產生之資訊。
在圖9的實例之中,介面元件914亦可以經由一圖形使用者介面輸出由一使用者檢視之資訊,以當成將該資訊儲存於一或多個檔案中以供該使用者或其他電腦實施工具後續存取之替代或補充。舉例而言,工具900之輸出可以包含描述工具900所找出的最佳結果之資訊或是使用者自一組具有成功資源指派之候選流程選擇出來之資訊。其可以根據該流程以及針對達成該流程所識別出來的資源指派方式描述該最佳結果。配合該最佳流程,工具900可以對識別出來的流程提供估計的測試時間。
除了找出的該最佳結果之外,被識別出來的其他結果選項亦可以輸出類似的資訊。其可以在工具900於一第一結果被識別出來之後重複處理程序的情況下提供此等輸出,諸如例示於圖6的程序。該第一結果可以與所找出的最佳結果相關。藉由繼續進行程序以嘗試對其他流程識別出可行的對映關係,亦可能識別出其他結果。
圖9亦例示工具900執行於其上之一電腦系統可以包含一或多個資料儲存裝置,以容納工具900執行時所使用或產生的資訊。其例示資料儲存裝置930、932、934和936。在此實例之中,資料儲存裝置930及932可以儲存該工具運行時所產生的資料。而資料儲存裝置934及936可以儲存輸入該工具之資料。例如,資料儲存裝置930可以儲存資源引擎規格,諸如可以根據區塊610及612之處理指定者。資料儲存裝置932可以儲存候選對映關係之資訊,諸如可以在區塊722或744記錄者以及在區塊732變更者。
資料儲存裝置936可以儲存有關一待測裝置、測試系統或測試程式之資訊。資料儲存裝置934可以儲存工具900運作的各個階段中所使用的規則及彙合關係。例如,資料儲存裝置934可以儲存用以識別可用資源、於可用資源之中選擇、形成接腳之群組、進行其他選擇或者在該工具執行期間執行任何其他動作的規則。
以下參見圖10,其提供可以藉由介面元件912及914實施於一電腦顯示器上之一圖形使用者介面之實例。圖形使用者介面1010包含多個顯示區域,其中某些部分可用以接收使用者輸入而某些部分可用以提供輸出。其可以利用在相關領域用於實施圖形使用者介面的習知控制元素類型,透過圖形使用者介面1010輸入或輸出資訊。此等控制元素可以包含欄目(column)、表格(table)、下拉式列表(drop-down list)、勾選方塊(check box)、滑軌(slider)或是任何適當形式之顯示控制物件。
在圖10的實例之中,圖形使用者介面1010基本上被分成一輸入區域1020和一輸出區域1050。輸入區域1020可以包含多個子區域,諸如一使用者可以透過其輸入有關測試區塊資訊之子區域1022。所有顯示於子區域1022的資訊均可以由一使用者輸入。儘管如此,在一些實施例之中,有關測試區塊之資訊可以是在起始時自一測試產生程式或者是其他的電腦化資源取得。該資訊可以被顯示於子區域1022之中以供使用者觀看及修改。
此外,顯示子區域1022可以包含控制項目,使用者可以經由該等控制項目指定包含於並行式測試計畫中的特定測試區塊。在此實例之中,對於識別出來的每一測試區塊,其均包含一勾選方塊形式的控制項目以使得一使用者能夠指定測試區塊是否被包含於一個待自其建立出並行式測試計畫的候選流程之中。
子區域1022亦可以包含提供有關每一測試區塊之資訊的欄位。舉例而言,此等欄位可以指出測試區塊之一估計測試時間或是其他參數之數值。在一些情況下,此等欄位可以是可編輯之控制項目,使得使用者除了觀看資料之外尚可以更改資料,從而更改對工具900(圖9)之輸入。
輸入區域1020可以另外包含一子區域1030,可以在其中輸入有關接腳的資訊。對於待測裝置中的每一接腳,其可以指定測試期間用以在該接腳產生或量測測試信號的資源。在此實例之中,子區域1030係實施成一網格,每一接腳均由該網格中的一列代表之。每一列之中,可以輸入有關測試該接腳所必需的一或多種資源的資訊。與子區域1022一樣,子區域1030之中的資料可以是全部由使用者輸入,或者可以自用於開發測試程式的另一電腦化工具取得。此等數值之後可以由使用者加以編輯。
另一子區域1034可以被顯示為圖形使用者介面1010的一部分。在此實例之中,子區域1034提供有關一目標測試器組態以及一目標部位數目的資訊。與子區域1022及1030一樣,顯示於子區域1034之中的資訊可以自一檔案或者用以開發測試程式的另一電腦化工具所產生的任何適當形式之輸出中取得。此資訊可以顯示給使用者,並依照使用者的選擇加以修改。在此實例之中,測試器組態以一表格之形式顯示予使用者,表格中的每一列係有關可以出現於一目標測試系統組態中之一儀器。在此實例之中,可以提供一有限數目的儀器種類以安裝於一測試系統之中。儀器種類之選項可以顯現於一下拉式列表1036之中,使得一使用者可以輕易地選擇組態選項。表格的每一列均可以另外包含一欄位1038,可以指示所標出型態之儀器之數目。藉由下拉式列表控制項目1036之操控或者在欄位1038之數值輸入,使用者可以輕易地修改一目標測試系統組態。
其他區域可以提供予使用者,供其觀看或是修改可被工具900當成一輸入使用之任何參數之數值。舉例而言,子區域1040可以允許一使用者定義衝突。在此實例之中,子區域1040接受指出不能被一起測試之區塊的輸入。此資訊可以被工具900用以諸如過濾候選流程,如前述配合區塊214(圖2)之說明。
有關衝突之資訊亦可以呈現給使用者。在圖10的實例之中,輸出區域1050包含一子區域1060,其提供已被確認的衝突的圖形表示方式。描繪於子區域1060之中的衝突可以是根據經由子區域1040及/或1024輸入的使用者輸入、工具900之運作所識別出的衝突或是以任何其他適當方式所識別出的衝突。儘管如此,當子區域1060包含由多個來源所識別出的衝突,該等衝突可以被以顏色做為代碼,或是以其他方式在視覺上呈現出該衝突資訊之來源。舉例而言,不同的顏色編碼可被用以辨識由一使用者指定之衝突,其造成區塊214(圖2)的候選測試流程之剔除,以及由工具900之運作所識別出之衝突,舉例而言,其可以是在工具900運作期間於決策區塊640(圖6)被識別出來者。此等資訊可以有益於協助一測試工程師識別出一目標測試系統組態或一測試程式之變動,而可以導致一更具效率性的並行式測試程式。
子區域1070可被用以輸出嘗試為候選測試流程尋找有效資源指派方式之結果。在此實例之中,該資訊被呈現於一矩陣之中。矩陣中的每一列均包含有關一候選測試流程之資訊以及嘗試為該流程尋找一有效資源指派方式之結果。雖然候選測試流程的資訊可以是以任何適當的方式呈現,但在此實例之中,候選測試流程係被定義於一欄目的序列1072之中。序列1072中的每一欄目均提供有關納入以在流程的每一步驟之中並行執行的測試區塊之資訊。
與一流程相關聯的每一橫列均可以指示嘗試為該流程找出一有效資源指派方式之結果。在一流程因為缺乏一特定型態之可用資源以滿足資源規格而失敗的情形中,可以指出該資源型態。其可以替代性地或附加性地呈現有關流程以及為流程所構建或嘗試建立的資源指派的任何其他適當資訊。
圖形使用者介面1010可以包含其他控制項目以使得一使用者能夠操控有關工具900之運作的資料。舉例而言,控制項目1080係一專案選單控制項目。藉由操控控制項目1080,使用者可以輸入命令,使得該工具儲存使用者操作的資料。舉例而言,檔案控制項目1080之操作可以致使該工具將資訊儲存於資料儲存裝置934及/或資料儲存裝置936之中。
圖11提供一經過放大的圖形使用者介面1030,此時係處於使用者正與該工具互動之一替代運作狀態。圖形使用者介面1100可被用以針對接腳或彙合接腳之群組定義其規格。在此實例之中,圖形使用者介面1100包含一矩陣格式之顯示區域。矩陣的每一列均對應一接腳或接腳之群組。各橫列之資訊均可以指定可以發生於每一測試區塊執行期間的在一接腳或接腳群組上之規格。在此實例之中,使用者選擇橫列1110,使得使用者可以編輯橫列1110所指定的接腳群組之規格。
在此實例之中,橫列1110對應至接腳之一群組,該群組由一名稱"ctrlRF<0:2>"加以識別。特別是在此實例之中,使用者選擇了橫列1110中標示為"RF"之對應一測試區塊之欄位。輸入於所選欄位1112之中的資料,針對指定測試區塊執行期間的指定接腳群組,藉由儀器種類指定其規格。在此實例之中,欄位1112中的資料表示使用者已指定二種必要的資源。
此外,圖11例示一使用者存取了一連串的下拉式列表1114A、1114B和1114C。這些列表針對指定於欄位1112中的資源規格指定進一步的規格。舉一特定實例,下拉式列表1114A允許使用者在欄位1112之中多加入另一資源或是針對已指定於該欄位中的資源指定其特性。此例中,使用者選擇對標示為UP800_DigSrc的資源規格指定其特性。
在列表1114B之中,使用者可以依據需要選擇移除該資源之標示,或者可以對該資源指定特殊的疊加規格。在此情況下,其提供選項給使用者以針對選定的資源指定其運作模式。特別是在此實例之中,使用者經由列表1114B選擇將該資源運作於一特別的並行式使用模式(Special Concurrent Usage Mode)納入為欄位1112B中的規格的一部分。
經由下拉式列表1114C,使用者可以指定所選定資源的特殊共同使用模式的進一步特性。此等下拉式列表1114A、1114B及1114C可以被填入儲存於資料儲存裝置934之中的資訊,定義一目標測試系統組態,其定義可用之資源組以及有關儀器之資訊,其定義使用者可以指定的資源性質及參數。儘管如此,該等顯示可以是以任何適當的方式建立。
圖12顯示一經過放大的子區域1070。圖12例示一訊息1210,其係針對一例示於子區域1070中之流程所顯示。在此實例之中,訊息1210針對為何無法為一流程找到有效的資源指派提供回饋訊息給一使用者。因此,除了指出一嘗試指派失敗之外,訊息1210亦針對為何該嘗試指派失敗提供一原因。此例中,該嘗試指派之失敗係由於一資源匹配之問題。此外,工具900可以被編程以建議可以避免一特定流程失敗之對策。此例中,該工具提議加入一包含該型資源之儀器,該型資源在流程的嘗試資源指派期間無法取得。因此,圖12提供一回饋訊息之實例,此允許使用者疊代式地執行該工具,在每一次疊代之中更加洞悉一有效率並行式測試計畫之特性、修改對該工具之輸入、以及測試一更佳之並行式測試計畫是否已然達成。
圖13例示一圖形使用者介面,使用者可以透過其輸入命令以使得工具900產生一或多個輸出。圖形使用者介面1310包含一下拉式選單控制項目1314,使用者可以透過其選擇及輸出格式。其可以對使用者顯示多種輸出格式選項。舉例而言,使用者可以指定一報告輸出格式(Report)。依照此一選擇,工具900可以產生一份報告1320。在此實例之中,報告1320之格式被訂為一具有內嵌圖形之word文件,提供有關並行式測試計畫之資訊。在此實例之中,產生的報告1320以表格及圖案之形式描述測試區塊之中能夠並行執行者以及存在衝突而無法並行執行者。同一資訊以繪圖形式呈現,測試區塊的容許及衝突組合均以矩陣中之陰影例示。儘管如此,其應理解,工具900可以產生任何適當格式之報告。
此外,下拉式選單1314包含其他輸出格式。可選擇的輸出格式之一係一通道對映圖。一通道對映圖1330例示於圖中。在此實例之中,一通道對映圖可以被記錄為一試算表(spreadsheet)之形式,指出裝置接腳與測試系統通道之間的相關性。在一多部位並行式測試計畫之中,其可以提供每一部位中一裝置接腳之一對映關係。通道對映圖1330可以是以該領域中之習知格式呈現,雖然任何適當的格式均可使用。
圖14例示另一圖形使用者介面1400,其可以替代性地或附加性地被用以提供輸入至一工具350。在此實例之中,使用者介面1400包含多個顯示區域,使用者可以透過其指定該工具之一預定運作方式。
顯示區域1410允許一使用者輸入控制該工具運作模式之參數。如前所述,該工具可被用以,針對一特定裝置、測試及測試系統組態,嘗試識別出一有效率之流程以實行該測試。儘管如此,其亦可以支援其他運作模式,諸如該工具驗證一使用者提供的候選流程是否能夠識別出一資源對映關係。經由顯示區域1410鍵入的輸入可以指定運作之模式。
在此實例之中,使用者提供之輸入指出該工具運作之模式係嘗試找出一個能夠為其構建出一有效資源指派的流程。此例中,該工具可以被組構成使用多種方式中的一種產生候選流程。如前所述,其可以包含一整組演算法,對應至區塊212(圖2)中的處理。或者,使用者可以選擇取用由一流程疊代器所產生的候選流程。此種情況下,使用者可以指定一種疊代器。此等選項例示於顯示區域1410之中,圖中顯示其選擇智慧式疊代(Smart-Iterative)的候選流程產生方式。
顯示區域1410同時亦包含其他輸入以及可用以組構該工具的資訊。例如,其可以指定有關該工具執行多久之後將回復至智慧式隨機(Smart-Random)模式之參數。同時亦如圖中所例示,該工具可以對一個完整搜尋將嘗試的區塊數目加上一限制。該限制在此實例之中係顯示為13,但其應理解,此區塊之數目,或甚至此一限制之存在,均非本發明所必需。
顯示區域1420包含其他輸入區域,使用者可以透過其對控制該工具可能執行多久的參數輸入數值。此等參數可以指定該工具的整體執行或任一運作階段的逾時時間長度,諸如該工具在結束搜尋候選流程之有效資源指派之前將執行多久。替代性地或附加性地,其亦可以指定影響運作時間或輸出產生的參數之數值。例如,此等數值可以指定被儲存的有效指派方式的數目。
顯示區域1420提供一機制供使用者存取更多設定。顯示區域1440提供一機制供使用者啟動套用(Apply)該等設定或召用其他功能的控制項目,諸如令該工具建議設定(Suggest Settings)。
圖14B例示另一使用者介面。在此實例之中,圖14B之使用者介面提供一機制供使用者指定一測試系統組態。此介面可用以取代使用者介面1034(圖10)。儘管如此,圖14B之介面包含一機制以讓使用者可以指定一每一安裝儀器均可以安裝於其中的測試槽。如前所述的建立一對映圖之一對映器可以選擇儀器以根據該等儀器在一測試系統內的位置將其繞設至特定之接腳。因此,其可以經由圖14B的使用者介面提供此資訊。
以上說明本發明至少一實施例之一些特色,其應可以體認,熟習相關技術者將能輕易地建構出各種改造、修改、及改良。
例如,圖1例示做為一晶圓之一部分的裝置之測試。無論待測裝置之形式為何,上述之工具均可用以建立一並行式測試計畫。舉例而言,在一些實施例之中,其可以測試經過封裝之部件,而在其他的實施例之中,其可以測試多晶片模組。不同形式的測試裝置可能需要不同的機械結構以實施測試系統資源與測試接腳之間的對映關係,但此等選項亦已被設想到,且可以經由使用本文所述之工具而使其成為可能。
此外,一資源引擎在一測試流程中可用的時效區間可以是構建出一資源引擎指派方式之影響因素。在一指派可以在一測試流程期間動態改變的情形中,可以在一流程中的不同時點指派同一資源引擎以滿足不同規格。若DIB或測試系統的其他部分包含能夠改變通道與接腳間實體連接之開關,則此種在一流程進行期間的指派方式改變可以變成可能。或者,利用其中某些I/O之功能可以改變之儀器,則此種指派方式改變可以變成可能。舉一特定實例,一個其I/O連接至多個通道之儀器可以支援一序列連接埠,但在任一時點,該序列連接埠之功能可以提供於耦接該儀器的任一通道。其可以將代表此序列連接埠功能之資源引擎在不同時點指派給耦接至連接該儀器之不同通道的不同接腳,只要該等接腳之中並無任何二個接腳在一流程進行期間中在同一時點需要序列連接埠功能。對於判定時序上的衝突是否可能存在,其可以針對一測試區塊或一流程之其他適當的時序區間進行動態指派。其可以構建同一資源引擎之多重指派,只要其不違反規定任何此等區間內一資源引擎被容許的同時連接數目之規則。
此等改造、修改、及改良均被視為本揭示的一部分,且被視為落入本發明之精神和範疇之內。因此,前述之說明及圖式均僅係做為範例。
本發明之上述實施例均可以實施成多種形式中的任一種。例如,該等實施例可以是利用硬體、軟體或其組合形式實施。當以軟體實施之時,軟體程式碼可以執行於任何適當的處理器或處理器之群集,無論其是存在於單一電腦之中或是分散於多具電腦之間皆然。此等處理器可以實施成積體電路,使一或多個處理器位於一積體電路組件之中。然而,一處理器可以是利用任何適當形式之電路實施。
此外,其應理解,一電腦可以實施成多種形式中的任一種,諸如機架式電腦(rack-mounted computer)、桌上型電腦、膝上型電腦或平板電腦。另外,一電腦可以被嵌入一通常未被視為電腦但具有適當處理功能的裝置之中,包含個人數位助理(PDA)、智慧型手機或任何其他適當的可攜式或固定式電子裝置。
並且,一電腦可以具有一或多個輸入及輸出裝置。該等裝置,除了其他功能之外,亦可被用以呈現一使用者介面。可被用以提供一使用者介面的輸出裝置之實例包括用於輸出視覺呈現形式的印表機或顯示螢幕以及用於輸出聽覺呈現形式的揚聲器或其他聲音產生裝置。可被當成一使用者介面的輸入裝置之實例包括鍵盤、以及諸如滑鼠、觸控式面板(touch pad)、及數位手寫板(digitizing tablet)等指向裝置。舉另一實例,一電腦可以透過語音辨認或其他聲音格式接收輸入資訊。
該等電腦可以經由一或多個任何適當形式之網路彼此互連,包含區域網路(local area network)或廣域網路(wide area network),諸如企業網路或網際網路(Internet)。此等網路可以是基於任何適當之技術且可以依據任何適當之協定運作,並且可以包含無線網路、有線網路或光纖網路。
此外,概述於此之各種方法或程序均可以編碼為可執行於使用任一種作業系統或平台的一或多個處理器上的軟體。另外,此等軟體可以是利用任一種適當之程式語言及/或編程或腳本工具寫成,且亦可以被編譯成可執行的機器語言程式碼或執行於框架(framework)或虛擬機器(virtual machine)上的中介碼。
就此觀點而言,本發明可以實施成一電腦可讀取媒體(或多個電腦可讀取媒體)(例如,電腦記憶體、一或多片軟性碟片(floppy disc)、光碟(CD)、光學碟片(optical disc)、數位視訊碟片(DVD)、磁帶、快閃記憶體(flash memory)、現場可程式邏輯閘陣列(Field Programmable Gate Array)或其他半導體元件形式之電路結構或是其他非暫態之實體電腦儲存媒體),內含一或多個程式之編碼,當該等程式執行於一或多個電腦或其他處理器上之時,執行實施本發明前述各種實施例之方法。該一或多個電腦可讀取媒體可以是可轉移的,使得儲存於其上的一或多個程式可以被載入一或多個不同的電腦或其他處理器上,以實施本發明如上所述的各種特色。在本說明書之中,"電腦可讀取儲存媒體"一詞僅包含一可被視為一產品(意即,生產之物品)或一機器的電腦可讀取媒體。
"程式"或"軟體"等詞在本文之中係就其一般之意義泛指任何型態之電腦程式碼或者是可用以編程一電腦或其他處理器以實施本發明如上所述的各種特色的電腦可執行指令集。此外,其應理解,依據實施例之一特色,當運行時執行本發明之方法的一或多個電腦程式不一定是位於單一電腦或處理器之上,而是可以以模組化之形式分散於數個不同電腦或處理器之中以實施本發明的各種特色。
電腦可執行指令可以是呈許多形式,諸如程式模組,由一或多個電腦或其他裝置執行。一般而言,程式模組包含執行特定作業或實施特定抽象資料型態的常式(routine)、程式、物件、元件、資料結構…等等。基本上,程式模組之功能可以隨各個實施例之需要加以結合或分散。
此外,資料結構可以是以任何適當之形式儲存於電腦可讀取媒體之中。為了例示簡明起見,可能將資料結構顯示成具有經由該資料結構中之位置彼此關聯之欄位。此種關聯性可以藉由將一電腦可讀取媒體之中表示欄位之間關聯性之位置指派給欄位做為其儲存而同樣地達成。然而,任何適當之機制均可被用以建立一資料結構中欄位的資訊之間的關聯性,包括透過使用指標(pointer)、標籤或其他建立資料元素之間關聯性之機制。
其可以單獨、組合或者是未明確於前述實施例之中論及的各種配置形式運用本發明的各種特色,因此其應用並未受限於闡述於前述說明之中或例示於圖式之中的組件之細節及配置。例如,在一實施例之中所述之特色可以以任何方式結合在其他的實施例之中所述之特色。
並且,本發明可以實施成一方法,其一實例已然提供於前。該方法各部分所執行之動作可以是以任何適當的順序進行。因此,其可以以異於例示順序執行所述動作而建立實施例,包括同時執行某些動作,儘管該等動作在例示的實施例之中係顯示為循序之動作。舉一特定情況為例,圖6顯示區塊610、612及614、616及618出現於一開始於區塊600的迴圈之中。在一些實施例之中,位於某些或所有區塊610、612及614、616及618之中的處理可以是與一特定候選流程無關。在該情形下,某些或所有的區塊610、612及614、616及618可以在區塊600之前執行。
在申請專利範圍中使用諸如"第一"、"第二"、"第三"等序數修飾一請求構件,其本身並非意味任何優先性、前後性或者一請求構件相對於另一請求構件之順序或是一方法中執行動作之時間順序,而僅是用以做為標記以對具有一特定名稱之一請求構件和具有同一名稱(除了使用的序數部分)之另一構件加以區分,以明確識別請求構件。
此外,本文所使用的用詞及術語均係針對說明之目的而不應視為限制。文中所使用的"包含"、"包括"或"具有"、"內含"、"涉入"等詞及其變異,均意味含納其後所列之項目及其等效以及額外之項目。
100...測試系統
102...儀器之集合
104A-C...實體資源
106A-C...實體資源
108A-C...實體資源
110...通道
112...裝置介面板(DIB)
122...探針
130...晶圓
132...晶粒
210-226...程序區塊
310...輸入之集合
312-326...輸入
350...排程及指派工具
370...輸出之集合
372-382...輸出
510A-C...數位儀器
512A-C...圖形產生器
514A...掃描控制器
514C...掃描控制器
516B...匯流排控制器
520A-C...通道集合
522A...資源引擎
522C...資源引擎
524...資源引擎
532A-C...測試部位
550A-C...接腳群組
600-650...程序區塊
710-734...程序區塊
832A-C...測試部位
840-856...彙合關係
870-874...資源引擎規格
900...工具
910...對映元件
912...介面元件
914...介面元件
930-936...資料儲存裝置
1010...圖形使用者介面
1020...輸入區域
1022...區域
1024...子區域
1030...子區域
1034...子區域
1036...下拉式列表
1038...欄位
1040...子區域
1050...輸出區域
1060...子區域
1070...子區域
1072...欄目序列
1080...檔案控制項目
1110...橫列
1112...欄位
1114A-C...下拉式列表
1210...訊息
1310...圖形使用者介面
1314...下拉式選單
1320...報告
1330...通道對映圖
1400...圖形使用者介面
1410...顯示區域
1420...顯示區域
1440...顯示區域
附錄之圖式不必然按比例繪製。圖式之中,例示於不同圖面中的每一相同或近乎相同之組件均以類似之編號表示。為求清楚之目的,並非每一組件在每一圖式之中均有標示。圖式之中:
圖1係一可使用於半導體裝置之製造的測試系統之示意圖,其採用利用一依據本發明一些實施例之工具所開發出之一並行式測試計畫;
圖2係依據本發明一些實施例之一用以開發一並行式測試計畫之工具之運作方法之一高階流程圖;
圖3係依據本發明一些實施例之一適用於開發一並行式測試計畫之工具之輸入及輸出之一示意圖;
圖4A係一具有測試區塊之半導體裝置之示意圖,其可以依據本發明之一些實施例針對該等測試區塊開發一並行式測試程式;
圖4B係針對圖4A之半導體裝置之測試流程之列舉之示意圖;
圖5係一群彙合接腳之資源引擎規格與一群形成一資源引擎之相關測試系統通道之間之一對映關係之示意圖;
圖6係藉由將資源引擎規格匹配至資源引擎而將測試系統通道指派給接腳之一程序的流程圖;
圖7係一嘗試識別出一候選流程之可行指派方式之子程序的流程圖,該候選流程可以是以圖6之程序的一部分之形式疊代式地執行;
圖8係針對彙合接腳之群組所識別出之資源規格之集合之示意圖;
圖9係一依據本發明一些實施例之工具在一電腦系統中之一實施方式之示意圖;
圖10係一示範性圖形使用者介面之例圖,依據本發明的一些實施例,使用者可以經由該介面提供使用於建立一並行式測試計畫之參數數值;
圖11係一示範性圖形使用者介面之例圖,依據本發明之一些實施例,使用者可以經由該介面輸入前後相關聯之特定需求;
圖12係一示範性圖形使用者介面之例圖,依據本發明的一些實施例,使用者可以經由該介面自一構建一並行式測試計畫之工具接收其輸出;
圖13係一示範性圖形使用者介面之例圖,依據本發明的一些實施例,使用者可以經由該介面接收一工具之輸出;
圖14A及14B係更多示範性使用者介面之例圖,依據本發明的一些實施例,使用者可以經由該等介面輸入一工具所用之資訊。
600-650...程序區塊

Claims (40)

  1. 一種操控運算裝置以針對具有複數接腳之裝置產生並行式測試計畫之資訊的方法,該測試計畫係待由一具有複數資源的測試系統執行,該方法包含:以至少一處理器:a)針對複數群組針腳的每一群組針腳識別出一組資源規格,其中該組資源規格包括需要用於執行該複數群組針腳的該群組針腳的測試的資源;b)識別出複數組測試系統資源,該複數組的每一組均包含共同滿足一規格之一或多個測試系統資源;以及c)將該複數組測試系統資源中之多組測試系統資源與該複數群組中之個別群組進行匹配。
  2. 如申請專利範圍第1項所述之方法,其中:該複數組中之該多組具有一順序;以及該匹配包含將該複數群組中之一群組依照該順序指派給該多組中的每一組,直到一群組被指派給該複數組中的每一組為止。
  3. 如申請專利範圍第2項所述之方法,更包含:d)指派一評分給該複數組之中的每一組,該評分表示將資源匹配至該組之規格的困難程度;以及e)根據指派給該複數組之該評分建立該複數組之該順序。
  4. 如申請專利範圍第1項所述之方法,其中:該方法更包含: d)在將該複數群組中之一群組匹配至該複數組中之一組之後,將該組之中的資源指派給該群組之中的接腳;該複數組中之多組具有一順序;並且該匹配包含將該複數群組中之一群組依照該順序指派給該多組之中的每一組,直到依照該順序抵達一下一組時已無尚未指派的資源滿足該下一組之規格為止。
  5. 如申請專利範圍第4項所述之方法,更包含:e)當已無尚未指派的資源滿足該下一組之規格時,重複動作c),將該複數群組中的至少一不同群組與依照該順序位於該下一組之前的一組進行匹配。
  6. 如申請專利範圍第5項所述之方法,更包含:f)重複動作e),直到一群組被指派給該複數組中的每一組為止;以及g)根據在動作d)中測試器資源對接腳的指派方式產生接腳與測試器資源間之一對映關係。
  7. 如申請專利範圍第6項所述之方法,其中:該測試包含複數區塊;且與每一群組接腳相關的該組資源規格包含該測試的所有區塊進行期間該群組中的接腳的共同資源規格。
  8. 如申請專利範圍第6項所述之方法,其中:該測試包含複數區塊;且與每一群組接腳相關的該組資源規格包含該測試的部分區塊進行期間該群組中的接腳的共同資源規格。
  9. 如申請專利範圍第1項所述之方法,其中:該方法更 包含:d)識別出複數可能測試流程;以及e)根據推斷之測試執行時間對該可能測試流程進行排序;針對一第一測試流程執行動作a);當測試系統資源無法被指派給該複數接腳中之全部以滿足該複數群組中全部的多組規格時,針對第二測試流程重複至少動作a)及c),該第二測試流程依照該順序跟隨於該第一測試流程之後。
  10. 一種製造半導體裝置的方法,該方法包含:依據申請專利範圍第1項之方法,產生一測試計畫;依據該產生之測試計畫測試裝置以做為一製造動作的一部分;以及至少部分地根據測試之結果,在經過測試的裝置的製造程序期間,選擇至少一製程步驟。
  11. 一種至少一非暫存電腦儲存媒體,包含複數電腦可執行指令,當由該至少一非暫存電腦儲存媒體執行該複數指令時,實施一種與一使用者互動之方法,該方法包含:a)針對複數群組針腳的每一群組針腳識別出一組資源規格,其中該組資源規格包括需要用於執行該複數群組針腳的該群組針腳的測試的資源;b)識別出複數組測試系統資源,該複數組的每一組各自均包含共同滿足一規格之一或多個測試系統資源;以及c)將該複數組測試系統資源中之多組測試系統資源與 該複數群組中之個別群組進行匹配。
  12. 如申請專利範圍第11項所述之至少一非暫存電腦儲存媒體,其中:識別出複數群組接腳包含識別出在一候選流程之一流程步驟中並行執行之區塊的相關群組;該方法更包含,當該複數組不足以將該複數群組中之每一群組匹配至一組時,指出該候選流程已失敗。
  13. 如申請專利範圍第12項所述之至少一非暫存電腦儲存媒體,其中:該方法更包含接收指定該候選流程之使用者輸入。
  14. 如申請專利範圍第13項所述之至少一非暫存電腦儲存媒體,其中:該方法包含針對該候選流程中之複數流程步驟的每一流程步驟疊代式地重複動作a)、b)及c),直到該候選流程失敗或者該複數群組的每一群組分別被匹配至該複數組中之一組。
  15. 一種操控運算裝置以產生用於至少一裝置之並行式測試之計畫之資訊的方法,該至少一裝置的每一裝置均具有複數接腳,且該測試係由一具有可連接至該複數接腳的複數資源的測試系統執行,該並行式測試包含複數區塊,該方法包含:以至少一處理器,疊代式地執行包含以下步驟之程序:依據一啟發式方法識別出一候選流程,該候選流程對區塊進行排程以在區塊之間避開先前識別出之衝突; 針對該候選流程:依據該候選流程執行該並行式測試,將該複數資源中的多個資源嘗試分配給該複數接腳中的多個接腳;當該嘗試分配導致一成功的資源分配之時,利用該候選流程來計算執行該並行式測試的測試時間;當由於測試區塊間之一衝突致使一資源分配不成功時,記錄使測試區塊之間發生牴觸的該衝突,使得後續疊代中的候選流程不包含該衝突。
  16. 如申請專利範圍第15項所述之方法,其中:在一第二疊代之中,依據該啟發式方法識別出一候選流程包含隨機產生一具有該啟發式方法所指定特性之候選流程以在一短於在一先前候選流程之一先前疊代期間計算出之一測試時間的時間中執行該並行式測試。
  17. 如申請專利範圍第15項所述之方法,其中:在複數疊代中的每一疊代依據該啟發式方法識別出一候選流程包含依照該啟發式方法預測之順序產生候選流程,以在連續的較長時間中執行。
  18. 如申請專利範圍第15項所述之方法,更包含:提供一資源之分配已成功之一候選流程之一指示做為一輸出。
  19. 如申請專利範圍第18項所述之方法,更包含:自一資源之分配已成功之複數候選流程之中選擇輸出候選流程,且係根據針對該複數候選流程所計算出的測試時間選擇該輸出候選流程。
  20. 如申請專利範圍第15項所述之方法,其中:該方法更包含接收對該複數測試區塊的每一測試區塊提供一執行時間估計之輸入;以及計算一候選流程的測試時間包含根據該執行時間估計計算該測試時間。
  21. 如申請專利範圍第15項所述之方法,其中該衝突包含一個針對資源之規格,其並行測試超過該測試系統之資源的衝突測試區塊。
  22. 如申請專利範圍第15項所述之方法,其中該衝突包含一個針對待測裝置之一接腳之規格,其運作於至少二個衝突測試區塊之中。
  23. 如申請專利範圍第15項所述之方法,更包含:接收定義該測試系統之一新組態的使用者輸入;以及根據該新組態重複疊代式地執行程序之動作。
  24. 如申請專利範圍第23項所述之方法,其中:接收該使用者輸入以及重複疊代式地執行程序之動作係即時進行的。
  25. 如申請專利範圍第24項所述之方法,其中:接收定義該測試系統之一新組態的使用者輸入包含接收定義該測試系統被組構之部位數目的使用者輸入。
  26. 如申請專利範圍第15項所述之方法,更包含:在疊代式地執行程序的動作之前,接收指定衝突測試區塊之輸入,該輸入指出已將同一接腳指派於其中之區塊。
  27. 如申請專利範圍第15項所述之方法,更包含: 接收指定疊代式地執行程序之動作之一終止條件之輸入。
  28. 如申請專利範圍第27項所述之方法,其中該終止條件被表示成一疊代式地執行程序之時間、該疊代式地執行程序中之疊代之一最大次數或執行一候選流程之一目標計算測試時間。
  29. 一種至少一非暫存電腦可讀取儲存媒體,包含複數電腦可執行指令,當其由至少一處理器執行時,實施一用以產生一用於至少一裝置之並行式測試之計畫之資訊的工具,該至少一裝置的每一裝置均具有複數接腳,且該測試係由一具有可連接至該複數接腳的複數資源的測試系統執行,該並行式測試包含複數區塊,該電腦可執行指令包含:複數模組,該複數模組包含選擇自一包含下列項目之群組的至少二模組:一第一模組,用以依照指定一第一技術之輸入,藉由以下動作識別出並行式測試的至少一流程:列舉候選流程;依據每一個列舉出之候選流程執行該並行式測試,將該複數資源中的多個資源嘗試分配給該複數接腳中的多個接腳;以及提供一輸出,指出資源分配已成功之複數列舉出之候選流程以及列舉出之候選流程之一個別估計測試時間;一第二模組,用以依照指定一第二技術之輸入,藉 由以下動作識別出並行式測試的至少一流程:疊代式地產生複數候選流程,直到抵達一第一終止條件為止,在每一次疊代之中,其係藉由隨機產生具有一啟發式方法所指明之特性之一候選流程以在一短於一先前疊代中計算出之一先前候選流程之一測試時間之時間內執行該並行式測試;依據每一個列舉出的候選流程執行該並行式測試,針對每一所產生的候選流程,將該複數資源中的多個資源嘗試分配給該複數接腳中的多個接腳;提供一輸出,指出資源分配成功的至少一產生之候選流程;以及一第三模組,用以依照指定一第三技術之輸入,藉由以下動作識別出並行式測試的至少一流程:疊代式地產生複數候選流程,直到抵達一第二終止條件為止,在每一次疊代之中,其係藉由產生具有一啟發式方法所指明之特性之一候選流程以在一長於一先前疊代中計算出之一先前候選流程之一測試時間之時間內執行該並行式測試;依據每一個列舉出之候選流程執行該並行式測試,針對每一所產生的候選流程,將該複數資源中的多個資源嘗試分配給該複數接腳中的多個接腳;提供一輸出,指出資源分配成功的至少一產生之候選流程。
  30. 如申請專利範圍第29項所述之至少一非暫存電腦 可讀取儲存媒體,其中該電腦可執行指令包含:依據該輸入之候選流程執行該並行式測試的電腦可執行指令,用於接收指定一候選流程之輸入以及判定該複數資源中的多個資源是否能夠被成功地分配至該複數接腳中的多個接腳。
  31. 如申請專利範圍第29項所述之至少一非暫存電腦可讀取儲存媒體,其中該電腦可執行指令包含:用於接收一指定該第一終止條件或該第二終止條件之輸入的電腦可執行指令。
  32. 如申請專利範圍第29項所述之至少一非暫存電腦可讀取儲存媒體,其中:該電腦可執行指令包含用於接收指定該第二模組或該第三模組所產生的該複數候選流程中的每一候選流程的並行測試區塊之一最大數目之輸入的電腦可執行指令。
  33. 如申請專利範圍第29項所述之至少一非暫存電腦可讀取儲存媒體,其中:該電腦可執行指令包含用於接收指定該第二模組或該第三模組所產生的該複數候選流程中的每一候選流程的流程步驟之一最小數目之輸入的電腦可執行指令。
  34. 如申請專利範圍第29項所述之至少一非暫存電腦可讀取儲存媒體,其中:該電腦可執行指令包含用於接收指定測試區塊之一型樣以套用於該第二模組或該第三模組所產生的該複數候選流程中之輸入的電腦可執行指令。
  35. 如申請專利範圍第34項所述之至少一非暫存電腦可讀取儲存媒體,其中:測試區塊之該型樣包含用於並行執行之測試區塊。
  36. 如申請專利範圍第34項所述之至少一非暫存電腦可讀取儲存媒體,其中:測試區塊之該型樣包含用於循序執行之測試區塊。
  37. 如申請專利範圍第34項所述之至少一非暫存電腦可讀取儲存媒體,其中:列舉候選流程包含產生所有可能的特有測試流程。
  38. 一種至少一非暫存電腦可讀取儲存媒體,包含複數電腦可執行指令,當其由至少一處理器執行時,實施一用以產生一用於至少一裝置之並行式測試之計畫之資訊的工具,該至少一裝置的每一裝置均具有複數接腳,且該測試係由一具有可連接至該複數接腳的複數資源的測試系統執行,該並行式測試包含複數區塊,該電腦可執行指令係用以:接收指定一測試系統組態之輸入;接收指定一候選流程之輸入;以及判定該複數資源中的多個資源是否能夠被成功地分配至該複數接腳中的多個接腳以利用所指定之該測試系統組態依據該輸入之候選流程執行該並行式測試。
  39. 如申請專利範圍第38項所述之至少一非暫存電腦可讀取儲存媒體,其中:接收指定一測試系統組態之輸入包含接收指定該測試 系統被組構以測試之測試部位之數目的輸入。
  40. 如申請專利範圍第38項所述之至少一非暫存電腦可讀取儲存媒體,其中:接收指定一測試系統組態之輸入包含接收指定該測試系統中一資源之一數量的輸入。
TW100115740A 2010-05-05 2011-05-05 操控運算裝置以產生並行式測試計畫之資訊的方法、包含實施該方法之指令的非暫存電腦可讀取儲存媒體、及依據該方法製造半導體裝置的方法 TWI502209B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US33141810P 2010-05-05 2010-05-05

Publications (2)

Publication Number Publication Date
TW201142332A TW201142332A (en) 2011-12-01
TWI502209B true TWI502209B (zh) 2015-10-01

Family

ID=44902202

Family Applications (1)

Application Number Title Priority Date Filing Date
TW100115740A TWI502209B (zh) 2010-05-05 2011-05-05 操控運算裝置以產生並行式測試計畫之資訊的方法、包含實施該方法之指令的非暫存電腦可讀取儲存媒體、及依據該方法製造半導體裝置的方法

Country Status (9)

Country Link
US (1) US8762095B2 (zh)
EP (1) EP2534580A4 (zh)
JP (3) JP2013531779A (zh)
KR (1) KR101742590B1 (zh)
CN (1) CN103038656B (zh)
MY (1) MY166393A (zh)
SG (1) SG183995A1 (zh)
TW (1) TWI502209B (zh)
WO (1) WO2011140233A2 (zh)

Families Citing this family (45)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2534580A4 (en) * 2010-05-05 2017-11-29 Teradyne, Inc. System for concurrent test of semiconductor devices
MY168794A (en) * 2011-05-19 2018-12-04 Celerint Llc Parallel concurrent test system and method
US9817062B2 (en) * 2011-05-19 2017-11-14 Celerint, Llc. Parallel concurrent test system and method
US10048304B2 (en) * 2011-10-25 2018-08-14 Teradyne, Inc. Test system supporting simplified configuration for controlling test block concurrency
JP5841457B2 (ja) * 2012-03-01 2016-01-13 株式会社アドバンテスト 試験装置および試験モジュール
US8656229B2 (en) * 2012-06-05 2014-02-18 Litepoint Corporation System and method for execution of user-defined instrument command sequences using multiple hardware and analysis modules
US20140006570A1 (en) * 2012-06-29 2014-01-02 Globalfoundries Inc. Method and system for customer specific test system allocation in a production environment
JP5816144B2 (ja) * 2012-08-30 2015-11-18 株式会社アドバンテスト テストプログラムおよび試験システム
US9437328B2 (en) 2012-11-30 2016-09-06 Silicon Motion Inc. Apparatus and method for applying at-speed functional test with lower-speed tester
US9274911B2 (en) * 2013-02-21 2016-03-01 Advantest Corporation Using shared pins in a concurrent test execution environment
US9792112B2 (en) 2013-08-28 2017-10-17 Via Technologies, Inc. Propagation of microcode patches to multiple cores in multicore microprocessor
US9465432B2 (en) 2013-08-28 2016-10-11 Via Technologies, Inc. Multi-core synchronization mechanism
US9513687B2 (en) 2013-08-28 2016-12-06 Via Technologies, Inc. Core synchronization mechanism in a multi-die multi-core microprocessor
US11041900B2 (en) 2014-03-26 2021-06-22 Teradyne, Inc. Equi-resistant probe distribution for high-accuracy voltage measurements at the wafer level
US10698020B2 (en) 2014-03-26 2020-06-30 Teradyne, Inc. Current regulation for accurate and low-cost voltage measurements at the wafer level
CN103941119B (zh) * 2014-03-27 2016-09-07 北京汇德信科技有限公司 一种多功能可编程信号发生参数测试系统
US10353809B2 (en) * 2015-12-01 2019-07-16 Tata Consultancy Services Limited System and method for executing integration tests in multiuser environment
CN107193726A (zh) * 2016-03-15 2017-09-22 展讯通信(上海)有限公司 一种终端并发测试方法及装置
TWI597507B (zh) * 2016-05-03 2017-09-01 技嘉科技股份有限公司 測試裝置和測試方法
CN106021049A (zh) * 2016-05-18 2016-10-12 中国电子科技集团公司第三十二研究所 国产操作系统验证平台及建立方法
JP2018006406A (ja) * 2016-06-28 2018-01-11 東京エレクトロン株式会社 基板検査装置
KR102538991B1 (ko) 2016-07-15 2023-06-02 에스케이하이닉스 주식회사 반도체 테스트 장치 및 반도체 테스트 방법
US20180128872A1 (en) * 2016-11-08 2018-05-10 Xcerra Corporation Multi-node testing system and method
CN107066385A (zh) * 2017-03-31 2017-08-18 北京奇艺世纪科技有限公司 一种测试方法、装置及系统
US10557886B2 (en) * 2017-04-28 2020-02-11 Advantest Corporation Test system supporting multiple users using different applications
TWI661297B (zh) * 2017-11-30 2019-06-01 財團法人資訊工業策進會 監控系統及監控方法
US10733070B2 (en) 2018-03-29 2020-08-04 Bank Of America Corporation Executing test scripts with respect to a server stack
US10896106B2 (en) * 2018-05-10 2021-01-19 Teradyne, Inc. Bus synchronization system that aggregates status
US10677815B2 (en) * 2018-06-08 2020-06-09 Teradyne, Inc. Test system having distributed resources
US11169203B1 (en) 2018-09-26 2021-11-09 Teradyne, Inc. Determining a configuration of a test system
US10802068B2 (en) * 2018-12-07 2020-10-13 Powertech Technology Inc. Method of detecting abnormal test signal channel of automatic test equipment
US11030381B2 (en) 2019-01-16 2021-06-08 Taiwan Semiconductor Manufacturing Co., Ltd. Leakage analysis on semiconductor device
CN110083536B (zh) * 2019-04-25 2022-12-06 厦门网宿有限公司 测试资源分配方法及装置、电子设备及存储介质
CN111158967B (zh) 2019-12-31 2021-06-08 北京百度网讯科技有限公司 人工智能芯片测试方法、装置、设备及存储介质
CN111426945A (zh) * 2020-03-25 2020-07-17 北京中电华大电子设计有限责任公司 一种提高芯片测试效率的测试方法
US11461222B2 (en) 2020-04-16 2022-10-04 Teradyne, Inc. Determining the complexity of a test program
US11500019B2 (en) 2020-05-14 2022-11-15 Apple Inc. Area-aware test pattern coverage optimization
KR102319160B1 (ko) * 2020-07-14 2021-11-01 주식회사 엑시콘 반도체 디바이스 테스트 시스템
KR20230038407A (ko) 2020-07-21 2023-03-20 주식회사 아도반테스토 상이한 테스트 활동이 테스트 대상 장치 리소스의 서브세트를 활용하는, 하나 이상의 테스트 대상 장비를 테스트하는 자동 테스트 장비, 프로세스 및 컴퓨터 프로그램
KR20220014403A (ko) * 2020-07-24 2022-02-07 삼성전자주식회사 반도체 패키지 테스트 시스템 및 이를 이용한 반도체 패키지 제조방법
CN112198421A (zh) * 2020-12-01 2021-01-08 上海伟测半导体科技股份有限公司 扩展ate数字通道数量的方法及装置
CN113326168B (zh) * 2021-05-19 2022-06-28 杭州加速科技有限公司 用于芯片测试的引脚映射方法
KR102308990B1 (ko) * 2021-07-20 2021-10-06 (주) 에이블리 반도체 테스트 패턴 발생 장치 및 방법
CN114152822A (zh) * 2021-11-08 2022-03-08 上海纳恩汽车技术股份有限公司 一种自动化测试设备资源配置系统及方法
CN114252758A (zh) * 2021-12-03 2022-03-29 杭州至千哩科技有限公司 Ate测试通道资源配置方法、装置、设备及存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050234674A1 (en) * 2004-04-19 2005-10-20 Bundy Laura M Apparatus, system and/or method for converting a serial test to a parallel test
TWI264076B (en) * 2002-02-28 2006-10-11 Freescale Semiconductor Inc Method for processing multiple semiconductor devices for test

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0103353A3 (en) * 1982-09-13 1986-03-05 Genrad, Inc. Method of and apparatus for multiplexed automatic testing of electronic circuits and the like
DE60001254T2 (de) * 2000-06-16 2003-07-10 Agilent Technologies, Inc. (N.D.Ges.D.Staates Delaware) Testgerät für integrierte Schaltungen mit Multiportprüffunktionalität
KR100824503B1 (ko) * 2000-06-20 2008-04-22 양세양 신속한 입출력탐침 장치 및 이를 이용한 입출력탐침방법과 이를 기반으로 하는 혼합 에뮬레이션/시뮬레이션방법
JP3606520B2 (ja) * 2001-12-05 2005-01-05 沖電気工業株式会社 システムlsiのテストパターン作成方法,システムlsiのテストパターン作成装置,及びシステムlsiのテスト方法
US6885961B2 (en) * 2002-02-28 2005-04-26 Teradyne, Inc. Hybrid tester architecture
US6934897B2 (en) * 2002-04-05 2005-08-23 Nilanjan Mukherjee Scheduling the concurrent testing of multiple cores embedded in an integrated circuit
US7162386B2 (en) * 2002-04-25 2007-01-09 Micron Technology, Inc. Dynamically adaptable semiconductor parametric testing
US7181660B2 (en) * 2002-07-26 2007-02-20 Verigy Pte. Ltd. Reconstruction of non-deterministic algorithmic tester stimulus used as input to a device under test
US6842022B2 (en) 2002-09-20 2005-01-11 Agilent Technologies, Inc. System and method for heterogeneous multi-site testing
US7197417B2 (en) * 2003-02-14 2007-03-27 Advantest America R&D Center, Inc. Method and structure to develop a test program for semiconductor integrated circuits
US7010451B2 (en) * 2003-04-17 2006-03-07 Micron Technology, Inc. Dynamic creation and modification of wafer test maps during wafer testing
US6873147B2 (en) * 2003-06-24 2005-03-29 Agilent Technologies, Inc. Optimized pin assignment with constraints
JP2005300344A (ja) * 2004-04-12 2005-10-27 Matsushita Electric Ind Co Ltd 半導体集積回路のテストシステム
US7089139B2 (en) * 2004-08-16 2006-08-08 Agilent Technologies, Inc. Method and apparatus for configuration of automated debug of in-circuit tests
US7543200B2 (en) * 2005-02-17 2009-06-02 Advantest Corporation Method and system for scheduling tests in a parallel test system
JP4167244B2 (ja) * 2005-05-13 2008-10-15 株式会社アドバンテスト 試験装置
US20070006038A1 (en) * 2005-06-29 2007-01-04 Zhengrong Zhou Methods and apparatus using a hierarchical test development tree to specify devices and their test setups
JP2007248385A (ja) * 2006-03-17 2007-09-27 Agilent Technol Inc 半導体デバイス特性測定装置
JP2010002315A (ja) 2008-06-20 2010-01-07 Yokogawa Electric Corp 半導体試験装置とそのdc特性試験方法
US8078424B2 (en) * 2008-09-29 2011-12-13 Advantest Corporation Test apparatus
JP2010107230A (ja) 2008-10-28 2010-05-13 Advantest Corp 試験装置、プログラム、記憶媒体、および、試験方法
EP2534580A4 (en) * 2010-05-05 2017-11-29 Teradyne, Inc. System for concurrent test of semiconductor devices

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI264076B (en) * 2002-02-28 2006-10-11 Freescale Semiconductor Inc Method for processing multiple semiconductor devices for test
US20050234674A1 (en) * 2004-04-19 2005-10-20 Bundy Laura M Apparatus, system and/or method for converting a serial test to a parallel test

Also Published As

Publication number Publication date
KR101742590B1 (ko) 2017-06-01
JP2013531779A (ja) 2013-08-08
TW201142332A (en) 2011-12-01
WO2011140233A2 (en) 2011-11-10
JP2018087812A (ja) 2018-06-07
EP2534580A2 (en) 2012-12-19
CN103038656B (zh) 2015-01-14
US20110275170A1 (en) 2011-11-10
JP2016105103A (ja) 2016-06-09
JP6488244B2 (ja) 2019-03-20
WO2011140233A3 (en) 2011-12-29
KR20130064078A (ko) 2013-06-17
SG183995A1 (en) 2012-10-30
MY166393A (en) 2018-06-25
CN103038656A (zh) 2013-04-10
US8762095B2 (en) 2014-06-24
EP2534580A4 (en) 2017-11-29

Similar Documents

Publication Publication Date Title
TWI502209B (zh) 操控運算裝置以產生並行式測試計畫之資訊的方法、包含實施該方法之指令的非暫存電腦可讀取儲存媒體、及依據該方法製造半導體裝置的方法
CN106940428B (zh) 芯片验证方法、装置及系统
TWI364704B (en) Non-transitory computer readable medium, computer implemented method and system and apparatus for test development
US7886241B2 (en) System and method for automated electronic device design
US10048304B2 (en) Test system supporting simplified configuration for controlling test block concurrency
Kellner et al. Software process modeling example problem
TWI439831B (zh) 用以對測試配置的測試資源使用加以排程供執行多種測試群組之方法及裝置
US7039545B2 (en) Apparatus, system and/or method for converting a serial test to a parallel test
JP3042761B2 (ja) 論理エミュレーションシステムにおけるプログラマブルデバイスのプログラムデータ生成方法およびプログラマブルデバイスのプログラムデータ生成装置
US11907103B2 (en) Test environment determination device and test environment determination method
US20100332932A1 (en) Test method, test control program and semiconductor device
US7353479B2 (en) Method for placing probing pad and computer readable recording medium for storing program thereof
CN117608940A (zh) 芯片设计验证方法、装置、电子设备及存储介质
CN118332975A (zh) 一种标签芯片验证系统
JP2005321400A (ja) テスト番号の衝突を識別する方法と装置
AGARWAL TEST SCHEDULING AND TEST ARCHITECTURE OPTIMIZATION OF 3D STACKED-ICS UNDER VARIOUS HARDWARE AND POWER CONSTRAINTS
James et al. Layers and Phases: Day Three
JP2001286060A (ja) シミュレーション用ファイルの生成方法及びその生成装置