本發(fā)明涉及計(jì)算機(jī),特別是涉及一種總線設(shè)備測試方法、裝置及系統(tǒng)。
背景技術(shù):
1、隨著大規(guī)模集成電路的發(fā)展,為了追求使用的方便,逐漸將中央處理器與其他外部設(shè)備等集成在一塊芯片上,稱之為單片機(jī),因此,如何在電路板有限的面積內(nèi),實(shí)現(xiàn)芯片與外設(shè)之間的互聯(lián),在保證數(shù)據(jù)安全傳輸?shù)幕A(chǔ)上盡量減少線數(shù),成了當(dāng)時的一個問題。
2、mipi(mobile?industry?processor?interface)聯(lián)盟在i2c協(xié)議的基礎(chǔ)上開發(fā)出了i3c(improved?inter-integrated?circuit)協(xié)議,目的是為了統(tǒng)一傳感器通信協(xié)議,i3c協(xié)議使用嚴(yán)格的兩根線進(jìn)行傳輸,中斷集成在ibi(in-band?interrupt,帶內(nèi)中斷)中進(jìn)行發(fā)送,且i3c協(xié)議中scl線使用推挽輸出,sda線是推挽和開漏可選的,在功率消耗上明顯小于兩根線均為開漏輸出的i2c協(xié)議,提升總線的傳輸速率;此外,i3c協(xié)議支持熱插拔,并且還具有其他許多強(qiáng)大的功能如ccc(common?command?codes,通用命令碼)等,而且向前兼容i2c協(xié)議,因此i3c協(xié)議正逐步被投入使用。
3、然而,由于i3c協(xié)議主要應(yīng)用于板級外設(shè)與mcu的通信,常用的個人電腦并不能直接接入i3c總線進(jìn)行測試,這就需要在單獨(dú)對某個i3c設(shè)備進(jìn)行通信測試時,必須使用支持i3c協(xié)議且可進(jìn)行輸入輸出的設(shè)備作為上位機(jī),如此,選擇測試i3c設(shè)備的上位機(jī)受到較強(qiáng)的限制,導(dǎo)致測試不便,從而影響i3c設(shè)備的測試效率。
技術(shù)實(shí)現(xiàn)思路
1、有鑒于此,本發(fā)明旨在提出一種總線設(shè)備測試方法、裝置及系統(tǒng),解決當(dāng)前總線設(shè)備測試必須使用支持i3c協(xié)議且可進(jìn)行輸入輸出的設(shè)備作為上位機(jī),測試不便,影響i3c設(shè)備的測試效率的問題,實(shí)現(xiàn)通用、高效的總線設(shè)備測試。
2、依據(jù)本發(fā)明的第一方面,提供了一種總線設(shè)備測試方法,應(yīng)用于總線設(shè)備測試系統(tǒng),所述系統(tǒng)包括上位機(jī)端、測試端和待測設(shè)備端,所述測試端配置有第一協(xié)議接口和第二協(xié)議接口,所述測試端通過第一協(xié)議接口與上位機(jī)端連接,以及,通過第二協(xié)議接口與待測設(shè)備端連接,所述方法包括:
3、響應(yīng)于所述第一協(xié)議接口接收到所述上位機(jī)端發(fā)送的下行數(shù)據(jù),通過所述測試端對所述下行數(shù)據(jù)進(jìn)行解析,確定待傳輸?shù)牡谝荒繕?biāo)數(shù)據(jù);
4、通過所述第二協(xié)議接口將所述第一目標(biāo)數(shù)據(jù)傳輸至所述待測設(shè)備端,并確定下行數(shù)據(jù)測試結(jié)果;
5、響應(yīng)于所述第二協(xié)議接口接收到所述待測設(shè)備端發(fā)送的上行數(shù)據(jù),通過所述測試端對所述上行數(shù)據(jù)進(jìn)行解析,確定待傳輸?shù)牡诙繕?biāo)數(shù)據(jù);
6、通過所述第一協(xié)議接口將所述第二目標(biāo)數(shù)據(jù)傳輸至所述上位機(jī)端,并確定上行數(shù)據(jù)測試結(jié)果。
7、可選地,所述響應(yīng)于所述第一協(xié)議接口接收到所述上位機(jī)端發(fā)送的下行數(shù)據(jù),通過所述測試端對所述下行數(shù)據(jù)進(jìn)行解析,確定待傳輸?shù)牡谝荒繕?biāo)數(shù)據(jù),包括:
8、預(yù)先通過所述上位機(jī)端生成下行數(shù)據(jù);其中,所述下行數(shù)據(jù)包括自定義命令碼和第一測試數(shù)據(jù);
9、響應(yīng)于所述第一協(xié)議接口接收到所述上位機(jī)端發(fā)送的下行數(shù)據(jù),將所述下行數(shù)據(jù)存儲至所述測試端;
10、通過所述測試端對所述下行數(shù)據(jù)進(jìn)行解析,獲取所述下行數(shù)據(jù)中的自定義命令碼和第一測試數(shù)據(jù);
11、采用所述自定義命令碼判斷所述下行數(shù)據(jù)對應(yīng)數(shù)據(jù)類型;其中,所述數(shù)據(jù)類型包括命令類型和配置類型;
12、若所述下行數(shù)據(jù)對應(yīng)數(shù)據(jù)類型為命令類型,則將所述第一測試數(shù)據(jù)確定為待傳輸至所述待測設(shè)備端的第一目標(biāo)數(shù)據(jù)。
13、可選地,所述若所述下行數(shù)據(jù)對應(yīng)數(shù)據(jù)類型為命令類型,則將所述第一測試數(shù)據(jù)確定為待傳輸至所述待測設(shè)備端的第一目標(biāo)數(shù)據(jù),包括:
14、通過所述測試端將所述自定義命令碼與待測設(shè)備端的通用命令碼進(jìn)行對比,確定所述自定義命令碼對應(yīng)的目標(biāo)命令;
15、將所述目標(biāo)命令和所述第一測試數(shù)據(jù)確定為待傳輸至所述待測設(shè)備端的第一目標(biāo)數(shù)據(jù),并將所述第一目標(biāo)數(shù)據(jù)存儲至預(yù)設(shè)下行緩沖區(qū)域。
16、可選地,所述采用所述自定義命令碼判斷所述下行數(shù)據(jù)對應(yīng)數(shù)據(jù)類型;其中,所述數(shù)據(jù)類型包括命令類型和配置類型之后,還包括:
17、若所述下行數(shù)據(jù)對應(yīng)數(shù)據(jù)類型為配置類型,則根據(jù)所述第一測試數(shù)據(jù)對所述測試端進(jìn)行配置修改;
18、若所述下行數(shù)據(jù)對應(yīng)數(shù)據(jù)類型不滿足命令類型和配置類型,則將第一測試數(shù)據(jù)進(jìn)行透傳。
19、可選地,所述通過所述第二協(xié)議接口將所述第一目標(biāo)數(shù)據(jù)傳輸至所述待測設(shè)備端,并確定下行數(shù)據(jù)測試結(jié)果,包括:
20、檢測到所述上位機(jī)端發(fā)送的下行命令,將預(yù)設(shè)下行緩沖區(qū)域中的所述第一目標(biāo)數(shù)據(jù)通過所述第二協(xié)議接口傳輸至所述待測設(shè)備端;
21、獲取所述待測設(shè)備端的數(shù)據(jù)接收狀態(tài),確定下行數(shù)據(jù)測試結(jié)果。
22、可選地,所述響應(yīng)于所述第二協(xié)議接口接收到所述待測設(shè)備端發(fā)送的上行數(shù)據(jù),通過所述測試端對所述上行數(shù)據(jù)進(jìn)行解析,確定待傳輸?shù)牡诙繕?biāo)數(shù)據(jù),包括:
23、響應(yīng)于所述第二協(xié)議接口接收到所述待測設(shè)備發(fā)送的上行數(shù)據(jù),將所述上行數(shù)據(jù)存儲至所述測試端;其中,所述上行數(shù)據(jù)包括自定義命令碼和第二測試數(shù)據(jù);
24、通過所述測試端對所述上行數(shù)據(jù)進(jìn)行解析,獲取所述上行數(shù)據(jù)中的自定義命令碼和第二測試數(shù)據(jù);
25、采用所述自定義命令碼判斷所述上行數(shù)據(jù)對應(yīng)數(shù)據(jù)類型;其中,所述數(shù)據(jù)類型包括地址分配命令類型和標(biāo)準(zhǔn)命令類型;
26、若所述上行數(shù)據(jù)對應(yīng)數(shù)據(jù)類型為標(biāo)準(zhǔn)命令類型,則將所述第二測試數(shù)據(jù)確定為待傳輸至所述上位機(jī)端的第二目標(biāo)數(shù)據(jù)。
27、可選地,所述采用所述自定義命令碼判斷所述上行數(shù)據(jù)對應(yīng)數(shù)據(jù)類型;其中,所述數(shù)據(jù)類型包括地址分配命令類型和標(biāo)準(zhǔn)命令類型之后,還包括:
28、若所述上行數(shù)據(jù)對應(yīng)數(shù)據(jù)類型為地址分配命令類型,則將所述測試端對應(yīng)總線設(shè)備地址發(fā)送至所述上位機(jī)端;
29、若所述上行數(shù)據(jù)對應(yīng)數(shù)據(jù)類型不滿足地址分配命令類型和標(biāo)準(zhǔn)命令類型,則將第二測試數(shù)據(jù)進(jìn)行透傳。
30、可選地,所述通過所述第一協(xié)議接口將所述第二目標(biāo)數(shù)據(jù)傳輸至所述上位機(jī)端,并確定上行數(shù)據(jù)測試結(jié)果,包括:
31、預(yù)先將所述第二目標(biāo)數(shù)據(jù)存儲至預(yù)設(shè)上行緩沖區(qū)域;
32、檢測到所述上位機(jī)端發(fā)送的上行命令,將預(yù)設(shè)上行緩沖區(qū)域中的所述第二目標(biāo)數(shù)據(jù)通過所述第一協(xié)議接口傳輸至所述上位機(jī)端;
33、獲取所述上位機(jī)端的數(shù)據(jù)接收狀態(tài),確定上行數(shù)據(jù)測試結(jié)果。
34、依據(jù)本發(fā)明的第二方面,提供了一種總線設(shè)備測試裝置,應(yīng)用于總線設(shè)備測試系統(tǒng),所述系統(tǒng)包括上位機(jī)端、測試端和待測設(shè)備端,所述測試端配置有第一協(xié)議接口和第二協(xié)議接口,所述測試端通過第一協(xié)議接口與上位機(jī)端連接,以及,通過第二協(xié)議接口與待測設(shè)備端連接,所述裝置包括:
35、確定下行數(shù)據(jù)模塊,用于響應(yīng)于所述第一協(xié)議接口接收到所述上位機(jī)端發(fā)送的下行數(shù)據(jù),通過所述測試端對所述下行數(shù)據(jù)進(jìn)行解析,確定待傳輸?shù)牡谝荒繕?biāo)數(shù)據(jù);
36、下行測試模塊,用于通過所述第二協(xié)議接口將所述第一目標(biāo)數(shù)據(jù)傳輸至所述待測設(shè)備端,并確定下行數(shù)據(jù)測試結(jié)果;
37、確定上行數(shù)據(jù)模塊,用于響應(yīng)于所述第二協(xié)議接口接收到所述待測設(shè)備端發(fā)送的上行數(shù)據(jù),通過所述測試端對所述上行數(shù)據(jù)進(jìn)行解析,確定待傳輸?shù)牡诙繕?biāo)數(shù)據(jù);
38、上行測試模塊,用于通過所述第一協(xié)議接口將所述第二目標(biāo)數(shù)據(jù)傳輸至所述上位機(jī)端,并確定上行數(shù)據(jù)測試結(jié)果。
39、依據(jù)本發(fā)明的又一方面,還提供一種總線設(shè)備測試系統(tǒng),所述總線設(shè)備測試系統(tǒng)包括上位機(jī)端、測試端和待測設(shè)備端,所述測試端配置有第一協(xié)議接口和第二協(xié)議接口,所述測試端通過第一協(xié)議接口與上位機(jī)端連接,以及,通過第二協(xié)議接口與待測設(shè)備端連接,所述系統(tǒng)包括:
40、所述上位機(jī)端,用于發(fā)送下行數(shù)據(jù)至所述測試端的第一協(xié)議接口,以及接收所述第一協(xié)議接口傳輸?shù)乃龃郎y設(shè)備端發(fā)送的上行數(shù)據(jù);
41、所述測試端,用于響應(yīng)于所述第一協(xié)議接口接收到所述上位機(jī)端發(fā)送的下行數(shù)據(jù),通過所述測試端對所述下行數(shù)據(jù)進(jìn)行解析,確定待傳輸?shù)牡谝荒繕?biāo)數(shù)據(jù);通過所述第二協(xié)議接口將所述第一目標(biāo)數(shù)據(jù)傳輸至所述待測設(shè)備端,并確定下行數(shù)據(jù)測試結(jié)果;響應(yīng)于所述第二協(xié)議接口接收到所述待測設(shè)備端發(fā)送的上行數(shù)據(jù),通過所述測試端對所述上行數(shù)據(jù)進(jìn)行解析,確定待傳輸?shù)牡诙繕?biāo)數(shù)據(jù);通過所述第一協(xié)議接口將所述第二目標(biāo)數(shù)據(jù)傳輸至所述上位機(jī)端,并確定上行數(shù)據(jù)測試結(jié)果;
42、所述待測設(shè)備端,用于發(fā)送上行數(shù)據(jù)至所述測試端的第二協(xié)議接口,以及接收所述第一協(xié)議接口傳輸?shù)乃錾衔粰C(jī)端發(fā)送的下行數(shù)據(jù)。
43、本發(fā)明實(shí)施例提供的總線設(shè)備測試方法,應(yīng)用于總線設(shè)備測試系統(tǒng),系統(tǒng)包括上位機(jī)端、測試端和待測設(shè)備端,測試端通過第一協(xié)議接口與上位機(jī)端連接,通過第二協(xié)議接口與待測設(shè)備端連接,響應(yīng)于第一協(xié)議接口接收到上位機(jī)端發(fā)送的下行數(shù)據(jù),通過測試端對下行數(shù)據(jù)進(jìn)行解析,確定待傳輸?shù)牡谝荒繕?biāo)數(shù)據(jù),通過第二協(xié)議接口將所述第一目標(biāo)數(shù)據(jù)傳輸至所述待測設(shè)備端,并確定下行數(shù)據(jù)測試結(jié)果,響應(yīng)于第二協(xié)議接口接收到待測設(shè)備端發(fā)送的上行數(shù)據(jù),通過測試端對上行數(shù)據(jù)進(jìn)行解析,確定待傳輸?shù)牡诙繕?biāo)數(shù)據(jù),通過第一協(xié)議接口將第二目標(biāo)數(shù)據(jù)傳輸至上位機(jī)端,并確定上行數(shù)據(jù)測試結(jié)果。本發(fā)明實(shí)施例的上位機(jī)通過第一協(xié)議接口直連測試端,且測試端通過第二協(xié)議接口掛載在i3c總線,利用測試端實(shí)現(xiàn)上位機(jī)對總線上的待測總線設(shè)備進(jìn)行數(shù)據(jù)的發(fā)送與接收以測試驗(yàn)證總線設(shè)備,從而實(shí)現(xiàn)通用上位機(jī)端與i3c設(shè)備進(jìn)行在線通信,高效完成測試,大大簡化了總線設(shè)備的測試流程,進(jìn)一步提升了測試效率。
44、上述說明僅是本發(fā)明技術(shù)方案的概述,為了能夠更清楚了解本發(fā)明的技術(shù)手段,而可依照說明書的內(nèi)容予以實(shí)施,并且為了讓本發(fā)明的上述和其它目的、特征和優(yōu)點(diǎn)能夠更明顯易懂,以下特舉本發(fā)明的具體實(shí)施方式。