中文字幕无码日韩视频无码三区

多處理器主板電源管理程序遠程升級方法

文檔序號:9810332閱(yue)讀(du):298來源:國知局
多處理器主板電源管理程序遠程升級方法
【技術領域】
[0001]本發明涉及計算機技術領域,更具體地說,本發明涉及一種多處理器主板電源管理程序遠程升級方法。
【背景技術】
[0002]在超級計算機、服務器等大型系統的多處理器主板上,通常具有各路不同電源,需要電源管理芯片對其進行啟停、調節、檢測等管理操作,并且通過I2C等總線與維護系統進行通訊。對于這些大型系統來說,管理程序的遠程更新是其一個必要功能,以避免產生停機更換主板燒寫固件帶來的時間、人力成本問題。
[0003]考慮到這些大型系統的運行特點,具體到電源管理程序的遠程更新,則要求在更新過程中各路電源仍穩定工作,不影響系統運行,即實現“靜默升級”。而在現有技術中,對于多處理器主板電源管理程序,還沒有一種有效的升級方法,能夠在更新過程中保持各路電源仍穩定工作從而不影響系統運行。

【發明內容】

[0004]本發明所要解決的技術問題是針對現有技術中存在上述缺陷,提供一種能夠在更新過程中保持各路電源仍穩定工作從而不影響系統運行的多處理器主板電源管理程序遠程升級方法。
[0005]為了實現上述技術目的,根據本發明,提供了一種多處理器主板電源管理程序遠程升級方法,包括:
[0006]第一步驟:采用具有閃存程序存儲器的電源管理芯片作為多處理器主板電源的電源管理芯片;
[0007]第二步驟:在電源管理芯片的閃存程序存儲器中寫入用戶程序和Bootloader程序;
[0008]第三步驟:在電源管理芯片收到升級命令后,保存當前狀態;
[0009]第四步驟:在保存當前狀態之后,啟動Bootloader程序以通過Bootloader程序來擦除閃存程序存儲器中的升級命令指示的當前的用戶程序并燒寫升級命令指示的新的用戶程序;
[0010]第五步驟:在燒寫新的用戶程序完成之后跳出Bootloader程序,并且恢復第三步驟中保存的當前狀態。
[0011]優選地,BootLoader程序與用戶程序分別占用閃存程序存儲器的不同閃存空間。
[0012]優選地,BootLoader程序與用戶程序以合并的方式寫入閃存程序存儲器中。
[0013]優選地,閃存程序存儲器包括BootLoader程序代碼存儲映射堆棧、組合代碼存儲映射堆棧、以及用戶程序代碼存儲映射堆棧。
[0014]優選地,通過BootLoader程序與用戶程序以合并的方式寫入閃存程序存儲器中,使得BootLoader程序代碼存儲映射堆棧在頂部存儲了BootLoader程序重啟代碼和BootLoader程序主代碼;使得組合代碼存儲映射堆桟從頂部往下依次存儲了 BootLoader程序重啟代碼、BootLoader程序主代碼、用戶程序中斷代碼和用戶程序主代碼;使得用戶程序代碼存儲映射堆棧從底部往上依次存儲了用戶程序主代碼和用戶程序中斷代碼。
【附圖說明】
[0015]結合附圖,并通過參考下面的詳細描述,將會更容易地對本發明有更完整的理解并且更容易地理解其伴隨的優點和特征,其中:
[0016]圖1示意性地示出了根據本發明優選實施例的多處理器主板電源管理程序遠程升級方法的流程圖。
[0017]圖2示意性地示出了根據本發明優選實施例的BootLoader程序與用戶程序所占的閃存空間示意圖。
[0018]需要說明的是,附圖用于說明本發明,而非限制本發明。注意,表示結構的附圖可能并非按比例繪制。并且,附圖中,相同或者類似的元件標有相同或者類似的標號。
【具體實施方式】
[0019]為了使本發明的內容更加清楚和易懂,下面結合具體實施例和附圖對本發明的內容進行詳細描述。
[0020]舉例來說,采用Microchip公司生產的8位單片機PIC18F44K22作為電源管理芯片,該單片機芯片內有16KX 14位閃存(FLASH)程序存儲器,768字節的隨機存取存儲器(RAM)和256字節的電可擦除只讀存儲器(EEPROM),支持在應用編程(In-App Ii cat 1nProgrammiung,IAP)。
[0021]為了實現單片機程序的遠程升級,在單片機里預置Bootloader程序(啟動加載器,也稱引導程序)ο具體地,BootLoader程序是一段引導程序,其功能是在收到升級命令后,接收來自維護系統的新用戶程序,擦除閃存中舊的程序,燒寫新用戶程序。BootLoader程序的預置方法是與用戶程序合并,一同燒至單片機的閃存中,而且BootLoader程序與用戶程序分別占用不同的閃存空間。
[0022]為了實現單片機程序的靜默升級,應該保證單片機各個引腳的輸出在升級過程中保持不變,從而保證供電電路的正常工作。
[0023]進行升級操作時,首先要保存當前狀態,隨后進入Bootloader程序中燒寫新的用戶程序,更新完成跳出Bootloader后再恢復保存的狀態。其中,為了實現靜默升級,很重要的一個手段是在進入BootLoader后正確判斷當前狀態從而保存當前狀態,由此確保端口不被初始化改變,而是可以在后續恢復保存的當前狀態。
[0024]具體地,圖1示意性地示出了根據本發明優選實施例的多處理器主板電源管理程序遠程升級方法的流程圖。
[0025]如圖1所示,根據本發明優選實施例的多處理器主板電源管理程序遠程升級方法包括:
[0026]第一步驟S1:采用具有閃存程序存儲器的電源管理芯片作為多處理器主板電源的電源管理芯片;
[0027]第二步驟S2:在電源管理芯片的閃存程序存儲器中寫入用戶程序和Bootloader程序;其中,BootLoader程序與用戶程序分別占用閃存程序存儲器的不同閃存空間;
[0028]第三步驟S3:在電源管理芯片收到升級命令后,保存當前狀態;
[0029]第四步驟S4:在保存當前狀態之后,啟動Bootloader程序以通過Bootloader程序來擦除閃存程序存儲器中的升級命令指示的當前的用戶程序并燒寫(寫入)升級命令指示的新的用戶程序;
[0030]第五步驟S5:在燒寫新的用戶程序完成之后跳出Bootloader程序,并且恢復第三步驟S3中保存的當前狀態。
[0031]由此,本發明提供了一種能夠在更新過程中保持各路電源仍穩定工作從而不影響系統運行的多處理器主板電源管理程序遠程升級方法。
[0032]此外,對于優選實施方式,圖2示意性地示出了根據本發明優選實施例的BootLoader程序與用戶程序所占的閃存空間示意圖。如圖2所示,優選地,BootLoader程序與用戶程序以合并的方式寫入閃存程序存儲器中。
[0033]例如,如圖2所示,閃存程序存儲器包括BootLoader程序代碼存儲映射堆棧、組合代碼存儲映射堆棧、以及用戶程序代碼存儲映射堆棧(例如地址都是從0x000至0x3FFF)。
[0034]其中,通過BootLoader程序與用戶程序以合并的方式寫入閃存程序存儲器中,使得BootLoader程序代碼存儲映射堆棧在頂部存儲了 BootLoader程序重啟代碼和BootLoader程序主代碼;使得組合代碼存儲映射堆桟從頂部往下依次存儲了 BootLoader程序重啟代碼、BootLoader程序主代碼、用戶程序中斷代碼和用戶程序主代碼;使得用戶程序代碼存儲映射堆棧從底部往上依次存儲了用戶程序主代碼和用戶程序中斷代碼。
[0035]由此可以形成如圖2中的箭頭線所示的程序調用關系,使得這種合并寫入的方式有利于以Boo 11 oader程序利用在應用編程執行用戶程序的升級。
[0036]此外,需要說明的是,除非特別說明或者指出,否則說明書中的術語“第一”、“第二”、“第三”等描述僅僅用于區分說明書中的各個組件、元素、步驟等,而不是用于表示各個組件、元素、步驟之間的邏輯關系或者順序關系等。
[0037]可以理解的是,雖然本發明已以較佳實施例披露如上,然而上述實施例并非用以限定本發明。對于任何熟悉本領域的技術人員而言,在不脫離本發明技術方案范圍情況下,都可利用上述揭示的技術內容對本發明技術方案作出許多可能的變動和修飾,或修改為等同變化的等效實施例。因此,凡是未脫離本發明技術方案的內容,依據本發明的技術實質對以上實施例所做的任何簡單修改、等同變化及修飾,均仍屬于本發明技術方案保護的范圍內。
【主權項】
1.一種多處理器主板電源管理程序遠程升級方法,其特征在于包括: 第一步驟:采用具有閃存程序存儲器的電源管理芯片作為多處理器主板電源的電源管理芯片; 第二步驟:在電源管理芯片的閃存程序存儲器中寫入用戶程序和Bootloader程序; 第三步驟:在電源管理芯片收到升級命令后,保存當前狀態; 第四步驟:在保存當前狀態之后,啟動Bootloader程序以通過Bootloader程序來擦除閃存程序存儲器中的升級命令指示的當前的用戶程序并燒寫升級命令指示的新的用戶程序; 第五步驟:在燒寫新的用戶程序完成之后跳出Bootloader程序,并且恢復第三步驟中保存的當前狀態。2.根據權利要求1所述的多處理器主板電源管理程序遠程升級方法,其特征在于,BootLoader程序與用戶程序分別占用閃存程序存儲器的不同閃存空間。3.根據權利要求1或2所述的多處理器主板電源管理程序遠程升級方法,其特征在于,BootLoader程序與用戶程序以合并的方式寫入閃存程序存儲器中。4.根據權利要求1或2所述的多處理器主板電源管理程序遠程升級方法,其特征在于,閃存程序存儲器包括BootLoader程序代碼存儲映射堆棧、組合代碼存儲映射堆棧、以及用戶程序代碼存儲映射堆棧。5.根據權利要求1或2所述的多處理器主板電源管理程序遠程升級方法,其特征在于,通過BootLoader程序與用戶程序以合并的方式寫入閃存程序存儲器中,使得BootLoader程序代碼存儲映射堆棧在頂部存儲了BootLoader程序重啟代碼和BootLoader程序主代碼;使得組合代碼存儲映射堆桟從頂部往下依次存儲了BootLoader程序重啟代碼、BootLoader程序主代碼、用戶程序中斷代碼和用戶程序主代碼;使得用戶程序代碼存儲映射堆棧從底部往上依次存儲了用戶程序主代碼和用戶程序中斷代碼。
【專利摘要】本發明提供了一種多處理器主板電源管理程序遠程升級方法,包括:采用具有閃存程序存儲器的電源管理芯片作為多處理器主板電源的電源管理芯片;在電源管理芯片的閃存程序存儲器中寫入用戶程序和Bootloader程序;在電源管理芯片收到升級命令后,保存當前狀態;在保存當前狀態之后,啟動Bootloader程序以通過Bootloader程序來擦除閃存程序存儲器中的升級命令指示的當前的用戶程序并燒寫升級命令指示的新的用戶程序;在燒寫新的用戶程序完成之后跳出Bootloader程序,并且恢復第三步驟中保存的當前狀態。
【IPC分類】G06F9/445
【公開號】CN105573802
【申請號】CN201510977263
【發明人】何寧, 曹清, 秦駿, 袁博, 吳福永, 楊培和, 關通, 劉國慶
【申請人】無錫江南計算技術研究所
【公開日】2016年5月11日
【申請日】2015年12月23日
網(wang)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1