TWI773140B - 用於流量捕獲及除錯工具之圖形使用者介面 - Google Patents
用於流量捕獲及除錯工具之圖形使用者介面 Download PDFInfo
- Publication number
- TWI773140B TWI773140B TW110105819A TW110105819A TWI773140B TW I773140 B TWI773140 B TW I773140B TW 110105819 A TW110105819 A TW 110105819A TW 110105819 A TW110105819 A TW 110105819A TW I773140 B TWI773140 B TW I773140B
- Authority
- TW
- Taiwan
- Prior art keywords
- capture
- capture modules
- dut
- fpga
- results
- Prior art date
Links
Images
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/26—Testing of individual semiconductor devices
- G01R31/2601—Apparatus or methods therefor
-
- 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
Abstract
一種使用自動化測試裝備(ATE)診斷一故障原因之方法包含使用與一監測應用程式相關聯之一圖形使用者介面(GUI),在一可規劃邏輯裝置中組配複數個捕獲模組。該方法更包含使用該複數個捕獲模組來監測一被測裝置(DUT)與該可規劃邏輯裝置之間的資料流量,其中該複數個捕獲模組屬於可規劃,並且可操作以選擇性地捕獲要監測之資料流量。再者,該方法包含將與該監測相關聯之結果從與該複數個捕獲模組中之各者相關聯之相應記憶體取回到該監測應用程式裡、以及一經取回便分析該等結果。
Description
相關申請案交互參照
本申請案係2018年5月16日提出申請之題為「TRAFFIC CAPTURE AND DEBUGGING TOOLS FOR IDENTIFYING ROOT CAUSES OF DEVICE FAILURE DURING AUTOMATED TESTING」之美國專利申請案第15/981,634號之一部分連續案,發明人的姓名為Linden Hsu、Ben Rogel-Favila、Michael Jones、Duane Champoux及Mei-Mei Su,已在2018年5月16日提出申請,並且代理人案號為ATSY-0066-01.01US,其全文就所有目的係以參考方式併入本文中。
本揭露大致係有關於電子裝置測試系統領域,並且更具體而言,係有關於用於測試被測裝置(DUT)之電子裝置測試裝備領域。
自動化測試裝備(ATE)可以是對半導體裝置或電子總成進行一測試之任何測試總成。ATE總成可用於執行快速進行測量並產生測試結果之自動化測試,可接著對該等測試結果進行分析。一ATE總成可以是從耦合至一計量器之一電腦系統到一複雜自動化測試總成之任何東西,其可包括一自訂、專屬電腦控制系統及許多不同測試儀器,有自動測試電子零件及/或半導體晶圓測試之能力,諸如系統晶片(SOC)測試或積體電路測試。ATE系統減少在測試裝置上花費之時間量以確保裝置按設計作用,同時還當作一診斷工具,用以確定一給定裝置在送達消費者之前,裡面是否存在故障組件。
習知ATE之缺點之一在於其通常僅回報通過/失敗結果。換句話說,ATE僅回報一或多個被測裝置(DUT)對於執行之相應測試是通過還是失敗。ATE未被組配用以識別資格測試期間裝置故障之根本原因。通常,ATE將不會內建將使工程師能夠輕易地對伴隨DUT之問題進行診斷之任何硬體式或軟體式工具。
在一典型測試環境中,操作ATE之工程師將需要藉由收集資料日誌並對該等日誌進行分析來手動識別故障原因。這種作法屬於勞力密集、容易出錯並且不具規模可調性。由於工程師可能沒有足夠資訊用來確定要分析之資料日誌或如何在該等資料日誌中尋找裝置故障之根本原因,因此也可能無法產出所欲結果。再者,傳統ATE系統未含有內建到硬體裡,幫助工程師捕獲並自動解讀及分析測試相關診斷資訊之任何智慧。
傳統ATE系統也未向使用者提供一圖形使用者介面(GUI),該GUI允許使用者控制硬體測試系統之特定化態樣,而且還採用對使用者無縫且有效率之一方式合成並提供結果。再者,傳統ATE系統未提供向使用者發出警示要懷疑測試結果中需要進一步留意之條件、或允許使用者新增、刪除、修改或儲存可疑條件之一GUI。再者,習知測試器系統之GUI未向使用者提供來源資料與所標示條件之間的連結。
因此,需要一種ATE,其包含硬體式流量捕獲模組,該等模組收集並監測一測試器與一被測裝置(DUT)之間交換之資料,以便收集與該測試器隨著時間之狀態有關之寶貴資訊、及該測試器與該DUT之間交換之資料。再者,需要硬體式邏輯模組,其對裝置故障前兆進行監測,該等裝置故障前兆提供與裝置可能故障有關之資訊。
最後,需要硬體式及軟體式工具兩者,其允許工程師更輕易地解讀所收集之資料,尤其是一圖形使用者介面,該圖形使用者介面還允許使用者規劃硬體式邏輯模組以進行特定功能,並且亦採用一直覺且有效率之方式顯示測試資料。
本發明之實施例提供一種整合式GUI,其允許一使用者控制測試流程之所有態樣,並且以一容易理解之方式提供與測試結果有關之使用者資訊。在一項實作態樣中,GUI不僅從硬體式邏輯模組收集並匯集資料,而且還從測試器系統中之各個點收集並匯集資料。在一項實作態樣中,GUI處理從測試器系統接收之測試資料以採用一可理解方式顯示資料。在一項實作態樣中,GUI分析來自DUT之測試資料,以檢測DUT中需要進一步留意之可疑條件。在一項實施例中,GUI可允許使用者新增/刪除/修改/儲存可疑條件並進行進一步分析。GUI亦可彰顯已標示為可疑條件者。在一項實作態樣中,GUI提供來源資料與所標示條件之間的連結。
在一項實施例中,揭示一種使用自動化測試裝備(ATE)診斷一故障原因之方法。該方法使用與一監測應用程式相關聯之一圖形使用者介面(GUI),在一可規劃邏輯裝置中組配複數個捕獲模組。該方法亦包含使用該複數個捕獲模組來監測一被測裝置(DUT)與該可規劃邏輯裝置之間的資料流量,其中該複數個捕獲模組屬於可規劃,並且可操作以選擇性地捕獲要監測之資料流量,其中該資料流量包含該DUT與該可規劃邏輯裝置之間的一訊務流,其中該複數個捕獲模組係使用複數個級段來組配,並且其中該DUT與該可規劃邏輯裝置之間的該訊務流係透過該複數個級段來處理。再者,該方法包含將與該監測相關聯之結果從與該複數個捕獲模組中之各者相關聯之相應記憶體取回到該監測應用程式裡、以及一經取回便分析該等結果。
在一項實施例中,揭示一種使用自動化測試裝備(ATE)診斷一故障原因之設備。該設備包含一可規劃邏輯裝置,其係通訊性耦合至一被測裝置(DUT),可操作以產生用於在該DUT上執行一測試之命令及資料,並且其中該可規劃邏輯裝置包含在該可規劃邏輯裝置上規劃之複數個可規劃捕獲模組,其中該複數個捕獲模組可操作以監測該DUT與該可規劃邏輯裝置之間的資料流量,其中該複數個捕獲模組可操作以選擇性地捕獲要監測之資料流量,其中該資料流量包含該DUT與該可規劃邏輯裝置之間的一訊務流,其中該複數個捕獲模組係使用複數個級段來組配,並且其中該DUT與該可規劃邏輯裝置之間的該訊務流係透過該複數個級段來處理。該設備更包含一監測應用程式,該監測應用程式可操作以提供一圖形使用者介面並且被組配用以進行下列動作:a)規劃該複數個捕獲模組;b)將與監測該資料流量相關聯之結果從與該複數個捕獲模組中之各者相關聯之記憶體取回到該監測應用程式裡;以及c)透過該GUI顯示該等結果。
在另一實施例中,一測試器包含一系統控制器,用於控制一測試程式以供測試複數個DUT。該測試器亦包含一現場可規劃閘陣列(FPGA),其可操作以與該複數個DUT介接並測試該複數個DUT,該FPGA係耦合至該系統控制器,其中各FPGA包含複數個捕獲模組,其中該複數個捕獲模組被規劃在該FPGA上且可操作以監測該複數個DUT與該FPGA之間的資料流量,其中該複數個捕獲模組可操作以選擇性地捕獲及分析要監測之資料流量,其中該資料流量包含複數個DUT與該FPGA之間的一訊務流,其中該複數個捕獲模組係使用複數個級段來組配,並且其中該複數個DUT與該FPGA之間的該訊務流係透過該複數個級段來處理。另外,該測試器包含一監測應用程式,該監測應用程式可操作以提供一圖形使用者介面並且被組配用以進行下列動作:a)規劃該複數個捕獲模組;b)將與監測該資料流量相關聯之結果從與該複數個捕獲模組中之各者相關聯之記憶體取回到該監測應用程式裡;以及c)分析與該監測相關聯之該等結果。
透過以下詳細說明,連同附圖,將更加理解本發明之本質及優點。
現將詳細參照本揭露之各項實施例,附圖中繪示其實例。儘管搭配這些實施例作說明,將瞭解的是,其並非意欲限制對這些實施例之揭示。反之,本揭露係意欲涵蓋可在由隨附申請專利範圍所定義之本揭露之精神及範疇內包括之替代例、修改及均等例。再者,在本揭露之以下詳細說明中,提出許多特定細節,以便透徹理解本揭露。然而,將瞭解的是,不用這些特定細節也可實踐本揭露。在其他例子中,為了避免非必要地混淆本揭露之態樣,並未詳細說明眾所周知之方法、程序、組件、以及電路。
以下詳細說明有些部分係依據程序、邏輯塊、處理、以及一電腦記憶體內資料位元操作之其他符號表示型態來呈現。這些說明與表示型態係資料處理領域中具有通常知識者用來最有效傳達其工作內容予所屬技術領域中具有通常知識者的手段。在本申請案中,一程序、邏輯塊、過程、或類似者係視為導致一所欲結果之步驟或指令之一自相一致性序列。該等步驟係那些利用對物理量進行實體操縱之步驟。這些量採取的形式通常,但非必要,係能夠在一電腦系統中被儲存、轉移、組合、比較、以及按其他方式操縱之電氣或磁性信號。將這些信號稱為交易、位元、值、元件、符號、字元、樣本、像素、或類似者,有時原則上是為了常見用法,這是可以便利證實的。
然而,應記住的是,這些與類似用語全都與適當物理量相關聯,而且只是套用到這些量之便利標示。除非另有具體敍述而從以下論述得以顯而易見,否則據了解,本揭露各處利用諸如「組配」、「提供」、「執行」、「傳送」、「取得」、「實施」、「規劃」、「分配」、「相關聯」、「設定」、「存取」、「取回」、「儲存」、「捕獲」、「產生」、「完成」、「監測」、「控制」、「確定」、 「識別」、「快取」、「維護」、「比較」、「移除」、「讀取」、「寫入」、或類似者等詞意指為一電腦系統或類似電子運算裝置或處理器(例如:圖1之系統110)之動作及程序(例如:圖7及12之流程圖700)。電腦系統或類似電子運算裝置在電腦系統記憶體、暫存器或其他此類資訊儲存、傳輸或顯示裝置內操縱及變換表示為物理(電子)量之資料。
可在藉由一或多個電腦或其他裝置執行,於某形式之電腦可讀儲存媒體上常駐之電腦可執行指令,諸如程式模組,的一般上下文中,論述本文中所述之實施例。以舉例方式而非限制,電腦可讀儲存媒體可包含非暫時性電腦可讀儲存媒體及通訊媒體;非暫時性電腦可讀媒體包括除一暫時性、傳播信號外之所有電腦可讀媒體。一般而言,程式模組包括進行特定任務、或實施特定抽像資料類型之例行程序、程式、物件、組件、資料結構等。如各項實施例中所欲,可組合或分布該等程式模組之功能。
電腦儲存媒體包括以用於儲存諸如電腦可讀指令、資料結構、程式模組或其他資料等資訊之任何方法或技術實施之依電性及非依電性、可移除式及不可移除式媒體。電腦儲存媒體包括、但不限於隨機存取記憶體(RAM)、唯讀記憶體(ROM)、電氣可抹除可規劃ROM (EEPROM)、快閃記憶體或其他記憶體技術、光碟ROM (CD-ROM)、數位多樣化光碟(DVD)或其他光學儲存器、磁匣、磁帶、磁碟儲存或其他磁性儲存裝置、或可用於儲存所欲資訊並可予以存取以取回該資訊之任何其他媒體。
通訊媒體可具體實現電腦可執行指令、資料結構、及程式模組,並且包括任何資訊遞送媒體。以舉例方式而非限制,通訊媒體包括諸如一有線網路或直接有線連接等有線媒體、以及諸如聲學、射頻(RF)、紅外線等無線媒體、及其他無線媒體。電腦可讀媒體之範疇內亦可包括以上之任何組合。
圖1係一測試器控制系統110之一實例的一方塊圖,其能夠支援幫助識別裝置故障根本原因之硬體式及軟體式流量捕獲及除錯工具。舉例而言,系統110可連接至基於FPGA之測試器模組,其中FPGA包含捕獲邏輯,用以收集與測試器之狀態有關之資訊、以及在相應FPGA與已連接DUT之間交換之資訊。測試器控制系統110大致代表能夠執行電腦可讀指令之任何單處理器或多處理器運算裝置或系統。控制系統110之實例例以非限制方式包括工作站、膝上型電腦、用戶側終端機、伺服器、分散式運算系統、掌上型裝置、或任何其他運算系統或裝置。在其最基本之組態中,控制系統110可包括至少一個處理器114及一系統記憶體116。
處理器114一般代表能夠處理資料或解讀及執行指令之任何類型或形式之處理單元。在某些實施例中,處理器114可從一軟體應用程式或模組接收指令。這些指令可造成處理器114進行本文中所述及/或所示之一或多項例示性實施例之功能。
系統記憶體116一般代表能夠儲存資料及/或其他電腦可讀指令之任何類型或形式之依電性或非依電性儲存裝置或媒體。系統記憶體116之實例以非限制方式包括RAM、ROM、快閃記憶體、或任何其他適合的記憶體裝置。雖然非必要,但在某些實施例中,控制系統110仍可同時包括一依電性記憶體單元(舉例如:系統記憶體116)及一非依電性記憶體裝置(舉例如:主要儲存裝置132)。
測試器控制系統110除了處理器114及系統記憶體116以外,還可包括一或多個組件或元件。舉例而言,在圖2A之實施例中,控制系統110包括一記憶體控制器118、一輸入/輸出(I/O)控制器120、及一通訊介面122,其各可經由一通訊基礎設施112互連。通訊基礎設施112一般代表能夠促進一運算裝置之一或多個組件之間進行通訊之任何類型或形式之基礎設施。通訊基礎設施112之實例以非限制方式包括一通訊匯流排(諸如一工業標準架構(ISA)、週邊組件互連(PCI)、快速PCI(PCIe)、或類似匯流排)及一網路。
記憶體控制器118一般代表能夠處置記憶體或資料或對控制系統110之一或多個組件之間的通訊進行控制之任何類型或形式之裝置。舉例而言,記憶體控制器118可經由通訊基礎設施112對處理器114、系統記憶體116與I/O控制器120之間的通訊進行控制。
I/O控制器120一般代表能夠對一運算裝置之輸入及輸出功能進行協調及/或控制之任何類型或形式之模組。舉例而言,I/O控制器120可控制或促進控制系統110之一或多個元件,諸如處理器114、系統記憶體116、通訊介面122、顯示配接器126、輸入介面130、及儲存介面134,之間的資料轉移。
通訊介面122大致代表能夠促進例示性控制系統110與一或多個附加裝置之間的通訊之任何類型或形式之通訊裝置或配接器。舉例而言,通訊介面122可促進控制系統110與包括附加控制系統在內之一私人或公共網路之間的通訊。通訊介面122之實例以非限制方式包括一有線網路介面(諸如一網路介面卡)、一無線網路介面(諸如一無線網路介面卡)、一數據機、及任何其他適合的介面。在一項實施例中,通訊介面122經由連至一網路,諸如網際網路,之一直接連接來提供連至一遠端伺服器之一直接連接。通訊介面122亦可透過任何其他適合的連接來間接地提供此一連接。
通訊介面122亦可代表一主機配接器,該主機配接器被組配用以促進控制系統110與一或多個附加網路或儲存裝置之間經由一外部匯流排或通訊通道之通訊。主機配接器之實例以非限制方式包括小型電腦系統介面(SCSI)主機配接器、通用串列匯流排(USB)主機配接器、IEEE (電機電子工程師學會) 1394主機配接器、串列先進技術附接(SATA)及外部SATA (eSATA) 主機配接器、先進技術附接(ATA)及平行ATA (PATA)主機配接器、光纖通道介面配接器、乙太網路配接器、或類似者。通訊介面122亦可允許控制系統110從事分散式或遠端運算。舉例而言,通訊介面122可從一遠端裝置接收指令、或向一遠端裝置發送指令以供執行。
如圖1所示,控制系統110亦可包括至少一個經由一顯示配接器126耦合至通訊基礎設施112之顯示裝置124。顯示裝置124一般代表能夠視覺化顯示由顯示配接器126轉發之資訊的任何類型或形式之裝置。類似的是,顯示配接器126一般代表被組配用以轉發圖形、文字、及其他資料以供在顯示裝置124上顯示之任何類型或形式之裝置。
如圖1所示,控制系統110亦可包括至少一個經由一輸入介面130耦合至通訊基礎設施112之輸入裝置128。輸入裝置128一般代表能夠向控制系統110提供電腦所產生或人類所產生之輸入的任何類型或形式之輸入裝置。輸入裝置128之實例以非限制方式包括一鍵盤、一指標裝置、一語音辨識裝置、或任何其他輸入裝置。
如圖1所示,控制系統110亦可包括經由一儲存介面134耦合至通訊基礎設施112之一主要儲存裝置132及一備援儲存裝置133。儲存裝置132及133一般代表能夠儲存資料及/或其他電腦可讀指令之任何類型或形式之儲存裝置或媒體。舉例而言,儲存裝置132及133可以是一磁碟機(例如:一所謂的硬碟機)、一軟碟機、一磁帶機、一光碟機、一快閃驅動機、或類似者。儲存介面134一般代表用於在儲存裝置132及133與控制系統110之其他組件之間轉移資料之任何類型或形式之介面或裝置。
在一項實例中,可將資料庫140儲存在主要儲存裝置132中。資料庫140可代表單一資料庫或運算裝置之部分,或其可代表多個資料庫或運算裝置。舉例而言,資料庫140可代表(予以儲存在)控制系統110之一部分及/或(下)圖2中例示性網路架構200之部分(上)。替代地,資料庫140可表示(予以儲存在)能夠藉由一運算裝置,諸如控制系統110及/或網路架構200之部分,來存取之一或多個實體性單獨裝置(上)。
請繼續參照圖1,儲存裝置132及133可被組配用以對一可移除式儲存單元進行讀取及/或寫入,該可移除式儲存單元被組配用以儲存電腦軟體、資料、或其他電腦可讀資訊。適合的可移除式儲存單元之實例以非限制方式包括一軟式磁片、一磁帶、一光碟、一快閃記憶體裝置、或類似者。儲存裝置132及133亦可包括用於允許將電腦軟體、資料、或其他電腦可讀指令載入到控制系統110裡之其他類似結構或裝置。舉例而言,儲存裝置132及133可被組配用以讀取及寫入軟體、資料、或其他電腦可讀資訊。儲存裝置132及133也可以是控制系統110之一部分,或可以是透過其他介面系統存取之單獨裝置。
許多其他裝置或子系統可連接至控制系統110。反言之,圖1所示之所有組件及裝置不需要存在也能實踐本文中所述之實施例。上文引用之裝置及子系統亦可採用與圖1所示不同之方式來互連。控制系統110亦可運用任意數量的軟體、韌體、及/或硬體組態。舉例而言,可將本文中所揭示之例示性實施例編碼為一電腦可讀媒體上之一電腦程式(亦稱為電腦軟體、軟體應用程式、電腦可讀指令、或電腦控制邏輯)。
可將含有電腦程式之電腦可讀媒體載入到控制系統110裡。接著,可將儲存在電腦可讀媒體上之電腦程式之全部或一部分儲存在系統記憶體116及/或儲存裝置132及133之各個部分中。當藉由處理器114執行時,載入到控制系統110裡之一電腦程式可造成處理器114進行及/或成為進行本文中所述及/或所示例示性實施例之功能用的構件。另外或替代地,可在韌體及/或硬體中實施本文中所述及/或所示之例示性實施例。
用於對自動化測試期間之故障根本原因進行識別之流量捕獲及除錯工具
圖2繪示一典型測試環境,其中可將DUT置放到一受控制環境腔室10或「爐體」裡。DUT係連接至一測試頭20之測試器切片。許多DUT可連接至單一測試器切片40。測試器切片含有測試電路系統,其根據一測試計畫對DUT進行測試。每個測試頭20可有許多測試器切片。DUT係在插入到爐體10裡時係予以置放到托盤30裡。在一典型環境腔室中,複數個測試器切片在鎖定步驟中操作,對複數個DUT執行相同測試計畫。再者,測試頭通常受到直接連接至該測試頭,並且以這種方式對測試頭20之所有切片進行控制之單一控制器電腦系統(例如:測試器控制系統110)控制。控制器電腦通常係由對DUT執行單一測試計畫之單一使用者操作。如將在下文進一步所述,各測試器切片包含上可規劃本發明之流量捕獲及除錯模組的FPGA。舉例而言,FPGA可規劃有邏輯及緩衝區,其收集與FPGA之狀態有關之資訊、及在FPGA與任何已連接DUT之間交換之資料。
圖3係一詳細示意方塊圖,其繪示一測試器切片之一例示性實施例及其與系統控制器及DUT之互連。
請參照圖3,各測試器切片包含站點模組。在一項實施例中,可將站點模組機械性組配到測試器切片340A至340N上,其中各測試器切片包含至少一個站點模組。在某些典型實施例中,各測試器切片可包含兩個站點模組及兩個裝置電力供應板。在其他實施例中,測試器切片可包含更多或更少站點模組及/或電力供應板。圖3之測試器切片340A舉例而言,包含站點模組310A及310B以及裝置電力供應板332A及332B。然而,可組配到一測試器切片上之裝置電力供應板或站點模組沒有數量限制。測試器切片340係透過網路交換機302連接至系統控制器301。網路交換機302可憑藉32位元寬匯流排連接至各站點模組。
在一項實施例中,系統控制器301可以是一電腦系統,例如一個人電腦(PC),其為ATE之使用者提供一使用者介面以載入測試程式並為連接至ATE 300之DUT運行測試。Advantest手寫筆作業系統係正常在裝置測試期間使用之測試軟體之一項實例。其為使用者提供一圖形使用者介面,可從該圖形使用者介面組配及控制測試。其亦可包含控制測試流程、控制測試程式之狀態、判斷哪個測試程式正在運行、以及記錄測試結果及測試流程相關其他資料之功能。在一項實施例中,系統控制器可連接至並控制多達512個DUT。
在一項實施例中,系統控制器301可透過一網路交換機,諸如一乙太網路交換機,連接至站點模組板310A至310B。在其他實施例中,網路交換機可與諸如光纖通道、802.11或ATM之一不同協定相容。
可從站點模組310A至310B之一控制各裝置電力供應板332A至332B。測試器處理器304上運行之軟體可被組配用以將一裝置電力供應器指派給一特定站點模組。在一項實施例中,舉例來說,站點模組310A至310B及裝置電力供應器332A至332B被組配用以使用一高速序列協定,例如快速週邊組件互連(PCIe)、序列先進技術附接(SATA)或序列附接SCSI (SAS),相互通訊。
在一項實施例中,各站點模組係組配有兩個FPGA,如圖3所示。圖3之實施例中之各FPGA 316及318均受到測試器處理器304控制。測試器處理器304可使用諸如PCIe之一8通道高速序列協定介面與各FPGA通訊,如圖3中之系統匯流排330及332所指。在其他實施例中,測試器處理器304亦可使用不同高速序列協定,例如序列先進技術附接(SATA)或序列附接SCSI (SAS),與FPGA通訊。
FPGA 316及318係分別連接至記憶體模組308及304。該等記憶體模組可與FPGA裝置及測試器處理器304兩者耦合並受其控制。
FPGA 316及318可分別透過匯流排352及354連接至裝載板380上之DUT 372A至372M。裝載板380係一種實體裝具,其允許在站點模組端處進行一通用高速連接,該站點模組端不知用於在線路352及354上向DUT進行通訊之協定。然而,在DUT端處,需要對裝載板進行設計,以便具有DUT所用協定特有之連接器。
應知,圖3僅繪示一測試器切片之一例示性實施例。再者,請注意,本發明之實施例非僅受限於圖3所示測試器切片之類型。本發明之實施例可包括許多不同類型之測試器切片及基元。然而,各測試器切片將包含上可規劃本發明之流量捕獲及除錯模組的FPGA,與測試器切片之組態無關。
在本發明之一項實施例中,DUT 372A至372M係裝載於置放在一熱腔室390內部用於測試之一裝載板380上。DUT 372A至372M及裝載板380從裝置電力供應器332A及332B得到電力。
可連接至各FPGA之DUT數量取決於FPGA中之收發器數量及各DUT所需I/O通道之數量。在一項實施例中,FPGA 316及318可各包含32個高速收發器,並且匯流排352及354可各為32位元寬,然而,或多或少可取決於應用來實施。舉例而言,如果各DUT需要8條I/O通道,則在此一系統中,僅4個DUT可連接至各FPGA。
測試器處理器304係透過匯流排312連接至系統控制器301並且可與之通訊。在一項實施例中,測試器處理器304透過一單獨專屬匯流排(例如:分別為330及332)與各FPGA裝置316及318通訊。在一項實施例中,測試器處理器304可透過分配給FPGA裝置之處理功能最小之FPGA來透明地控制DUT 372A至372N之測試。在此實施例中,匯流排330及332之資料流量會快速耗盡,因為藉由測試器處理器所產生之所有命令及資料都需要透過匯流排傳遞至FPGA裝置。在其他實施例中,測試器處理器304可藉由將控制DUT測試之功能分配給FPGA裝置來共享處理負載。在這些實施例中,匯流排330及332上方之流量得以降低,因為FPGA裝置可產生其自有命令及資料。
在一項實施例中,各FPGA裝置,例如316及318,係連接至其自有專屬記憶體區塊,例如308及304。這些記憶體區塊還可用於儲存寫出至DUT之測試型樣資料。在一項實施例中,各FPGA裝置可包含帶有功能模組之二或更多個實體化FPGA測試器區塊(圖未示),用於進行包括實施通訊性協定引擎及硬體加速器在內之功能。
再者,系統中之DUT 372A至372M各可在一「每DUT測試器」組態中連接至一專屬實體化FPGA測試器區塊,其中各DUT獲得其自有實體化測試器區塊。這允許對各DUT單獨執行測試。此一組態中之硬體資源係採用以最小硬體共享支援單獨DUT之一方式來設計。此組態亦允許對許多DUT進行平行測試,其中各DUT可連接至其在FPGA內之自有專屬FPGA測試器區塊並運行一不同測試程式。
圖3所示本發明之實施例之架構具有數個優點。首先,系統中不需要特定協定匯流排配接器插座及卡片,因為可在FPGA裝置內之實體化FPGA測試器區塊上直接規劃通訊協定模組。實體化測試器區塊可被組配用以採用DUT支援之任何協定與DUT通訊。因此,如果需要測試帶有不同協定支援之DUT,則可將其連接至相同系統,並且可將FPGA再規劃成支援相關聯協定。結果是,一個ATE本體可輕易地被組配用以測試支援許多不同協定類型之DUT。
在一項實施例中,可從系統控制器301上之一快取,經由一簡易位元串流,下載並在FPGA上直接安裝新協定,而無需任何種類之硬體互動。一FPGA通常將包括一可組配介面核心(或IP核心),其可規劃為針對一DUT提供一或多個協定式介面之功能,並且可規劃為與DUT介接。舉例而言,ATE設備中之FPGAP 316及318將包括一介面核心,其可初始組配有用以測試PCIe裝置之PCIe協定,且隨後經由一軟體下載重新組配以測試SATA裝置。同樣地,如果發佈一新協定,則FPGA可經由一位元串流下載輕易地組配有那種協定,而不必實體切換系統中之所有硬體匯流排配接器卡。最後,如果需要實施一非標準協定,則FPGA仍可被組配用以實施此一協定。
在另一實施例中,FPGA可被組配用以運行多於一種通訊性協定,其中亦可從系統控制器301下載並透過軟體組配這些協定。換句話說,各FPGA實施自訂韌體及軟體映像,以在單一晶片中實施一或多個PC式測試器之功能。所需電氣信令及協定式信令係藉由FPGA中之晶片上IP核心來提供。如上述,各FPGA可規劃有預先驗證之介面或IP核心。這確保根據一給定介面標準之相符性及相容性。FPGA之可規劃本質係用於自SSD、HDD及其他協定式儲存裝置,針對儲存測試應用,最佳化靈活性、成本、平行性及升級能力。
舉例來說,FPGA 316內之一實體化FPGA測試器區塊可被組配用以運行PCIe協定,而相同FPGA 316內之一不同實體化FPGA測試器區塊則可被組配用以運行SATA協定。這允許測試器硬體同時測試支援不同協定之DUT。現可連接FPGA 316以測試支援PCIe及SATA協定兩者之一DUT。替代地,可將其連接以測試兩個不同DUT,一個DUT支援PCIe協定且另一DUT支援SATA協定,其中FPGA內之各實體化功能模組係組配有用以對與其連接之相應DUT進行測試之一協定。
在一項實施例中,FPGA中之介面或IP核心可從一第三方廠商獲取,但可能需要某客製化才能與本文中所述之實施例相容。在一項實施例中,介面核心提供兩種功能:a)將儲存命令包裝到一標準協定裡以供透過一實體通道傳輸;以及2)係電氣信號產生器及接收器。
圖4係一高階方塊圖,其根據本發明之一實施例,繪示本發明之流量捕獲模組收集與自動化測試有關之診斷資訊所採用之方式。「流量」是指各種受監測匯流排上方之信號流量。
如圖4所示,各測試器420 (或測試器切片)包含與至少一個DUT 410通訊之至少一個FPGA 430。如圖3所示,通常各FPGA會與多個DUT通訊。
本發明之實施例將流量捕獲邏輯模組新增到FPGA,例如450A、450B、…、450N、451A、…、451M及452A,以便收集諸如測試器420隨著時間之狀態等資訊(包括FPGA 430)、及測試器420與DUT之間隨著時間交換之資料。流量捕獲邏輯模組屬於完全可規劃,並且可予以規劃用來進行一系列功能。使用流量捕獲模組允許測試器有助益地收集與模組內之裝置故障、以及測試器韌體本身內部之緩衝區有關之資訊。應知,本發明在本文中不受限於FPGA,舉例而言,也可將本發明之捕獲模組規劃到其他類型之可規劃邏輯裝置上。
目前,測試產業中正在開發用於更輕易地解讀所收集資料之除錯工具。該等工具大部分屬於軟體式,並且旨在以一脈絡相關方式組織所收集之資料,允許專家更輕易地識別問題。然而,因為這些方法需要一工程師手動檢閱測試日誌及檔案,因此仍然完全屬於勞力密集。
本發明之實施例有助益在硬體之邏輯模組內,例如在FPGA內部,新增分析能力。舉例而言,可規劃捕獲邏輯模組及緩衝區,用以監測裝置故障前兆。故障前兆針對與可能將要發生故障有關之DUT提供一指示。以前,一工程師必須手動檢閱數個日誌才能確定與即將發生之裝置故障有關之資訊。本發明之實施例有助益地建置針對韌體內之潛在裝置故障進行識別及向工程師發出警示之能力。流量捕獲模組即時分析除錯資料。再者,流量捕獲模組對可疑條件進行識別,並且只要進行日誌記錄以稍後供一人員檢驗或供軟體分析便標示該等可疑條件。
在一項實施例中,本發明之流量捕獲及除錯工具包含一FPGA邏輯(韌體)及軟體式工具的一集合,其有助益地一起運作以幫助識別裝置故障之原因,例如根本原因。規劃到FPGA上之邏輯模組監測及捕獲:(1)流量或測試器與相應DUT之間交換之流量之代理;(2)用於組配測試器或相應DUT之組配命令;以及(3)測試器內之狀態。再者,在測試程序期間,FPGA內偶爾可能發生錯誤或無法預料之行為,其可能藉由捕獲模組來捕獲。另外,捕獲模組內之邏輯亦檢查故障前兆,並且在對其進行日誌記錄時對其進行標示。軟體440中所包括之自動化軟體式除錯工具可從例如450A至450N、451A至451M等捕獲模組提取捕獲結果、組織資料、以及顯示根本原因。
在一典型測試組態中,FPGA 430會將一預定型樣寫入至DUT 410、從DUT 410讀回該型樣、以及將這兩者作比較,以便確定DUT是否正常作用。如參照圖3所述,各FPGA可被組配用以執行一不同協定,例如PCIe協定,並且可進一步被組配用以產生命令及資料以測試一或多個已連接DUT。
本發明之捕獲模組允許自動捕獲及監測FPGA與DUT之間的資料及命令交換以檢查偏差。一FPGA 430可同時與一個或多個DUT通訊。因此,各FPGA可在第一級段包含多個捕獲模組,例如450A至450N,各捕獲模組被組配用以與一分立DUT通訊,例如DUT 496A、DUT B496B…DUT 496N。從DUT蒐集之資訊可向上游流經一或多個級段,直到將其傳遞至軟體440為止。
舉例而言,圖4所示之FPGA包含三個級段。在第一級段,從DUT向捕獲模組,例如450A至450N,傳遞資料。隨後,資料流經包含例示性捕獲模組451A至451M之第二級段。從那裡,資料在傳遞至軟體之前通過包含捕獲模組452A之最後級段。應知,本發明之實施例不受限於特定數量之級段或特定數量之捕獲模組。一FPGA可包含一或多個級段,各級段包含一或多個捕獲模組,端視FPGA之複雜度及要進行之測試而定。然而,從DUT捕獲之資料通常係使用多個級段之捕獲模組及緩衝區向上游傳遞至軟體440。
FPGA內各級段中之捕獲模組通常會具有與其他級段之捕獲模組不同之一組態。舉例而言,第一級段中之捕獲模組,例如圖4中所示FPGA之450A至450N,將被組配用以直接與DUT通訊並從DUT收集資料。第二級段中之捕獲模組,例如451A至451M,被組配用以具有類似於交換機之性質,因為其將從DUT收集之資料路由安排至軟體區塊440。最後,FPGA 495之第三級中之捕獲模組被組配用以將從DUT蒐集之資訊轉移至軟體模組440,並且進一步將資料及命令從軟體440向下游轉移至DUT。在FPGA各處散播捕獲模組允許輕易捕獲及分析FPGA之任何錯誤或無法預料之行為。
在一項實施例中,捕獲胞元可用於在DUT 496A至496N與軟體440之間輸送資訊。舉例來說,軟體440可透過捕獲模組鏈將命令及資料向下游發送至DUT。再者,DUT可透過捕獲模組鏈將回應向上游發送至軟體440。捕獲模組屬於可規劃,並且具有必要之邏輯,用以識別及標示在通訊之任何級段期間可能發生之任何錯誤狀況。舉例而言,當向上游傳送資訊時,捕獲模組451M可遭遇一錯誤狀況。捕獲模組451M可含有用以判斷錯誤狀況是否與其所接收資訊之來源DUT有關、或錯誤是否與規劃到捕獲模組451M裡之交換機有關之邏輯電路系統。
替代地,可規劃捕獲模組451M以分析從一已連接DUT,例如469N,接收之資料,並且識別一裝置故障前兆。換句話說,可規劃捕獲模組451M以使用從DUT蒐集之資料來指出DUT即將故障。捕獲模組451M可接著標示一錯誤狀況或一潛在錯誤狀況,並且將與錯誤有關之資訊轉發至軟體440,從而可向使用者發出警示。
在一項實施例中,捕獲模組亦可含有邏輯電路系統,並且經規劃以分析捕獲之資訊並識別錯誤之一根本原因。舉例而言,捕獲模組可規劃有基於所收集資訊運行之一規則檢查器。換句話說,規則檢查器可透過捕獲之所有故障相關資訊進行剖析,以藉由基於所捕獲資訊運行一組規則來識別故障之一些可能原因。
在一項實施例中,可有數種不同類型之捕獲邏輯模組被規劃到FPGA裡,其中各捕獲模組係經規劃以伺服一不同目的。
舉例而言,如果DUT係PCIe裝置,則一或多個捕獲模組可包含交易層封包(TLP)捕獲模組。使用PCIe協定在一主機與一用戶端之間(或在一測試器與一被測裝置之間)交換交易層封包,而FPGA中之捕獲模組舉例而言,可捕獲這些TLP以供進一步檢驗並用以收集故障相關資訊。
可將另一類型之捕獲模組規劃為一連結訓練現況狀態機(LTSSM)捕獲模組。LTSSM捕獲模組包含對LTSSM事件進行日誌記錄之FPGA邏輯。LTSSM定義PCIe協定中經過實體層及鏈路層狀態之狀態機,以便從一個端點向另一端點進行通訊。這些狀態可使用一FPGA內之捕獲模組邏輯來捕獲及分析。舉例而言,捕獲模組可能夠識別及捕獲FPGA之IP核心在執行PCIe協定時進行轉變之不同狀態。如果轉變至一預期狀態時有一故障、或如果在處理一特定狀態時發生一故障,則捕獲模組將會捕獲資訊並將其傳送至軟體440以供進一步分析。替代地,在一項實施例中,捕獲模組可含有用以例如使用一規則檢查器來分析錯誤狀況並確定錯誤根本原因之進一步邏輯電路系統。接著可將診斷資訊傳送至軟體440以轉發至使用者。
另一類型之捕獲模組可包含一NAK捕獲模組。NAK係負確認或未確認之一縮寫。其係數位通訊中使用之一信號,用來確保資料係以一最小錯誤接收。一種類型之捕獲模組包含對NAK事件進行日誌記錄之邏輯。
在一項實施例中,一捕獲模組可包含一活動捕獲模組。一活動捕獲模組包含對活動檢測事件進行日誌記錄之FPGA邏輯。如果在傳入或外送線路上檢測到任何活動,則活動檢測捕獲模組將對此類事件進行日誌記錄以呈現給使用者。
在一項實施例中,一捕獲模組可包含一等化捕獲模組。等化捕獲模組對等化事件進行日誌記錄。等化可藉由在一傳送器及接收器上調整信號,針對PCIe協定來進行,以使得可維持所傳遞資料之完整性。捕獲模組將會監測PCIe IP核心,以確定等化進行之方式。換句話說,捕獲模組將會監測IP核心以確定正在請求並為了等化目的而使用的是哪些設定,並且判斷是否正在接受該等設定。如果有設定可疑活動或任何非法值,則可捕獲並標示活動,以及透過軟體模組440向使用者回報。
在一項實施例中,一捕獲模組可包含一完成捕獲模組。完成捕獲模組的設計旨在對一讀取請求與讀取完成之間的一潛時進行日誌記錄。
在一項實施例中,一捕獲模組可包含一增強型進階錯誤回報(AER)捕獲模組。此捕獲模組包含回報進階錯誤回報(AER)事件發生數量之邏輯。進階錯誤回報係PCIe協定之一特徵,因此,這是一種可在運行PCIe協定之一FPGA中規劃之捕獲模組。
在一項實施例中,一捕獲模組可包含一暫存器存取捕獲模組。一暫存器存取捕獲模組包含對控制及狀態暫存器之讀取/寫入存取進行日誌記錄之FPGA邏輯。
在一項實施例中,一捕獲模組可包含一流量篩選捕獲模組。一流量篩選捕獲模組選擇性地減少TLP捕獲模組將收集之訊務量。因為FPGA內部之緩衝空間有限,因此可將一流量篩選捕獲模組與TLP捕獲模組搭配,用於對使用者為了診斷目的而最感興趣之封包之一子集進行篩選或選擇性地選擇。
在一項實施例中,一捕獲模組可包含一流量觸發捕獲模組。一流量觸發捕獲模組包含基於一經檢測事件停止一捕獲之FPGA邏輯。換句話說,如果一使用者想要在檢測到一特定狀況之後停止捕獲流量,則可將一流量觸發捕獲模組規劃到FPGA上。
在一項實施例中,一捕獲模組可包含一增強型資料日誌記錄捕獲模組。此捕獲模組包含,該FPGA邏輯將所預期資料與所接收資料作比較,並藉由將結果發送至軟體區塊440以向使用者顯示該等結果之FPGA邏輯。
在另一實施例中,一捕獲模組可包含一LTSSM規則檢查模組。PCIe裝置中之這種捕獲模組係規劃有用以判斷LTSSM狀態轉變是否正常之FPGA邏輯。在使用軟體比使用硬體模組對於進行規則檢查可更有效率之狀況中,亦可將LTSSM規則檢查能力規劃到後處理軟體裡(例如,軟體440內)。
圖5係一方塊圖,其繪示根據本發明之一實施例,對本發明之流量捕獲模組進行規劃之方式。應知,圖5所示之捕獲區塊550屬於例示性。不同類型之捕獲模組可取決於其功能而予以進行不同之規劃或組配。
一典型捕獲模組,例如捕獲模組550,可包含一或多個輸入。舉例而言,監測1 555A至監測N 555N這幾個輸入各係與捕獲區塊經規劃以監測之資料流量、狀態或現況有關之一分立輸入。
捕獲區塊之獲取邏輯520選擇並捕獲有關流量、狀態或現況之資訊,並且以一期望順序(基於規劃)對其進行格式化,以使得可將其儲存在捕獲記憶體530中。獲取邏輯塊520亦可選擇性地捕獲所欲資料。換句話說,可規劃獲取邏輯塊以僅蒐集透過監測信號555A至555N輸入之資料之一子集。可將某些組態位元規劃到獲取邏輯塊裡,該獲取邏輯塊指定應該捕獲多少傳入資料,舉例而言,在某些例子中,可僅需要捕獲傳入封包之標頭。
在一項實施例中,捕獲模組可僅捕獲某些類型之資料,例如帶有特定位元組態之資料封包。可規劃獲取邏輯520以選擇性地僅捕獲所欲資料封包,同時忽略其餘資料封包。在一項實施例中,可將一預篩選模組(圖未示)新增到居前於獲取邏輯塊520並選擇性地篩選傳入資料之捕獲區塊。
結果是,獲取邏輯塊520可存取所收集資料之格式。再者,獲取邏輯塊520亦可例如針對LTSSM事件進行狀態追蹤。如上述,LTSSM定義PCIe協定中經過實體層及鏈路層狀態之狀態機,以便從一個端點向另一端點進行通訊。
可將藉由獲取邏輯塊520獲取之資訊轉移至捕獲記憶體530,其中儲存在記憶體530中之各條目570均隨附有一位址571。如前述,獲取邏輯塊520可存取受監測資訊之格式,並且可將此用於建立要儲存在記憶體530內之條目。通常,獲取邏輯520會確定要在記憶體530內儲存資訊之位址571。在一項實施例中,於各時脈週期內捕獲分立資訊,並且為各時脈週期建立進入記憶體530之一條目。舉例而言,一TLP捕獲區塊可在各時脈週期捕獲一TLP封包,並且在記憶體模組中為各TLP封包建立一新條目。另一方面,由於各TLP封包可包含256個位元,所以可在捕獲記憶體530中橫跨多個條目儲存各TLP封包。
在不同實施例中,某些類型之資料可取用多個時脈週期來捕獲。因此,當關於一特定事件之所有資料都已收集時,在記憶體530中為此類資料建立一條目。
在一項實施例中,獲取邏輯塊520可包含一簡單狀態機,其格式化來自監測器之資料以產生要在記憶體530中儲存之條目及位址。狀態機進一步為下一個條目遞增位址。狀態機亦可具有附加狀態,端視捕獲模組之類型而定。舉例而言,一流量觸發捕獲區塊可具有與一事件之觸發有關之附加狀態。
在一項實施例中,記憶體530可包含一循環緩衝區,用以儲存接收自獲取邏輯模組520之條目及隨附位址。條目的數量及其頻率取決於捕獲區塊之類型。舉例而言,如TLP捕獲之一捕獲模組可需要在記憶體530中為每個交易層封包儲存一條目。另一方面,正在監測狀態之一捕獲區塊僅在檢測到一狀態變更時才可建立一條目。通常,一時間戳記與各條目係在其儲存於捕獲記憶體530中時相關聯。這允許輕易地對資料進行排序。在來自FPGA中各種捕獲模組之資料已轉移至軟體505之後,這尤其方便。時間戳記資料可使用時間戳記來排序,這使工程師得以輕易地按照時間順序檢視結果,並且診斷任何問題。除了資料及時間戳記以外,在一些狀況中,亦可伴隨含有事件相關附加細節之條目儲存元資料。舉例而言,如果捕獲模組儲存與狀態變更事件有關之資訊,則可在記憶體模組530中伴隨每個條目儲存關於狀態變更事件類型之元資料。
在一項實施例中,各捕獲模組使用轉移介面540將所收集之資訊傳遞至測試器軟體505。通常,各捕獲模組將包含用以將所捕獲資料傳遞至軟體505之一轉移介面區塊。轉移介面區塊540可分別使用位址線及資料線572及573存取捕獲記憶體530。現況信號574向轉移介面提供與記憶體530中資訊儲存位置有關之資訊、及與資料之格式有關之任何進一步資訊。控制信號575允許轉移介面區塊540控制送至軟體505之資料流,並且設定與對送至軟體505之資料流進行控制有關之任何其他偏好。
在一項實施例中,倘若一捕獲模組僅捕獲現況資訊,而不是一捕獲記憶體530,則緩衝區通常將僅包含用於儲存現況資訊之暫存器。
在一項實施例中,可規劃捕獲模組以確定事件之間的時間滯後。舉例而言,捕獲模組可以是一完成捕獲模組,其對一讀取請求與該讀取請求之完成之間的潛伏進行日誌記錄。因此,(例如,使用監測1 555A)受監測之信號之一將會是一讀取請求,而捕獲模組所監測(例如,使用監測N 555N監測)之另一信號將會是回應於完成讀取請求而發送之一完成封包。捕獲模組可使用時間戳記來監測讀取請求與完成之間的時間滯後、或判斷是否根本沒有完成。捕獲模組之獲取邏輯520通常需要以來自規格之資訊進行規劃,例如與典型讀取請求次數、及超出便需要標示一讀取請求失敗之最大時間有關之PCIe規格。捕獲模組可在捕獲記憶體530中記錄與讀取請求次數或任何故障資訊有關之資訊,並且透過軟體505向使用者回報出該資訊。
在一項實施例中,使用者對於應該將多少及何種類型之捕獲模組規劃到一特定FPGA裡具有控制權。因為可輕易地再規劃FPGA,所以一使用者不必受限於一固定組態。舉例而言,一使用者可基於在FPGA上仿真之協定類型、或基於在範圍內使用FPGA之設計類型來選擇不同數量及類型之捕獲模組。當設計人員組建要規劃到FPGA裡之位元檔案時,可在一命令行介面處指定要新增到任何特定FPGA之捕獲模組之數量及類型。換句話說,在對FPGA進行規劃時,某些組建選項允許使用者輕易地選擇要包括在一設計中之捕獲模組之數量及類型。
圖6繪示一例示性電腦實施程序的一流程圖,用於根據本發明之一項實施例,在自動化裝置測試過程中捕獲關鍵資訊,以便確定裝置故障之根本原因。
於步驟601,為一特定測試啟用捕獲。這通常涉及設置流量捕獲,包括設置各種組態以啟用並開始測試。舉例而言,使用者將必須對FPGA進行規劃,並且確定要包含在FPGA內之捕獲模組之類型及數量。
於步驟602,開始測試。於步驟603,如果檢測到一故障,則於步驟605停止測試。隨後,於步驟606停止捕獲。如果未檢測到故障,則允許測試運行其過程,直到於步驟604測試完成為止。隨後,於步驟606停止捕獲。
之後,於步驟607,使用測試器軟體取回並儲存捕獲之結果。舉例而言,可將捕獲之結果儲存並下載到軟體505裡。
一旦蒐集資料,於步驟608,便可例如使用一規則檢查器來手動地或自動地對其進行分析。
於步驟609,產生與測試有關之日誌。於步驟612,如果沒有更多資料要處理並且測試完成,則於步驟620測試結束。然而,如果有更多資料要處理,則於步驟610對資料進行一後處理分析。在一項實施例中,後處理分析通常涉及分析日誌以確定裝置故障之根本原因,如在2018年3月8日提出申請之題為「A LOG POST PROCESSOR FOR IDENTIFYING ROOT CAUSES OF DEVICE FAILURE DURING AUTOMATED TESTING」之相關美國專利申請案第15/916,126號中所解釋。然而,也可對資料進行其他類型之後處理。舉例而言,資料連同捕獲模組記憶體530中所儲存帶有時間戳記之附加元資料可非屬使用者可輕易辨別之格式。於步驟609,後處理將從捕獲模組取回之資訊轉換成一使用者可直觀地理解並使用之一格式。
於步驟611,產生關於測試之一報告。舉例而言,報告可識別一裝置故障之根本原因,或針對可能即將故障之任何裝置向使用者發出警示。
圖7繪示一例示性電腦實施程序的一流程圖,用於根據本發明之一項實施例,在自動化裝置測試期間使用捕獲模組來監測資料流量及診斷問題。
於步驟702,將複數個捕獲模組規劃到一可規劃邏輯裝置裡,例如一FPGA裡,用以監測與FPGA上之一測試相關聯之資料流量。FPGA,例如FPGA 495,係連接至要測試之複數個DUT,例如DUT 496A至496N。再者,FPGA亦連接至一系統控制器,例如系統控制器301,其執行用於協調測試之測試器軟體應用程式。如上述,使用者可在下載用於對FPGA進行規劃之位元檔案之前,選擇要規劃到邏輯裝置裡之捕獲模組之類型及數量。
於步驟704,FPGA中之資料流量係使用捕獲模組來監測。捕獲模組包含獲取邏輯電路系統520,其確定要捕獲及監測之相關資料。
於步驟706,與監測相關聯之結果係儲存在複數個捕獲模組中之各者內之相應記憶體中。
最終,於步驟708,將結果傳送至在系統控制器上執行之測試器軟體應用程式。
用於流量捕獲及除錯工具之圖形使用者介面
如上述,測試產業中可用之除錯工具允許解讀收集之資料。該等工具大部分屬於軟體式,並且旨在以一脈絡相關方式組織所收集之資料,允許專家更輕易地識別問題。然而,因為這些方法需要一工程師手動檢閱測試日誌及檔案,因此仍然完全屬於勞力密集。
本發明之實施例在FPGA邏輯內捕獲流量及錯誤資訊(例如,使用捕獲模組450A至450N等來捕獲),並且將該資訊與軟體(例如:軟體505)耦合以收集、處理、及顯示資料。再者,本發明之實施例有助益地將各種功能之一大量整合提供到軟體裡。軟體不僅從FPGA捕獲模組收集及匯集資料,還從測試器系統之各個點收集及匯集資料。再者,一使用者能夠組配軟體以確定從哪些捕獲模組收集資訊、以及對來自捕獲模組之資訊進行分析所採用之方式。
除其他特徵外,軟體還有助益地包含處理資料以採用一可理解方式顯示資料之一GUI。再者,該軟體進行下列動作:a)分析資料以檢測需要進一步留意之可疑條件;b)允許使用者新增/刪除/修改/儲存可疑條件;c)彰顯已標示有該等可疑條件之資料;d)提供來源資料與所標示條件之間的連結。
同樣地,本發明之實施例不僅有助益地在韌體中之捕獲邏輯模組內新增分析能力,而且還提供能夠對從捕獲邏輯模組傳送之資訊進行分析之軟體505。軟體505包含一圖形使用者介面(GUI),其在軟體505進行一後處理步驟之後,向使用者顯示來自捕獲模組之資訊。據了解,軟體505中所包括之自動化軟體式除錯工具可從例如450A至450N、451A至451M等捕獲模組提取捕獲結果、組織資料、以及顯示問題之根本原因。
在一項實施例中,一旦從捕獲模組取回捕獲之結果並使用測試器軟體505儲存,便可在使用測試器軟體505進行後處理之後,自動分析資料(例如,使用一規則檢查器分析)。在一項實施例中,後處理分析通常涉及分析日誌以確定裝置故障之根本原因,如在2018年3月8日提出申請之題為「A LOG POST PROCESSOR FOR IDENTIFYING ROOT CAUSES OF DEVICE FAILURE DURING AUTOMATED TESTING」之相關美國專利申請案第15/916,126號中所解釋。然而,也可對資料進行其他類型之後處理。舉例而言,資料連同捕獲模組記憶體530中所儲存帶有時間戳記之附加元資料可非屬使用者可輕易辨別之格式。於步驟609,後處理將從捕獲模組取回之資訊轉換成一使用者可直觀地理解並使用之一格式。再者,可透過與軟體505相關聯之GUI向一使用者顯示資訊。
基於從捕獲模組收集之資料在軟體505內識別之錯誤中有一些可遵循一特定或獨特型樣。此類型樣可稱為「錯誤簽章」。在一項實作態樣中,軟體505被組配用以自動辨識錯誤簽章,並且採取與一相應錯誤簽章相關聯之一預定動作(例如,產生一警示、傳訊給使用者、將資訊儲存在一日誌中等)。可將確定回應於一特定簽章而要採取之動作的規則規劃到軟體505裡。再者,回應於一特定簽章而要採取之動作可包括透過GUI向使用者顯示一錯誤訊息或一警示。
在一項實施例中,於分析結果之後,軟體505產生關於測試之一報告。舉例而言,報告可識別一裝置故障之根本原因,或針對可能即將故障之任何裝置向使用者發出警示。
在一項實施例中,與軟體505相關聯之GUI有助益地在掃描及分析由一流量捕獲工具(例如:捕獲工具450A等)所捕獲之資料時,為進行故障排除之一使用者提供一直觀之資料顯示。在使用軟體505之GUI選擇捕獲選項之後,從圖4之FPGA 495,於軟體505處捕獲並接收資料。
在一項實施例中,來自捕獲日誌檔案之資料係採用一更直觀且圖形化之方式向一技術人員顯示,以使得可在GUI顯示器上更輕易地識別問題。在一項實作態樣中,除了規格(例如:一標準所規定之範圍或限制)以外,還從日誌檔案讀取資料,並且軟體505彩現影像及其他視覺屬性以供顯示,這有助於以一更直觀之方式(如相較於直接讀取日誌檔案)確定所捕獲資料之意義。依照這種方式,從日誌檔案讀取之資料係結合規格採用促進一技術人員確定操作系統時之錯誤或問題之一方式呈現在GUI中。
由本發明之實施例提供之GUI顯示有所助益,因為如相較於耗時且容易出錯之直接讀取資料,使錯誤確定更容易、更快且更不繁複。再者,在識別與一規格相關聯之錯誤類型方面,GUI允許對技術人員進行更快速之訓練。
圖8係一方塊圖,其根據本發明之一項實施例,繪示軟體系統之各種記憶體常駐功能組件或模組。在一項實施例中,軟體805包含一GUI 850,其採用如上述之一可理解方式向一使用者顯示測試資料。GUI亦使得使用者能夠規劃及組配捕獲模組以收集必要資訊。再者,GUI允許一使用者將規則規劃到軟體裡,用以能夠自動分析由捕獲模組所捕獲之資訊。在一項實施例中,軟體亦可包含一組配模組,該組配模組允許使用者在測試器系統中、及採用接收自各捕獲模組之資訊藉由軟體805 (例如:分析模組870)來分析之方式組配各種捕獲模組。
在一項實施例中,軟體805包含用於對來自DUT (例如:出自圖4之496A)或捕獲模組(例如:出自圖4之450A)之日誌進行分析之一日誌後處理器模組880,用以確定如2018年3月8日提出申請之題為「A LOG POST PROCESSOR FOR IDENTIFYING ROOT CAUSES OF DEVICE FAILURE DURING AUTOMATED TESTING」之相關美國專利申請案第15/916,126號中解釋之裝置故障根本原因。軟體805將自動執行日誌後處理器、分析日誌並提供與故障之DUT或測試器系統中失敗之根本原因有關之資訊。
軟體805舉例而言,亦可包含被組配用以從FPGA捕獲模組且亦從測試器系統中之各個點收集及匯集資料之一匯集器模組860,如上述。軟體505舉例而言,亦可包含一後處理分析模組870,其對從捕獲模組取回之資料進行後處理分析,以檢測需要進一步留意之可疑條件。分析模組亦允許一使用者新增、刪除、修改、或標示一可疑條件。換句話說,使用者能夠組配與使用者定義之一條件有關之一警示。因此,使用者能夠手動設定對可疑條件及故障進行識別之一些規則。
在一項實作態樣中,後處理分析模組870亦可辨識錯誤簽章,並且回應於對從捕獲模組取回之資料中之一特定錯誤簽章進行辨識而採取一預定動作。在一項實施例中,軟體805允許一使用者新增與可在一以後日期使用之一特定故障狀況相關聯之評論。
請注意,圖8所示之所有模組都可由使用者完全客製化。換句話說,使用者可組配模組,並且自動化該等模組以進行特定於使用者之收集及分析之類型。再者,該等模組由使用者組配時,可被組配用以回報問題及故障之類型,包括與問題及故障相關聯之時間(使用搭配圖5論述之時間戳記)及故障之原因。
在一項實施例中,軟體805可被組配用以包含多種類型之分析模組,例如規則檢查模組。各規則檢查模組可與一特定類型之捕獲模組相關聯。舉例而言,軟體505可為一LTSSM捕獲模組、一活動捕獲模組、一等化捕獲模組、一進階錯誤回報捕獲模組、一TLP規則捕獲模組等實施一不同規則檢查器或分析模組。圖8顯示一LTSSM規則檢查器模組820、一EQ規則檢查器模組830及一TLP規則檢查器模組840。然而,應知,軟體805可包含與測試器系統中捕獲模組之類型一樣多之相應模組。
分析模組(例如:規則檢查模組)提供預設規則,並且亦允許使用者修改(或新增規則)以在日誌中尋找潛在故障。使用者亦可儲存結果,並且將輸出連結至一協定解碼器890,以找到可疑封包。對於各類型之分析模組,軟體805之GUI 850將顯示包括視窗之一單獨介面,該等視窗:(1)顯示要檢測之所欲狀況;(2)顯示已檢測到之狀況;以及(3)捕獲資料中所檢測狀況之發生點。
如上述,在一項實施例中,可有數種不同類型之捕獲邏輯模組被規劃到FPGA裡,其中各捕獲模組係經規劃以伺服一不同目的。在一項實作態樣中,各類型之捕獲模組在圖8之軟體805內具有一對應之分析模組。
如前述,可將一捕獲模組規劃為一連結訓練現況狀態機(LTSSM)捕獲模組。LTSSM捕獲模組包含對LTSSM事件進行日誌記錄之邏輯電路系統。LTSSM定義PCIe協定中經過實體層及鏈路層狀態之狀態機,以便從一個端點向另一端點進行通訊。這些狀態可使用一FPGA內之捕獲模組邏輯來捕獲及分析。舉例而言,捕獲模組可能夠識別及捕獲FPGA之IP核心在執行PCIe協定時進行轉變之不同狀態。如果轉變至一預期狀態時有一故障、或如果在處理一特定狀態時發生一故障,則捕獲模組將會捕獲資訊並將其傳送至軟體805以供進一步分析。替代地,在一項實施例中,捕獲模組可含有用以例如使用一規則檢查器來分析錯誤狀況並確定錯誤根本原因之進一步邏輯電路系統。接著可將診斷資訊傳送至軟體805以轉發至使用者。
在另一實施例中,一捕獲模組可包含一LTSSM規則檢查模組。PCIe裝置中之這種捕獲模組係規劃有用以判斷LTSSM狀態轉變是否正常之FPGA邏輯。在使用軟體比使用硬體模組對於進行規則檢查可更有效率之狀況中,亦可將LTSSM規則檢查能力規劃到後處理軟體裡(例如,軟體805內)。
圖9繪示一GUI 900內之一例示性螢幕顯示,用於根據本發明之一項實施例,在軟體系統內組配一LTSSM規則檢查器。在一項實施例中,軟體805可由一使用者組配,用以分析與一LTSSM捕獲有關之一錯誤狀況、或用以確定LTSSM狀態轉變是否正常。舉例而言,在GUI 900內之視窗915中,一使用者可組配軟體805以檢測某些狀態轉變(從一「自狀態」 902到「至狀態」 904之轉變)、以及該等轉變是否已經超過一門檻逾時值907。軟體805可被組配用以在一逾時值907超出一預定門檻值時觸發。在GUI 900內之一不同視窗916中,軟體805可被組配用以顯示一結果清單904,結果清單904包含有關LTSSM狀態轉變之附加細節,該等狀態轉變與使用者在視窗915中尋找之條件相匹配。再者,在GUI 900內,另一視窗可展示從中提取結果清單904之日誌檔案之實際內容。
如前述,在一項實施例中,一捕獲模組可包含一等化捕獲模組。等化捕獲模組對等化事件進行日誌記錄。等化可藉由在一傳送器及接收器上調整信號,針對PCIe協定來進行,以使得可維持所傳遞資料之完整性。等化程序補償某些準則(例如:信號通道之特性)以能夠恢復一信號。舉例而言,等化藉由確保信號之完整性得以維持來幫助能夠從一類比信號恢復數位資料,這在有雜訊之環境中尤其重要。捕獲模組將會監測PCIe IP核心,以確定等化進行之方式。換句話說,捕獲模組將會監測IP核心以確定正在請求並為了等化目的而使用的是哪些設定,並且判斷是否正在接受該等設定。如果有設定可疑活動或任何非法值,則可捕獲並標示活動,以及透過軟體模組805向使用者回報。
圖10繪示一GUI 1000內之一例示性螢幕顯示,用於根據本發明之一項實施例,在軟體系統內組配一等化規則檢查器。在一項實施例中,軟體805可由一使用者組配,用以分析接收自捕獲模組之等化資訊。使用者可有能力組配對等化資訊內之某些條件進行檢查之規則或程序。視窗1002繪示可由一使用者組配,基於某些預定條件觸發之某些規則。使用者可有能力規劃與各規則相關聯之一門檻類型1015及一門檻值1003。GUI 1000中之視窗1007指出是否觸發了已組配之任何條件(並且在視窗1002中展示)。
如前述,如果DUT係PCIe裝置,則一或多個捕獲模組可包含交易層封包(TLP)捕獲模組。使用PCIe協定在一主機與一用戶端之間(或在一測試器與一被測裝置之間)交換交易層封包,而FPGA中之捕獲模組舉例而言,可捕獲這些TLP以供進一步檢驗並用以收集故障相關資訊。
在一項實作態樣中,TLP封包可包含三種類型之捕獲(或來自三種不同類型之捕獲模組的資料)。舉例而言,TLP封包可包含全都合併在一個檔案中之資料流量(一主機與用戶端之間交換之資料)、LTSSM流量及等化流量。抓取帶有與不同類型之捕獲模組有關之資訊的單一檔案係有助益地有效率。
圖11繪示GUI 1100內之一例示性螢幕顯示,用於根據本發明之一項實施例,在軟體系統內組配一TLP規則檢查器。在一項實施例中,軟體805可由一使用者組配,用以分析接收自捕獲模組之交易層資訊。使用者可有能力組配對等化資訊內之某些條件進行檢查之規則或程序。視窗1102繪示可由一使用者組配,基於某些預定條件觸發之某些規則。使用者可有能力規劃與各規則相關聯之一最大酬載門檻1115及一時間門檻1103。GUI 1100中之視窗1107指出是否觸發了已組配之任何條件(並且在視窗1102中展示)。在一項實作態樣中,可在一單獨視窗1160中顯示一TLP日誌檔案。軟體805可被組配用以在日誌檔案顯示視窗1160中自動彰顯與錯誤狀況相關聯之列。
圖12繪示一例示性電腦實施程序的一流程圖,用於根據本發明之一項實施例,分析自動化裝置測試期間從一可規劃邏輯裝置中之捕獲模組取回之資訊。
於步驟1202,將複數個捕獲模組規劃到一可規劃邏輯裝置裡,例如一FPGA裡,用以監測與FPGA上之一測試相關聯之資料流量。FPGA,例如FPGA 495,係連接至要測試之複數個DUT,例如DUT 496A至496N。再者,FPGA亦連接至一系統控制器,例如系統控制器301,其執行用於協調測試之測試器軟體應用程式。如上述,使用者可在下載用於對FPGA進行規劃之位元檔案之前,選擇要規劃到邏輯裝置裡之捕獲模組之類型及數量。在一項實施例中,捕獲模組可針對連接至FPGA之一監測應用程式,例如軟體805,透過一軟體系統之一GUI來規劃及組配。
於步驟1204,FPGA中或通過FPGA之資料流量係使用捕獲模組來監測。捕獲模組包含獲取邏輯電路系統520,其確定要捕獲及監測之相關資料。
於步驟1206,將與該監測相關聯之結果從該複數個捕獲模組中之各者內之相應記憶體取回到該監測應用程式裡。
最後,於步驟1208,對結果進行一分析,並且於步驟1210,透過與監測應用程式相關聯之GUI顯示該等結果。
為了解釋,已參照特定實施例對前述說明作說明。然而,以上說明性論述非意欲窮舉或將本發明限制於所揭示之精確形式。鑑於以上教示,許多修改及變化是有可能的。實施例是為了最能解釋本發明之原理及其實際應用而予以選擇及說明,用以藉此使所屬技術領域中具有通常知識者能夠憑藉各種修改使本發明及各項實施例得到最佳利用而可適合所思特定用途。
10:受控制環境腔室
20:測試頭
30:托盤
40:測試器切片
110:測試器控制系統
112:通訊基礎設施
114:處理器
116:系統記憶體
118:記憶體控制器
120:I/O控制器
122:通訊介面
124:顯示裝置
126:顯示配接器
128:輸入裝置
130:輸入介面
132:主要儲存裝置
133:備援儲存裝置
134:儲存介面
140:資料庫
300:ATE
301:系統控制器
302:網路交換機
304:測試器處理器
308:記憶體模組
310A,310B:站點模組板
312,352,354:匯流排
316,318,430,495:FPGA
330,332:系統匯流排
332A,332B:裝置電力供應器
340A~340N:測試器切片
372A~372M,410,496A~496N:DUT
380:裝載板
390:熱腔室
420:測試器
440,505,805:軟體
450A~450N,451A~451M,452A,550:捕獲模組
520:獲取邏輯
530:捕獲記憶體
540:轉移介面
555A~555N:監測信號
570:條目
571:位址
572:位址線
573:資料線
574:現況信號
575:控制信號
601~620,702~708,1200,1202,1204,1206,1208,1210:步驟
700:流程圖
820:LTSSM規則檢查器模組
830:EQ規則檢查器模組
840:TLP規則檢查器模組
850,900,1000,1100:GUI
860:匯集器模組
870:分析模組
880:日誌後處理器模組
890:協定解碼器
902:自狀態
904:至狀態
907:門檻逾時值
915,916,1002,1007,1102,1107,1160:視窗
1003:門檻值
1015:門檻類型
1103:時間門檻值
1115:最大酬載門檻
本發明之實施例是在附圖之圖式中以舉例方式說明,並非要作為限制,且其中相似的參考符號意指為類似的元件。
圖1係一電腦系統,可根據本發明之一項實施例,在該電腦系統上實施本發明之自動化測試系統之實施例;
圖2繪示一典型測試環境,其中DUT係置放到一受控制環境腔室裡。
圖3係一詳細示意方塊圖,其繪示一測試器切片之一例示性實施例及其與系統控制器及DUT之互連。
圖4係一高階方塊圖,其根據本發明之一實施例,繪示本發明之流量捕獲模組收集與自動化測試有關之診斷資訊所採用之方式。
圖5係一方塊圖,其繪示根據本發明之一實施例,對本發明之流量捕獲模組進行規劃之方式。
圖6繪示一例示性電腦實施程序的一流程圖,用於根據本發明之一項實施例,在自動化裝置測試過程中捕獲關鍵資訊,以便確定裝置故障之根本原因。
圖7繪示一例示性電腦實施程序的一流程圖,用於根據本發明之一項實施例,在自動化裝置測試期間使用捕獲模組來監測資料流量及診斷問題。
圖8係一方塊圖,其根據本發明之一項實施例,繪示軟體系統之各種功能組件。
圖9繪示一GUI之一例示性螢幕顯示,用於根據本發明之一項實施例,在軟體系統內組配一LTSSM規則檢查器。
圖10繪示一GUI之一例示性螢幕顯示,用於根據本發明之一項實施例,在軟體系統內組配一等化規則檢查器。
圖11繪示一GUI之一例示性螢幕顯示,用於根據本發明之一項實施例,在軟體系統內組配一TLP規則檢查器。
圖12繪示一例示性電腦實施程序的一流程圖,用於根據本發明之一項實施例,分析自動化裝置測試期間從一可規劃邏輯裝置中之捕獲模組取回之資訊。
在圖中,有相同稱呼之元件具有相同或類似之功能。
1200,1202,1204,1206,1208,1210:步驟
Claims (22)
- 一種使用自動化測試裝備(ATE)診斷一故障原因之方法,該方法包含:使用從與一監測應用程式相關聯之一圖形使用者介面(GUI)接收之輸入,組配一可規劃邏輯裝置中的複數個捕獲模組;使用該複數個捕獲模組來監測一被測裝置(DUT)與該可規劃邏輯裝置之間的資料流量,其中該複數個捕獲模組係可規劃並可操作以選擇性地捕獲要監測之資料流量,其中該資料流量包含該DUT與該可規劃邏輯裝置之間的一訊務流,其中該複數個捕獲模組係使用複數個級段來組配,並且其中該DUT與該可規劃邏輯裝置之間的該訊務流係透過該複數個級段來處理;將與該監測相關聯之結果從與該複數個捕獲模組中之各者相關聯之相應記憶體取回到該監測應用程式裡;以及一經取回便分析該等結果。
- 如請求項1之方法,其中該複數個捕獲模組包含複數種不同類型之捕獲模組,並且其中該分析包含對來自不同類型之捕獲模組的結果進行不同分析。
- 如請求項1之方法,其中該複數個級段中之各級段被組配用以包含該複數個捕獲模組中之一或多者。
- 如請求項1之方法,其中該複數個捕獲模組中之各捕獲模組可操作以被規劃來在與該相應捕獲模組相關聯之該複數個級段中之一級段期間,分析該資料流量並識別與該DUT有關之一錯誤狀況。
- 如請求項1之方法,其中該可規劃邏輯裝置係一現場可規劃閘陣列(FPGA),並且其中該複數個捕獲模組中之各捕獲模組包含邏輯電路系統,用以識別並標示在與該相應捕獲模組相關聯之該複數個級段中之一級段期間發 生之與該DUT有關之一錯誤狀況。
- 如請求項1之方法,其中該分析包含:實施可操作以剖析該資料流量並對該資料流量執行一組規則以識別錯誤狀況之一規則檢查器。
- 如請求項1之方法,其中該分析包含分析該資料流量、以及識別在該複數個級段中之一級段期間與該DUT有關並與一相應捕獲模組相關聯之一錯誤狀況。
- 如請求項1之方法,其更包含:處理及組織該等結果;以及透過該GUI以一結構化方式向一使用者顯示該等結果,其中該等結果包含該資料流量中識別之一錯誤之一根本原因。
- 如請求項1之方法,其中該分析包含:自動分析該等結果中所包含之日誌,以識別與DUT相關聯之故障之根本原因。
- 如請求項1之方法,其中該分析包含:識別該等結果中之一錯誤簽章,其中該錯誤簽章包含該資料流量中之一特定型樣;透過該GUI,藉由彩現及顯示資訊,向一使用者回報與該錯誤簽章相關聯之一狀況。
- 如請求項1之方法,其中該分析包含:匯集來自該複數個捕獲模組及該ATE之其他組件的該資料流量;以及識別該資料流量中之錯誤狀況。
- 如請求項1之方法,其中該複數個捕獲模組包含一鏈路訓練現況狀態機(LTSSM)模組類型,並且其中該分析更包含: 在該監測應用程式中組配一規則檢查器以檢查與該LTSSM模組類型相關聯之規則,其中該規則檢查器包含一或多個規則;以及回應於與該規則檢查器關聯之一違規,透過該GUI向一使用者標示一錯誤。
- 如請求項1之方法,其中該複數個捕獲模組包含一等化模組類型,並且其中該分析更包含:在該監測應用程式中組配一規則檢查器以檢查與該等化模組類型相關聯之規則,其中該規則檢查器包含一或多個規則;以及回應於與該規則檢查器關聯之一違規,透過該GUI向一使用者標示一錯誤。
- 如請求項1之方法,其中該複數個捕獲模組包含一交易層封包(TLP)捕獲模組類型,並且其中該分析更包含:在該監測應用程式中組配一規則檢查器以檢查與該TLP捕獲模組類型相關聯之規則,其中該規則檢查器包含一或多個規則;以及回應於與該規則檢查器關聯之一違規,透過該GUI向一使用者標示一錯誤。
- 一種使用自動化測試裝備(ATE)診斷一故障原因之設備,該設備包含:一可規劃邏輯裝置,其係通訊性耦合至一被測裝置(DUT),可操作以產生用於在該DUT上執行一測試之命令及資料,並且其中該可規劃邏輯裝置包含在該可規劃邏輯裝置上規劃之複數個可規劃捕獲模組,其中該複數個捕獲模組可操作以監測該DUT與該可規劃邏輯裝置之間的資料流量,其中該複數個捕獲模組可操作以選擇性地捕獲要監測之資料流量,其中該資料流量包含該DUT與該可規劃邏輯裝置之間的一訊務流,其中該複數個捕獲模組包含複數種類型且係使用複數個級段來組配,並且其中該DUT與該可規劃邏輯裝置之間的該訊務流係透過該複數個級段來處理;以及一監測應用程式,其可操作以提供一圖形使用者介面,並且被組配用以進 行下列動作:基於使用者輸入,規劃該複數個捕獲模組;將與監測該資料流量相關聯之結果從與該複數個捕獲模組中之各者相關聯之相應記憶體取回到該監測應用程式裡;以及透過該GUI之螢幕顯示以一結構化方式顯示該等結果。
- 如請求項15之設備,其中該監測應用程式更被組配用以:分析該等結果,其中該分析包含為不同類型之捕獲模組對結果進行不同分析。
- 如請求項15之設備,其中該複數個級段中之各級段被組配用以包含該複數個捕獲模組中之一或多者。
- 如請求項15之設備,其中該監測應用程式更被組配用以:藉由實施可操作以剖析該資料流量並對該資料流量執行一組規則以識別錯誤狀況之一規則檢查器來分析該等結果。
- 如請求項15之設備,其中該監測應用程式更被組配用以:分析該等結果以自動識別該等結果中之一錯誤簽章,其中該錯誤簽章包含該資料流量中之一特定型樣;透過該GUI,藉由彩現一螢幕顯示,向一使用者回報與該錯誤簽章相關聯之一狀況。
- 一種測試器,其包含:一系統控制器,用於控制一測試程式以供測試複數個DUT;一現場可規劃閘陣列(FPGA),其可操作以與該複數個DUT介接並測試該複數個DUT,該FPGA係耦合至該系統控制器,其中各FPGA包含複數個捕獲模組,其中該複數個捕獲模組包含不同類型並被規劃在該FPGA上且可操作以監測該複數個DUT與該FPGA之間的資料流量,其中該複數個捕獲模組可操作以選擇性 地捕獲及分析要監測之資料流量,其中該資料流量包含該複數個DUT與該FPGA之間的一訊務流,其中該複數個捕獲模組係使用複數個級段來組配,並且其中該複數個DUT與該FPGA之間的該訊務流係透過該複數個級段來處理;以及一監測應用程式,其可操作以實施一圖形使用者介面,並且被組配用以進行下列動作:基於使用者輸入,規劃該複數個捕獲模組;將與監測該資料流量相關聯之結果從與該複數個捕獲模組中之各者相關聯之相應記憶體取回到該監測應用程式裡;以及藉由對來自不同類型之捕獲模組的結果使用不同類型之分析來分析與該監測相關聯之該等結果。
- 如請求項20之測試器,其中該複數個捕獲模組包含一交易層封包(TLP)捕獲模組,並且其中若要分析該等結果,該監測應用程式更被組配用以:在該監測應用程式中組配一規則檢查器以檢查與該TLP捕獲模組相關聯之規則,其中該規則檢查器包含一或多個規則;以及回應於與該規則檢查器關聯之一違規,透過該GUI向一使用者標示一錯誤。
- 如請求項20之測試器,其中該複數個捕獲模組包含一鏈路訓練現況狀態機(LTSSM)捕獲模組,並且其中若要分析該等結果,該監測應用程式更被組配用以:在該監測應用程式中組配一規則檢查器以檢查與該LTSSM捕獲模組相關聯之規則,其中該規則檢查器包含一或多個規則;以及回應於與該規則檢查器關聯之一違規,透過該GUI向一使用者標示一錯誤。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US202062985650P | 2020-03-05 | 2020-03-05 | |
US62/985,650 | 2020-03-05 | ||
US17/127,596 | 2020-12-18 | ||
US17/127,596 US20210111967A1 (en) | 2018-05-16 | 2020-12-18 | Graphical user interface for traffic capture and debugging tool |
Publications (2)
Publication Number | Publication Date |
---|---|
TW202138942A TW202138942A (zh) | 2021-10-16 |
TWI773140B true TWI773140B (zh) | 2022-08-01 |
Family
ID=77932661
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW110105819A TWI773140B (zh) | 2020-03-05 | 2021-02-19 | 用於流量捕獲及除錯工具之圖形使用者介面 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN113484710A (zh) |
TW (1) | TWI773140B (zh) |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030084413A1 (en) * | 2001-10-30 | 2003-05-01 | Robert Varney | Scan diagnosis system and method |
US20040225465A1 (en) * | 2003-02-14 | 2004-11-11 | Advantest Corporation | Method and apparatus for testing integrated circuits |
TW200643449A (en) * | 2005-02-17 | 2006-12-16 | Advantest Corp | Method and system for scheduling tests in a parallel test system |
TW200741213A (en) * | 2006-02-08 | 2007-11-01 | Verigy Pte Ltd Singapore | Testing devices under test by an automatic test apparatus having a multisite probe card |
US20090119054A1 (en) * | 2007-11-05 | 2009-05-07 | Advantest Corporation | Test equipment, method for loading test plan and program product |
US20110078525A1 (en) * | 2009-09-30 | 2011-03-31 | Integrated Device Technology, Inc. | Method and Apparatus of ATE IC Scan Test Using FPGA-Based System |
TW201504647A (zh) * | 2013-07-24 | 2015-02-01 | 愛德萬測試股份有限公司 | 測試片與托盤間之高速測試儀通訊界面 |
TW201843589A (zh) * | 2017-04-28 | 2018-12-16 | 日商愛德萬測試股份有限公司 | 利用軟體應用程式介面(api)之自動化測試特徵使用者控制技術 |
US20190018061A1 (en) * | 2017-07-14 | 2019-01-17 | International Business Machines Corporation | Ate compatible high-efficient functional test |
US20200033409A1 (en) * | 2018-07-27 | 2020-01-30 | Advantest Corporation | Integrated protocol analyzer configured within automated test equipment (ate) hardware |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7058921B1 (en) * | 2002-02-22 | 2006-06-06 | Xilinx, Inc. | Method and system for resource allocation in FPGA-based system-on-chip (SoC) |
US20060184825A1 (en) * | 2004-10-01 | 2006-08-17 | Nancy Regan | Reliability centered maintenance system and method |
KR100761175B1 (ko) * | 2004-10-22 | 2007-09-21 | 엘지전자 주식회사 | 모니터 집적회로 에러 테스트 장치 및 방법 |
US20140237292A1 (en) * | 2013-02-21 | 2014-08-21 | Advantest Corporation | Gui implementations on central controller computer system for supporting protocol independent device testing |
US10127125B2 (en) * | 2016-10-21 | 2018-11-13 | Accenture Global Solutions Limited | Application monitoring and failure prediction |
US10929260B2 (en) * | 2018-05-16 | 2021-02-23 | Advantest Corporation | Traffic capture and debugging tools for identifying root causes of device failure during automated testing |
US10955461B2 (en) * | 2018-05-16 | 2021-03-23 | Advantest Corporation | Smart and efficient protocol logic analyzer configured within automated test equipment (ATE) hardware |
-
2021
- 2021-02-19 TW TW110105819A patent/TWI773140B/zh active
- 2021-03-03 CN CN202110234149.6A patent/CN113484710A/zh active Pending
Patent Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030084413A1 (en) * | 2001-10-30 | 2003-05-01 | Robert Varney | Scan diagnosis system and method |
US20040225465A1 (en) * | 2003-02-14 | 2004-11-11 | Advantest Corporation | Method and apparatus for testing integrated circuits |
TW200643449A (en) * | 2005-02-17 | 2006-12-16 | Advantest Corp | Method and system for scheduling tests in a parallel test system |
TWI385405B (zh) * | 2005-02-17 | 2013-02-11 | Advantest Corp | 於平行測試系統中排序測試的方法與系統 |
TWI348026B (en) * | 2006-02-08 | 2011-09-01 | Verigy Pte Ltd Singapore | Testing devices under test by an automatic test apparatus having a multisite probe card |
TW200741213A (en) * | 2006-02-08 | 2007-11-01 | Verigy Pte Ltd Singapore | Testing devices under test by an automatic test apparatus having a multisite probe card |
US20090119054A1 (en) * | 2007-11-05 | 2009-05-07 | Advantest Corporation | Test equipment, method for loading test plan and program product |
US20110078525A1 (en) * | 2009-09-30 | 2011-03-31 | Integrated Device Technology, Inc. | Method and Apparatus of ATE IC Scan Test Using FPGA-Based System |
TW201504647A (zh) * | 2013-07-24 | 2015-02-01 | 愛德萬測試股份有限公司 | 測試片與托盤間之高速測試儀通訊界面 |
TWI623763B (zh) * | 2013-07-24 | 2018-05-11 | 愛德萬測試股份有限公司 | 使用自動化測試設備(ate)測試之方法、測試儀系統以及測試設備裝置 |
TW201843589A (zh) * | 2017-04-28 | 2018-12-16 | 日商愛德萬測試股份有限公司 | 利用軟體應用程式介面(api)之自動化測試特徵使用者控制技術 |
US20190018061A1 (en) * | 2017-07-14 | 2019-01-17 | International Business Machines Corporation | Ate compatible high-efficient functional test |
US20200033409A1 (en) * | 2018-07-27 | 2020-01-30 | Advantest Corporation | Integrated protocol analyzer configured within automated test equipment (ate) hardware |
Also Published As
Publication number | Publication date |
---|---|
TW202138942A (zh) | 2021-10-16 |
CN113484710A (zh) | 2021-10-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10929260B2 (en) | Traffic capture and debugging tools for identifying root causes of device failure during automated testing | |
US10955461B2 (en) | Smart and efficient protocol logic analyzer configured within automated test equipment (ATE) hardware | |
US10948540B2 (en) | Integrated protocol analyzer configured within automated test equipment (ate) hardware | |
US20210173010A1 (en) | Diagnostic tool for traffic capture with known signature database | |
CN110050441B (zh) | 在故障情况下实时捕获流量以进行协议调试 | |
US20210111967A1 (en) | Graphical user interface for traffic capture and debugging tool | |
US7047462B2 (en) | Method and apparatus for providing JTAG functionality in a remote server management controller | |
US20140236527A1 (en) | Cloud based infrastructure for supporting protocol reconfigurations in protocol independent device testing systems | |
KR20150119869A (ko) | 프로토콜 독립적 디바이스 테스팅을 지원하기 위한 중앙 컨트롤러 컴퓨터 시스템 상에서의 gui 구현 | |
US20190278645A1 (en) | Log post-processor for identifying root causes of device failure during automated testing | |
JP2010140487A (ja) | データ処理システムにおけるトラフィックフローの統計的表示の使用 | |
US11828787B2 (en) | Eye diagram capture test during production | |
US20130275811A1 (en) | Devices for indicating a physical layer error | |
US20100195512A1 (en) | Systems and methods for presenting electronic communication packets using a logic analyzer | |
CN106681878A (zh) | 一种pcie通道带宽的测试方法 | |
CN112231163A (zh) | 一种多功能计算机检测设备及其运行方法 | |
US9916273B2 (en) | Sideband serial channel for PCI express peripheral devices | |
TWI773140B (zh) | 用於流量捕獲及除錯工具之圖形使用者介面 | |
CN111008113B (zh) | 一种SAS-Expander测试方法和工具 | |
US10216525B1 (en) | Virtual disk carousel | |
JP2004101203A (ja) | ロジックlsiの不良解析システム及び不良解析方法 | |
TWI802792B (zh) | 偵錯裝置及其操作方法 | |
TW201928669A (zh) | 電腦設備、診斷方法以及非暫時性電腦可讀儲存媒體 | |
Gupta | Noise reduction in solid state drive (SSD) system validation | |
JP2012058830A (ja) | シリアル通信カード試験装置 |