欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

處理數(shù)據(jù)沖突的方法及系統(tǒng)的制作方法

文檔序號:6490446閱讀:336來源:國知局
處理數(shù)據(jù)沖突的方法及系統(tǒng)的制作方法
【專利摘要】本發(fā)明實施例公開了一種處理數(shù)據(jù)沖突的方法及系統(tǒng),涉及集成電路信號接口【技術(shù)領(lǐng)域】,所述方法包括:通過電源管理總線PMBus向從設(shè)備發(fā)送PMBus命令,以進行電源管理;當(dāng)所述PMBus命令發(fā)送失敗時,判斷所述PMBus命令發(fā)送失敗的次數(shù)是否大于等于預(yù)設(shè)值,所述預(yù)設(shè)值在系統(tǒng)初始化時預(yù)先配置;若所述PMBus命令發(fā)送失敗的次數(shù)小于所述預(yù)設(shè)值,則開始計時;當(dāng)計時時間長度達到重發(fā)時間時,重新發(fā)送所述PMBus命令。本發(fā)明適用于多個主設(shè)備Master通過電源管理總線PMBus發(fā)送PMBus命令。
【專利說明】處理數(shù)據(jù)沖突的方法及系統(tǒng)
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及集成電路信號接口【技術(shù)領(lǐng)域】,特別涉及一種處理數(shù)據(jù)沖突的方法及系統(tǒng)。
【背景技術(shù)】
[0002]隨著半導(dǎo)體行業(yè)的快速發(fā)展,人們發(fā)現(xiàn)對電源路數(shù)和功率需求是越來越多,原來一個系統(tǒng)可能3?4路電源就可以了,現(xiàn)在可能有10?20多路電源,而這10?20多路的電源的上下電的時序也不盡相同,功率大小也不一樣,因此需要進行電源管理。
[0003]PMBus (Power Management Bus,電源管理總線)是一種開放標(biāo)準(zhǔn)的數(shù)字電源管理協(xié)議,可通過定義傳輸和物理接口以及命令語言來促進與電源轉(zhuǎn)換器或其他設(shè)備的通信,該協(xié)議是由一群認(rèn)為由于沒有合適的標(biāo)準(zhǔn)而抑制了全數(shù)字電源管理解決方案的發(fā)展的電源和半導(dǎo)體生產(chǎn)商共同建立的,目前,這個協(xié)議正在迅速地獲得業(yè)界的認(rèn)可。
[0004]PMBus作為電源芯片的管理接口,在目前的集成電路系統(tǒng)中PMBus的應(yīng)用越來越廣泛。以多個Master (主設(shè)備)控制同一個Slave (從設(shè)備)中電源芯片的多路輸出場景為例:PMBus包括一條數(shù)據(jù)總線和一條時鐘總線,每一個Master都與數(shù)據(jù)總線和時鐘總線相連接,通過數(shù)據(jù)總線和時鐘總線向電源芯片發(fā)送PMBus命令,進而對電源芯片進行控制,使電源芯片輸出相應(yīng)的電壓或?qū)崿F(xiàn)其他操作。由于PMBus總線為I2C (Inter 一 IntegratedCircuit,內(nèi)部集成電路)串口總線,當(dāng)存在多個Master同時運行時,會發(fā)生數(shù)據(jù)沖突。例如,存在兩個主設(shè)備MasterO和Masterl同時運行,當(dāng)二者檢測到總線空閑時,可能會同時向電源芯片中發(fā)送數(shù)據(jù),此時PMBus會發(fā)起仲裁,判斷MasterO和Masterl 二者中誰有資格控制總線進行數(shù)據(jù)傳輸,仲裁失敗的那一個Master的數(shù)據(jù)將會被丟棄。
[0005]針對上述問題,現(xiàn)有技術(shù)中會丟棄仲裁失敗的那一方的此次操作,并通過硬件重新發(fā)送數(shù)據(jù);或者上報告警,然后通過軟件下發(fā)重新發(fā)送數(shù)據(jù)的命令進而重新發(fā)送數(shù)據(jù)。
[0006]現(xiàn)有技術(shù)中至少存在如下問題:當(dāng)多個Master發(fā)生數(shù)據(jù)沖突時,如果通過硬件或軟件直接重新發(fā)送數(shù)據(jù),那么重新發(fā)送的數(shù)據(jù)仍然可能會不斷地發(fā)生沖突,從而導(dǎo)致系統(tǒng)無法正常運行,嚴(yán)重影響系統(tǒng)的可靠性。

【發(fā)明內(nèi)容】

[0007]提供一種處理數(shù)據(jù)沖突的方法及系統(tǒng),能夠解決多Master的場景下電源管理總線PMBus發(fā)生數(shù)據(jù)沖突的問題,提高系統(tǒng)的可靠性。
[0008]第一方面,提供一種處理數(shù)據(jù)沖突的方法,包括:
[0009]通過電源管理總線PMBus向從設(shè)備發(fā)送PMBus命令,以進行電源管理;
[0010]當(dāng)所述PMBus命令發(fā)送失敗時,判斷所述PMBus命令發(fā)送失敗的次數(shù)是否大于等于預(yù)設(shè)值,所述預(yù)設(shè)值在系統(tǒng)初始化時預(yù)先配置;
[0011]若所述PMBus命令發(fā)送失敗的次數(shù)小于所述預(yù)設(shè)值,則開始計時;
[0012]當(dāng)計時時間長度達到重發(fā)時間時,重新發(fā)送所述PMBus命令。[0013]在第一種可能的實現(xiàn)方式中,所述重發(fā)時間大于主設(shè)備Master發(fā)送一條最短PMBus命令所需的時間,且小于等于系統(tǒng)內(nèi)所有Master發(fā)出一條最長PMBus命令所需的時間之和。
[0014]若所述PMBus命令發(fā)送失敗的次數(shù)大于等于所述預(yù)設(shè)值,指示所述從設(shè)備上報告
S I R ,
[0015]根據(jù)從所述從設(shè)備獲取的所述告警信息,中斷發(fā)送所述PMBus命令給所述從設(shè)備的流程。
[0016]當(dāng)所述PMBus命令發(fā)送失敗的次數(shù)小于所述預(yù)設(shè)值時,在所述開始計時之前,還包括:向所述從設(shè)備發(fā)送清除所述從設(shè)備中的告警信息的命令。
[0017]結(jié)合第一方面或第一方面的第一種可能的實現(xiàn)方式,在第二種可能的實現(xiàn)方式中,將所述重發(fā)時間配置為固定時間長度或隨機時間長度。
[0018]結(jié)合第一方面或第一方面的第二種可能的實現(xiàn)方式,在第三種可能的實現(xiàn)方式中,所述將所述重發(fā)時間配置為固定時間長度包括:在所述通過電源管理總線PMBus向從設(shè)備發(fā)送PMBus命令之前,將Master的重發(fā)時間配置為所述固定時間長度,其中,系統(tǒng)內(nèi)不同的Master配置的所述固定時間長度均不相同。
[0019]可選的,所述將所述重發(fā)時間配置為隨機時間長度包括:
[0020]當(dāng)所述PMBus命令發(fā)送失敗的次數(shù)小于所述預(yù)設(shè)值時,在所述開始計時之前,為發(fā)送所述PMBus命令失敗的Master配置所述隨機時間長度。
[0021]第二方面,提供一種處理數(shù)據(jù)沖突的系統(tǒng),主設(shè)備Master、從設(shè)備和電源管理總線PMBus,所述主設(shè)備通過所述PMBus訪問所述從設(shè)備,以進行電源管理;所述主設(shè)備包括:自適應(yīng)電壓調(diào)節(jié)AVS模塊,所述AVS模塊包括:
[0022]命令發(fā)送單元,用于通過所述PMBus向所述從設(shè)備發(fā)送PMBus命令;
[0023]判斷單元,用于當(dāng)所述PMBus命令發(fā)送失敗時,判斷所述PMBus命令發(fā)送失敗的次數(shù)是否大于等于預(yù)設(shè)值,所述預(yù)設(shè)值在系統(tǒng)初始化時預(yù)先配置;
[0024]計時單元,用于當(dāng)所述PMBus命令發(fā)送失敗的次數(shù)小于所述預(yù)設(shè)值時,開始計時;
[0025]所述命令發(fā)送單元還用于當(dāng)所述計時單元的計時時間長度達到重發(fā)時間時,重新發(fā)送所述PMBus命令。
[0026]在第一種可能的實現(xiàn)方式中,所述重發(fā)時間大于Master發(fā)送一條最短PMBus命令所需的時間,且小于等于系統(tǒng)內(nèi)所有Master發(fā)出一條最長PMBus命令所需的時間之和。
[0027]進一步的,所述AVS模塊還包括:告警上報單元;
[0028]所述告警上報單元用于當(dāng)所述PMBus命令發(fā)送失敗的次數(shù)大于等于所述預(yù)設(shè)值時,指示所述從設(shè)備上報告警信息;
[0029]所述主設(shè)備還包括:處理模塊;
[0030]所述處理模塊用于根據(jù)從所述從設(shè)備獲取的所述告警信息,中斷發(fā)送所述PMBus命令給所述從設(shè)備的流程。
[0031]進一步的,所述命令發(fā)送單元還用于:向所述從設(shè)備發(fā)送清除所述從設(shè)備中的告警信息的命令。
[0032]結(jié)合第二方面或第二方面的第一種可能的實現(xiàn)方式,在第二種可能的實現(xiàn)方式中,所述AVS模塊還包括:[0033]時間配置單元,用于將所述重發(fā)時間配置為固定時間長度或隨機時間長度。
[0034]結(jié)合第二方面或第二方面的第二種可能的實現(xiàn)方式,在第三種可能的實現(xiàn)方式中,所述時間配置單元包括:
[0035]第一時間配置子單元,用于在所述通過所述PMBus向所述從設(shè)備發(fā)送PMBus命令之前,將Master的重發(fā)時間配置為所述固定時間長度,其中,系統(tǒng)內(nèi)不同的Master配置的所述固定時間長度均不相同。
[0036]可選的,所述時間配置單元還包括:
[0037]第二時間配置子單元,當(dāng)所述PMBus命令發(fā)送失敗的次數(shù)小于所述預(yù)設(shè)值時,在所述開始計時之前,為發(fā)送所述PMBus命令失敗的Master配置所述隨機時間長度。
[0038]與現(xiàn)有技術(shù)相比,本發(fā)明實施例通過電源管理總線PMBus向從設(shè)備發(fā)送PMBus命令;當(dāng)所述PMBus命令發(fā)送失敗時,判斷所述PMBus命令發(fā)送失敗的次數(shù)是否大于等于預(yù)設(shè)值,所述預(yù)設(shè)值在系統(tǒng)初始化時預(yù)先配置;當(dāng)所述PMBus命令發(fā)送失敗的次數(shù)大于等于所述預(yù)設(shè)值時,根據(jù)從所述從設(shè)備獲取的告警信息結(jié)束流程;當(dāng)所述PMBus命令發(fā)送失敗的次數(shù)小于所述預(yù)設(shè)值時,開始計時;當(dāng)計時時間長度達到重發(fā)時間時,重新發(fā)送所述PMBus命令。上述流程通過為系統(tǒng)內(nèi)發(fā)生數(shù)據(jù)沖突的主設(shè)備Master配置一定時間長度的PMBus命令重發(fā)緩沖時間,降低了已經(jīng)發(fā)生數(shù)據(jù)沖突的多個Master重發(fā)PMBus命令時再次發(fā)生同樣的數(shù)據(jù)沖突的概率,極大地提高了系統(tǒng)的可靠性,保證系統(tǒng)的正常運行。
【專利附圖】

【附圖說明】
[0039]為了更清楚地說明本發(fā)明實施例中的技術(shù)方案,下面將對實施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其它的附圖。
[0040]圖1為本發(fā)明實施例一提供的方法流程圖;
[0041]圖2為本發(fā)明實施例二提供的方法流程圖;
[0042]圖3為本發(fā)明實施例二提供的狀態(tài)機實現(xiàn)流程圖;
[0043]圖4、圖5為本發(fā)明實施例三提供的系統(tǒng)結(jié)構(gòu)示意圖;
[0044]圖6為本發(fā)明實施例四提供的裝置結(jié)構(gòu)示意圖。
【具體實施方式】
[0045]下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其它實施例,都屬于本發(fā)明保護的范圍。
[0046]為使本發(fā)明技術(shù)方案的優(yōu)點更加清楚,下面結(jié)合附圖和實施例對本發(fā)明作詳細說明。
[0047]實施例一
[0048]本實施例提供一種處理數(shù)據(jù)沖突的方法,如圖1所示,所述方法包括:
[0049]101、主設(shè)備Master通過電源管理總線PMBus向從設(shè)備發(fā)送PMBus命令,以進行電源管理。
[0050]需要說明的是,電源管理總線PMBus為規(guī)定的控制電源變換和管理器件數(shù)字通信協(xié)議。電源管理中,采用PMBus作為從設(shè)備的電源芯片的管理接口,主設(shè)備根據(jù)標(biāo)準(zhǔn)命令集可以配置、監(jiān)控和操作從設(shè)備的電源變換器,具體通過PMBus命令,可以設(shè)置電源的工作參量、監(jiān)控電源的工作和根據(jù)失效和報警執(zhí)行正確的測量等。其中,所述PMBus命令可以為配置命令或控制命令,例如,配置命令具體可以包括:配置輸出電壓設(shè)定值的調(diào)壓命令、工作頻率配置命令以及相位延遲配置命令等,控制命令具體可以包括:控制從設(shè)備進行使能/斷開的命令、使從設(shè)備輸出電壓的命令、控制調(diào)整從設(shè)備工作頻率以及容限的命令等。
[0051]進一步的,從設(shè)備在接收到PMBus命令后可以根據(jù)具體的命令配置相應(yīng)的參數(shù)或調(diào)整工作狀態(tài)。
[0052]102、當(dāng)所述PMBus命令發(fā)送失敗時,Master判斷所述PMBus命令發(fā)送失敗的次數(shù)
是否大于等于預(yù)設(shè)值。
[0053]其中,所述預(yù)設(shè)值是在系統(tǒng)初始化時所預(yù)先配置的。
[0054]需要說明的是,當(dāng)系統(tǒng)中存在多個主設(shè)備通過PMBus對從設(shè)備進行控制時,若兩個或兩個以上的Master同時通過I2C總線向從設(shè)備發(fā)送調(diào)壓命令或者其他控制命令時,I2C總線會對這些Master進行仲裁,僅僅允許一個Master對總線進行控制,其他沒有得到總線允許的Master的數(shù)據(jù)將會被丟棄,命令發(fā)送失敗,需要進行重新發(fā)送。
[0055]103、若所述PMBus命令發(fā)送失敗的次數(shù)小于所述預(yù)設(shè)值,則Master開始計時。
[0056]104、當(dāng)計時時間長度達到重發(fā)時間時,Master重新發(fā)送所述PMBus命令。
[0057]其中,所述重發(fā)時間大于Master發(fā)送一條最短PMBus命令所需的時間,且小于等于系統(tǒng)內(nèi)所有Master發(fā)出一條最長PMBus命令所需的時間之和。
[0058]進一步的,若所述PMBus命令發(fā)送失敗的次數(shù)大于等于所述預(yù)設(shè)值,則指示所述從設(shè)備上報告警信息;
[0059]根據(jù)從所述從設(shè)備獲取的所述告警信息,中斷發(fā)送所述PMBus命令給所述從設(shè)備的流程。
[0060]進一步的,將所述重發(fā)時間配置為固定時間長度或隨機時間長度。
[0061]可選的,所述將所述重發(fā)時間配置為固定時間長度包括:
[0062]在所述通過電源管理總線PMBus向從設(shè)備發(fā)送PMBus命令之前,將Master的重發(fā)時間配置為所述固定時間長度,其中,系統(tǒng)內(nèi)不同的Master配置的所述固定時間長度均不相同。
[0063]可選的,所述將所述重發(fā)時間配置為隨機時間長度包括:
[0064]當(dāng)所述PMBus命令發(fā)送失敗的次數(shù)小于所述預(yù)設(shè)值時,在所述開始計時之前,為發(fā)送所述PMBus命令失敗的Master配置所述隨機時間長度。
[0065]可選的,當(dāng)所述PMBus命令發(fā)送失敗的次數(shù)小于所述預(yù)設(shè)值時,在所述開始計時之前,還包括:
[0066]向所述從設(shè)備發(fā)送清除所述從設(shè)備中的告警信息的命令。
[0067]與現(xiàn)有技術(shù)相比,本發(fā)明實施例通過電源管理總線PMBus向從設(shè)備發(fā)送PMBus命令;當(dāng)所述PMBus命令發(fā)送失敗時,判斷所述PMBus命令發(fā)送失敗的次數(shù)是否大于等于預(yù)設(shè)值,所述預(yù)設(shè)值在系統(tǒng)初始化時預(yù)先配置;當(dāng)所述PMBus命令發(fā)送失敗的次數(shù)大于等于所述預(yù)設(shè)值時,根據(jù)從所述從設(shè)備獲取的告警信息結(jié)束流程;當(dāng)所述PMBus命令發(fā)送失敗的次數(shù)小于所述預(yù)設(shè)值時,開始計時;當(dāng)計時時間長度達到重發(fā)時間時,重新發(fā)送所述PMBus命令。上述流程通過為系統(tǒng)內(nèi)發(fā)生數(shù)據(jù)沖突的主設(shè)備Master配置一定時間長度的PMBus命令重發(fā)緩沖時間,降低了已經(jīng)發(fā)生數(shù)據(jù)沖突的多個Master重發(fā)PMBus命令時再次發(fā)生同樣的數(shù)據(jù)沖突的概率,極大地提高了系統(tǒng)的可靠性,保證系統(tǒng)的正常運行。
[0068]實施例二
[0069]本實施例提供一種處理數(shù)據(jù)沖突的方法,從設(shè)備以電源芯片為例,如圖2所示,所述方法包括:
[0070]201、主設(shè)備Master向電源芯片發(fā)送電源管理總線PMBus命令。
[0071]例如,所述PMBus命令可以為調(diào)壓命令或者其他控制命令,所述電源芯片為從設(shè)備,Master通過一條數(shù)據(jù)總線(可以稱作pmbus_data)和一條時鐘總線(可以稱作pmbus_elk)向電源芯片發(fā)送該PMBus命令,電源芯片在接收到調(diào)壓命令后可以相應(yīng)調(diào)整向Master輸出的電壓,或者根據(jù)其他控制命令執(zhí)行相應(yīng)的操作,例如上電操作等。
[0072]可選的,一般情形下,系統(tǒng)中會存在多個Master對電源芯片進行控制,當(dāng)兩個或兩個以上的Master同時向電源芯片發(fā)送命令時,PMBus總線會依據(jù)某種機制對同時發(fā)送命令的Master進行仲裁,判定它們之中哪一個優(yōu)先級最高,優(yōu)先級高的才被允許控制總線發(fā)送PMBus命令,優(yōu)先級低的Master發(fā)送命令會失敗,因此Master要執(zhí)行步驟202進行判定,以決定下一步的執(zhí)行流程。
[0073]202、判斷該PMBus命令是否出錯,若該PMBus命令出錯,執(zhí)行步驟203 ;若該PMBus命令沒有出錯,在發(fā)送該PMBus命令后結(jié)束流程。
[0074]其中,Master每向電源芯片發(fā)送一個字節(jié)的數(shù)據(jù)都會得到電源芯片的響應(yīng),當(dāng)電源芯片不能響應(yīng)Master時,會使數(shù)據(jù)總線保持低電平,從而使Master能夠得知該數(shù)據(jù)發(fā)送出錯,進而執(zhí)行步驟203。
[0075]可選的,當(dāng)PMBus命令發(fā)送成功后,可以直接結(jié)束流程。
[0076]203、判斷該PMBus命令的出錯次數(shù)是否小于系統(tǒng)配置的預(yù)設(shè)值,若該PMBus命令的出錯次數(shù)小于系統(tǒng)配置的預(yù)設(shè)值,執(zhí)行步驟204 ;若該PMBus命令的出錯次數(shù)大于等于系統(tǒng)配置的預(yù)設(shè)值,執(zhí)行步驟206。
[0077]204, Master向電源芯片發(fā)送清除電源芯片中產(chǎn)生的告警信息的命令。
[0078]可選的,當(dāng)Master發(fā)送的PMBus命令的出錯次數(shù)小于預(yù)設(shè)值時,雖然此時的出錯可能是一些可以解決的問題造成的,不用上報CPU處理,但此時電源芯片仍會生成關(guān)于此次錯誤的告警信息,由于本發(fā)明的處理流程改進,這些告警信息成為了垃圾信息,需要通知電源芯片進行清除,釋放內(nèi)存。
[0079]205、Master為該PMBus命令啟動計時,等待計時達到重發(fā)時間,再次執(zhí)行步驟201。
[0080]例如,當(dāng)多個Master同時發(fā)送PMBus命令導(dǎo)致數(shù)據(jù)沖突,并需要重發(fā)PMBus命令時,為了避免這些Master重發(fā)PMBus命令時再次導(dǎo)致數(shù)據(jù)沖突,為Master設(shè)定不同的重發(fā)等待時間,即重發(fā)時間,以使得這些Master將發(fā)送PMBus命令的時間錯開,避免數(shù)據(jù)沖突。[0081 ] 進一步的,為了使重發(fā)時間能夠有效錯開Master之間發(fā)送命令的時間,為重發(fā)時間定義一個時間長度下限min_length, min_length為系統(tǒng)中Master發(fā)送一條最短PMBus命令所需的時間長度。
[0082]需要說明的是,針對定義的min_length存在一種情形:假設(shè)有MasterO和Masterl兩個主設(shè)備,MasterO正在發(fā)送PMBus命令,而Masterl以稍大于min_length的時間長度為重發(fā)時間準(zhǔn)備重發(fā)PMBus命令,其中,MasterO發(fā)送此條PMBus命令所需的時間遠大于min_length,而此時Masterl在MasterO開始發(fā)送PMBus命令的同時開始計時重發(fā)自身的PMBus命令,那么在Masterl的計時到達min_length后,Masterl會進行PMBus命令重發(fā),但MasterO還未完成自身PMBus命令的發(fā)送,二者會發(fā)生數(shù)據(jù)沖突。由于min_length的設(shè)定原則限制,此種情形是不可避免的,但是當(dāng)Masterl進行第二次重發(fā)時,上述問題不會再次發(fā)生,所以定義重發(fā)時間為min_length是完全可行的。同時為了兼顧系統(tǒng)的總線效率,不能將重發(fā)時間定義的太長,要小于等于上限max_length, max_length為系統(tǒng)中所有Master發(fā)出一條最長PMBus命令所需的時間長度之和。
[0083]可選的,所述重發(fā)時間可以為每一個Master均進行設(shè)置,例如,在步驟201執(zhí)行之前就為系統(tǒng)中每一個Master設(shè)置一個不相同的固定的重發(fā)時間,保證兩個或兩個以上Master進行重發(fā)時不會再次發(fā)生數(shù)據(jù)沖突;或者,在步驟205開始計時之前,即時地為需要重發(fā)PMBus命令的Master設(shè)置重發(fā)時間,此時設(shè)定的時間可以為min_length和max_length之間不同的隨機值,以保證重發(fā)的正常進行。
[0084]206、Master向電源芯片發(fā)送命令,指示電源芯片上報告警信息,根據(jù)從所述從設(shè)備獲取的所述告警信息,中斷發(fā)送PMBus命令給電源芯片。
[0085]進一步的,本發(fā)明實施例的流程的狀態(tài)機實現(xiàn)過程如圖3所示,其中,如果Master發(fā)送的PMBus命令未發(fā)生錯誤,則執(zhí)行圖3中步驟1、步驟2和步驟3 ;如果Master發(fā)送的PMBus命令發(fā)生錯誤,且重發(fā)次數(shù)小于預(yù)設(shè)值,則執(zhí)行圖3中步驟1、步驟4、步驟5和步驟6,若重發(fā)成功,執(zhí)行圖3中步驟2和步驟3,然后結(jié)束流程;若重發(fā)不成功,則循環(huán)執(zhí)行圖3中步驟4、步驟5和步驟6直至達到最大錯誤次數(shù),執(zhí)行步驟7、步驟8和步驟3,然后結(jié)束流程。
[0086]需要說明的是,本發(fā)明實施例中的主設(shè)備Master可以為ASIC或者板級CPU等,從設(shè)備可以為電源芯片等,但不對設(shè)備的具體形式進行限定。
[0087]與現(xiàn)有技術(shù)相比,本發(fā)明實施例通過電源管理總線PMBus向從設(shè)備發(fā)送PMBus命令;當(dāng)所述PMBus命令發(fā)送失敗時,判斷所述PMBus命令發(fā)送失敗的次數(shù)是否大于等于預(yù)設(shè)值,所述預(yù)設(shè)值在系統(tǒng)初始化時預(yù)先配置;當(dāng)所述PMBus命令發(fā)送失敗的次數(shù)大于等于所述預(yù)設(shè)值時,根據(jù)從所述從設(shè)備獲取的告警信息結(jié)束流程;當(dāng)所述PMBus命令發(fā)送失敗的次數(shù)小于所述預(yù)設(shè)值時,開始計時;當(dāng)計時時間長度達到重發(fā)時間時,重新發(fā)送所述PMBus命令。上述流程通過為系統(tǒng)內(nèi)發(fā)生數(shù)據(jù)沖突的主設(shè)備Master配置一定時間長度的PMBus命令重發(fā)緩沖時間,降低了已經(jīng)發(fā)生數(shù)據(jù)沖突的多個Master重發(fā)PMBus命令時再次發(fā)生同樣的數(shù)據(jù)沖突的概率,極大地提高了系統(tǒng)的可靠性,保證系統(tǒng)的正常運行。
[0088]實施例三
[0089]本實施例提供一種處理數(shù)據(jù)沖突的系統(tǒng)30,如圖4所示,所述系統(tǒng)30包括主設(shè)備Master31、從設(shè)備32和電源管理總線PMBus33,所述主設(shè)備31通過所述PMBus33訪問所述從設(shè)備32,以進行電源管理;
[0090]進一步的,如圖5所示,所述主設(shè)備31包括:AVS(Adaptive Voltage Scaling,自適應(yīng)電壓調(diào)節(jié))模塊311,所述AVS模塊311包括:
[0091]命令發(fā)送單元3111,用于通過所述PMBus33向從設(shè)備32發(fā)送PMBus命令;
[0092]判斷單元3112,用于當(dāng)所述PMBus命令發(fā)送失敗時,判斷所述PMBus命令發(fā)送失敗的次數(shù)是否大于等于預(yù)設(shè)值,所述預(yù)設(shè)值在系統(tǒng)初始化時預(yù)先配置;
[0093]計時單元3113,用于當(dāng)所述PMBus命令發(fā)送失敗的次數(shù)小于所述預(yù)設(shè)值時,開始計時;
[0094]所述命令發(fā)送單元3111還用于當(dāng)所述計時單元3113的計時時間長度達到重發(fā)時間時,重新發(fā)送所述PMBus命令。
[0095]其中,所述重發(fā)時間大于Master發(fā)送一條最短PMBus命令所需的時間,且小于等于系統(tǒng)內(nèi)所有Master發(fā)出一條最長PMBus命令所需的時間之和。
[0096]進一步的,如圖5所示,所述AVS模塊311還可以包括:
[0097]時間配置單元3114,用于將所述重發(fā)時間配置為固定時間長度或隨機時間長度。
[0098]進一步的,如圖5所示,所述時間配置單元3114還可以包括:
[0099]第一時間配置子單元31141,用于在所述通過所述PMBus33向所述從設(shè)備32發(fā)送PMBus命令之前,將Master的重發(fā)時間配置為所述固定時間長度,其中,系統(tǒng)內(nèi)不同的Master配置的所述固定時間長度均不相同;
[0100]第二時間配置子單元31142,用于當(dāng)所述PMBus命令發(fā)送失敗的次數(shù)小于所述預(yù)設(shè)值時,在所述開始計時之前,為發(fā)送所述PMBus命令失敗的Master配置所述隨機時間長度。
[0101]進一步的,如圖5所示,所述AVS模塊311還可以包括:告警上報單元3115 ;
[0102]所述告警上報單元3115用于當(dāng)所述PMBus命令發(fā)送失敗的次數(shù)大于等于所述預(yù)設(shè)值時,指示所述從設(shè)備32上報告警信息;
[0103]所述主設(shè)備31還包括:處理模塊312 ;
[0104]所述處理模塊312用于根據(jù)從所述從設(shè)備32獲取的所述告警信息,中斷發(fā)送所述PMBus命令給所述從設(shè)備32的流程。
[0105]進一步的,所述命令發(fā)送單元3111還用于向所述從設(shè)備32發(fā)送清除所述從設(shè)備32中的告警信息的命令。
[0106]需要說明的是,本發(fā)明實施例中的主設(shè)備Master可以為ASIC或者板級CPU等,從設(shè)備可以為電源芯片等,但不對設(shè)備的具體形式進行限定。
[0107]與現(xiàn)有技術(shù)相比,本發(fā)明實施例通過電源管理總線PMBus向從設(shè)備發(fā)送PMBus命令;當(dāng)所述PMBus命令發(fā)送失敗時,判斷所述PMBus命令發(fā)送失敗的次數(shù)是否大于等于預(yù)設(shè)值,所述預(yù)設(shè)值在系統(tǒng)初始化時預(yù)先配置;當(dāng)所述PMBus命令發(fā)送失敗的次數(shù)大于等于所述預(yù)設(shè)值時,根據(jù)從所述從設(shè)備獲取的告警信息結(jié)束流程;當(dāng)所述PMBus命令發(fā)送失敗的次數(shù)小于所述預(yù)設(shè)值時,開始計時;當(dāng)計時時間長度達到重發(fā)時間時,重新發(fā)送所述PMBus命令。上述流程通過為系統(tǒng)內(nèi)發(fā)生數(shù)據(jù)沖突的主設(shè)備Master配置一定時間長度的PMBus命令重發(fā)緩沖時間,降低了已經(jīng)發(fā)生數(shù)據(jù)沖突的多個Master重發(fā)PMBus命令時再次發(fā)生同樣的數(shù)據(jù)沖突的概率,極大地提高了系統(tǒng)的可靠性,保證系統(tǒng)的正常運行。
[0108]實施例四
[0109]本實施例提供一種處理數(shù)據(jù)沖突的裝置40,如圖6所示,所述裝置40包括:[0110]發(fā)送器41,用于通過電源管理總線PMBus向從設(shè)備發(fā)送PMBus命令;以及用于當(dāng)處理器42的計時時間長度達到重發(fā)時間時,重新發(fā)送所述PMBus命令;
[0111]處理器42,用于當(dāng)所述PMBus命令發(fā)送失敗時,判斷所述PMBus命令發(fā)送失敗的次數(shù)是否大于等于預(yù)設(shè)值,所述預(yù)設(shè)值在系統(tǒng)初始化時預(yù)先配置;以及用于當(dāng)所述PMBus命令發(fā)送失敗的次數(shù)小于所述預(yù)設(shè)值時,開始計時。
[0112]其中,所述重發(fā)時間大于Master發(fā)送一條最短PMBus命令所需的時間,且小于等于系統(tǒng)內(nèi)所有Master發(fā)出一條最長PMBus命令所需的時間之和。
[0113]進一步的,所述處理器42還用于:當(dāng)所述PMBus命令發(fā)送失敗的次數(shù)大于等于所述預(yù)設(shè)值時,指示所述從設(shè)備上報告警信息;根據(jù)從所述從設(shè)備獲取的所述告警信息,中斷發(fā)送所述PMBus命令給所述從設(shè)備的流程。
[0114]進一步的,所述處理器42還用于:將所述重發(fā)時間配置為固定時間長度或隨機時間長度。
[0115]進一步的,所述處理器42還用于:在所述通過所述PMBus向所述從設(shè)備發(fā)送PMBus命令之前,將Master的重發(fā)時間配置為所述固定時間長度,其中,系統(tǒng)內(nèi)不同的Master配置的所述固定時間長度均不相同;或者,用于當(dāng)所述PMBus命令發(fā)送失敗的次數(shù)小于所述預(yù)設(shè)值時,在所述開始計時之前,為發(fā)送所述PMBus命令失敗的Master配置所述隨機時間長度。
[0116]進一步的,所述發(fā)送器41還用于向所述從設(shè)備發(fā)送清除所述從設(shè)備中的告警信息的命令。
[0117]與現(xiàn)有技術(shù)相比,本發(fā)明實施例通過電源管理總線PMBus向從設(shè)備發(fā)送PMBus命令;當(dāng)所述PMBus命令發(fā)送失敗時,判斷所述PMBus命令發(fā)送失敗的次數(shù)是否大于等于預(yù)設(shè)值,所述預(yù)設(shè)值在系統(tǒng)初始化時預(yù)先配置;當(dāng)所述PMBus命令發(fā)送失敗的次數(shù)大于等于所述預(yù)設(shè)值時,根據(jù)從所述從設(shè)備獲取的告警信息結(jié)束流程;當(dāng)所述PMBus命令發(fā)送失敗的次數(shù)小于所述預(yù)設(shè)值時,開始計時;當(dāng)計時時間長度達到重發(fā)時間時,重新發(fā)送所述PMBus命令。上述流程通過為系統(tǒng)內(nèi)發(fā)生數(shù)據(jù)沖突的主設(shè)備Master配置一定時間長度的PMBus命令重發(fā)緩沖時間,降低了已經(jīng)發(fā)生數(shù)據(jù)沖突的多個Master重發(fā)PMBus命令時再次發(fā)生同樣的數(shù)據(jù)沖突的概率,極大地提高了系統(tǒng)的可靠性,保證系統(tǒng)的正常運行。
[0118]本發(fā)明實施例提供的處理數(shù)據(jù)沖突的系統(tǒng)可以實現(xiàn)上述提供的方法實施例,具體功能實現(xiàn)請參見方法實施例中的說明,在此不再贅述。本發(fā)明實施例提供的處理數(shù)據(jù)沖突的方法及系統(tǒng)可以適用于多個主設(shè)備Master通過電源管理總線PMBus發(fā)送PMBus命令,但不僅限于此。
[0119]本領(lǐng)域普通技術(shù)人員可以理解實現(xiàn)上述實施例方法中的全部或部分流程,是可以通過計算機程序來指令相關(guān)的硬件來完成,所述的程序可存儲于一計算機可讀取存儲介質(zhì)中,該程序在執(zhí)行時,可包括如上述各方法的實施例的流程。其中,所述的存儲介質(zhì)可為磁碟、光盤、只讀存儲記憶體(Read-Only Memory, ROM)或隨機存儲記憶體(Random AccessMemory, RAM)等。
[0120]以上所述,僅為本發(fā)明的【具體實施方式】,但本發(fā)明的保護范圍并不局限于此,任何熟悉本【技術(shù)領(lǐng)域】的技術(shù)人員在本發(fā)明揭露的技術(shù)范圍內(nèi),可輕易想到的變化或替換,都應(yīng)涵蓋在本發(fā)明的保護范圍之內(nèi)。因此,本發(fā)明的保護范圍應(yīng)該以權(quán)利要求的保護范圍為準(zhǔn)。
【權(quán)利要求】
1.一種處理數(shù)據(jù)沖突的方法,其特征在于,包括: 通過電源管理總線PMBus向從設(shè)備發(fā)送PMBus命令,以進行電源管理; 當(dāng)所述PMBus命令發(fā)送失敗時,判斷所述PMBus命令發(fā)送失敗的次數(shù)是否大于等于預(yù)設(shè)值,所述預(yù)設(shè)值在系統(tǒng)初始化時預(yù)先配置; 若所述PMBus命令發(fā)送失敗的次數(shù)小于所述預(yù)設(shè)值,則開始計時; 當(dāng)計時時間長度達到重發(fā)時間時,重新發(fā)送所述PMBus命令。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述重發(fā)時間大于主設(shè)備Master發(fā)送一條最短PMBus命令所需的時間,且小于等于系統(tǒng)內(nèi)所有Master發(fā)出一條最長PMBus命令所需的時間之和。
3.根據(jù)權(quán)利要求2所述的方法,其特征在于,將所述重發(fā)時間配置為固定時間長度或隨機時間長度。
4.根據(jù)權(quán)利要求3所述的方法,其特征在于,所述將所述重發(fā)時間配置為固定時間長度包括: 在所述通過電源管理總線PMBus向從設(shè)備發(fā)送PMBus命令之前,將Master的重發(fā)時間配置為所述固定時間長度,其中,系統(tǒng)內(nèi)不同的Master配置的所述固定時間長度均不相同。
5.根據(jù)權(quán)利要 求3所述的方法,其特征在于,所述將所述重發(fā)時間配置為隨機時間長度包括: 當(dāng)所述PMBus命令發(fā)送失敗的次數(shù)小于所述預(yù)設(shè)值時,在所述開始計時之前,為發(fā)送所述PMBus命令失敗的Master配置所述隨機時間長度。
6.根據(jù)權(quán)利要求1所述的方法,其特征在于,若所述PMBus命令發(fā)送失敗的次數(shù)大于等于所述預(yù)設(shè)值,指示所述從設(shè)備上報告警信息; 則還包括: 根據(jù)從所述從設(shè)備獲取的所述告警信息,中斷發(fā)送所述PMBus命令給所述從設(shè)備的流程。
7.根據(jù)權(quán)利要求1所述的方法,其特征在于,當(dāng)所述PMBus命令發(fā)送失敗的次數(shù)小于所述預(yù)設(shè)值時,在所述開始計時之前,還包括: 向所述從設(shè)備發(fā)送清除所述從設(shè)備中的告警信息的命令。
8.—種處理數(shù)據(jù)沖突的系統(tǒng),其特征在于,包括主設(shè)備、從設(shè)備和電源管理總線PMBus,所述主設(shè)備通過所述PMBus訪問所述從設(shè)備,以進行電源管理; 所述主設(shè)備包括:自適應(yīng)電壓調(diào)節(jié)AVS模塊,所述AVS模塊包括: 命令發(fā)送單元,用于通過所述PMBus向所述從設(shè)備發(fā)送PMBus命令; 判斷單元,用于當(dāng)所述PMBus命令發(fā)送失敗時,判斷所述PMBus命令發(fā)送失敗的次數(shù)是否大于等于預(yù)設(shè)值,所述預(yù)設(shè)值在系統(tǒng)初始化時預(yù)先配置; 計時單元,用于當(dāng)所述PMBus命令發(fā)送失敗的次數(shù)小于所述預(yù)設(shè)值時,開始計時; 所述命令發(fā)送單元還用于當(dāng)所述計時單元的計時時間長度達到重發(fā)時間時,重新發(fā)送所述PMBus命令。
9.根據(jù)權(quán)利要求8所述的系統(tǒng),其特征在于,所述重發(fā)時間大于Master發(fā)送一條最短PMBus命令所需的時間,且小于等于系統(tǒng)內(nèi)所有Master發(fā)出一條最長PMBus命令所需的時間之和。
10.根據(jù)權(quán)利要求9所述的系統(tǒng),其特征在于,所述AVS模塊還包括: 時間配置單元,用于將所述重發(fā)時間配置為固定時間長度或隨機時間長度。
11.根據(jù)權(quán)利要求10所述的系統(tǒng),其特征在于,所述時間配置單元包括: 第一時間配置子單元,用于在所述通過所述PMBus向所述從設(shè)備發(fā)送PMBus命令之前,將Master的重發(fā)時間配置為所述固定時間長度,其中,系統(tǒng)內(nèi)不同的Master配置的所述固定時間長度均不相同。
12.根據(jù)權(quán)利要求10所述的系統(tǒng),其特征在于,所述時間配置單元包括: 第二時間配置子單元,用于當(dāng)所述PMBus命令發(fā)送失敗的次數(shù)小于所述預(yù)設(shè)值時,在所述開始計時之前,為發(fā)送所述PMBus命令失敗的Master配置所述隨機時間長度。
13.根據(jù)權(quán)利要求8所述的系統(tǒng),其特征在于,所述AVS模塊還包括:告警上報單元; 所述告警上報單元用于當(dāng)所述PMBus命令發(fā)送失敗的次數(shù)大于等于所述預(yù)設(shè)值時,指示所述從設(shè)備上報告警信息; 所述主設(shè)備還包括:處理模塊; 所述處理模塊用于根據(jù)從所述從設(shè)備獲取的所述告警信息,中斷發(fā)送所述PMBus命令給所述從設(shè)備的流程。
14.根據(jù)權(quán)利要求8所述的系統(tǒng),其特征在于,所述命令發(fā)送單元還用于: 向所述從設(shè)備發(fā)送清除所述從設(shè)備中的告警信息的命令。
【文檔編號】G06F13/38GK103793344SQ201210428003
【公開日】2014年5月14日 申請日期:2012年10月31日 優(yōu)先權(quán)日:2012年10月31日
【發(fā)明者】謝謙, 王新入, 楊國新 申請人:華為技術(shù)有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
东港市| 手游| 宁蒗| 襄城县| 土默特左旗| 虹口区| 七台河市| 北宁市| 宜都市| 门头沟区| 沐川县| 洱源县| 常德市| 钟山县| 临高县| 齐齐哈尔市| 龙游县| 中牟县| 黔南| 临湘市| 邹平县| 乐东| 高要市| 无棣县| 衡南县| 滦南县| 安达市| 淮安市| 宾阳县| 北流市| 响水县| 孝义市| 凤山市| 德令哈市| 八宿县| 息烽县| 平山县| 齐齐哈尔市| 二连浩特市| 甘孜| 彰化县|