本發(fā)明涉及通信驗(yàn)證,特別是涉及一種i3c控制器驗(yàn)證方法、裝置、設(shè)備及存儲(chǔ)介質(zhì)。
背景技術(shù):
1、移動(dòng)產(chǎn)業(yè)處理器端口(mobile?industry?processor?interface,簡(jiǎn)稱mipi)聯(lián)盟提出了mipi?i3c(improved?inter?integrated?circuit,一種接口協(xié)議規(guī)范)接口協(xié)議,i3c協(xié)議是一種全新的協(xié)議標(biāo)準(zhǔn),i3c接口的優(yōu)勢(shì)在于消耗的能耗更低,傳輸數(shù)據(jù)的速率更快、可擴(kuò)展性變高以及盡可能地減少了gpio引腳的數(shù)量,而且向下兼容傳統(tǒng)的i2c(interintegrated?circui,一種接口協(xié)議規(guī)范)協(xié)議。由于上述i3c的優(yōu)點(diǎn),越來越多的集成電路芯片中采用i3c協(xié)議來實(shí)現(xiàn)電路設(shè)計(jì)。為了滿足i3c控制器的驗(yàn)證需求和提高驗(yàn)證效率,加快產(chǎn)品研發(fā)進(jìn)度,以及降低成本,需要有一個(gè)i3c驗(yàn)證設(shè)備來與i3c控制器進(jìn)行通信,進(jìn)而驗(yàn)證i3c控制器是否存在問題。而目前常用的i3c驗(yàn)證設(shè)備僅支持作為i3c從機(jī)進(jìn)行驗(yàn)證,待驗(yàn)證的i3c控制器卻是可以充當(dāng)主機(jī)角色和從機(jī)角色的;并且,i3c驗(yàn)證設(shè)備的功能單一,大多僅支持sdr(signal?data?rate,單數(shù)據(jù)速率)讀寫傳輸;無法對(duì)待驗(yàn)證i3c控制器進(jìn)行完整校驗(yàn)。
2、可見,如何提高i3c控制器的驗(yàn)證效果是本領(lǐng)域技術(shù)人員需要解決的問題。
技術(shù)實(shí)現(xiàn)思路
1、本發(fā)明實(shí)施例的目的是提供一種i3c控制器驗(yàn)證方法、裝置、設(shè)備及存儲(chǔ)介質(zhì),可以解決驗(yàn)證設(shè)備僅支持作為從機(jī)進(jìn)行驗(yàn)證、功能單一、無法進(jìn)行完整校驗(yàn)的問題。
2、為解決上述技術(shù)問題,第一方面,本技術(shù)提供了一種i3c控制器驗(yàn)證方法,應(yīng)用于驗(yàn)證設(shè)備,包括:
3、確定待驗(yàn)證i3c控制器的當(dāng)前設(shè)備角色以及待驗(yàn)證傳輸類型;其中,所述驗(yàn)證設(shè)備與待驗(yàn)證i3c控制器互為主從設(shè)備,所述待驗(yàn)證i3c控制器通過i3c總線與所述驗(yàn)證設(shè)備連接;
4、利用所述i3c總線和高級(jí)外圍總線中與所述待驗(yàn)證i3c控制器的當(dāng)前設(shè)備角色對(duì)應(yīng)的目標(biāo)總線進(jìn)行與所述待驗(yàn)證傳輸類型對(duì)應(yīng)的傳輸過程,并獲取所述傳輸過程中的待驗(yàn)證數(shù)據(jù)信息;其中,若所述當(dāng)前設(shè)備角色為主機(jī)角色,則將所述i3c總線作為所述目標(biāo)總線,相應(yīng)的,所述待驗(yàn)證數(shù)據(jù)信息包括所述待驗(yàn)證i3c控制器通過所述i3c總線向所述驗(yàn)證設(shè)備傳輸?shù)臄?shù)據(jù)信息;若所述當(dāng)前設(shè)備角色為從機(jī)角色,則將所述i3c總線和所述高級(jí)外圍總線作為所述目標(biāo)總線,相應(yīng)的,所述待驗(yàn)證數(shù)據(jù)信息包括所述驗(yàn)證設(shè)備通過所述高級(jí)外圍總線獲取到的配置信息以及所述待驗(yàn)證i3c控制器在接收到所述驗(yàn)證設(shè)備發(fā)送的所述配置信息后通過所述i3c總線返回的數(shù)據(jù)信息;
5、對(duì)所述待驗(yàn)證數(shù)據(jù)信息進(jìn)行驗(yàn)證,以確定在與所述待驗(yàn)證傳輸類型對(duì)應(yīng)的傳輸過程中所述待驗(yàn)證i3c控制器是否存在異常。
6、可選的,所述確定待驗(yàn)證i3c控制器的當(dāng)前設(shè)備角色以及待驗(yàn)證傳輸類型,包括:
7、若所述待驗(yàn)證i3c控制器的當(dāng)前設(shè)備角色為主機(jī)角色,則所述待驗(yàn)證傳輸類型為單數(shù)據(jù)速率傳輸、通用指令代碼傳輸、高數(shù)據(jù)速率傳輸和帶內(nèi)中斷傳輸中的任意一種;
8、若所述當(dāng)前設(shè)備角色為從機(jī)角色,則所述待驗(yàn)證傳輸類型為單數(shù)據(jù)速率傳輸、通用指令代碼傳輸和高數(shù)據(jù)速率傳輸中的任意一種。
9、可選的,若所述待驗(yàn)證i3c控制器的當(dāng)前設(shè)備角色為主機(jī)角色,且所述待驗(yàn)證傳輸類型為通用指令代碼傳輸,則所述獲取所述傳輸過程中的待驗(yàn)證數(shù)據(jù)信息,包括:
10、當(dāng)監(jiān)測(cè)到在通用指令代碼傳輸?shù)倪^程中出現(xiàn)第一預(yù)設(shè)位數(shù)的數(shù)據(jù)為第一預(yù)設(shè)數(shù)據(jù),則通過所述i3c總線獲取所述待驗(yàn)證i3c控制器作為主機(jī)角色分配至所述驗(yàn)證設(shè)備的從機(jī)地址,以得到所述待驗(yàn)證數(shù)據(jù)信息,并將所述從機(jī)地址保存至預(yù)設(shè)地址寄存器,以便所述驗(yàn)證設(shè)備基于所述從機(jī)地址判斷是否接收到所述i3c總線傳輸?shù)臄?shù)據(jù)。
11、可選的,若所述待驗(yàn)證i3c控制器的當(dāng)前設(shè)備角色為主機(jī)角色,且所述待驗(yàn)證傳輸類型為帶內(nèi)中斷傳輸,則所述獲取所述傳輸過程中的待驗(yàn)證數(shù)據(jù)信息,包括:
12、獲取所述帶內(nèi)中斷傳輸對(duì)應(yīng)的傳輸過程中的待驗(yàn)證數(shù)據(jù)信息;其中,所述帶內(nèi)中斷傳輸為根據(jù)本地寄存器中的帶內(nèi)中斷配置信息主動(dòng)發(fā)起的傳輸;所述帶內(nèi)中斷配置信息包括與從機(jī)中斷請(qǐng)求傳輸、主控請(qǐng)求傳輸和熱加入機(jī)制分別對(duì)應(yīng)的配置信息;
13、其中,所述從機(jī)中斷請(qǐng)求傳輸包括:
14、通過所述i3c總線向所述待驗(yàn)證i3c控制器發(fā)送所述驗(yàn)證設(shè)備作為從機(jī)角色的從機(jī)地址,以便所述待驗(yàn)證i3c控制器在收到所述從機(jī)地址后反饋針對(duì)所述從機(jī)地址的確認(rèn)消息;
15、獲取所述待驗(yàn)證i3c控制器反饋的針對(duì)所述從機(jī)地址的確認(rèn)消息后,根據(jù)所述從機(jī)中斷請(qǐng)求傳輸對(duì)應(yīng)的數(shù)據(jù)傳輸命令、數(shù)據(jù)長(zhǎng)度確定預(yù)先配置的待發(fā)送數(shù)據(jù);
16、基于所述從機(jī)中斷請(qǐng)求傳輸對(duì)應(yīng)的第一總線條件通過所述i3c總線將所述待發(fā)送數(shù)據(jù)傳輸至所述待驗(yàn)證i3c控制器,并在所述待發(fā)送數(shù)據(jù)的傳輸過程中,通過預(yù)設(shè)標(biāo)志位產(chǎn)生規(guī)則將相應(yīng)產(chǎn)生的標(biāo)志位添加至所述待發(fā)送數(shù)據(jù),以將添加所述標(biāo)志位后的數(shù)據(jù)傳輸至所述待驗(yàn)證i3c控制器,并獲取所述待驗(yàn)證i3c控制器接收到相應(yīng)數(shù)據(jù)后反饋的確認(rèn)消息,得到所述帶內(nèi)中斷傳輸對(duì)應(yīng)的傳輸過程中的第一待驗(yàn)證數(shù)據(jù)信息,完成所述從機(jī)中斷請(qǐng)求傳輸;所述預(yù)設(shè)標(biāo)志位產(chǎn)生規(guī)則為在數(shù)據(jù)未傳輸完成時(shí),每傳輸?shù)诙A(yù)設(shè)位數(shù)的數(shù)據(jù)后添加第二預(yù)設(shè)數(shù)據(jù)作為下一位數(shù)據(jù),并在數(shù)據(jù)傳輸完成后,在最后一個(gè)所述第二預(yù)設(shè)位數(shù)的數(shù)據(jù)后添加第三預(yù)設(shè)數(shù)據(jù)作為所述待發(fā)送數(shù)據(jù)的最后一位數(shù)據(jù);
17、其中,所述主控請(qǐng)求傳輸包括:
18、通過所述i3c總線向所述待驗(yàn)證i3c控制器發(fā)送所述驗(yàn)證設(shè)備作為從機(jī)角色的從機(jī)地址,以便所述待驗(yàn)證i3c控制器在收到所述從機(jī)地址后反饋針對(duì)所述從機(jī)地址的確認(rèn)消息,得到所述帶內(nèi)中斷傳輸對(duì)應(yīng)的傳輸過程中的第二待驗(yàn)證數(shù)據(jù)信息,完成所述主控請(qǐng)求傳輸;
19、其中,所述熱加入機(jī)制包括:
20、通過所述i3c總線向所述待驗(yàn)證i3c控制器發(fā)送第四預(yù)設(shè)數(shù)據(jù),以便所述待驗(yàn)證i3c控制器在收到所述第四預(yù)設(shè)數(shù)據(jù)后反饋針對(duì)所述第四預(yù)設(shè)數(shù)據(jù)的確認(rèn)消息,得到所述帶內(nèi)中斷傳輸對(duì)應(yīng)的傳輸過程中的第三待驗(yàn)證數(shù)據(jù)信息,完成所述熱加入機(jī)制。
21、可選的,所述利用所述i3c總線和高級(jí)外圍總線中與所述待驗(yàn)證i3c控制器的當(dāng)前設(shè)備角色對(duì)應(yīng)的目標(biāo)總線進(jìn)行與所述待驗(yàn)證傳輸類型對(duì)應(yīng)的傳輸過程,包括:
22、獲取所述待驗(yàn)證i3c控制器通過所述i3c總線傳輸?shù)某跏紨?shù)據(jù)信息,并判斷所述初始數(shù)據(jù)信息的傳輸過程是否符合預(yù)設(shè)開始行為特征;所述預(yù)設(shè)開始行為特征為當(dāng)所述i3c總線的時(shí)鐘線為高電平時(shí),數(shù)據(jù)線由高電平變?yōu)榈碗娖?,然后所述時(shí)鐘線由高電平變?yōu)榈碗娖剑?/p>
23、若所述初始數(shù)據(jù)信息的傳輸過程不符合所述預(yù)設(shè)開始行為特征,則忽略所述初始數(shù)據(jù)信息,并重新獲取所述待驗(yàn)證i3c控制器通過所述i3c總線傳輸?shù)某跏紨?shù)據(jù)信息;
24、若所述初始數(shù)據(jù)信息的傳輸過程符合所述預(yù)設(shè)開始行為特征,則將所述初始數(shù)據(jù)信息確定為所述待驗(yàn)證數(shù)據(jù)信息。
25、可選的,若所述待驗(yàn)證i3c控制器的當(dāng)前設(shè)備角色為從機(jī)角色,則所述利用所述i3c總線和高級(jí)外圍總線中與所述待驗(yàn)證i3c控制器的當(dāng)前設(shè)備角色對(duì)應(yīng)的目標(biāo)總線進(jìn)行與所述待驗(yàn)證傳輸類型對(duì)應(yīng)的傳輸過程,并獲取所述傳輸過程中的待驗(yàn)證數(shù)據(jù)信息,包括:
26、通過所述高級(jí)外圍總線獲取針對(duì)若干傳輸類型的配置信息,并將所述配置信息保存至本地寄存器;所述配置信息包括與若干傳輸類型對(duì)應(yīng)的數(shù)據(jù)傳輸命令、數(shù)據(jù)長(zhǎng)度以及第二總線條件;其中,所述第二總線條件為根據(jù)所述i3c總線的停止標(biāo)志設(shè)置的用于控制數(shù)據(jù)傳輸?shù)臈l件;所述停止標(biāo)志為所述i3c總線的數(shù)據(jù)線低電平時(shí),時(shí)鐘線由低電平變?yōu)楦唠娖?,然后?shù)據(jù)線由低電平變?yōu)楦唠娖剑?/p>
27、根據(jù)與所述待驗(yàn)證傳輸類型對(duì)應(yīng)的數(shù)據(jù)傳輸命令、數(shù)據(jù)長(zhǎng)度對(duì)所述配置信息進(jìn)行處理,得到處理后信息,并將所述處理后信息確定為所述傳輸過程中的第一待驗(yàn)證數(shù)據(jù)信息;
28、基于與所述待驗(yàn)證傳輸類型對(duì)應(yīng)的第二總線條件,并通過i3c總線將所述處理后信息發(fā)送至所述待驗(yàn)證i3c控制器,以便所述待驗(yàn)證i3c控制器在接收到所述驗(yàn)證設(shè)備發(fā)送的所述處理后信息后通過所述i3c總線返回相應(yīng)的數(shù)據(jù)信息,得到所述傳輸過程中的第二待驗(yàn)證數(shù)據(jù)信息。
29、可選的,所述驗(yàn)證設(shè)備包括計(jì)數(shù)器和時(shí)序寄存器,所述時(shí)序寄存器包括預(yù)先配置的全部總線條件;所述全部總線條件包括所述驗(yàn)證設(shè)備作為主機(jī)角色對(duì)應(yīng)的空閑時(shí)間條件,所述驗(yàn)證設(shè)備作為從機(jī)角色對(duì)應(yīng)的可用時(shí)間條件和自由時(shí)間條件;
30、其中,所述計(jì)數(shù)器用于基于預(yù)設(shè)停止行為特征對(duì)所述i3c總線進(jìn)行計(jì)時(shí)得到當(dāng)前時(shí)間;相應(yīng)的,作為主機(jī)角色的所述驗(yàn)證設(shè)備在所述當(dāng)前時(shí)間符合所述空閑時(shí)間條件后發(fā)起所述待驗(yàn)證傳輸類型對(duì)應(yīng)的傳輸過程,或者,作為從機(jī)角色的所述驗(yàn)證設(shè)備在所述當(dāng)前時(shí)間符合所述可用時(shí)間條件或所述自由時(shí)間條件后發(fā)起所述待驗(yàn)證傳輸類型對(duì)應(yīng)的傳輸過程;
31、其中,所述預(yù)設(shè)停止行為特征為所述i3c總線的數(shù)據(jù)線為低電平時(shí),時(shí)鐘線由低電平變?yōu)楦唠娖?,然后?shù)據(jù)線由低電平變?yōu)楦唠娖健?/p>
32、第二方面,本技術(shù)提供了一種i3c控制器驗(yàn)證裝置,應(yīng)用于驗(yàn)證設(shè)備,包括:
33、角色確定模塊,用于確定待驗(yàn)證i3c控制器的當(dāng)前設(shè)備角色以及待驗(yàn)證傳輸類型;其中,所述驗(yàn)證設(shè)備與待驗(yàn)證i3c控制器互為主從設(shè)備,所述待驗(yàn)證i3c控制器通過i3c總線與所述驗(yàn)證設(shè)備連接;
34、信息獲取模塊,用于利用所述i3c總線和高級(jí)外圍總線中與所述待驗(yàn)證i3c控制器的當(dāng)前設(shè)備角色對(duì)應(yīng)的目標(biāo)總線進(jìn)行與所述待驗(yàn)證傳輸類型對(duì)應(yīng)的傳輸過程,并獲取所述傳輸過程中的待驗(yàn)證數(shù)據(jù)信息;其中,若所述當(dāng)前設(shè)備角色為主機(jī)角色,則將所述i3c總線作為所述目標(biāo)總線,相應(yīng)的,所述待驗(yàn)證數(shù)據(jù)信息包括所述待驗(yàn)證i3c控制器通過所述i3c總線向所述驗(yàn)證設(shè)備傳輸?shù)臄?shù)據(jù)信息;若所述當(dāng)前設(shè)備角色為從機(jī)角色,則將所述i3c總線和所述高級(jí)外圍總線作為所述目標(biāo)總線,相應(yīng)的,所述待驗(yàn)證數(shù)據(jù)信息包括所述驗(yàn)證設(shè)備通過所述高級(jí)外圍總線獲取到的配置信息以及所述待驗(yàn)證i3c控制器在接收到所述驗(yàn)證設(shè)備發(fā)送的所述配置信息后通過所述i3c總線返回的數(shù)據(jù)信息;
35、信息驗(yàn)證模塊,用于對(duì)所述待驗(yàn)證數(shù)據(jù)信息進(jìn)行驗(yàn)證,以確定在與所述待驗(yàn)證傳輸類型對(duì)應(yīng)的傳輸過程中所述待驗(yàn)證i3c控制器是否存在異常。
36、第三方面,本技術(shù)提供了一種電子設(shè)備,包括:
37、存儲(chǔ)器,用于保存計(jì)算機(jī)程序;
38、處理器,用于執(zhí)行所述計(jì)算機(jī)程序以實(shí)現(xiàn)如上述的i3c控制器驗(yàn)證方法。
39、第四方面,本技術(shù)提供了一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),用于保存計(jì)算機(jī)程序,所述計(jì)算機(jī)程序被處理器執(zhí)行時(shí)實(shí)現(xiàn)如上述的i3c控制器驗(yàn)證方法。
40、由上述技術(shù)方案可以看出,本技術(shù)確定待驗(yàn)證i3c控制器的當(dāng)前設(shè)備角色以及待驗(yàn)證傳輸類型;其中,所述驗(yàn)證設(shè)備與待驗(yàn)證i3c控制器互為主從設(shè)備,所述待驗(yàn)證i3c控制器通過i3c總線與所述驗(yàn)證設(shè)備連接;利用所述i3c總線和高級(jí)外圍總線中與所述待驗(yàn)證i3c控制器的當(dāng)前設(shè)備角色對(duì)應(yīng)的目標(biāo)總線進(jìn)行與所述待驗(yàn)證傳輸類型對(duì)應(yīng)的傳輸過程,并獲取所述傳輸過程中的待驗(yàn)證數(shù)據(jù)信息;其中,若所述當(dāng)前設(shè)備角色為主機(jī)角色,則將所述i3c總線作為所述目標(biāo)總線,相應(yīng)的,所述待驗(yàn)證數(shù)據(jù)信息包括所述待驗(yàn)證i3c控制器通過所述i3c總線向所述驗(yàn)證設(shè)備傳輸?shù)臄?shù)據(jù)信息;若所述當(dāng)前設(shè)備角色為從機(jī)角色,則將所述i3c總線和所述高級(jí)外圍總線作為所述目標(biāo)總線,相應(yīng)的,所述待驗(yàn)證數(shù)據(jù)信息包括所述驗(yàn)證設(shè)備通過所述高級(jí)外圍總線獲取到的配置信息以及所述待驗(yàn)證i3c控制器在接收到所述驗(yàn)證設(shè)備發(fā)送的所述配置信息后通過所述i3c總線返回的數(shù)據(jù)信息;然后對(duì)所述待驗(yàn)證數(shù)據(jù)信息進(jìn)行驗(yàn)證,以確定在與所述待驗(yàn)證傳輸類型對(duì)應(yīng)的傳輸過程中所述待驗(yàn)證i3c控制器是否存在異常。這樣一來,本技術(shù)中,驗(yàn)證設(shè)備可以自由充當(dāng)i3c總線驗(yàn)證過程的主機(jī)角色或從機(jī)角色,能根據(jù)待驗(yàn)證傳輸類型進(jìn)行不同的傳輸驗(yàn)證,可滿足基本的i3c驗(yàn)證需求,可以提高驗(yàn)證完整性,提高i3c驗(yàn)證效果。