TW202418062A - 利用直接存取裝置記憶體管理用以測試運算快速鏈路協定致能裝置之系統及方法 - Google Patents
利用直接存取裝置記憶體管理用以測試運算快速鏈路協定致能裝置之系統及方法 Download PDFInfo
- Publication number
- TW202418062A TW202418062A TW112132163A TW112132163A TW202418062A TW 202418062 A TW202418062 A TW 202418062A TW 112132163 A TW112132163 A TW 112132163A TW 112132163 A TW112132163 A TW 112132163A TW 202418062 A TW202418062 A TW 202418062A
- Authority
- TW
- Taiwan
- Prior art keywords
- cxl
- dut
- test
- duts
- compliant
- Prior art date
Links
- 238000012360 testing method Methods 0.000 title claims abstract description 308
- 238000000034 method Methods 0.000 title claims abstract description 131
- 230000003993 interaction Effects 0.000 claims abstract description 8
- 230000008569 process Effects 0.000 claims description 27
- 238000007726 management method Methods 0.000 claims description 19
- 238000010998 test method Methods 0.000 claims description 13
- 230000002085 persistent effect Effects 0.000 claims description 11
- 238000011010 flushing procedure Methods 0.000 claims description 7
- 238000012545 processing Methods 0.000 claims description 7
- 230000008878 coupling Effects 0.000 claims description 5
- 238000010168 coupling process Methods 0.000 claims description 5
- 238000005859 coupling reaction Methods 0.000 claims description 5
- 238000010586 diagram Methods 0.000 description 27
- 238000004891 communication Methods 0.000 description 14
- 230000007613 environmental effect Effects 0.000 description 12
- 238000003860 storage Methods 0.000 description 12
- 239000000725 suspension Substances 0.000 description 12
- 230000008520 organization Effects 0.000 description 7
- 239000008186 active pharmaceutical agent Substances 0.000 description 6
- 238000012986 modification Methods 0.000 description 6
- 230000004048 modification Effects 0.000 description 6
- 238000001514 detection method Methods 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 5
- 230000002452 interceptive effect Effects 0.000 description 5
- 238000004458 analytical method Methods 0.000 description 4
- 230000008901 benefit Effects 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 230000004044 response Effects 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 238000001816 cooling Methods 0.000 description 3
- 238000010438 heat treatment Methods 0.000 description 3
- 230000000977 initiatory effect Effects 0.000 description 3
- 238000013507 mapping Methods 0.000 description 3
- 230000006872 improvement Effects 0.000 description 2
- 238000002955 isolation Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 238000011056 performance test Methods 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 230000002411 adverse Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 238000013508 migration Methods 0.000 description 1
- 230000005012 migration Effects 0.000 description 1
- 230000001902 propagating effect Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
- 238000013024 troubleshooting Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/26—Functional testing
- G06F11/263—Generation of test inputs, e.g. test vectors, patterns or sequences ; with adaptation of the tested hardware for testability with external testers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/2205—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/2273—Test methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/26—Functional testing
- G06F11/27—Built-in tests
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/26—Functional testing
- G06F11/273—Tester hardware, i.e. output processing circuits
- G06F11/2733—Test interface between tester and unit under test
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/52—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
- G06F21/53—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by executing in a restricted environment, e.g. sandbox or secure virtual machine
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/03—Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
- G06F2221/034—Test or assess a computer or a system
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Quality & Reliability (AREA)
- Software Systems (AREA)
- Tests Of Electronic Circuits (AREA)
- For Increasing The Reliability Of Semiconductor Memories (AREA)
Abstract
介紹有效率且有效之測試系統及方法。在一項實施例中,一種測試系統包括:一使用者介面,其被組配用以致能與該系統之使用者互動;一測試板,其經組配以與複數個受測裝置(DUT)通訊式耦接,其中該等DUT係與運算快速鏈路(CXL)協定相符;以及一測試器,其經組配以引導該等複數個DUT之測試,其中該測試器包括防止DUT損毀之一直接存取裝置(DAX)介面。在一項例示性實作態樣中,該測試器將一特定CXL致能DUT之測試與非所欲之干擾及損毀隔離。該測試器可防止對該DUT之記憶體進行不當寫入。該等DUT常駐在一Linux作業系統之單獨每裝置空間中,而不是記憶體空間之一擴充中。該等複數個DUT中之一者可以是一CXL類型3記憶體擴張器裝置。在一項例示性實作態樣中,該直接存取裝置(DAX)介面為包括在該等複數個DUT中之各個別DUT建立一獨特DAX執行個體。
Description
相關申請案交互參照
本申請案主張臨時申請案之利益及優先權:
63/408,788,題為CXL PROTOCOL ENABLEMENT FOR TEST ENVIRONMENT SYSTEMS and METHODS (代理人案號ATSY-0113-00.00US),提出申請日為2022年9月21日,
63/439,460,題為CXL PROTOCOL ENABLEMENT FOR TEST ENVIRONMENT SYSTEMS and METHODS (代理人案號ATSY-0113-01.01US),提出申請日為2023年1月17日,
63/408,795,題為MANAGEMENT OF HOT ADD IN A TESTING ENVIRONMENT FOR DUTS THAT ARE CXL PROTOCOL ENABLED (代理人案號:ATSY-0112-00.00US),提出申請日為2022年9月21日,
63/439,434,題為MANAGEMENT OF HOT ADD IN A TESTING ENVIRONMENT FOR DUTS THAT ARE CXL PROTOCOL ENABLED (代理人案號ATSY-0112-01.01US),提出申請日為2023年1月17日,
63/408,801,題為SYSTEMS AND METHODS UTILIZING DAX MEMORY MANAGEMENT FOR TESTING CXL PROTOCOL ENABLED DEIVCES (代理人案號:ATSY-0115-00.00US),提出申請日為2022年9月21日,
63/439,470,題為SYSTEMS AND METHODS UTILIZING DAX MEMORY MANAGEMENT FOR TESTING CXL PROTOCOL ENABLED DEIVCES (代理人案號:ATSY-0115-01.01US),提出申請日為2023年1月17日,
63/408,809,題為SYSTEMS AND METHODS FOR TESTING CXL ENABLED DEVICES IN PARALLEL (代理人案號:ATSY-0114-00.00US),提出申請日為2022年9月21日,以及
63/439,464,題為SYSTEMS AND METHODS FOR TESTING CXL ENABLED DEVICES IN PARALLEL (代理人案號:ATSY-0114-01.01US),提出申請日為2023年1月17日,
以上全都以參考方式併入本文中。
被組配用以為與運算快速鏈路(CXL)協定相符之受測裝置(DUT)提供測試能力之系統及方法。
運算快速鏈路(CXL)對電子裝置產業(例如:記憶體等)係一種新通訊(例如:匯流排等)協定,如此,有許多挑戰需要解決才能在一測試環境中對CXL致能DUT使用CXL協定。特別的是,在正常非測試操作期間,CXL裝置通常係用於為系統記憶體提供共享儲存資源。先前技術之自動測試裝備(ATE)未有效率且有效地因應這些議題(例如:CXL系統記憶體等),並且傳統測試系統及方法提供很少或未提供與測試CXL相符受測裝置(DUT)相關聯之測試能力。
一CXL類型3裝置之基本正常用途是用來作用為附加共享主系統記憶體資源,並且此特性可使裝置測試變得特別有問題。如果沒有本發明,一CXL DUT之記憶體空間可視為測試器主機系統記憶體空間之一共享部分。作為系統記憶體之一共享部分,一CXL DUT可由系統中耦接之不同實體(例如:裝置、應用程式、程序、執行緒等)存取。在共享系統記憶體模式或「內核記憶體」模式中,耦接至測試系統之一個裝置通常可對另一裝置之記憶體空間進行寫入,並藉此損毀。一測試環境中之此一結果可干擾測試操作並產生不可靠之測試結果。
再者,有數項非常令人期望之測試系統特性對於妥善測試通常視為一必要。然而,傳統測試系統及方法通常無法實際提供這些能力。舉例而言,能夠熱添加/調換DUT並且平行測試多個DUT之測試系統及方法非常令人期望且通常有必要。CXL DUT之共享存取態樣使得一系統很難在不干擾其他DUT測試之情況下妥善地平行測試多個DUT。另外,有CXL版本目前無法方便地將CXL裝置添加/調換至一系統。CXL協定版本1.1不允許在裝置運作時熱添加/調換該等裝置,因為裝置列舉僅透過BIOS進行(這需要一系統重新開機)。當一裝置首次開機時,BIOS對其初始化並將其致能為CXL裝置。這有效地防止裝置被熱添加(例如,在測試期間等),因為主機需要一重新開機來辨識新裝置。為了添加/調換一CXL裝置,傳統上必須將整個系統停機,添加/調換新CXL裝置,然後重新啟動系統,且從頭開始DUT之測試。這種再次啟動之先前技術條件花費/浪費用在系統中測試其他DUT之大量時間及資源(例如,包括控制資料之遺失等)。
CXL協定目前主要是為裝置之正常電腦使用而設計,不是為了測試而設計,尤其不是為了平行測試多個CXL裝置而設計,傳統上需要解決許多挑戰才能允許有效率且有效之測試。
介紹有效率且有效之測試系統及方法。在一項實施例中,一種測試系統包括:一使用者介面,其被組配用以致能與該系統之使用者互動;一測試板,其被組配用以與複數個受測裝置(DUT)通訊式耦接,其中該等DUT與運算快速鏈路(CXL)協定相符;以及一測試器,其被組配用以引導該等複數個DUT之測試,其中該測試器包括防止DUT損毀之一直接存取裝置(DAX)介面。在一項例示性實作態樣中,該測試器將一特定CXL致能DUT之測試與非所欲干擾及損毀隔離。該測試器可防止對該DUT之記憶體進行不當寫入。該等DUT常駐在一Linux作業系統之單獨每裝置空間中,而不是記憶體空間之一擴充中。該等複數個DUT中之一者可以是一CXL類型3記憶體擴張器裝置。在一項例示性實作態樣中,該直接存取裝置(DAX)介面為包括在該等複數個DUT中之各個別DUT建立一獨特DAX執行個體。
現將參照本揭露之各項實施例,附圖中繪示其實例。儘管搭配這些實施例作說明,將瞭解的是,其並非意欲限制對這些實施例之揭示。反之,本揭露係意欲涵蓋可在本揭露之精神及範疇內包括之替代例、修改及均等例。再者,在本揭露之以下詳細說明中,提出許多特定細節,以便透徹理解本揭露。然而,將瞭解的是,不用這些特定細節也可實踐本揭露。在其他例子中,為了避免非必要地混淆本揭露之態樣,並未詳細說明眾所周知之方法、程序、組件、以及電路。
附圖係併入本說明書中並且形成其一部分,被包括用於例示性例示本發明之原理,並且非意欲將本發明限制於其中所示之特定實作態樣。圖式未按照比例,除非另外具體指出。
圖式不必然按照比例繪示,並且僅示出所示裝置及結構之部分、以及形成那些結構之各種層。為了論述及例示簡便起見,可僅說明一個或兩個裝置或結構,但實際上仍可存在或形成多於一個或兩個裝置或結構。同樣地,儘管論述某些元件、組件及層,根據本發明之實施例仍不受限於那些元件、組件及層。舉例而言,除了所論述之那些以外,還可有其他元件、組件、層、及類似者。
所介紹之新穎系統及方法對CXL相符裝置提供有效率且有效之測試。在一項實施例中,系統及方法提供方便之測試能力,其因應與向CXL協定相符記憶體DUT之技術典範轉移相關聯之新且快速擴張需求。在一項實施例中,系統及方法對CXL協定致能DUT致能有效率且節省成本之測試。在一項例示性實作態樣中,系統及方法涵蓋在測試條件下將新CXL協定特徵用在DUT上之裝置。
據了解,在所介紹之系統及方法中,有許多不同新穎態樣及作法用於解決與CXL協定相符裝置之測試相關聯之難題。在一項實施例中,所介紹之系統及方法在DUT測試期間致能有效率且有效之CXL相關活動實作態樣。在一項例示性實作態樣中,所介紹之系統及方法包括硬體及軟體改良。
在一項實施例中,系統及方法涵蓋建立及管理實施利用CXL協定之DUT之測試所需之一環境的態樣。據了解,CXL DUT可包括各種類型之裝置。在一項實施例中,CXL DUT可包括各種類型之記憶體(例如:DRAM、永續記憶體等),其通常用於在正常非測試操作下為系統記憶體提供儲存資源。在一項例示性實作態樣中,通常在正常操作期間向系統記憶體空間內之一單獨記憶體範圍分配/指派一DUT。
圖1A根據一項實施例,係一例示性測試方法10的一方塊圖。
在區塊1中:進行一裝置檢測程序。在一項實施例中,檢測程序包括判定裝置是否係一CXL裝置,如果係一CXL裝置,CXL裝置之特性/特徵是什麼,以及指派/分配給CXL裝置的是一主機CPU記憶體之什麼部分/位址。裝置檢測程序可包括列舉。在一項實施例中,一裝置檢測程序需要一重新開機以完全判定裝置係一CXL裝置並完成/結束列舉。在一項例示性實作態樣中,裝置檢測程序係藉由一基本輸入/輸出系統(BIOS)來進行。
在區塊2中,進行一CXL裝置測試組織程序。CXL裝置測試組織程序將測試系統組織及組配以進行CXL裝置之測試。在一項實施例中,一CXL裝置測試組織程序包括將一CXL裝置與來自其他組件之有害干擾隔離。在一項例示性實作態樣中,裝置測試組織程序包括防止其他組件存取指派/分配給一CXL裝置之一記憶體範圍之部分(例如,以上在區塊1中指派/分配者)。在一項實施例中,一裝置測試組織程序包括取回裝置檢測程序資訊,以及基於一測試板耦接位置(例如:DUT插槽等)建立CXL裝置之一CXL測試參考或名稱。在一項例示性實作態樣中,參考或名稱在將其建立/具現化之應用程式/執行緒程序正在運行時會一致或持續。在一項例示性實作態樣中,裝置測試組織程序包括一裝置映射程序,其將CXL裝置映射至一測試板耦接位置指示符(例如:DUT插槽識別符等)。在一項例示性實作態樣中,使用者測試規格要求係映射至可得自主機CPU指令集之硬體。指派給一CXL裝置之一記憶體範圍之部分可對應於名稱/識別符。
在區塊3中,進行/引導一CXL裝置測試程序。在一項實施例中,產生測試工作負載(例如:資料型樣、指令等)。該產生可包括從使用者指出之功能轉化成實現使用者所欲功能之適當CXL裝置命令。在一項實施例中,測試程序係一功能性效能測試(例如:頻寬、潛時、錯誤等)。在一項實施例中,引導一CXL裝置測試程序包括產生測試工作負載。在一項實施例中,系統及方法不讓有害之測試系統特性/特徵(例如:主機CPU最佳化等)非故意/非刻意地損毀測試操作。在一項實施例中,對複數個CXL DUT進行多個獨立平行測試程序。
在一項實施例中,從使用者所指功能轉化至適當之CXL裝置命令包括根據使用者所指偏好產生一適當數量之讀取命令及寫入命令。在一項例示性實作態樣中,一使用者指出一所欲之50%讀取及50%寫入。然而,系統實際上還將一讀取操作用於回應於來自主機之一寫入命令。因此,本系統及方法為實際讀取及寫入之一正確比值(例如:2/3或66%讀取及2/3或33%寫入等)自動產生適當之工作負載方向,以獲得使用者請求之比值(例如:50%讀取及50%寫入等)。
在一項實施例中,裝置測試組織程序熱添加/調換特徵係包括於一CXL裝置測試組織程序中。
在一項實施例中,裝置測試組織程序包括排清操作。在一項例示性實作態樣中,當從測試器系統移除一對應CXL DUT時,與區塊2中之隔離及映射操作相關聯之記憶體位置會排清。排清操作可包括排清對應快取條目。在一項實施例中,系統及方法確保進入CXL DUT之命令序列適當,並且如果替換命令會按其他方式有害地影響測試結果/準確度,則防止一主機CPU發出替換命令(例如,作為一最佳化程序之部分等)。
據瞭解,在本說明中,一CXL裝置通常係一受測裝置DUT。在一項實施例中,一測試系統主機CPU記憶體儲存容量可藉由一CXL裝置來擴充,且該CXL裝置可非為一DUT,其中該CXL裝置當作用於主機之一記憶體擴充。
在一項實施例中,系統及方法包括API。在一項例示性實作態樣中,系統及方法包括三組API。第一組API提供自動協助一使用者將測試系統中之一CXL DUT電力開啟/切斷之機能。第二組API自動將使用者測試要求及控制說明之管理及轉換處置成適當之CPU指令集命令及CXL裝置指引/指令。第三組API包括除錯控件。在一項例示性實作態樣中,API可透過一方便直覺之使用者GUI與使用者通訊。
圖1B根據一項實施例,係一例示性測試系統100的一方塊圖。測試系統100包括測試器110及CXL DUT 121、122、…、129,其與CXL相符。測試器110包括CXL主機111,其包括一處理器(例如:CPU 112等)及記憶體(例如:DRAM 113等)。在圖1中,CXL DUT 121係指派給系統記憶體範圍131,CXL DUT 122係指派給系統記憶體範圍132,並且CXL DUT 129係指派給系統記憶體範圍139。CXL協定之這項態樣在測試期間可特別有問題,因為一CXL DUT可視為主機(例如:測試器CPU等)記憶體空間之部分。舉例而言,若無所介紹之新穎系統及方法,一CXL DUT將可由不同實體(例如:應用程式、執行緒、程序等)存取,對測試操作造成干擾(例如,資料不當對消、一致性議題等),並且可能產生不可靠之測試結果。在一項例示性實作態樣中,所介紹之測試系統及方法防止干擾(例如,資料由不同實體不當覆寫、讀取操作不正確等)。
在一項實施例中,所介紹之新穎系統及方法對CXL DUT之不同記憶體資源提供測試存取之協調及管理。據了解,有各種作法用來協調並管理CXL測試(例如:DAX介面、追蹤DUT指派之記憶體範圍等)。在一項例示性實作態樣中,所介紹之系統及方法防止對一特定DUT之測試造成非所欲干擾。所介紹之新穎系統及方法亦可用於因應/解決與測試CXL DUT相關聯之許多其他議題。在一項裝置測試模式實施例中,系統及方法有效率且有效地因應與一CXL協定致能DUT環境之以下態樣有關之議題:酬載產生、裝置列舉、致能裝置之熱添加/調換、與CXL協定相關聯之獨特測試環境限制條件等等。
圖2根據一項實施例,係一例示性測試方法200的一方塊圖。
在區塊210中,進行引導一受測裝置(DUT)之測試的程序,其中該測試包括與該DUT之CXL協定通訊。在一項實施例中,引導測試包括判定該等DUT中之一特定者是否係一CXL相符裝置。判定該等DUT中之一特定者是否係一CXL相符裝置可作為一列舉程序之部分進行。在一項例示性實作態樣中,基本輸入/輸出系統(BIOS)操作判定該等DUT中之一特定者是否係一CXL相符裝置。引導測試可包括判定該等DUT之特性。
在區塊220中,防止該等DUT之測試操作彼此有害地干擾。在一項實施例中,防止該等DUT之測試操作彼此有害地干擾包括向該等DUT指派單獨記憶體範圍。在一項例示性實作態樣中,使用者組態要求係映射至該等DUT之特性。在一項例示性實作態樣中,快取存取係根據使用者要求來追蹤並協調。
管理型熱添加/ 調換
所介紹之系統及方法為與CXL協定相符之DUT (AKA CXL裝置)提供方便使用之有效率且有效之管理型熱添加/調換能力,其中一特定DUT之添加/調換不干擾其他DUT之測試。所介紹之系統及方法亦允許在測試期間CXL協定致能裝置之熱添加/調換,沒有任何控制資料遺失。在一項實施例中,系統及方法包括允許熱添加或調換出CXL致能DUT而不干擾其他DUT測試操作,並且以對於進行測試程序之技術人員透明之一方式完成所需要之修改。一測試期間需要調換出一裝置之原因有很多。舉例而言,可移除一DUT並且可插入一不同DUT (例如,為了分級目的、故障時等),致能總體測試效率之提升。在一項實施例中,系統及方法允許將一CXL DUT從測試器系統熱添加/調換出,而不停止(或按其他方式干擾)其他CXL DUT裝置之測試操作。在一項例示性實作態樣中,進行一CXL DUT裝置之添加/調換而不遺失相關控制資料。根據一項實施例,在由一主機裝置測試器平行測試多個CXL致能DUT期間,可添加(例如:一「熱添加」等)一新DUT,並且新DUT將由主機以對測試技術人員相當透明之一方式自動辨識。
在一項實施例中,一測試技術人員與在主機測試器電腦系統上實施之一圖形使用者介面(GUI)介接。在一項實施例中,當需要/期望一熱添加時,使用者/技術人員利用GUI暫時觸發一測試暫停,接著由技術人員安裝新DUT,並且由技術人員再次與GUI介接以觸發測試重啟。技術人員僅必須實施用於一特定DUT之一簡易測試暫停及一簡易啟動觸發(例如,推壓GUI按鈕/圖示等),系統及方法方便且自動地引導一熱添加/調換之其他複雜態樣。
圖3根據一項實施例,係一熱添加測試系統300的一方塊圖。測試系統300包括測試器310及DUT 321、322及DUT 329,其與CXL相符。測試器310包括CXL主機311,其包括一處理器(例如:CPU 312等)及記憶體(例如:DRAM 313等)。測試器310亦包括用於引導DUT之主機添加/調換之自動熱添加/調換管理組件371。測試器310亦可用於引導實施包括暫停按鈕392及重啟按鈕393之GUI 391。在圖3中,測試板DUT 2位置/插槽中之一CXL 裝置(例如:322等)係由技術人員為DUT 2測試點擊暫停GUI按鈕來熱添加,將新CXL裝置插入測試板DUT 2位置,然後點擊重啟GUI按鈕。
系統自動進行對使用者透明之數個操作(例如:裝配、列舉等),包括儲存與所有DUT相關聯之目前測試資料集合,接著將整個系統重新開機(例如,以使得新添加之DUT可藉由BIOS來列舉等),並且開始DUT (例如,包括新添加之DUT等)與主機之間的通訊。測試資料同步化接著亦自動透明地發生。重設並啟動之後,測試繼續。在一項例示性實作態樣中,經實施用來致能管理型熱添加之重設及其他初始化步驟係藉由所介紹之新穎系統及方法對技術人員透明地自動進行。GUI (例如,請參照圖1等)顯示方便之螢幕上指令,以「促使」/導引技術人員完成進行熱添加所需之幾個手動步驟。在一項實施例中,技術人員藉由點擊GUI上之一按鈕/圖示來觸發一暫停。技術人員亦可採用類似方式將GUI用於向系統通知一新DUT已插入並恢復測試。在一項例示性實作態樣中,沒有測試控制資料會在進行管理型熱添加時遺失,並且實施熱添加所需之細節係有助益地對技術人員隱藏並且由所介紹之新穎系統及方法自動進行。
同樣地,系統及方法有與圖形使用者介面GUI中之其他改良相關之附加態樣,包括用於測試流程、測試程式等等者。在一項例示性實作態樣中,一第一與第二流程之間的一切換可藉由與GUI之簡單互動來方便地觸發,並且系統自動進行與實施該切換相關聯之其他操作(例如,自動引導保存來自第一流程之適當資料等)。
在一項實施例中,系統及方法可快速且有效率地因應向與CXL協定符合之DUT的技術典範轉移,並且回應於客戶針對新CXL致能DUT對於熱添加/調換測試能力之需求。
圖4根據一項實施例,係一例示性裝置熱添加測試方法400的一方塊圖。在區塊410中,接收與一受測裝置(DUT)之熱添加相關聯之一指示,其中該測試包括與該DUT之運算快速鏈路(CXL)協定通訊,並且該DUT係包括於複數個受測裝置(DUT)中。
在區塊420中,啟始一測試暫時中止程序,其中該測試暫時中止程序使複數個DUT之測試暫時中止,其中測試暫時中止程序係回應於接收到與DUT之熱添加相關聯之指示而自動進行。啟始一測試暫時中止程序可包括複數個DUT與主機之間的通訊。在一項實施例中,啟始測試暫時中止程序包括儲存與複數個DUT相關聯之目前測試資料集合。
在區塊430中,在將DUT熱添加至測試系統之後接收恢復測試之一指示。
在區塊440中,結束測試暫時中止程序,其中結束測試暫時中止程序係回應於接收恢復測試之指示而自動進行。在一項實施例中,結束測試暫時中止程序包括取回在區塊420中儲存之與複數個DUT相關聯之一測試資料集合。在一項實施例中,結束測試暫時中止程序包括測試資料同步化、重設、以及將系統重新開機以允許繼續測試。在一項例示性實作態樣中,與測試暫時中止程序相關聯之操作,包括裝配及列舉(例如,測試暫時中止程序之結束包括BIOS列舉操作等),對使用者透明。
在區塊450中,恢復複數個DUT之測試。
在一項實施例中,DUT之熱添加及與另一DUT之一熱調換相關聯,其中該另一DUT係從測試系統移除。
DAX
所介紹之新穎系統及方法為與CXL協定相符之個別DUT提供DAX管理及測試隔離能力。在一項實施例中,系統及方法係針對Linux DAX (直接存取裝置)相關特徵之新穎測試操作管理技巧。一主機測試器與由該主機測試器平行測試下之數個DUT之間的管理,其中DUT屬於CXL致能型,對CXL DUT致能有效率且有效之測試。CXL DUT可包括各種類型之記憶體(例如:DRAM、永續記憶體、非永續記憶體等)。記憶體測試管理技巧有助益地提供保護以防止諸DUT之間的記憶體損毀,而不是在測試器系統之系統記憶體空間內共享CXL DUT之記憶體。
據了解,利用DAX能力來解決與新CXL協定相關聯之難題有許多不同新穎態樣。在一項實施例中,所介紹之系統及方法係針對將一特定CXL致能DUT之測試與非所欲干擾及損毀(例如,對DUT之記憶體不當寫入等)隔離。在一項例示性實作態樣中,所介紹之系統及方法亦係針對CXL裝置測試之其他態樣(例如,用於平行操作之工作負載產生等)。據了解,所介紹之系統及方法可聚焦於各種測試態樣(例如,在一個別DUT之基礎上進行測試、在複數個DUT/DUT系統之基礎上管理/協調平行測試等)。
在一項實施例中之正常操作期間,各DUT係分配/指派給系統記憶體空間內之一單獨記憶體範圍。圖5根據一項實施例,係一例示性測試系統500的一方塊圖。測試系統500包括測試器510及DUT 521、522及DUT 529,其與CXL相符。測試器510包括CXL主機511,其包括一處理器(例如:CPU 512等)及記憶體(例如:DRAM 513等)。在一項實施例中,CPU 512引導包括DAX介面551、DAX介面552及DAX介面559之DAX組件550的操作。Dax介面551管理與指派給DUT 521之獨立DAX記憶體範圍571之互動。Dax介面552管理與指派給DUT 522之獨立DAX記憶體範圍572之互動。Dax介面550管理與指派給DUT 529之獨立DAX記憶體範圍579之互動。在一項例示性實作態樣中,CXL DUT 521係指派給系統記憶體範圍531,CXL DUT 522係指派給系統記憶體範圍532,並且CXL DUT 129係指派給系統記憶體範圍539。
如果沒有所介紹之系統及方法,在測試期間,一CXL致能DUT可視為測試器主機系統共享記憶體空間之部分,造成對測試操作之干擾,並且可能產生不可靠之測試結果。然而,所介紹之新穎測試環境中對於一DAX介面之利用/善用使所介紹之測試系統及方法能夠克服先前技術之測試問題/議題。
在一項實施例中,DAX係一種記憶體管理介面技巧,其中一主機(例如:測試器主機等)運行Linux,並且CXL裝置(例如:DUT等)常駐在Linux作業系統之單獨每「裝置空間」中。因此,CXL DUT之記憶體資源不僅僅係主機測試器之系統記憶體之擴充,反而係視為常駐在裝置空間記憶體中。將DAX用於DUT記憶體管理之一項優點在於,DAX允許主機單獨與各裝置通訊並向其分配任務。這會阻止DUT之記憶體因系統上一些其他裝置所造成之外部損毀(例如,對DUT之記憶體進行寫入等)。因此,DUT記憶體受到保護,並且在使用DAX記憶體介面管理DUT時,任何其他裝置都無法按其他方式對DUT之「共享」記憶體部分進行寫入。
換句話說,DAX介面有助益地防止其他已連接裝置對一已連接DUT之記憶體空間進行寫入及損毀。一DAX記憶體介面之另一優點在於,藉由直接管理實體與虛擬位址之間的映射,並且任選地使虛擬位址等於實體位址,疑難排解及除錯變得更加容易。同樣地,DAX記憶體介面在DUT記憶體壞掉時(例如,造成一自動當機之損毀等)防止一更高層級之系統當機,因為DUT記憶體未直接映射至OS系統記憶體。所介紹之系統及方法允許按其他方式將會是一共享系統記憶體之部分的裝置視為具有單獨性並予以單獨測試。
另外,利用DAX介面亦減少與記憶體分配相關聯之其他測試延遲/當機的可能性。所介紹之系統及方法有效率且有效地提供方便之CXL裝置測試能力,其回應於針對向新CXL致能DUT之技術典範轉移用於測試能力之快速擴張需求。所介紹之系統及方法以避免/最小化按其他方式與實施CXL相符DUT之測試所需之複雜管理/協調特徵相關聯之開發及生產成本的一方式來實現這一點。
圖6根據一項實施例,係一例示性裝置測試管理方法600的一方塊圖。
在區塊610中,為一運算快速鏈路(CXL)協定相符受測裝置(DUT)進行一基於位置之永續裝置表示程序。在一項實施例中,進行一永裝置表示程序包括基於CXL相符DUT獨有之一參考指示符來指派並追蹤CXL相符DUT,包括CXL相符DUT之特性,其中該參考指示符在CXL相符DUT通訊式耦接至測試板時持續。基於測試板位置之名稱確保測試器能夠定標CXL相符DUT,並且在CXL相符DUT通訊式耦接至裝載板時持續。在一項例示性實作態樣中,參考指示符係基於用於通訊式耦接CXL相符DUT之一測試板位置插槽。永續裝置表示包括命名DUT,其中名稱係自動建立在LINUX列舉上。
在區塊620中,進行一裝置上電清理程序。在一項實施例中,上電程序包括等待一BIOS列舉程序而不掃描裝置。
在區塊630中,進行一裝置斷電清理程序。在一項實施例中,斷電程序包括一測試器中之一主機中所包括之一中央處理單元(CPU)及快取用之排清程序。在一項例示性實作態樣中,該排清包括排清在與CXL相符DUT之測試相關聯之操作中受寫入之位址中之資料,其中該等位址被包括至映射至CXL相符DUT之一範圍。
平行
所介紹之新穎系統及方法提供用於平行測試CXL致能裝置(AKA多裝置管理)之系統及方法。所介紹之新穎系統及方法為CXL協定相符之複數個DUT/DUT系統提供並協調/管理複雜之獨立工作負載產生及平行測試能力。CXL協定係一種新協定,且如此要在一測試環境中使用之CXL協定有許多新挑戰需要解決。先前技術未有效率且有效地因應這些議題。特別的是,在正常非測試操作期間,CXL相符裝置通常係用於為系統記憶體提供共享儲存資源。這在嘗試平行測試多個CXL DUT時尤其可有問題。如果沒有本發明,一CXL致能DUT記憶體空間可視為測試器主機系統記憶體空間之一共享部分,並且平行協調多個CXL DUT之測試及獨立管理相應工作負載通常有問題,可導致記憶體損毀,並且可能產生不可靠之測試結果。
所介紹之新穎系統及方法係針對為與向CXL協定相符DUT之技術典範轉移相關聯之新且快速擴張需求提供方便之測試能力。所介紹之新穎系統及方法係針對平行測試多個CXL致能裝置用之有效率且節省成本之能力。再者,同一CXL致能裝置之數個不同記憶體空間可平行測試。
所介紹之新穎系統及方法係針對為建立及增加跨越複數個DUT/DUT系統之獨立平行測試所開發之技巧,其中DUT屬於CXL協定致能型。在一項實施例中,多個CXL DUT係藉由一主機測試器系統平行測試,並且工作負載係為平行測試之多個CXL DUT獨立地產生及管理。此外,同一DUT之不同記憶體空間亦可平行測試。在一項實施例中,所介紹之新穎系統及方法提供用於平行測試DUT之最大靈活性,並且將DUT之測試推向其關於此靈活性之限制。靈活且獨立之平行測試特徵提供快速且經濟之CXL DUT測試能力。
據了解,有許多不同難題與新CXL協定相關聯。所介紹之新穎系統及方法係針對在有獨立工作負載施加至DUT並且位於同一DUT內之複數個DUT/DUT系統上管理/協調平行測試。所介紹之新穎系統及方法亦可針對CXL裝置測試之其他態樣(例如,將一特定個別CXL DUT與記憶體覆寫隔離等)。據了解,所介紹之系統及方法可聚焦於各種測試態樣(例如,在一個別DUT之基礎上進行測試、在複數個DUT/DUT系統之基礎上管理/協調平行測試等)。
圖7根據一項實施例,係一例示性測試系統700的一方塊圖。測試系統700包括測試器710及DUT 721、722及DUT 729,其與CXL相符。測試器710包括CXL主機711,其包括一處理器(例如:CPU 712等)及記憶體(例如:DRAM 713等)。在一項實施例中,CPU 712引導工作負載產生組件790及DAX組件750之操作。工作負載產生組件790產生工作負載指令,並且包括工作負載介面791、792及791。工作負載介面791管理DUT 721之工作負載測試。工作負載介面792及工作負載介面793管理DUT 722之工作負載測試。在一項實施例中,工作負載介面792管理DUT 722中記憶體之一第一部分用之工作負載,並且工作負載介面793管理DUT 722中之記憶體之一第二部分用之工作負載。工作負載介面799管理DUT 729之工作負載測試。在一項例示性實作態樣中,CXL DUT 721係指派給系統記憶體範圍731,CXL DUT 722係指派給系統記憶體範圍732,並且CXL DUT 129係指派給系統記憶體範圍739。
在一項實施例中,一工作負載定義一測試人員將如何測試CXL DUT。在一項例示性實作態樣中,定義不同參數(例如:記憶體範圍、百分比讀取/寫入、百分比隨機性、載入及儲存數等)之多個工作負載可獨立且單獨地指派給由同一主機測試器系統平行測試之CXL致能DUT。在一項例示性實作態樣中,多個主機執行緒可平行建立(例如,在測試主機上執行),並且各執行緒可在不同DUT之一特定記憶體範圍上或在同一DUT上運作。據了解,記憶體範圍可實施成各種組態(例如,記憶體範圍可在不同DUT上、一單一DUT之不同範圍等)。這在建立測試範圍及獨立工作負載以供測試CXL DUT方面允許最大靈活性。
在一項實施例中,一DAX介面係用於管理多個CXL致能DUT至測試系統之通訊式耦接。在一項例示性實作態樣中,CXL DUT之記憶體資源不僅僅係主機測試器之系統記憶體之一「共享」擴充,反而係視為「單獨」常駐在裝置空間具現化中。這些組態特徵可促進與獨立工作負載平行之有效率且有效之CXL DUT測試。在一項例示性實作態樣中,許多CXL DUT (例如:8個、18個等)可耦接至一單一主機測試器系統。
據了解,各種平行及獨立之測試組態情境可善用/修改所介紹之系統及方法。在一項實施例中,不同工作負載可平行地施加至不同DUT,或者同一工作負載之不同個體可平行地施加至不同DUT。在一項實施例中,多個工作負載可平行指派給一單一DUT,並且各工作負載在一不同範圍之DUT記憶體上運作。可平行地利用一類似工作負載定義之多個個體(例如,用於測試複數個CXL DUT等)。DUT可包括各種類型之記憶體(例如:DRAM、永續記憶體等)。
關於平行性之提升,可跨越許多CXL DUT單獨及平行地向裝置建立及指派工作負載,這為平行單獨/獨立測試提供一高度靈活性。另一優點在於,許多測試可平行排入佇列,因為各CXL DUT可單獨受指派一相應工作負載。
所介紹之系統及方法可針對新CXL致能DUT因應對於測試能力之需求。所介紹之系統及方法之靈活且獨立平行測試特徵提供機會以在效能及成本兩方面都因應/滿足使用者對於有效率且有效之測試資源的請求/期望。
圖8根據一項實施例,係一例示性平行測試方法800的一方塊圖。
在區塊810中,引導一受測裝置(DUT)之平行測試,其中該測試包括與該DUT之運算快速鏈路(CXL)協定通訊,其中該DUT係包括於複數個DUT中。該DUT係複數個DUT中之一者,並且引導該DUT之測試包括獨立管理測試工作負載。該測試係在一系統級進行,而不是組件級測試。
在區塊820中,防止該等複數個DUT之測試操作彼此有害地干擾。在一項實施例中,該測試包括效能測試。在一項例示性實作態樣中,該測試係根據使用者引導之讀取及寫入百分比來進行。
圖9根據一項實施例,係一例示性電子系統900的一方塊圖,其可當作一平台用於實施並控制一交換程序。電子系統900可以是一「伺服器」電腦系統。電子系統900包括一(諸)中央處理器910、系統記憶體915、大容量記憶體925 (例如:硬碟機、外部記憶體等)、輸入/輸出(I/O)裝置930、通訊組件/通訊埠940、以及匯流排950。匯流排950被組配用以在其他組件(例如,(諸)中央處理器910、系統記憶體915、大容量記憶體925、輸入/輸出(I/O)裝置930、通訊組件/通訊埠940等)之間通訊式耦接及傳遞資訊。(諸)中央處理器910被組配用以處理資訊及指令。系統記憶體921 (例如:唯讀記憶體(ROM)、隨機存取記憶體(RAM)等)及(諸)大容量記憶體925被組配用以儲存用於中央處理器複合體915之資訊及指令。(諸) I/O裝置930可將資訊傳遞至系統(例如:中央處理器910、記憶體925等)。I/O裝置930可以是適用於向電子系統傳遞資訊及/或命令之任何裝置(例如:一鍵盤、按鈕、一搖桿、一軌跡球、一音訊換能器、一麥克風、一觸敏數化器面板、眼球掃描器、顯示組件、發光二極體(LED)顯示器、電漿顯示裝置等)。通訊埠940被組配用以與外部裝置/網路(圖未示)交換/傳遞資訊。一通訊埠940可具有各種組態(例如:限制RS-232連接埠、通用非同步接收器/傳送器(UART)、USB連接埠、紅外光收發器、乙太網路連接埠、IEEE 13394、同步連接埠等),並且可與一外部網路通訊。
圖10根據一項實施例,係一例示性測試系統1000的一方塊圖。測試系統1000包括電子器件隔間1010及測試器電子器件1020、裝載板1030、DUT 1070、以及帶有門1091之測試腔1090。電子器件隔間1010包括控制器1011及環境組件1012。可插入增強型回送組件來代替DUT以供診斷分析(例如,測試器電子器件1020等之診斷分析)。
圖11根據一項實施例,係一例示性測試系統1100的一方塊圖。組成為含有一爐體架10以及加熱與冷卻元件11之一大型受控環境腔室或爐體71。爐體架10在若干裝載板托盤31、32、33、34、41、42、43及44中含有受測裝置(DUT)。環境測試腔71具有包圍測試架15之實心壁及一實心門72。加熱與冷卻元件11可具有一寬溫度範圍(例如:-10至120度C)。測試器或測試頭81含有各種機架式組件,包括系統控制器網路交換機52、系統電力供應組件53、以及測試器切片50 (測試器切片含有測試器電子器件)。裝載板托盤(例如:30、31等)係連接至測試器切片50 (多個裝載板托盤可耦接至一單一測試器切片)。還有一測試器托盤30及受測裝置(例如:91、92等)的一方塊圖。裝載板托盤係手動填佈有受測裝置。已滿測試器托盤(例如:30、31等)係手動插入到環境腔室71中,並且手動連接至測試器電子器件(例如:50、52、53等)。此程序可屬於勞動密集型且繁複(例如,該程序需要打開環境腔室71之門72,並且手動嘗試將托盤穿過門72插入到適當位置中)。可插入增強型回送組件來代替DUT以供測試器電子器件之診斷分析。
在一項實施例中,一測試系統包括一裝置介面板以及控制測試操作之測試器電子器件。測試器電子器件可位於一包殼中,該等測試器電子器件一起稱為基元。裝置介面板具有允許對受測裝置進行實體操縱(例如,手動操縱、機器人操縱等)之一受測裝置取用介面。可對一受測裝置進行獨立實體操縱,且對另一受測裝置之測試操作的干擾或影響很小或或沒有。可方便地設置裝置介面板及其裝載板以容納不同裝置形狀因子。在一項實施例中,裝載板係組配有受測裝置介面及通用基元介面。在一項例示性實作態樣中,裝置介面板可控制一受測裝置之一周圍環境。
圖12根據一項實施例,係一例示性測試系統1200的一方塊圖。測試系統1200包括一測試基元1290 (例如,包含用於受測裝置之測試控制硬體及電力供應組件等)、以及設置在基元1290前面並與之耦接之一裝置介面板(DIB) 1210。在一項實施例中,裝置介面板1210係一部分包殼。裝載板亦耦接至基元1290並與之電氣介接,以取得電力及高速電氣信號以供測試受測裝置1220。裝置介面板可包括允許氣流向及從受測裝置環境流動之氣流通道1244。氣流通道1244可包括擋板。裝置介面板1210部分包殼包括對受測裝置進行輕鬆實體取用(例如,無障礙、無阻礙等)之一受測裝置取用介面1270。環境控制組件(圖未示)控制及維護受測裝置周圍環境條件(例如:溫度、氣流率等)。環境控制組件可建立一環境包絡,防止或減輕外部環境條件對受測裝置運作之干擾。可插入增強型回送組件來代替DUT以供測試器電子器件(例如,位在基元1290中之測試器電子器件等)之診斷分析。
儘管本發明已搭配較佳實施例作說明,將瞭解的是,該等實施例並非意欲限制本發明對這些實施例之揭示。反之,本發明係意欲涵蓋替代例、修改及均等例。本說明非意欲將本發明徹底囊括或限制於所揭示之精確形式,並且顯然許多修改及變例是有可能的。
詳細說明有些部分係依據程序、邏輯塊、處理、以及一電腦記憶體內資料位元操作之其他符號表示型態來介紹。這些說明與表示型態係資料處理領域中具有通常知識者大致用來有效傳達其工作內容予所屬技術領域中具有通常知識者的手段。一程序、邏輯區塊、程序等在這裡、並且大致係視為導致一所欲結果之步驟或指令之一自相一致性序列。該等步驟包括物理量之實體操縱。這些量採取的形式通常,但非必要,係能夠在一電腦系統中被儲存、轉移、組合、比較、以及按其他方式操縱之電氣、磁性、光學、或量子信號。將這些信號稱為位元、值、元件、符號、字元、用語、數字、或類似者,有時原則上是為了常見用法,這是可以便利證實的。
然而,應記住的是,這些與類似用語全都與適當物理量相關聯,而且只是套用到這些量之便利標示。除非另有具體敍述,否則如論述顯而易見,據了解,在整篇本申請案中,利用諸如「處理」、「運算」、「計算」、「判定」、「顯示」等詞或類似者之論述意指為一電腦系統或類似處理裝置(例如:一電氣、光學、或量子、運算裝置)之動作及程序,其操縱及變換表示為物理(例如:電子)量之資料。該等用語意指為處理裝置之動作及程序,其將一電腦系統之組件(例如:暫存器、記憶體、其他此類資訊儲存、傳輸或顯示裝置等)內之物理量操縱或變換成其他組件內以類似方式表示為物理量之其他資料。
據了解,本發明之實施例可相容於及實施有各種不同類型之有形記憶體或儲存器(例如:RAM、DRAM、快閃、硬碟機、CD、DVD等)。記憶體或儲存器儘管能夠予以變更或重寫,仍可視為一非暫時性儲存媒體。藉由指出一非暫時性儲存媒體,非意欲限制媒體之特性,並且可包括各種儲存媒體(例如:可規劃、可抹除、不可規劃、讀取/寫入、唯讀等),以及「非暫時性」電腦可讀媒體包含所有電腦可讀媒體,唯一例外係一暫時性、傳播信號。
據了解,本說明包括與新穎作法相關聯之例示性概念或實施例。還據了解,清單並非徹底囊括,並且不必然包括所有可能實作態樣。概念及實施例可實施成硬體、韌體、軟體等等。在一項實施例中,方法或程序說明藉由各種處理組件或單元所進行之操作。在一項例示性實作態樣中,與方法、程序、操作等相關聯之指令、或指引可儲存在一記憶體中,並且致使一處理器實施操作、功能、動作等。
為了例示及說明目的,已介紹本發明之具體實施例之前述說明。其非意欲將本發明徹底囊括或限制於所揭示之精確形式,並且鑑於以上教示,顯然許多修改及變例是有可能的。實施例是為了最能解釋本發明之原理及其實際應用而予以選擇及說明,用以藉此使所屬技術領域中具有通常知識者能夠憑藉各種修改使本發明及各項實施例得到最佳利用而適合所思特定用途。本發明之範疇意欲由其隨附申請專利範圍及其均等論述定義。方法請求項內之步驟清單未暗指進行步驟之任何特定順序,除非申請專利範圍中明確陳述。
1,2,3,210,220,410,420,430,440,450,610,62,630,810,820:區塊
10:爐體架
11:加熱與冷卻元件
15:測試架
30:測試器托盤
31,32,33,34,41,42,43,44:裝載板托盤
50,52,53,1020:測試器電子器件
71:環境腔室
72,1091:門
81:測試器或測試頭
91,92,1220:受測裝置
100,500,700,1000,1100,1200:測試系統
110,310,510,710:測試器
111,311,511,711:CXL主機
112,312,512,712:CPU
113,313,513,713:DRAM
121,122,…,129:CXL DUT
131,132,…,139,531,532,533,…,539,731,732,…,739:系統記憶體範圍
200:測試方法
300:熱添加測試系統
321,322,…,329,521,522,…,529,721,722,…,729,1070:DUT
371:自動熱添加/調換管理組件
391:GUI
392:暫停按鈕
393:重啟按鈕
400:裝置熱添加測試方法
550:DAX組件/DAX介面
551,552,559:DAX介面
571,572,…,579,771,772:獨立DAX記憶體範圍
600:裝置測試管理方法
790:工作負載產生組件
791,792,793,799:工作負載介面
800:平行測試方法
900:電子系統
910:中央處理器
915,921:系統記憶體
925:大容量記憶體
930:輸入/輸出(I/O)裝置
940:通訊組件/通訊埠
950:匯流排
1010:電子器件隔間
1011:控制器
1012:環境組件
1030:裝載板
1090:測試腔
1210:裝置介面板
1244:氣流通道
1270:受測裝置取用介面
1290:基元
附圖係予以併入並形成本說明書之一部分,繪示本發明之實施例,並且連同本說明,用於解釋本發明之原理。除非另有註記,圖式可不按照比例繪示。
圖1A根據一項實施例,係一例示性測試系統的一方塊圖。
圖1B根據一項實施例,係一例示性測試系統的一方塊圖。
圖2根據一項實施例,係一例示性測試方法的一方塊圖。
圖3根據一項實施例,係一熱添加測試系統的一方塊圖。
圖4根據一項實施例,係一例示性裝置熱添加測試方法的一方塊圖。
圖5根據一項實施例,係一例示性測試系統的一方塊圖。
圖6根據一項實施例,係一例示性裝置測試管理方法的一方塊圖。
圖7根據一項實施例,係一例示性測試系統的一方塊圖。
圖8根據一項實施例,係一例示性平行測試方法的一方塊圖。
圖9根據一項實施例,係一例示性電子系統的一方塊圖,其可當作一平台用於實施並控制一交換程序。
圖10根據一項實施例,係一例示性測試系統的一方塊圖。
圖11根據一項實施例,係一例示性測試系統的一方塊圖。
圖12根據一項實施例,係一例示性測試系統的一方塊圖。
500:測試系統
510:測試器
511:CXL主機
512:CPU
513:DRAM
521,552,...,559:DUT
531,532,...,533:系統記憶體範圍
550:DAX組件/DAX介面
551,552,559:DAX介面
571,572,...,579:獨立DAX記憶體範圍
Claims (19)
- 一種測試系統,其包含: 一使用者介面,其經組配以致能與該系統之使用者互動; 一測試板,其經組配以與複數個受測裝置(DUT)通訊式耦接,其中該等DUT係與運算快速鏈路(CXL)協定相符;以及 一測試器,其經組配以直接測試該等複數個DUT,其中該測試器包含防止DUT損毀之一直接存取裝置(DAX)介面。
- 如請求項1之測試系統,其中該測試器將一特定CXL致能DUT之測試與非所欲之干擾及損毀隔離。
- 如請求項1之測試系統,其中該測試器防止對該DUT之記憶體進行不當寫入。
- 如請求項1之測試系統,其中該等DUT常駐在一Linux作業系統之單獨每裝置記憶體空間中,而不是記憶體空間之擴充中。
- 如請求項1之測試系統,其中該等複數個DUT中之一者係一CXL類型3記憶體擴張器裝置。
- 如請求項1之測試系統,其中該直接存取裝置(DAX)介面為包括在該等複數個DUT中之各個別DUT建立一獨特DAX執行個體。
- 一種裝置測試管理方法,其包含: 為一運算快速鏈路(CXL)協定相符受測裝置(DUT)進行一永續裝置表示程序; 進行一裝置上電清理程序;以及 進行一裝置斷電清理程序。
- 如請求項7之測試方法,進行永續裝置表示程序包含基於該CXL相符DUT獨有之一參考指示符來指派並追蹤該CXL相符DUT,包括該CXL相符DUT之特性,其中該參考指示符在該CXL相符DUT被通訊式耦接至該測試板時持續。
- 如請求項7之測試方法,其中該參考指示符係基於用於通訊式耦接該CXL相符DUT之一測試板位置插槽。
- 如請求項7之測試方法,其中基於該測試板位置之名稱確保測試器係能夠定標該CXL相符DUT,並且在該CXL相符DUT被通訊式耦接至該裝載板時持續。
- 如請求項7之測試方法,其中該斷電程序包含用於一測試器中之一主機中所包括之一中央處理單元(CPU)及快取之排清程序。
- 如請求項11之測試方法,其中該排清包含排清被寫入至與該CXL相符DUT之測試相關聯的操作中之位址中的資料,其中該等位址被包括至映射至該CXL相符DUT之一範圍。
- 如請求項7之測試方法,其中該上電程序包含等待一BIOS列舉程序而不掃描裝置。
- 如請求項7之測試方法,永續裝置表示包含命名該DUT,其中該名稱係自動建立在LINUX列舉之上。
- 一種測試系統,其包含: 一使用者介面,其經組配以致能與該系統之使用者互動; 一測試板,其經組配以與一運算快速鏈路(CXL)協定相符受測裝置(DUT)通訊式耦接;以及 一測試器,其經組配以引導該CXL相符DUT之測試,其中該測試器基於該CXL相符DUT獨有之一參考指示符來指派並追蹤該CXL相符DUT,包括該CXL相符DUT之特性,其中該參考指示符在該CXL相符DUT被通訊式耦接至該測試板時持續。
- 如請求項15之測試系統,其中該參考指示符係基於一測試板位置。
- 如請求項15之測試系統,其中該測試板位置係包括在該測試板中之一插槽,並且該CXL相符DUT係經由該插槽通訊式耦接至該測試板。
- 如請求項15之測試系統,其中該測試器經由一裝置空間中之一參考指示符來指派並追蹤該CXL相符DUT。
- 如請求項15之測試系統,參考指示符係一DAX裝置表示型態。
Applications Claiming Priority (18)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US202263408795P | 2022-09-21 | 2022-09-21 | |
US202263408801P | 2022-09-21 | 2022-09-21 | |
US202263408788P | 2022-09-21 | 2022-09-21 | |
US202263408809P | 2022-09-21 | 2022-09-21 | |
US63/408,801 | 2022-09-21 | ||
US63/408,809 | 2022-09-21 | ||
US63/408,788 | 2022-09-21 | ||
US63/408,795 | 2022-09-21 | ||
US202363439464P | 2023-01-17 | 2023-01-17 | |
US202363439434P | 2023-01-17 | 2023-01-17 | |
US202363439460P | 2023-01-17 | 2023-01-17 | |
US202363439470P | 2023-01-17 | 2023-01-17 | |
US63/439,434 | 2023-01-17 | ||
US63/439,460 | 2023-01-17 | ||
US63/439,470 | 2023-01-17 | ||
US63/439,464 | 2023-01-17 | ||
US18/129,422 | 2023-03-31 | ||
US18/129,422 US20240095138A1 (en) | 2022-09-21 | 2023-03-31 | Systems and methods utilizing dax memory management for testing cxl protocol enabled devices |
Publications (2)
Publication Number | Publication Date |
---|---|
TW202418062A true TW202418062A (zh) | 2024-05-01 |
TWI854804B TWI854804B (zh) | 2024-09-01 |
Family
ID=
Also Published As
Publication number | Publication date |
---|---|
TW202417863A (zh) | 2024-05-01 |
US20240095135A1 (en) | 2024-03-21 |
CN117743141A (zh) | 2024-03-22 |
CN117743139A (zh) | 2024-03-22 |
CN117743140A (zh) | 2024-03-22 |
US20240095138A1 (en) | 2024-03-21 |
TW202429286A (zh) | 2024-07-16 |
US20240095137A1 (en) | 2024-03-21 |
CN117743138A (zh) | 2024-03-22 |
TW202418061A (zh) | 2024-05-01 |
US20240095136A1 (en) | 2024-03-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TW202418061A (zh) | 用於平行測試運算快速鏈路致能裝置之系統及方法 | |
US8028184B2 (en) | Device allocation changing method | |
US7743189B2 (en) | PCI function south-side data management | |
JP5022262B2 (ja) | デバッグ中にツールを使用可能な試験システム及び方法 | |
US8341599B1 (en) | Environments sharing remote mounted middleware | |
US7617400B2 (en) | Storage partitioning | |
US10725890B1 (en) | Program testing service | |
US9131031B2 (en) | Virtual computer system, virtual computer management program, and MAC address management method | |
EP1372069A2 (en) | Method system and software for configuring a graphics processing communication mode | |
TW201643888A (zh) | 具除錯控制器的系統單晶片及其操作方法 | |
US11862278B2 (en) | Memory test systems and memory test methods | |
TWI854804B (zh) | 利用直接存取裝置記憶體管理用以測試運算快速鏈路協定致能裝置之系統及方法 | |
TWI855840B (zh) | 用於測試環境系統及方法之運算快速鏈路協定致能技術 | |
US9323706B2 (en) | Configuration snooping bridge | |
US6530002B1 (en) | Method and apparatus for multiple disk drive access in a multi-processor/multi-disk drive system | |
KR20240040653A (ko) | Dax 메모리 관리를 이용하여 cxl 프로토콜 지원 장치를 테스트하는 시스템 및 방법 | |
KR20240040652A (ko) | Cxl 프로토콜 지원형인 dut에 대한 테스트 환경에서의 무중단 추가 관리 | |
KR20240040654A (ko) | Cxl 지원 디바이스를 병렬로 테스트하는 시스템 및 방법 | |
KR20240040651A (ko) | 테스트 환경 시스템 및 방법을 위한 cxl 프로토콜 지원 | |
JP2007287156A (ja) | 周辺構成要素相互接続装置拡張読取り専用メモリ・データをキャッシュする方法、システムおよびプログラム | |
US20030212846A1 (en) | Device control and configuration | |
US20240175916A1 (en) | Systems and methods for testing virtual functions of a device under test | |
WO2017079951A1 (zh) | 计算机设备及计算机设备的io设备注册方法 | |
US6922746B2 (en) | Data processing system preventing configuration cycles to permit control procedure selection for access to attached devices | |
US20150150001A1 (en) | Host reservation system |