自動(dòng)切換協(xié)議以建立并測試數(shù)據(jù)通道的熱插拔裝置及方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及一種熱插拔裝置及其使用方法,特別是指一種自動(dòng)切換協(xié)議以建立并測試數(shù)據(jù)通道的熱插拔裝置及方法。
【背景技術(shù)】
[0002]目前主機(jī)中某個(gè)特定的連接接口可能支援多個(gè)不同規(guī)格的協(xié)議,例如,目前大多數(shù)計(jì)算機(jī)的USB連接接口都支援USB2.0或USB3.0的協(xié)議,使得與該計(jì)算機(jī)連接的USB裝置可以使用USB2.0或USB3.0的協(xié)議與該計(jì)算機(jī)建立數(shù)據(jù)通道。不過,對(duì)于計(jì)算機(jī)的制造商而言,在計(jì)算機(jī)制作完成后,若需要測試支援不同協(xié)議的連接接口,則需要使用支援不同協(xié)議的裝置與計(jì)算機(jī)連接,如此,測試的過程并無法自動(dòng)執(zhí)行。
[0003]為了要能夠自動(dòng)完成支援不同協(xié)議的連接接口的測試,目前有廠商開發(fā)出使用支援熱插拔(Hot swapping/Hot plugging)的功能的裝置(以下將稱為「熱插拔裝置」)來進(jìn)行測試。該等熱插拔裝置在以第一種協(xié)議與計(jì)算機(jī)建立數(shù)據(jù)通道后,會(huì)重置(reset)熱插拔裝置中的控制器,藉以讓該等熱插拔裝置可以再以第二種協(xié)議與計(jì)算機(jī)建立數(shù)據(jù)通道,接著重復(fù)同樣的動(dòng)作,直到所有支援的協(xié)議都被使用過為止。然而,重置熱插拔裝置的控制器的方式具有一定程度的風(fēng)險(xiǎn)。
[0004]另外,除了上述對(duì)連接接口所支援的協(xié)議進(jìn)行測試之外,還可以將連接接口的數(shù)據(jù)傳送腳位與數(shù)據(jù)接收腳位直接連接,藉以測試連接接口的數(shù)據(jù)傳輸是否正確。但這樣的測試并無法偵測連接接口的數(shù)據(jù)傳輸錯(cuò)誤率,也無法進(jìn)行傳輸壓力測試,也就是說,這樣的測試并不完整。
[0005]綜上所述,可知現(xiàn)有技術(shù)中長期以來一直存在無法對(duì)連接接口進(jìn)行完整且有效率的測試的問題,因此有必要提出改進(jìn)的技術(shù)手段,來解決此一問題。
【發(fā)明內(nèi)容】
[0006]有鑒于現(xiàn)有技術(shù)存在無法對(duì)連接接口進(jìn)行完整且有效率的測試的問題,本發(fā)明遂揭露一種自動(dòng)切換協(xié)議以建立并測試數(shù)據(jù)通道的熱插拔裝置及方法,其中:
[0007]本發(fā)明所揭露的自動(dòng)切換協(xié)議以建立并測試數(shù)據(jù)通道的熱插拔裝置,至少包含:控制模塊,用以使用第一協(xié)議使熱插拔裝置與待測主機(jī)建立數(shù)據(jù)通道,使用第二協(xié)議使熱插拔裝置與待測主機(jī)建立數(shù)據(jù)通道,及用以重新啟動(dòng)熱插拔裝置,藉以模擬熱插拔的行為;接收模塊,用以接收待測主機(jī)所傳送的第一測試數(shù)據(jù),其中,第一測試數(shù)據(jù)的數(shù)據(jù)長度可使待測主機(jī)以第一協(xié)議定義的最大傳送速度傳送第一測試數(shù)據(jù)達(dá)到第一預(yù)定時(shí)間,及用以接收待測主機(jī)所傳送的第二測試數(shù)據(jù),其中,第二測試數(shù)據(jù)的數(shù)據(jù)長度可使待測主機(jī)以第二協(xié)議定義的最大傳送速度傳送第二測試數(shù)據(jù)達(dá)到第二預(yù)定時(shí)間;傳送模塊,用以傳送所接收到的第一測試數(shù)據(jù)至待測主機(jī),及用以傳送退出信息至待測主機(jī),及用以傳送所接收到的第二測試數(shù)據(jù)至待測主機(jī)。
[0008]本發(fā)明所揭露的自動(dòng)切換協(xié)議以建立并測試數(shù)據(jù)通道的方法,其步驟至少包括:熱插拔裝置使用第一協(xié)議與待測主機(jī)建立數(shù)據(jù)通道;熱插拔裝置接收待測主機(jī)所傳送的第一測試數(shù)據(jù),第一測試數(shù)據(jù)的數(shù)據(jù)長度可使待測主機(jī)以第一協(xié)議定義的最大傳送速度傳送第一測試數(shù)據(jù)達(dá)到第一預(yù)定時(shí)間;熱插拔裝置傳送所接收到的第一測試數(shù)據(jù)至待測主機(jī);熱插拔裝置傳送退出信息至待測主機(jī);熱插拔裝置重新啟動(dòng),藉以模擬熱插拔的行為;熱插拔裝置使用第二協(xié)議與待測主機(jī)建立數(shù)據(jù)通道;熱插拔裝置接收待測主機(jī)所傳送的第二測試數(shù)據(jù),第二測試數(shù)據(jù)的數(shù)據(jù)長度可使待測主機(jī)以第二協(xié)議定義的最大傳送速度傳送第二測試數(shù)據(jù)達(dá)到第二預(yù)定時(shí)間;熱插拔裝置傳送所接收到的第二測試數(shù)據(jù)至待測主機(jī)。
[0009]本發(fā)明所揭露的熱插拔裝置與方法如上,與現(xiàn)有技術(shù)之間的差異在于本發(fā)明通過熱插拔裝置在使用第一協(xié)議與待測主機(jī)建立數(shù)據(jù)通道后,接收待測主機(jī)所傳送的測試數(shù)據(jù),并依據(jù)所傳送的測試數(shù)據(jù)對(duì)待測主機(jī)的連接接口進(jìn)行測試,并在完成測試后,重新啟動(dòng)熱插拔裝置,藉以讓熱插拔裝置繼續(xù)使用第二協(xié)議與待測主機(jī)建立數(shù)據(jù)通道,并依據(jù)待測主機(jī)再次傳送的測試數(shù)據(jù)對(duì)待測主機(jī)的連接接口進(jìn)行測試,藉以解決現(xiàn)有技術(shù)所存在的問題,并可以達(dá)成自動(dòng)對(duì)待測主機(jī)的連接接口進(jìn)行完整測試的技術(shù)功效。
【附圖說明】
[0010]圖1為本發(fā)明所提的自動(dòng)切換協(xié)議以建立并測試數(shù)據(jù)通道的熱插拔裝置的元件示意圖。
[0011]圖2為本發(fā)明所提的自動(dòng)切換協(xié)議以建立并測試數(shù)據(jù)通道的方法流程圖。
[0012]圖3A為本發(fā)明所提的接收測試數(shù)據(jù)并測試的附加方法流程圖。
[0013]圖3B為本發(fā)明所提的傳送測試數(shù)據(jù)并測試的附加方法流程圖。
[0014]【符號(hào)說明】
[0015]100熱插拔裝置
[0016]110控制模塊
[0017]120接收模塊
[0018]121接收緩沖區(qū)
[0019]130傳送模塊
[0020]131傳送緩沖區(qū)
[0021]150錯(cuò)誤偵測模塊
[0022]160位計(jì)算模塊
[0023]400待測主機(jī)
[0024]402 連接接口
【具體實(shí)施方式】
[0025]以下將配合圖式及實(shí)施例來詳細(xì)說明本發(fā)明的特征與實(shí)施方式,內(nèi)容足以使任何本領(lǐng)域技術(shù)人員能夠輕易地充分理解本發(fā)明解決技術(shù)問題所應(yīng)用的技術(shù)手段并據(jù)以實(shí)施,藉此實(shí)現(xiàn)本發(fā)明可達(dá)成的功效。
[0026]本發(fā)明可以對(duì)待測主機(jī)上的連接接口進(jìn)行數(shù)據(jù)傳送的相關(guān)測試,其中包含數(shù)據(jù)傳送壓力測試、最大數(shù)據(jù)傳送速率的測試、數(shù)據(jù)傳送正確率的測試等。其中,進(jìn)行測試的連接接口具有熱插拔的功能,也就是說,連接接口包含但不限于USB接口、SATA接口等。
[0027]以下先以「圖1」本發(fā)明所提的自動(dòng)切換協(xié)議以建立并測試數(shù)據(jù)通道的熱插拔裝置的元件示意圖來說明本發(fā)明的系統(tǒng)運(yùn)作。如「圖1」所示,本發(fā)明的熱插拔裝置100含有控制模塊110、接收模塊120、以及傳送模塊130。另外,本發(fā)明的熱插拔裝置100也可以包含可附加的錯(cuò)誤偵測模塊150以及位計(jì)算模塊160。
[0028]控制模塊110負(fù)責(zé)使用與待測主機(jī)400的連接接口 402所使用的協(xié)議連接熱插拔裝置100與待測主機(jī)400。例如,當(dāng)連接接口 402為USB接口時(shí),控制模塊110可以使用USB3.0的協(xié)議以及USB2.0的協(xié)議與待測主機(jī)400連接。
[0029]控制模塊110也負(fù)責(zé)重新啟動(dòng)熱插拔裝置100,藉以模擬熱插拔的行為,也就是模擬使用者將熱插拔裝置100拔離待測主機(jī)400的連接接口 402后,再次將熱插拔裝置100插入連接接口 402或?qū)⑦B接接口插入熱插拔裝置100的行為。
[0030]在部分的實(shí)施例中,控制模塊110可以先中斷當(dāng)前與該待測主機(jī)所建立的數(shù)據(jù)通道,并停止熱插拔裝置100與待測主機(jī)400間的所有電氣信號(hào),使得待測主機(jī)400無法偵測到熱插拔裝置100而判斷熱插拔裝置100已經(jīng)移除,而后控制模塊110會(huì)在經(jīng)過一段時(shí)間(在本發(fā)明中稱此段時(shí)間為「預(yù)定時(shí)間」)后,恢復(fù)熱插拔裝置100與待測主機(jī)400間的所有電氣信號(hào),使得待測主機(jī)400重新偵測到熱插拔裝置100的信號(hào)而判斷熱插拔裝置100重新連接,藉以模擬熱插拔的行為,但本發(fā)明并不以此為限。
[0031]接收模塊120負(fù)責(zé)接收待測主機(jī)400所傳送的測試數(shù)據(jù)(在本發(fā)明中,將以「測試數(shù)據(jù)」表示第一測試數(shù)據(jù)或第二測試數(shù)據(jù))。其中,第一測試數(shù)據(jù)的數(shù)據(jù)長度可以讓待測主機(jī)400以第一協(xié)議所定義的最大傳送速度傳送第一測試數(shù)據(jù)時(shí),仍然需要傳送一段時(shí)間才能完整的傳送第一測試數(shù)據(jù),在本發(fā)明中,從待測主機(jī)400開始傳送第一測試數(shù)據(jù)到待測主機(jī)400完成第一測試數(shù)據(jù)的傳送所經(jīng)過的時(shí)間被稱為「第一預(yù)定時(shí)間」,相似的,第二測試數(shù)據(jù)的數(shù)據(jù)長度可以讓待測主機(jī)400以第二協(xié)議所定義的最大傳送速度傳送第二測試數(shù)據(jù)時(shí),仍然需要傳送一段時(shí)間才能完整的傳送第二測試數(shù)據(jù)