本技術(shù)涉及嵌入式系統(tǒng),更具體地,涉及一種外圍器件識別方法及裝置。
背景技術(shù):
1、外圍器件互聯(lián)總線(peripheral?component?interconnect?express,pcie)是一種高速串行計算機(jī)擴(kuò)展總線標(biāo)準(zhǔn),用于實(shí)現(xiàn)計算機(jī)設(shè)備和外部設(shè)備的連接,以實(shí)現(xiàn)多種功能,這些外部設(shè)備被稱為pcie設(shè)備,又稱外圍設(shè)備。一般來說,pcie協(xié)議使用32比特位(bits)pcie標(biāo)識(identify,id)來標(biāo)識系統(tǒng)中的外圍設(shè)備,32比特位包括:16bits域(domain),8bits總線(bus),5bits設(shè)備(device),3bits功能(function),對應(yīng)于8位總線標(biāo)識(bus?id)、5位設(shè)備標(biāo)識(device?id)和3位功能標(biāo)識(function?id),簡稱為bdf(busdevice?function)。該pcie標(biāo)識又可以稱為標(biāo)識號。
2、計算機(jī)設(shè)備通過總線連接多個外圍器件時,設(shè)備通過內(nèi)部的寄存器對外圍器件的標(biāo)識號進(jìn)行識別,由于同一類別的外圍設(shè)備具有相同的標(biāo)識號,通過標(biāo)識號不能對相同類別的不同器件進(jìn)行識別。為了區(qū)分不同的外圍器件,現(xiàn)有的計算機(jī)設(shè)備區(qū)分不同的外圍器件時,需要借助通用輸入輸出端口(general?purpose?input?output,gpio)對器件進(jìn)行連接,以檢測器件工作過程中的電壓值,對相同類別的不同外圍器件進(jìn)行區(qū)分。然而該過程中存在著對硬件接口資源的占用,以及識別不準(zhǔn)確導(dǎo)致設(shè)備兼容性差的問題。
3、基于此,如何提供一種節(jié)約硬件資源且識別準(zhǔn)確的方法,成為了亟待解決的問題。
技術(shù)實(shí)現(xiàn)思路
1、本技術(shù)提供一種外圍器件識別方法,計算機(jī)設(shè)備能夠基于標(biāo)識號和所獲取的平均功耗值對外圍器件進(jìn)行區(qū)分識別,從而提升外圍器件連接的效率和準(zhǔn)確率,有利于提高識別的靈活性和用戶體驗(yàn)。
2、第一方面,提供了一種外圍器件識別方法,用于識別連接于計算機(jī)設(shè)備的外圍器件,識別方法包括:
3、獲取外圍器件的標(biāo)識號;
4、建立周期性時鐘;
5、基于周期性時鐘獲取外圍器件的平均功耗值;
6、根據(jù)平均功耗值與第一數(shù)據(jù)庫匹配;
7、匹配失敗,根據(jù)第一預(yù)設(shè)參數(shù)運(yùn)行外圍器件;
8、運(yùn)行失敗,外圍器件連接失??;
9、匹配成功或運(yùn)行成功,外圍器件連接成功,將第一連接數(shù)據(jù)儲存至第二數(shù)據(jù)庫;
10、其中,第一數(shù)據(jù)庫用于儲存預(yù)設(shè)的外圍器件的平均功耗值,第一連接數(shù)據(jù)包括連接成功的外圍器件的平均功耗值。
11、通過功耗值的測量與計算,計算機(jī)設(shè)備可以對外圍器件進(jìn)行識別和區(qū)分,能夠使計算機(jī)設(shè)備快速且準(zhǔn)確地連接外圍器件,提升對外圍器件識別的準(zhǔn)確性,并且有助于節(jié)約硬件資源。
12、結(jié)合第一方面,在第一方面的某些實(shí)現(xiàn)方式中,基于周期性時鐘獲取外圍器件的平均功耗值包括:基于周期性時鐘的時鐘信號,對外圍器件進(jìn)行周期性的開啟和關(guān)閉操作,獲取外圍器件的功耗值,計算外圍器件在單位時間內(nèi)的平均功耗值。
13、通過結(jié)合周期性時鐘對外圍器件的控制,計算機(jī)設(shè)備能夠獲取器件的工作數(shù)據(jù),并計算得到平均功耗值,從而對器件的數(shù)據(jù)有準(zhǔn)確的判斷,并且能夠有效區(qū)分不同器件之間的差異,從而提升器件識別的準(zhǔn)確率。
14、結(jié)合第一方面,在第一方面的某些實(shí)現(xiàn)方式中,第一預(yù)設(shè)參數(shù)包括多個外圍器件的平均功耗值,第一預(yù)設(shè)參數(shù)用于運(yùn)行匹配失敗的外圍器件。
15、通過預(yù)設(shè)參數(shù)的作用和對匹配失敗外圍器件的運(yùn)行,能夠使部分匹配失敗的外圍器件仍然可以與計算機(jī)設(shè)備連接,從而降低了連接失敗率,提高了識別的效率和性能。
16、結(jié)合第一方面,在第一方面的某些實(shí)現(xiàn)方式中,第二數(shù)據(jù)庫用于在外圍器件成功連接后,儲存當(dāng)前外圍器件的標(biāo)識號和平均功耗值。
17、結(jié)合第一方面,在第一方面的某些實(shí)現(xiàn)方式中,第二數(shù)據(jù)庫還用于與標(biāo)識號和/或平均功耗值進(jìn)行匹配。
18、可選地,當(dāng)至少一個外圍器件成功連接至計算機(jī)設(shè)備時,設(shè)備中構(gòu)建第二數(shù)據(jù)庫,并將當(dāng)前的外圍器件的數(shù)據(jù)儲存到第二數(shù)據(jù)庫中,儲存的數(shù)據(jù)包括外圍器件的標(biāo)識號和平均功耗值,還可以包括器件和/或設(shè)備的狀態(tài)等。在該計算機(jī)設(shè)備中,第二數(shù)據(jù)庫構(gòu)建完成后,外圍器件在進(jìn)行連接時除了與第一數(shù)據(jù)庫進(jìn)行匹配,還可以參考第二數(shù)據(jù)庫中的數(shù)據(jù),如果第二數(shù)據(jù)庫中的數(shù)據(jù)能夠?qū)崿F(xiàn)匹配,外圍器件也能夠?qū)崿F(xiàn)與計算機(jī)設(shè)備的連接,并且在連接完成后可以對第二數(shù)據(jù)庫中的數(shù)據(jù)進(jìn)行更新,也即第二數(shù)據(jù)庫是可變的。
19、通過第二數(shù)據(jù)庫的作用,能夠使當(dāng)前器件在已連接過的情況下進(jìn)行快速匹配和連接,從而提升外圍器件識別的效率,并且使其更適應(yīng)于用戶的使用習(xí)慣,有助于提高用戶的使用體驗(yàn)。
20、結(jié)合第一方面,在第一方面的某些實(shí)現(xiàn)方式中,周期性時鐘的周期至少為50hz。
21、結(jié)合第一方面,在第一方面的某些實(shí)現(xiàn)方式中,識別方法還包括:
22、獲取外圍器件的寄存器信息;
23、根據(jù)外圍器件的標(biāo)識號與第三數(shù)據(jù)庫進(jìn)行匹配;
24、匹配失敗,根據(jù)第二預(yù)設(shè)參數(shù)激活外圍器件;
25、匹配成功或者激活成功,外圍器件連接成功,將第二連接數(shù)據(jù)儲存至第二數(shù)據(jù)庫,并初始化外圍器件;
26、激活失敗,外圍器件連接失??;
27、其中,第三數(shù)據(jù)庫用于儲存預(yù)設(shè)的外圍器件的標(biāo)識號,第二連接數(shù)據(jù)包括連接成功的外圍器件的標(biāo)識號。
28、通過本技術(shù)實(shí)施方式,計算機(jī)設(shè)備能夠經(jīng)過總線獲取外圍器件的寄存器信息,并根據(jù)預(yù)設(shè)的信息識別該外圍器件,能夠快速基于外圍器件的標(biāo)識號對同類別的器件進(jìn)行識別,提升識別的效率和性能,并且提升了連接成功率。
29、結(jié)合第一方面,在第一方面的某些實(shí)現(xiàn)方式中,寄存器信息包括標(biāo)識號、外圍器件的工作狀態(tài)、外圍器件的補(bǔ)償參數(shù)。
30、結(jié)合第一方面,在第一方面的某些實(shí)現(xiàn)方式中,第二預(yù)設(shè)參數(shù)包括多個外圍器件的標(biāo)識號,第二預(yù)設(shè)參數(shù)用于激活匹配失敗的外圍器件。
31、通過使用第二預(yù)設(shè)參數(shù)對匹配失敗的外圍器件進(jìn)行二次嘗試連接,能夠使部分外圍器件可以連接于計算機(jī)設(shè)備,從而提高了連接成功率,有利于提升用戶器件連接的效率和體驗(yàn)感。
32、結(jié)合第一方面,在第一方面的某些實(shí)現(xiàn)方式中,初始化包括電源管理、配置時鐘、配置外圍器件的寄存器、配置外圍器件的通信接口、測試外圍器件的性能和/或功能中的至少一種。
33、第二方面,提供了一種芯片,包括至少一個處理核,處理核用于執(zhí)行如第一方面中任一實(shí)現(xiàn)方式的識別方法。
34、可選地,該芯片設(shè)置有芯片系統(tǒng),芯片系統(tǒng)可以用于芯片中,該芯片系統(tǒng)包括至少一個處理器和至少一個接口電路,用于相互配合以執(zhí)行指令。
35、第三方面,提供了一種計算機(jī)系統(tǒng),包括:如第二方面中的芯片。
36、第四方面,提供了一種計算機(jī)程序產(chǎn)品,計算機(jī)程序產(chǎn)品包括計算機(jī)程序代碼,計算機(jī)程序代碼用于在計算機(jī)系統(tǒng)上運(yùn)行,并執(zhí)行如第一方面中任一實(shí)現(xiàn)方式的識別方法。
37、第五方面,提供了一種計算機(jī)可讀存儲介質(zhì),包括計算機(jī)程序,所述計算機(jī)程序用于在計算機(jī)系統(tǒng)上運(yùn)行,并使所述計算機(jī)系統(tǒng)中的處理模塊執(zhí)行如第一方面中任一實(shí)現(xiàn)方式所述的識別方法。