TWI777259B - 開機方法 - Google Patents

開機方法 Download PDF

Info

Publication number
TWI777259B
TWI777259B TW109134054A TW109134054A TWI777259B TW I777259 B TWI777259 B TW I777259B TW 109134054 A TW109134054 A TW 109134054A TW 109134054 A TW109134054 A TW 109134054A TW I777259 B TWI777259 B TW I777259B
Authority
TW
Taiwan
Prior art keywords
processing unit
central processing
location information
memory
main memory
Prior art date
Application number
TW109134054A
Other languages
English (en)
Other versions
TW202215239A (zh
Inventor
朱時達
許志豪
Original Assignee
神雲科技股份有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 神雲科技股份有限公司 filed Critical 神雲科技股份有限公司
Priority to TW109134054A priority Critical patent/TWI777259B/zh
Publication of TW202215239A publication Critical patent/TW202215239A/zh
Application granted granted Critical
Publication of TWI777259B publication Critical patent/TWI777259B/zh

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)
  • Stored Programmes (AREA)
  • Diaphragms And Bellows (AREA)

Abstract

一種開機方法包含:藉由一中央處理單元在開機的過程中判斷一非揮發性記憶體是否有儲存多個主記憶體的一錯誤位置資訊;當該中央處理單元判斷該非揮發性記憶體有儲存該錯誤位置資訊時,該中央處理單元在開機的過程中,讀取該錯誤位置資訊,並省略對應該錯誤位置資訊的該至少一主記憶體所要作的開機檢測,以繼續執行開機程序;當該中央處理單元判斷該非揮發性記憶體沒有儲存該錯誤位置資訊時,該中央處理單元繼續執行開機程序。

Description

開機方法
本發明是有關於一種開機方法,特別是指一種減少系統開機時間的開機方法。
現有的電腦系統在開機的過程中,基本輸入輸出系統(BIOS)會執行啟動自我檢測(Power-On Self-Test,POST),以測試和初始化中央處理器(CPU)、晶片組(Chipset)、系統記憶體(RAM)、硬碟、滑鼠、鍵盤等裝置。有時候部分系統記憶體雖然發生異常,但仍然可以開機成功,然而,在初始化各裝置的過程,若偵測到裝置發生異常,基本輸入輸出系統會再對被偵測到發生異常的裝置進行多次的重複確認,才會接著對下一個裝置進行初始化,這種情況將導致基本輸入輸出系統在每次的開機過程中,花費更多的時間重複檢測確認已經發生異常的系統記憶體所發生的錯誤,進而使得整體的開機時間變長,因而成為一個待改善的現象。
因此,本發明的目的,即在提供一種減少系統開機時間的開機方法。
於是,本發明提供一種開機方法,適用於一電腦系統,該電腦系統包含一中央處理單元、一平台路徑控制器、一電連接該平台路徑控制器的非揮發性記憶體、及多個主記憶體。該開機方法包含步驟(A)~(C)。
於步驟(A),藉由該中央處理單元執行一基本輸入輸出系統程式以進行開機,並在開機的過程中判斷該非揮發性記憶體所儲存的一系統事件記錄(System event log,SEL)是否儲存有該等主記憶體的一錯誤位置資訊。
於步驟(B),當該中央處理單元判斷該非揮發性記憶體有儲存該錯誤位置資訊時,該中央處理單元在開機的過程中,讀取該錯誤位置資訊,並省略對應該錯誤位置資訊的該至少一主記憶體所要作的開機檢測。
於步驟(C),當該中央處理單元判斷該非揮發性記憶體沒有儲存該錯誤位置資訊時,或者,已省略對應該錯誤位置資訊的該至少一主記憶體所要作的開機檢測之後,該中央處理單元對其餘未被省略開機檢測的該至少一主記憶體作檢測,以繼續執行開機程序。
在一些實施態樣中,其中,步驟(C)還包括子步驟(C1),當該中央處理單元判斷其餘未被省略開機檢測的該至少一主記憶體沒有記憶體錯誤時,該中央處理單元繼續執行開機程序。
在一些實施態樣中,其中,步驟(C)還包括子步驟(C2),當該中央處理單元判斷其餘未被省略開機檢測的該至少一主記憶體有記憶體錯誤,且該中央處理單元沒有開啟包裝後修復(Post Package Repair,PPR)功能時,該中央處理單元將發生記憶體錯誤的位置更新至該錯誤位置資訊,且省略對應該錯誤位置資訊的該至少一主記憶體所要作的開機檢測,以繼續執行開機程序。
在一些實施態樣中,其中,步驟(C)還包括子步驟(C3),當該中央處理單元判斷其餘未被省略開機檢測的該至少一主記憶體有記憶體錯誤,且該中央處理單元有開啟包裝後修復(Post Package Repair,PPR)功能時,該中央處理單元對發生記憶體錯誤的該至少一主記憶體作修復,以繼續執行開機程序。
在一些實施態樣中,其中,在步驟(B)中,該中央處理單元還將省略開機檢測的資訊更新至該系統事件記錄。
在一些實施態樣中,其中,在子步驟(C2)中,該中央處理單元還將對應該錯誤位置資訊的該至少一主記憶體的至少一序號更新至該非揮發性記憶體的該系統事件記錄。
在一些實施態樣中,其中,在子步驟(C3)中,該中央處理單元還將對發生記憶體錯誤的該至少一主記憶體作修復的資訊更新至該系統事件記錄。
在一些實施態樣中,該電腦系統還包含一顯示單元,其中,在步驟(B)中,該中央處理單元還將對應該錯誤位置資訊的該至少一主記憶體的資訊傳送至該顯示單元以進行顯示。
在一些實施態樣中,其中,在子步驟(C2)中,該中央處理單元還將對應該錯誤位置資訊的該至少一主記憶體的資訊傳送至該顯示單元以進行顯示。
在一些實施態樣中,其中,在子步驟(C3)中,該中央處理單元還將對發生記憶體錯誤的該至少一主記憶體作修復的資訊傳送至該顯示單元以進行顯示。
本發明的功效在於:藉由該非揮發性記憶體儲存該錯誤位置資訊,使得該中央處理單元在開機的過程中,能夠根據該錯誤位置資訊獲得前次已發生記憶體錯誤的該至少一主記憶體是在哪個位置,進而省略對該至少一主記憶體作開機檢測,而能有效地節省開機的時間。
在本發明被詳細描述之前,應當注意在以下的說明內容中,類似的元件是以相同的編號來表示。
參閱圖1,本發明開機方法之一實施例,適用於一電腦系統1,該電腦系統1例如是一伺服主機,並包含多個主記憶體5、一電連接該等主記憶體5的中央處理單元7、一電連接該中央處理單元7的一平台路徑控制器8、以及電連接該平台路徑控制器8的一基本輸入輸出系統(BIOS)晶片2、一基板管理控制器(Baseboard management controller,BMC)3、一非揮發性記憶體4、及一顯示單元6。該中央處理單元7例如是一個或多個中央處理器(CPU),該平台路徑控制器8是設置於一晶片組(圖未示)內,該中央處理單元7與該平台路徑控制器8也可以是共同設置於一系統單晶片(SOC)中。另外要特別強調的是:該非揮發性記憶體4是設置於該伺服主機的一主板上且與該平台路徑控制器8電連接的,與習知技術中與該基板管理控制器3形成電連接的另一非揮發性記憶體並不相同。
參閱圖2,該開機方法包含步驟S1~S10。
於步驟S1,該中央處理單元7載入並執行該基本輸入輸出系統晶片2中所儲存的該基本輸入輸出系統程式以進行開機,並在開機的過程中判斷該非揮發性記憶體4是否有儲存相關於該等主記憶體5之至少其中一者的一系統事件記錄(System event log,SEL),其中,該系統事件記錄可以包括一錯誤位置資訊。該錯誤位置資訊用於指示該等主記憶體5之其中至少一者曾經發生記憶體錯誤的位置,例如是具有哪一個序列號的雙列直插式記憶體模組及/或哪一個雙列直插式記憶體模組(Dual In-line Memory Module,DIMM)插槽。當該中央處理單元7判斷該非揮發性記憶體4有儲存該錯誤位置資訊時,即該非揮發性記憶體4所儲存的該系統事件記錄有包括該錯誤位置資訊時,則執行步驟S2。而當該中央處理單元7判斷該非揮發性記憶體4沒有儲存該錯誤位置資訊時,即該非揮發性記憶體4所儲存的所有該系統事件記錄均沒有包括該錯誤位置資訊時,則執行步驟S5。
另外要特別補充說明的是:該基板管理控制器3的部分功用在於:該中央處理單元7可以周期性或非週期性自該非揮發性記憶體4將該系統事件記錄(SEL)傳送至該基板管理控制器3,以供該基板管理控制器3儲存並選擇性地傳送到一遠端電腦。
於步驟S2,該中央處理單元7執行該基本輸入輸出系統程式並在開機的過程中,讀取該錯誤位置資訊,並省略對應該錯誤位置資訊的該至少一主記憶體5所要作的開機檢測。此外,該中央處理單元7還根據省略開機檢測的資訊(例如哪一個DIMM插槽省略開機檢測)更新至該系統事件記錄。接著,執行步驟S3。
於步驟S3,該中央處理單元7將對應該錯誤位置資訊的該至少一主記憶體5的資訊(例如哪一個DIMM插槽省略開機檢測)傳送至該顯示單元6以進行顯示。接著,執行步驟S4。
於步驟S4,該中央處理單元7繼續檢測未被省略開機檢測的其他該等主記憶體5。接著,執行步驟S5。
於步驟S5,該中央處理單元7依序判斷該等主記憶體5是否發生記憶體錯誤,其中,該中央處理單元7還包括多個記憶體控制模組及一中央控制模組,該等記憶體控制模組分別對應該等主記憶體5,該中央處理單元7透過該等記憶體控制模組藉由讀寫該等主記憶體以判斷其所分別對應的該等主記憶體的運作狀態是否處於運作正常及運作異常其中一者。當其中一該主記憶體5處於運作異常,則對應之該記憶體控制模組傳送一記憶體錯誤通知至該中央控制模組,以供該中央控制模組判斷出該運作於運作異常的該主記憶體5發生錯誤。當該中央處理單元7判斷該等主記憶體5沒有發生記憶體錯誤時,則執行步驟S6。而當該中央處理單元7判斷該等主記憶體5有發生記憶體錯誤時,則執行步驟S7。前述記憶體發生的錯誤例如是英特爾(Intel)公司所定義的可修正錯誤(Correctable error,CE)及不可修正錯誤(Uncorrectable error,UCE)。
於步驟S6,繼續執行開機程序。
於步驟S7,該中央處理單元7判斷是否有開啟包裝後修復(Post Package Repair,PPR)功能,此功能例如是由英特爾(Intel)公司所設計的標準。當該中央處理單元7判斷沒有開啟PPR功能時,則執行步驟S8。而當該中央處理單元7判斷有開啟PPR功能時,則執行步驟S10。
於步驟S8,該中央處理單元7將發生記憶體錯誤的位置更新至該系統事件記錄的該錯誤位置資訊,且省略對應該錯誤位置資訊的該至少一主記憶體5所要作的開機檢測。接著,執行步驟S9。
於步驟S9,該中央處理單元7將對應該錯誤位置資訊的該至少一主記憶體5的至少一序號更新至該非揮發性記憶體4的該系統事件記錄的該序列號資訊,以供後續的人員偵錯或修正相關問題。接著,執行步驟S12。
於步驟S10,該中央處理單元7對發生記憶體錯誤的該至少一主記憶體5作修復,且將對發生記憶體錯誤的該至少一主記憶體5作修復的資訊(例如哪一個DIMM插槽已修復成功)更新至該系統事件記錄。接著,執行步驟S11。
於步驟S11,該中央處理單元7還將對發生記憶體錯誤的該至少一主記憶體5作修復的資訊(例如哪一個DIMM插槽已修復成功傳送至該顯示單元6以進行顯示。接著,執行步驟S12。
於步驟S12,該中央處理單元7判斷是否已檢測所有未對應該錯誤位置資訊的該等主記憶體5。當判斷已檢測完畢時,執行步驟S6。而當判斷未檢測完畢時,執行步驟S13。
於步驟S13,該中央處理單元7檢測下一個未檢測的該主記憶體5。接著,執行步驟S5。
綜上所述,藉由該非揮發性記憶體4儲存該錯誤位置資訊,使得該中央處理單元7執行該基本輸入輸出系統程式而在開機的過程中,能夠根據該錯誤位置資訊獲得前次已發生記憶體錯誤的該至少一主記憶體5是在哪個位置,進而省略對該至少一主記憶體5作開機檢測,而能有效地節省開機的時間。更詳細地說,該中央處理單元7執行該基本輸入輸出系統程式而在開機的過程中,逐一檢查並初始化及啟用所有檢測過且預設設定值為啟用的所有硬體。但是,依據本案的技術,在開機的過程中,若於该非揮發性記憶體4取得該錯誤位置資訊,則直接隔離及省略檢測該錯誤位置資訊所對應的主記憶體,且也不對該錯誤位置資訊對應的主記憶體做後續的初始化及啟動的觸發,或是在當次開機過程有檢測到故障的主記憶體,則不對故障的該主記憶體做初始化及啟用的動作。藉此,該故障的主記憶體就會繼續處於未被初始化或未被啟動的停用的狀態,進而達到使該故障的主記憶體離線的效果,以達到本案的該中央處理單元7於開機過程僅初始化及啟動正常運作的主記憶體,而不初始化及不啟動被檢測到故障的該主記憶體,且不(重新)檢測及不初始化及不啟動曾經在先前開機被檢測到故障而記錄於該非揮發性記憶體的故障的主記憶體。因此,能夠加速開機所耗費的時間,以達到更有效率的開機過程。
藉此,本案不需要於前次開機時藉由人工修改BIOS設定參數來隔離故障的主記憶體,以避免BIOS韌體更新時,所修改的BIOS設定參數被一併更新,而造成人工修改BIOS的設定參數資料遺失。本案能夠直接將故障的主記憶體之錯誤位置資訊儲存於不是用來儲存BIOS韌體的該非揮發性記憶體4,或是不會受到BIOS韌體更新影響的記憶體區塊,來儲存對應故障的該主記憶體的該錯誤位置資訊,並於每次開機時,讀取該非揮發性記憶體4,以隔離該非揮發性記憶體所儲存的錯誤位置資訊所對應的主記憶體,以更為穩定且有效率的進行系統開機,故確實能達成本發明的目的。
惟以上所述者,僅為本發明的實施例而已,當不能以此限定本發明實施的範圍,凡是依本發明申請專利範圍及專利說明書內容所作的簡單的等效變化與修飾,皆仍屬本發明專利涵蓋的範圍內。
1:電腦系統 2:基本輸入輸出系統晶片 3:基板管理控制器 4:非揮發性記憶體 5:主記憶體 6:顯示單元 7:中央處理單元 8:平台路徑控制器 S1~S13:步驟
本發明的其他的特徵及功效,將於參照圖式的實施方式中清楚地呈現,其中: 圖1是一方塊圖,說明本發明開機方法所適用的一電腦系統;及 圖2是一流程圖,說明本發明開機方法的一實施例。
S1~S13:步驟

Claims (10)

  1. 一種開機方法,適用於一電腦系統,該電腦系統包含一中央處理單元、一平台路徑控制器、一電連接該平台路徑控制器的非揮發性記憶體、及多個主記憶體,該開機方法包含: (A)藉由該中央處理單元執行一基本輸入輸出系統程式以進行開機,並在開機的過程中判斷該非揮發性記憶體所儲存的一系統事件記錄(System event log,SEL)是否儲存有該等主記憶體的一錯誤位置資訊; (B)當該中央處理單元判斷該非揮發性記憶體有儲存該錯誤位置資訊時,該中央處理單元在開機的過程中,讀取該錯誤位置資訊,並省略對應該錯誤位置資訊的該至少一主記憶體所要作的開機檢測;及 (C)當該中央處理單元判斷該非揮發性記憶體沒有儲存該錯誤位置資訊時,或者,已省略對應該錯誤位置資訊的該至少一主記憶體所要作的開機檢測之後,該中央處理單元對其餘未被省略開機檢測的該至少一主記憶體作檢測,以繼續執行開機程序。
  2. 如請求項1所述的開機方法,其中,步驟(C)還包括子步驟(C1),當該中央處理單元判斷其餘未被省略開機檢測的該至少一主記憶體沒有記憶體錯誤時,該中央處理單元繼續執行開機程序。
  3. 如請求項2所述的開機方法,其中,步驟(C)還包括子步驟(C2),當該中央處理單元判斷其餘未被省略開機檢測的該至少一主記憶體有記憶體錯誤,且該中央處理單元沒有開啟包裝後修復(Post Package Repair,PPR)功能時,該中央處理單元將發生記憶體錯誤的位置更新至該錯誤位置資訊,且省略對應該錯誤位置資訊的該至少一主記憶體所要作的開機檢測,以繼續執行開機程序。
  4. 如請求項3所述的開機方法,其中,步驟(C)還包括子步驟(C3),當該中央處理單元判斷其餘未被省略開機檢測的該至少一主記憶體有記憶體錯誤,且該中央處理單元有開啟包裝後修復(Post Package Repair,PPR)功能時,該中央處理單元對發生記憶體錯誤的該至少一主記憶體作修復,以繼續執行開機程序。
  5. 如請求項4所述的開機方法,其中,在步驟(B)中,該中央處理單元還將省略開機檢測的資訊更新至該系統事件記錄。
  6. 如請求項5所述的開機方法,其中,在子步驟(C2)中,該中央處理單元還將對應該錯誤位置資訊的該至少一主記憶體的至少一序號更新至該非揮發性記憶體的該系統事件記錄。
  7. 如請求項6所述的開機方法,其中,在子步驟(C3)中,該中央處理單元還將對發生記憶體錯誤的該至少一主記憶體作修復的資訊更新至該系統事件記錄。
  8. 如請求項7所述的開機方法,該電腦系統還包含一顯示單元,其中,在步驟(B)中,該中央處理單元還將對應該錯誤位置資訊的該至少一主記憶體的資訊傳送至該顯示單元以進行顯示。
  9. 如請求項8所述的開機方法,其中,在子步驟(C2)中,該中央處理單元還將對應該錯誤位置資訊的該至少一主記憶體的資訊傳送至該顯示單元以進行顯示。
  10. 如請求項9所述的開機方法,其中,在子步驟(C3)中,該中央處理單元還將對發生記憶體錯誤的該至少一主記憶體作修復的資訊傳送至該顯示單元以進行顯示。
TW109134054A 2020-09-30 2020-09-30 開機方法 TWI777259B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
TW109134054A TWI777259B (zh) 2020-09-30 2020-09-30 開機方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW109134054A TWI777259B (zh) 2020-09-30 2020-09-30 開機方法

Publications (2)

Publication Number Publication Date
TW202215239A TW202215239A (zh) 2022-04-16
TWI777259B true TWI777259B (zh) 2022-09-11

Family

ID=82197496

Family Applications (1)

Application Number Title Priority Date Filing Date
TW109134054A TWI777259B (zh) 2020-09-30 2020-09-30 開機方法

Country Status (1)

Country Link
TW (1) TWI777259B (zh)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW576965B (en) * 2002-10-21 2004-02-21 Inventec Corp Method for automatically switching booting mode
TWI241482B (en) * 2002-09-30 2005-10-11 Yu-Mei Li Built-in power-on memory testing method of computer
US20090287900A1 (en) * 2008-05-14 2009-11-19 Joseph Allen Kirscht Reducing Power-On Time by Simulating Operating System Memory Hot Add
TW201209715A (en) * 2010-08-17 2012-03-01 Wistron Corp Method and system for accelerating boot
TWI474260B (zh) * 2009-02-16 2015-02-21 Asustek Comp Inc 電腦系統與其主機板上之記憶體電路和開機方法
TWI552158B (zh) * 2012-08-28 2016-10-01 皇虎科技(加拿大)有限公司 用於測試記憶體之系統與方法
TW201918880A (zh) * 2017-11-01 2019-05-16 英業達股份有限公司 開機前檢測裝置及檢測後開機的方法

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI241482B (en) * 2002-09-30 2005-10-11 Yu-Mei Li Built-in power-on memory testing method of computer
TW576965B (en) * 2002-10-21 2004-02-21 Inventec Corp Method for automatically switching booting mode
US20090287900A1 (en) * 2008-05-14 2009-11-19 Joseph Allen Kirscht Reducing Power-On Time by Simulating Operating System Memory Hot Add
TWI474260B (zh) * 2009-02-16 2015-02-21 Asustek Comp Inc 電腦系統與其主機板上之記憶體電路和開機方法
TW201209715A (en) * 2010-08-17 2012-03-01 Wistron Corp Method and system for accelerating boot
TWI552158B (zh) * 2012-08-28 2016-10-01 皇虎科技(加拿大)有限公司 用於測試記憶體之系統與方法
TW201918880A (zh) * 2017-11-01 2019-05-16 英業達股份有限公司 開機前檢測裝置及檢測後開機的方法

Also Published As

Publication number Publication date
TW202215239A (zh) 2022-04-16

Similar Documents

Publication Publication Date Title
US20240012706A1 (en) Method, system and apparatus for fault positioning in starting process of server
US6564348B1 (en) Method and apparatus for storing and using chipset built-in self-test signatures
US7266727B2 (en) Computer boot operation utilizing targeted boot diagnostics
WO2021169260A1 (zh) 一种系统板卡电源检测方法、装置、设备及存储介质
US9606889B1 (en) Systems and methods for detecting memory faults in real-time via SMI tests
US7661044B2 (en) Method, apparatus and program product to concurrently detect, repair, verify and isolate memory failures
US8166338B2 (en) Reliable exception handling in a computer system
US9218893B2 (en) Memory testing in a data processing system
US11379330B2 (en) Information handling systems and related methods for testing memory during boot and during operating system (OS) runtime
US6550019B1 (en) Method and apparatus for problem identification during initial program load in a multiprocessor system
US10691565B2 (en) Storage control device and storage control method
TWI759719B (zh) 快閃記憶體控制器及用於快閃記憶體控制器的方法
US6725396B2 (en) Identifying field replaceable units responsible for faults detected with processor timeouts utilizing IPL boot progress indicator status
CN113366576A (zh) 用于存储器系统上的功率损耗操作的保持自测试
US10777296B2 (en) Information handling system and method to dynamically detect and recover from thermally induced memory failures
US9343181B2 (en) Memory module errors
WO2019184612A1 (zh) 一种终端及电子设备
TWI777259B (zh) 開機方法
US11263083B1 (en) Method and apparatus for selective boot-up in computing devices
CN114385247A (zh) 开机方法
US8626992B2 (en) Storage device with identification information
TWI845166B (zh) 記憶體模組錯誤之顯示方法
US20230134493A1 (en) Updating error policy
US8438431B2 (en) Support element office mode array repair code verification
JP2008191864A (ja) データ処理装置及びその起動方法

Legal Events

Date Code Title Description
GD4A Issue of patent certificate for granted invention patent