Usb芯片的測試方法及系統的制作方法
【技術領域】
[0001]本發明涉及電子測試領域,更具體地涉及一種用于對USB3.0芯片進行多通道測試的USB芯片的測試方法及系統。
【背景技術】
[0002]在USB協議下,通常需要對USB芯片的各端點進行大量數據包的傳輸檢測和定位。現有的測試方案多是在傳統的USB數據協議下,利用標準的主機驅動構建不同的測試流程,模仿正常通信在各個USB芯片的數據端點建立數據通路,對各個數據端點依次進行USB數據協議的建立、傳輸、完成和測試。這種方案測試簡單容易構建,但是不容易對USB芯片設計的錯誤進行覆蓋檢測和快速定位。
[0003]上述現有技術中主要是按照USB芯片實際工作的標準流程進行,沒有考慮USB芯片在工作中各種錯誤極端情況的出現,但是實際USB芯片工作中可能在各個無法預想的極端條件下會出現的各種問題。因為上述現有技術對USB芯片的檢測是建立在理想使用的環境中的,所以上述現有技術的檢測方式無法完全對USB芯片的潛在錯誤進行檢測和定位。
[0004]因此,有必要提供一種改進的USB芯片的測試方法及系統來克服上述缺陷。
【發明內容】
[0005]本發明的目的是提供一種USB芯片的測試方法及系統,用于對USB3.0芯片進行多通道測試。本發明的USB芯片的測試方法及系統在USB3.0芯片的測試過程中不受USB協議的限制,USB3.0芯片的各數據端點的測試不受USB實際驅動程序的限制,可以在測試中最大可能的進行硬件的錯誤檢測,完成對硬件的覆蓋測試和錯誤跟蹤定位,使USB3.0芯片能夠避免在實際運行中當遇到極端惡劣情況時發生錯誤的可能。
[0006]為實現上述目的,本發明提供一種USB芯片的測試方法,用于對USB3.0芯片進行多通道測試,其包括如下步驟:a.USB主機的數據發生器隨機產生測試數據包,并對產生的測試數據包進行標記;b.將標記后的測試數據包隨機傳送至USB3.0芯片;c.USB3.0芯片的串行接口單元將收到的測試數據包發送至USB3.0芯片的各個數據端點;d.各個數據端點對接收到的測試數據包進行并行處理;e.數據檢測器根據測試數據包的標記檢測各數據端點對測試數據包的處理方式。
[0007]較佳地,在所述USB主機內預設有各種測試函數及USB3.0協議的所有數據協議,且所述USB主機根據USB3.0協議對USB3.0芯片各個端點同時建立傳輸通道。
[0008]較佳地,所述步驟a具體為:所述數據發生器按照主機內存儲的數據協議將測試數據包在USB3.0芯片內部的處理方式信息和位置信息寫到測試數據包的固定位置處。
[0009]較佳地,所述測試數據包的固定位置為測試數據包的非協議位置。
[0010]較佳地,所述非協議位置為測試數據包的前四個字節。
[0011]較佳地,同時本發明還提供一種USB芯片的測試系統.
[0012]較佳地,測試數據包的處理方式信息記錄于測試數據包的第3字節與第4字節。
[0013]較佳地,所述處理方式包括數據被丟棄、數據被送到驅動單元處理、數據被送到存儲單元及數據被返回USB主機。
[0014]較佳地,在所述步驟b中,USB主機將所述標記后的測試數據包以最大負荷隨機傳送給USB3.0芯片。
[0015]相應地,本發明還提供一種USB芯片的測試系統,用于對USB3.0芯片進行多通道測試,其包括數據發生器、串行接口單元、數據檢測器及多個數據端點;所述數據發生器隨機產生測試數據包,并對產生的測試數據包進行標記,USB主機將標記后的測試數據包隨機傳送至所述串行接口單元,串行接口單元將收到的測試數據包進行串并轉換,并將轉換后的并行測試數據包發送至各個數據端點,各個數據端點對接收到的測試數據包進行并行處理,所述數據檢測器根據測試數據包的標記檢測各數據端點對測試數據包的處理方式。
[0016]較佳地,所述USB芯片的測試系統還包括驅動單元及存儲單元,各數據端點對測試數據包的處理方式包括數據被丟棄、數據被送到驅動單元處理、數據被送到存儲單元存儲及數據被返回USB主機;且所述數據檢測器包括第一數據檢測器與第二數據檢測器,所述第一數據檢測器檢測數據端點是否正確將數據返回至USB主機,所述第二數據檢測器檢測所述數據端點是否正確將數據送到驅動單元處理及是否正確將數據存儲于存儲單元中。
[0017]與現有技術相比,本發明的USB芯片的測試方法及系統,通過各個數據端點對接收到的測試數據包進行并行測試處理,讓USB3.0芯片的測試不受USB協議的限制,USB3.0芯片的各數據端點的測試不受USB實際驅動程序的限制;另外,測試數據包是隨機傳送至USB3.0芯片的,使得在測試中最大可能的進行硬件的錯誤檢測,完成對硬件的覆蓋測試和錯誤跟蹤定位,減少了 USB3.0芯片在實際運行中遇到極端惡劣情況時發生錯誤的可能。
[0018]通過以下的描述并結合附圖,本發明將變得更加清晰,這些附圖用于解釋本發明的實施例。
【附圖說明】
[0019]圖1為本發明USB芯片的測試系統的結構框圖。
[0020]圖2為本發明USB芯片的測試方法的流程圖。
【具體實施方式】
[0021]現在參考附圖描述本發明的實施例,附圖中類似的元件標號代表類似的元件。如上所述,本發明提供了一種USB芯片的測試方法及系統,用于對USB3.0芯片進行多通道測試。本發明的USB芯片的測試方法及系統在USB3.0芯片的測試過程中不受USB協議的限制,USB3.0芯片的各數據端點的測試不受USB實際驅動程序的限制,可以在測試中最大可能的進行硬件的錯誤檢測,完成對硬件的覆蓋測試和錯誤跟蹤定位,使USB3.0芯片能夠避免在實際運行中當遇到極端惡劣情況時發生錯誤的可能。
[0022]請參考圖1,圖1為本發明USB芯片的測試系統的結構框圖。如圖所示,本發明的USB芯片的測試系統,用于對USB3.0芯片進行多通道測試,其包括數據發生器、串行接口單元、數據檢測器及多個數據端點。所述數據發生器置于USB主機內部,且隨機產生測試數據包,并根據主機內存儲的數據協議對產生的測試數據包進行標記,從而通過測試數據包的標記使得在USB3.0芯片的測試過程中可對USB3.0芯片的錯誤進行準確的跟蹤與定位。USB主機將標記后的測試數據包通過高速串行總線隨機傳送至USB3.0芯片的串行接口單元,串行接口單元將收到的測試數據包進行串并轉換,并將轉換后的并行測試數據包發送至各個數據端點。各個數據端點對接收到的測試數據包進行并行處理。所述數據檢測器根據測試數據包的標記檢測各數據端點對測試數據包的處理方式。另外,如圖1所示,在本發明的優選實施方式中,本發明的USB芯片的測試系統還包括驅動單元及存儲單元,各數據端點對測試數據包的處理方式包括數據被丟棄、數據被送到驅動單元處理、數據被送到存儲單元存儲及數據被返回USB主機;且所述數據檢測器包括第一數據檢測器與第二數據檢測器,所述第一數據檢測器檢測數據端點是否正確將數據返回至USB主機,所述第二數據檢測器檢測所述數據端點是否正確將數據送到驅動單元處理及是否正確將數據存儲于存儲單元中,從而通過所述第一數據檢測器與第二數據檢測器對測試數據包的處理方式的檢測而實現對所述USB3.0芯片的測試,且在測試過程中不受USB協議的限制,USB3.0芯片的各數據端點的測試不受USB實際驅動程序的限制,可以在測試中最大可能的進行硬件的錯誤檢測,完成對硬件的覆蓋測試和錯誤跟蹤定位,使USB3.0芯片能夠避免在實際運行中當遇到極端惡劣情況時發生錯誤的可能。
[0023]請再結合參考圖2,圖2為本發明USB芯片的測試方法的流程圖,本發明的USB芯片的測試方法用于對USB3.0芯片進行多通道測試。如圖所示,本發明USB芯片的測試方法包括如下步驟:
[0024]步驟S101,USB主機的數據發生器隨機產生測試數據包,并對產生的測試數據包進行標記;作為本發明的優選實施方式,在本步驟開始前,在所述USB主機內預設有各種測試函數及USB3.0協議的所有數據協議,從而在后續各步驟中可直接匹配需要用到的測試函數或數據協議,且所述USB主機根據USB3.0協議對USB3.0芯片各個端點同時建立傳輸通道,以使所述