本發明涉及主板控制技術,特別涉及一種基于BMC自動化檢測燒錄主板供電模組芯片數據的方法。
背景技術:
隨著科技的進步,服務器越來越廣泛的運用在生活各處。然而目前主流的服務器在正常開機前需要通過外部軟件將匹配當前主板設計的參數燒錄到芯片供電模組中,而當供電模組芯片中燒錄的參數不正確或者沒有燒錄時則會出現主板供電模組芯片供電異常、主板無法正常開機的情況。
為了解決這一問題,傳統的做法是在燒錄供電模組芯片數據時,從廠商那里拿到可以連接到主板預留寫入數據接口的連接線,另外一端連接到測試機臺,在機臺上安裝廠商提供的燒錄軟件,通過軟件進行寫入,寫入完成之后重新上電后觀察主板是否能開機。
上述的做法是在測試機臺進行操作,而且用數據寫入線連接到主板,這在服務器工廠大量機臺測試時是很難去實現的,現在的工廠測試機制也不允許實現這樣的操作。當主板在工廠制造完成需要開機檢測時,測試人員需要通過外部的工具在另外的測試機臺上通過接線的方式連接主板去燒錄這些數據,燒錄完成之后才能正常開機,有些時候燒錄有問題還需多次燒錄才能開機,這樣的工作量大以及操作時間長,并且沒有檢查的機制容易出錯。
針對上述情況,需要一種新的主板供電模組芯片數據燒錄方法,可以在不使用額外測試機的情況下完成燒錄。
技術實現要素:
本發明提供一種基于BMC自動化檢測燒錄主板供電模組芯片數據的方法,解決現有技術中的需要通過外接工具進行主板供電模組芯片數據燒錄的技術問題。
一種基于BMC自動化檢測燒錄主板供電模組芯片數據的方法,該方法包括以下步驟: 步驟A. 上電步驟,對服務器主板進行上電; 步驟B. 燒錄步驟,所述服務器主板的BMC模塊根據需要將主板供電模組芯片需要的數據燒錄到所述主板供電模組芯片的寄存器中;所述主板供電模組芯片需要的數據預先存儲在所述BMC模塊的Flash中。
BMC是指基板管理控制器(Baseboard Management Controller)。一般內置在主板上,支持行業標準的 IPMI 規范。BMC提供的功能包括:本地和遠程診斷、控制臺支持、配置管理、硬件管理和故障排除。目前主流的服務器都會使用BMC進行遠程監控管理,主板上電后BMC會進行初始化并運行監控任務。實現本方法時,需要先將廠商需要燒錄進入主板供電模組芯片的數據儲存進入BMC的Flash中。BMC是把要燒錄的數據包在BMC固件Bin檔中,首先BMC固件會燒錄到BMC flash中,BMC啟動完成之后就把這部分數據存在BMC運行的內存中。
本方案的進一步改進在于:步驟B包括以下分步驟:
步驟B1:預讀取步驟,所述服務器主板的BMC模塊檢測主板供電模組芯片內寄存器的數據;
步驟B2:再讀取步驟,讀取預先存儲在所述BMC模塊的Flash中的所述主板供電模組芯片需要的數據;
步驟B3:比較步驟,將所述預讀取步驟中讀取的數據和再讀取步驟中讀取的數據進行比較,若兩數據相同則輸出是,若兩數據不相同則輸出否;
步驟B4:若比較步驟輸出是,則不進行操作;若比較步驟輸出否,則將再讀取步驟中讀取的數據寫入所述主板供電模組芯片的寄存器中。
通過上述A、B步驟實現了數據的寫入。
本方案的進一步改進在于:還包括步驟C:檢驗步驟,所述 BMC模塊檢測所述主板供電模組芯片的寄存器中數據是否正確。其中步驟C包括以下分步驟:
步驟C1:預檢驗步驟,所述服務器主板的BMC模塊檢測主板供電模組芯片內寄存器的數據;
步驟C2:再檢驗步驟,讀取預先存儲在所述BMC模塊的Flash中的所述主板供電模組芯片需要的數據;
步驟C3:再比較步驟,將所述預檢驗步驟中讀取的數據和再檢驗步驟中讀取的數據進行比較,若兩數據相同則輸出是,若兩數據不相同則輸出否;
步驟C4:若再比較步驟輸出是,則不進行操作;若再比較步驟輸出否,則返回B4步驟。
通過C步驟實現了數據寫入的確認程序,確保了BMC中存儲的數據確實可以被寫入主板供電模組芯片中。
本方案的進一步改進在于:所述主板供電模組芯片的寄存器為ASPEED芯片寄存器。
本方案的進一步改進在于:所述主板供電模組芯片需要的數據通過I2C寫入的方式對所述主板供電模組芯片的寄存器進行寫入。
本專利公開了一種通過BMC去檢測主板電源供電模組芯片所需的寄存器值是否被寫入或者寫入錯誤,并自動寫入相應的寄存器值讓系統正常供電開機,真正達到了自動化燒錄電源供電模組芯片數據,工廠測試人員可以不需要借助外接設備去燒錄,并且不需要去檢測是否燒錄正常,使服務器的測試成本大大降低,同時提高服務器測試效率。
附圖說明
圖1是本發明實施例提供的基于BMC自動化檢測燒錄主板供電模組芯片數據的方法的工作流程圖。
具體實施方式
圖1是本發明實施例提供的基于BMC自動化檢測燒錄主板供電模組芯片數據的方法的工作流程圖。下面結合附圖詳細說明本發明的具體實施方案。
本發明包括以下步驟:
第一步:上電步驟,對服務器主板進行上電。
第二步:預讀取步驟,所述服務器主板的BMC模塊檢測主板供電模組芯片內寄存器的數據。
第三步:再讀取步驟,讀取預先存儲在所述BMC模塊的Flash中的所述主板供電模組芯片需要的數據。
第四步:比較步驟,將所述預讀取步驟中讀取的數據和再讀取步驟中讀取的數據進行比較,若兩數據相同則輸出是,若兩數據不相同則輸出否。
第五步:若比較步驟輸出是,則不進行操作,直接進行開機步驟;若比較步驟輸出否,則將再讀取步驟中讀取的數據寫入所述主板供電模組芯片的寄存器中。其中所述主板供電模組芯片的寄存器為ASPEED芯片寄存器。所述主板供電模組芯片需要的數據通過I2C寫入的方式對所述主板供電模組芯片的寄存器進行寫入。
至此完成了數據的燒錄,但是還需要確認數據是否燒錄進入所述主板供電模組芯片的寄存器中或燒錄的數據是否正確,所以還需要進行以下步驟。
第六步:預檢驗步驟,所述服務器主板的BMC模塊檢測主板供電模組芯片內寄存器的數據。
第七步:再檢驗步驟,讀取預先存儲在所述BMC模塊的Flash中的所述主板供電模組芯片需要的數據。
第八步:再比較步驟,將所述預檢驗步驟中讀取的數據和再檢驗步驟中讀取的數據進行比較,若兩數據相同則輸出是,若兩數據不相同則輸出否。
第九步:若再比較步驟輸出是,則不進行操作;若再比較步驟輸出否,則返回第五步。
至此,可以確認需要燒錄的數據已經正確的燒錄進入所述主板供電模組芯片的寄存器中。
本專利公開了一種通過BMC去檢測主板電源供電模組芯片所需的寄存器值是否被寫入或者寫入錯誤,并自動寫入相應的寄存器值讓系統正常供電開機,真正達到了自動化燒錄電源供電模組芯片數據,工廠測試人員可以不需要借助外接設備去燒錄,并且不需要去檢測是否燒錄正常,使服務器的測試成本大大降低,同時提高服務器測試效率。
以上內容是結合具體的優選實施方式對本發明所作的進一步詳細說明,不能認定本發明的具體實施只局限于這些說明。對于本發明所屬技術領域的普通技術人員來說,在不脫離本發明構思的前提下,還可以做出若干簡單推演或替換,都應當視為屬于本發明的保護范圍。