一種背板i2c總線死鎖的消除方法、系統(tǒng)及電子設備的制造方法
【技術領域】
[0001]本發(fā)明屬于電子技術領域,涉及一種死鎖的消除方法及系統(tǒng),特別是涉及一種背板I2C總線死鎖的消除方法、系統(tǒng)及電子設備。
【背景技術】
[0002]在帶有主備雙主控板系統(tǒng)中,有些板卡上面有一些I2C器件,比如溫度傳感器件,風扇轉速控制器件等,板卡上沒有CPU管理這些I2C器件,主控板的CPU通過背板管理這些板卡上的I2C器件。主控板和這些板卡的I2C接口要支持熱插拔功能。在主備切換時,背板I2C總線的控制權會由原來的主用主控板切換到新的主用主控板上,在某種特定的條件下,主控板上的CPU無法通過背板訪問其它板卡的I2C總線,出現(xiàn)背板I2C總線出現(xiàn)死鎖的問題。
[0003]現(xiàn)有背板出現(xiàn)死鎖的解決方案為:
[0004]系統(tǒng)主備切換時,背板I2C總線死鎖發(fā)生在某種特定的條件下,概率比較低,當CHJ無法通過背板訪問其它板卡的I2C器件時,CPU會通過背板的硬件復位連線,復位其它板卡,來恢復I2C總線的正常通信。
[0005]而現(xiàn)有技術在I2C總線死鎖后,需要主控板復位其它板卡,會導致板卡的功能和業(yè)務暫時中斷。
[0006]因此,如何提供一種背板I2C總線死鎖的消除方法、系統(tǒng)及電子設備,以解決現(xiàn)有技術中在I2C總線死鎖后,需要主控板復位其它板卡,會導致板卡的功能和業(yè)務暫時中斷等缺陷,實已成為本領域從業(yè)者亟待解決的技術問題。。
【發(fā)明內容】
[0007]鑒于以上所述現(xiàn)有技術的缺點,本發(fā)明的目的在于提供一種背板I2C總線死鎖的消除方法、系統(tǒng)及電子設備,用于解決現(xiàn)有技術中I2C總線死鎖后,需要主控板復位其它板卡,會導致板卡的功能和業(yè)務暫時中斷的問題。
[0008]為實現(xiàn)上述目的及其他相關目的,本發(fā)明一方面提供一種背板I2C總線死鎖的消除方法,所述背板I2C總線死鎖的消除方法包括以下步驟:接收主備板的切換命令;根據(jù)所述切換命令監(jiān)測所述I2C總線是否處于空閑狀態(tài);若是,則執(zhí)行切換命令,將主板轉換成備板,將備板轉換成主板;若否,則執(zhí)行下一步驟;發(fā)送搶占信號;根據(jù)所述搶占信號繼續(xù)監(jiān)測所述I2C總線是否處于空閑狀態(tài);若是,則執(zhí)行切換命令,將主板轉換成備板,將備板轉換成主板,若否,則返回發(fā)送包含有低電平數(shù)據(jù)位的搶占信號以繼續(xù)監(jiān)測所述I2C總線。
[0009]于本發(fā)明的一實施例中,所述搶占信號中包含低電平數(shù)據(jù)信號。
[0010]于本發(fā)明的一實施例中,在發(fā)送包含有低電平數(shù)據(jù)位的搶占信號的步驟之后,所述背板I2C總線死鎖的消除方法還包括:將所述搶占信號與通過I2C總線連接在背板上的I2C器件輸出的數(shù)據(jù)信號進行比較以判斷兩信號是否一致,若是,則所述I2C器件繼續(xù)占用I2C總線,不執(zhí)行切換命令;若否,則所述I2C器件釋放所占用的I2C總線,執(zhí)行切換命令。
[0011]于本發(fā)明的一實施例中,將所述搶占信號與通過I2C總線連接在背板上的I2C器件輸出的數(shù)據(jù)信號進行比較是指判斷通過I2C總線連接在背板上的I2C器件輸出的數(shù)據(jù)信號是否為低電平數(shù)據(jù)信號。
[0012]于本發(fā)明的一實施例中,所述背板I2C總線死鎖的消除方法還包括:發(fā)送主備板的切換命令。
[0013]本發(fā)明另一方面還提供一種背板I2C總線死鎖的消除系統(tǒng),所述背板I2C總線死鎖的消除系統(tǒng)包括:控制模塊,用于接收主備板的切換命令;第一監(jiān)測模塊,與所述控制模塊連接,用于根據(jù)所述切換命令監(jiān)測所述I2C總線是否處于空閑狀態(tài);若是,則調用所述控制模塊以執(zhí)行切換命令,將主板轉換成備板,將備板轉換成主板的執(zhí)行模塊;若否,則調用發(fā)送搶占信號的信號發(fā)送模塊;第二監(jiān)測模塊,與所述第一監(jiān)測模塊和信號發(fā)送模塊連接,用于根據(jù)所述搶占信號繼續(xù)監(jiān)測所述I2C總線是否處于空閑狀態(tài);若是,則調用所述控制模塊以執(zhí)行切換命令,將主板轉換成備板,將備板轉換成主板,若否,則調用所述發(fā)送模塊繼續(xù)發(fā)送包含有低電平數(shù)據(jù)位的搶占信號以繼續(xù)監(jiān)測所述I2C總線。
[0014]于本發(fā)明的一實施例中,所述背板I2C總線死鎖的消除系統(tǒng)還包括與所述第二監(jiān)測模塊連接的比較模塊,所述比較模塊用于將所述搶占信號與通過I2C總線連接在背板上的I2C器件輸出的數(shù)據(jù)信號進行比較以判斷兩信號是否一致。
[0015]于本發(fā)明的一實施例中,所述比較模塊將所述搶占信號與通過I2C總線連接在背板上的I2C器件輸出的數(shù)據(jù)信號進行比較是指所述比較模塊判斷通過I2C總線連接在背板上的I2C器件輸出的數(shù)據(jù)信號是否為低電平數(shù)據(jù)信號。
[0016]于本發(fā)明的一實施例中,所述背板I2C總線死鎖的消除系統(tǒng)還包括用于發(fā)送主備板的切換命令的中央處理模塊。
[0017]本發(fā)明又一方面還提供一種電子設備,所述電子設備包括:背板,所述背板包括主板和備板;其中,所述主板和備板都包括:中央處理器,用于發(fā)送主備板的切換命令;可編程邏輯器件,與所述中央處理器通過I2C總線連接,用于接收主備板的切換命令,根據(jù)所述切換命令監(jiān)測所述I2C總線是否處于空閑狀態(tài);若是,則執(zhí)行切換命令,將主板轉換成備板,將備板轉換成主板;若否,則發(fā)送搶占信號。驅動器,與所述中央處理器和可編程邏輯器件通過I2C總線連接,用于根據(jù)所述搶占信號繼續(xù)監(jiān)測所述I2C總線是否處于空閑狀態(tài);若是,則通過所述可編程邏輯器件執(zhí)行切換命令,將主板轉換成備板,將備板轉換成主板,若否,則令所述可編程邏輯器件發(fā)送包含有低電平數(shù)據(jù)位的搶占信號以繼續(xù)監(jiān)測所述I2C總線。
[0018]于本發(fā)明的一實施例中,所述電子設備還包括板卡,所述板卡上插有I2C器件,所述I2C器件用于將所述搶占信號與自身輸出的數(shù)據(jù)信號進行比較以判斷兩信號是否一致。
[0019]如上所述,本發(fā)明的背板I2C總線死鎖的消除方法、系統(tǒng)及電子設備,具有以下有益效果:
[0020]第一,從根源上消除主備切換時的背板I2C總線死鎖的條件,現(xiàn)有的技術是發(fā)生死鎖后再采取補救措施。
[0021]第二,不會導致其它板卡功能和業(yè)務的暫時中斷,對整個系統(tǒng)沒有任何不良影響。【附圖說明】
[0022]圖1顯示為本發(fā)明背板I2C總線死鎖的消除方法于一實施例中的流程示意圖。
[0023]圖2顯示為本發(fā)明背板I2C總線死鎖的消除系統(tǒng)于一實施例中的原理結構示意圖。
[0024]圖3顯示為本發(fā)明電子設備于一實施例中的電路結構示意圖。
[0025]元件標號說明
[0026]1電子設備
[0027]10背板I2C總線死鎖的消除系統(tǒng)
[0028]101 中央處理模塊
[0029]102控制模塊
[0030]103第一監(jiān)測模塊
[0031]104 信號發(fā)送模塊
[0032]105第二監(jiān)測模塊
[0033]106比較模塊
[0034]11背板
[0035]12板卡
[0036]111主板
[0037]112備板
[0038]201中央處理器
[0039]202可編程邏輯器件
[0040]203驅動器
[0041]1211況器件
[0042]S1 ?S7 步驟
【具體實施方式】
[0043]以下通過特定的具體實例說明本發(fā)明的實施方式,本領域技術人員可由本說明書所揭露的內容輕易地了解本發(fā)明的其他優(yōu)點與功效。本發(fā)明還可以通過另外不同的【具體實施方式】加以實施或應用,本說明書中的各項細節(jié)也可以基于不同觀點與應用,在沒有背離本發(fā)明的精神下進行各種修飾或改變。需說明的是,在不沖突的情況下,以下實施例及實施例中的特征可以相互組合。
[0044]需要說明的是,以下實施例中所提供的圖示僅以示意方式說明本發(fā)明的基本構想,遂圖式中僅顯示與本發(fā)明中有關的組件而非按照實際實施時的組件數(shù)目、形狀及尺寸繪制,其實際實施時各組件的型態(tài)、數(shù)量及比例可為一種隨意的改變,且其組件布局型態(tài)也可能更為復雜。
[0045]本發(fā)明所述的背板I2C總線死鎖的消除方法、系統(tǒng)及電子設備的發(fā)明原理如下:
[0046]將CPLD接入主控板的I2C總線中,在CPLD接收到來自CPU的主備切換命令后,先監(jiān)測I2C總線狀態(tài),如果I2C總線是空閑狀態(tài),CPLD就執(zhí)行CPU的主備切換指令,否則,CPLD發(fā)出搶主操作,迫使正在使用I2C總線的器件,退出操作,釋放總線,CPLD在消除了背板I2C總線死鎖條件后,才執(zhí)行主備切換。
[0047]實施例一