TWI819957B - 上電初始化自我檢查裝置與方法以及使用其之電子設備 - Google Patents
上電初始化自我檢查裝置與方法以及使用其之電子設備 Download PDFInfo
- Publication number
- TWI819957B TWI819957B TW112103571A TW112103571A TWI819957B TW I819957 B TWI819957 B TW I819957B TW 112103571 A TW112103571 A TW 112103571A TW 112103571 A TW112103571 A TW 112103571A TW I819957 B TWI819957 B TW I819957B
- Authority
- TW
- Taiwan
- Prior art keywords
- power
- program
- check
- backup system
- main system
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 68
- 230000008569 process Effects 0.000 claims description 24
- 230000010355 oscillation Effects 0.000 claims description 11
- 230000004913 activation Effects 0.000 claims description 4
- 230000006641 stabilisation Effects 0.000 claims description 3
- 238000011105 stabilization Methods 0.000 claims description 3
- 238000013461 design Methods 0.000 description 16
- 230000026676 system process Effects 0.000 description 8
- 238000002360 preparation method Methods 0.000 description 5
- 238000001514 detection method Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 230000002093 peripheral effect Effects 0.000 description 4
- 239000003990 capacitor Substances 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 238000012790 confirmation Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000002474 experimental method Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000003672 processing method Methods 0.000 description 2
- XUIMIQQOPSSXEZ-UHFFFAOYSA-N Silicon Chemical compound [Si] XUIMIQQOPSSXEZ-UHFFFAOYSA-N 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 238000012938 design process Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 238000011423 initialization method Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 229910052710 silicon Inorganic materials 0.000 description 1
- 239000010703 silicon Substances 0.000 description 1
Images
Abstract
一種上電初始化自我檢查裝置與方法以及使用其之電子設備,此上電初始化自我檢查方法係利用內建一備用系統,並將上電步驟分為一必要執行項目欄位以及一非必要執行項目欄位。當檢查未通過的電源啟用程序步驟在非必要執行項目欄位,根據的備用解決方案執行該檢查未通過的電源啟用程序步驟以繼續進行主系統電源啟用程序檢查表。
Description
本發明涉及一種上電初始化的技術,且特別是一種上電初始化自我檢查裝置與方法以及使用其之電子設備。
微處理器(MCU)有各式各樣的應用,所以來自電源端的上下電也是有各種形式,例如上下電斜率有快有慢,不同電壓準位,二次上下電等等。微處理器(MCU)為了因應各種上下電形式,所以內建了上電重置(Power on Reset,PoR),低電壓重置(Low Voltage Reset,LVR),電壓奏降偵測(Brown-Out Detection,BOD)以及各種數位整合類比的穩定交握機制,才能讓微處理器成功啟動(boot),可以正常跑代碼(code)。
在設計初期,即便盡可能模擬及設想所有上下電條件,但是因為應用在新產品的新設計,故可能會有新的省電設計或新的加密設計,亦或是更嚴謹的上下電交握機制。所以新的積體電路難以涵蓋所有上下電波形,而會導致在某些上下電波形下,微處理器啟動失敗,就是新設計還存在著匱乏處,即
使為了這個匱乏處立即進行積體電路改版,改版時程可能需要好幾個月,對於正在進行的使用無法產生立即性的支援效果。
本發明的一目的在於提供一種上電初始化自我檢查裝置、上電初始化自我檢查方法以及使用其之電子設備,用以當主系統的微處理器在上電初始化時,在上下電交握機制中,非必要執行項目欄位卡住導致無法運行,藉由備用系統,忽略或繞過非必要執行項目欄位,以使主系統的微處理器可以繼續完成上電初始化。
本發明的實施例提供了一種上電初始化自我檢查方法,包括下列步驟:提供一微處理器以及一備用系統;提供一主系統電源啟用程序檢查表,包含該微處理器的該電源啟用程序,其中,該主系統電源啟用程序檢查表包括一必要執行項目欄位以及一非必要執行項目欄位;對該微處理器以及該備用系統進行一電源啟用程序(Power On Sequence);當該備用系統的電源啟用程序執行完畢,檢查一主系統電源啟用程序檢查表以判定該微處理器的電源啟用程序執行完成與否;當該微處理器的電源啟用程序未執行完成,根據該主系統電源啟用程序檢查表,判定檢查未通過的電源啟用程序步驟是否在該非必要執行項目欄位;以及當檢查未通過的電源啟用程序步驟在該非必要執行項目欄位,根據對應的備用解決方案執行檢查未通過的電源啟用程序步驟以繼續進行主系統電源啟用程序檢查表。
本發明的實施例提供了一種上電初始化自我檢查裝置,用以在電源啟動程序時,對一微處理器進行一電源啟用程序(Power On Sequence),其
中,此上電初始化自我檢查裝置包括一備用系統以及一主系統電源啟用程序檢查表。主系統電源啟用程序檢查表包含該微處理器的該電源啟用程序,其中,主系統電源啟用程序檢查表包括一必要執行項目欄位以及一非必要執行項目欄位。當備用系統電源啟用程序啟用完畢,檢查主系統電源啟用程序檢查表以判定微處理器的電源啟用程序執行完成與否。當微處理器的電源啟用程序未執行完成,根據主系統電源啟用程序檢查表,判定檢查未通過的電源啟用程序步驟是否在非必要執行項目欄位。當檢查未通過的電源啟用程序步驟在非必要執行項目欄位,根據欄位的備用解決方案執行檢查未通過的電源啟用程序步驟以繼續進行主系統電源啟用程序檢查表。
依照本發明一較佳實施例中的上電初始化自我檢查裝置與上電初始化自我檢查方法,上述進行根據該欄位的備用解決方案執行該檢查未通過的電源啟用程序步驟後,更包括將檢查未通過的電源啟用程序步驟的旗標設置為真以繼續進行電源啟用程序。
依照本發明一較佳實施例中的上電初始化自我檢查裝置與上電初始化自我檢查方法,上述備用系統電源啟用程序啟用完畢,檢查主系統電源啟用程序檢查表,判定微處理器的電源啟用程序已經執行完成,則進行關閉備用系統程序。
依照本發明一較佳實施例中的上電初始化自我檢查裝置與上電初始化自我檢查方法,上述備用系統更包括一備用系統振盪電路、一非揮發性記憶體以及一備用系統穩壓器電路。備用系統振盪電路用以提供備用系統一備用時脈訊號。非揮發性記憶體用以儲存主系統電源啟用程序檢查表。備用系統穩壓器電路用以提供一備用系統穩壓電壓給備用系統振盪電路以及非揮發性記
憶體。當備用系統啟動時,確認備用系統電源重置電壓、備用系統穩壓電壓以及備用時脈訊號是否運作正常。
依照本發明一較佳實施例中的上電初始化自我檢查裝置與上電初始化自我檢查方法,上述備用系統電源啟用程序啟用完畢,檢查該主系統電源啟用程序檢查表,判定微處理器的電源啟用程序已經執行完成,關閉備用系統電源重置電壓、備用系統穩壓電壓以及備用時脈訊號以關閉備用系統。
依照本發明一較佳實施例中的上電初始化自我檢查裝置與上電初始化自我檢查方法,上述非必要執行項目欄位包括一可忽略項目欄位以及一可解決項目欄位。在一較佳實施例中,可忽略項目欄位包括至少一電路區塊致能旗標欄位。當電路區塊致能旗標欄位未依照電源啟用程序步驟設置為真,包括:檢查對應的一電路區塊是否成功啟動;以及若對應的電路區塊已成功啟動,將電路區塊致能旗標欄位忽略以繼續進行主系統電源啟用程序檢查表。
在另一較佳實施例中,可忽略項目欄位包括至少一訊號穩定旗標欄位。當訊號穩定旗標欄位未依照電源啟用程序步驟設置為真,包括:檢查對應的一訊號是否穩定;以及若對應的該訊號已經穩定,將該訊號穩定旗標欄位忽略以繼續進行主系統電源啟用程序檢查表。
在另一較佳實施例中,可忽略項目欄位包括至少一錯誤旗標欄位。當錯誤旗標欄位未依照電源啟用程序步驟設置為假,包括:檢查是否有錯誤發生;以及若錯誤未發生,將該錯誤旗標欄位忽略以繼續進行主系統電源啟用程序檢查表。
在另一較佳實施例中,可解決項目欄位包括一內部振盪器錯誤旗標欄位。當內部振盪器錯誤旗標欄位未依照電源啟用程序步驟設置為真,包括:
檢查對應的一內部振盪器是否輸出;以及若該內部振盪器未輸出,透過備用系統,切換到一第二內部振盪器,以繼續進行主系統電源啟用程序檢查表。
在另一較佳實施例中,可解決項目欄位包括一時脈濾波屏蔽欄位。當時脈濾波屏蔽欄位未依照電源啟用程序步驟設置為假,包括:檢查對應的一內部時脈是否輸出;以及若內部時脈未輸出,透過備用系統,關閉時脈濾波裝置,以繼續進行主系統電源啟用程序檢查表。
在另一較佳實施例中,可解決項目欄位包括一時脈濾波屏蔽欄位。當時脈濾波屏蔽欄位未依照電源啟用程序步驟設置為假,包括:檢查對應的一內部時脈是否輸出;以及若該內部時脈未輸出,透過備用系統,降低該內部時脈之頻率,以繼續進行主系統電源啟用程序檢查表。
在另一較佳實施例中,可解決項目欄位包括一主系統準備完成欄位。當主系統準備完成欄位超過一預定時間未被設置為真,包括:透過備用系統,對該微處理器進行重置。。
另外,本發明實施例提供一種電子設備,包含上述上電初始化自我檢查裝置。
綜上所述,本發明之精神在於利用一備用系統,並且在主系統電源啟用程序檢查表中,區分出一必要執行項目欄位以及一非必要執行項目欄位。藉由備用系統快速啟動的特性,讓備用系統得以檢查主系統在哪個步驟卡住,並藉由檢查所卡住的步驟,判斷是否在非必要執行項目欄位中。當所卡住的步驟在非必要執行項目欄位中,備用系統便可依照非必要執行項目欄位的對應解決方案進行解決。
為了進一步理解本發明的技術、手段和效果,可以參考以下詳細描述和附圖,從而可以徹底和具體地理解本發明的目的、特徵和概念。然而,以下詳細描述和附圖僅用於參考和說明本發明的實現方式,其並非用於限制本發明。
101:微處理器
102:週邊裝置
20:上電初始化自我檢查裝置
201:備用系統
202:非揮發性記憶體
203:備用系統振盪電路
204:備用系統穩壓器電路
S30:主系統上電初始化流程
S31:本發明一較佳實施例的備用系統流程
S32:系統啟動
S401~S410:本發明一較佳實施例的上電初始化之主系統上電初始化流程的各個步驟
S501~S508:本發明一較佳實施例的備用系統流程S31的各個步驟
提供的附圖用以使本發明所屬技術領域具有通常知識者可以進一步理解本發明,並且被併入與構成本發明之說明書的一部分。附圖示出了本發明的示範實施例,並且用以與本發明之說明書一起用於解釋本發明的原理。
圖1繪示為本發明一較佳實施例的電子設備之電路方塊圖。
圖2繪示為本發明一較佳實施例的微處理器101之電路方塊圖。
圖3繪示為本發明一較佳實施例的上電初始化自我檢查方法之流程圖。
圖4繪示為本發明一較佳實施例的上電初始化之主系統上電初始化流程S30的流程圖。
圖5繪示為本發明一較佳實施例的上電初始化之備用系統流程S31的流程圖。
現在將詳細參考本發明的示範實施例,其示範實施例會在附圖中被繪示出。在可能的情況下,在附圖和說明書中使用相同的元件符號來指代相
同或相似的部件。另外,示範實施例的做法僅是本發明之設計概念的實現方式之一,下述的該等示範皆非用於限定本發明。
圖1繪示為本發明一較佳實施例的電子設備之電路方塊圖。請參考圖1,此電子設備包括一微處理器101以及一週邊裝置102。上述週邊裝置係由微處理器101所控制。圖2繪示為本發明一較佳實施例的微處理器101之電路方塊圖。請參考第2圖,此微處理器101包括一上電初始化自我檢查裝置20,此上電初始化自我檢查裝置20係以一備用系統201實施,此備用系統201可以利用一處理能力較小且獨立的微處理器實施。另外,此備用系統201在此實施例中,還包括一非揮發性記憶體202、一備用系統振盪電路203以及一備用系統穩壓器電路204。非揮發性記憶體202在此實施例中,例如是用以儲存主系統電源啟用程序檢查表,其中,上述主系統電源啟用程序檢查表包括電源啟用程序的一必要執行項目欄位以及一非必要執行項目欄位。此部份在後續實施例中再行說明。
在此實施例中,主系統(微處理器101)需要較為複雜的上電初始程序(Power on Sequence或Power on Initial),通常會需要確認許多電源、訊號穩定、IP啟動與否、或訊號穩定與否等,故需要的啟動時間較長。而備用系統201則僅需要確認1、備用系統穩壓器電路204是否輸出正常;2、備用系統振盪電路203是否輸出正常;以及3、啟動重置(Power on Reset)是否完成。故備用系統201在啟動完成後,開始輔助主系統(微處理器101)進行上電初始化程序。
圖3繪示為本發明一較佳實施例的上電初始化之流程圖。請參考圖3,在此實施例中,上電初始化方法包括一主系統上電初始化流程S30、一備
用系統流程S31以及系統啟動S32。又,上述備用系統流程S31包含了本發明較佳實施例的上電初始化自我檢查方法流程。
圖4繪示為本發明一較佳實施例的上電初始化之主系統上電初始化流程S30的流程圖。請參考第4圖,在此實施例中,接續在確認POR(Power on Reset)50電壓準位之後,主系統上電初始化流程S30包括下列步驟:
步驟S401:主系統電源啟用程序檢查表初始化。一般來說,對於主系統還沒啟用前,每一個電路區塊(矽智財電路,IP)應該都是關閉的(disable)。
步驟S402:等待LDO(低壓差線性穩壓器)電壓越過POR15電位。
步驟S403:判斷接收到LDO Ready訊號。
步驟S404:針對主系統電源啟用程序檢查表上的每一個需要打開(enable)或關上(disable)的電路區塊(IP)依序執行。
步驟S405:等待電源電壓VDD越過低壓重置(Low Voltage Reset,LVR)電壓準位。
步驟S406:進行一電源穩定延遲(Power on Stable Delay)時間。一般來說,實施方式例如是用內部高速電阻電容式振盪電路(Internal High Speed RC Oscillator,HIRC)計數65535次。
步驟S407:檢查非揮發性記憶體內容是否正常。
步驟S408:載入非揮發性記憶體的內容與配置(Reload ROMMAP and Configuration)。
步驟S409:判斷電源電壓是否越過電壓奏降偵測(BOD)準位。
步驟S410:檢查安全金鑰。最終確認後才會進入系統啟動S32步驟。
本領域具有通常知識者應當知道,上述步驟S401~S410根據不同的上電初始化設計,會有不同的步驟流程,不同的產品設計,亦會有不同的流程。舉例來說,根據電子設備的週邊數目或其他設計不同,主系統電源啟用程序檢查表也會改變。再舉例來說,步驟S403、S405、S406是否必要,也是根據產品設計不同而產生的選擇性設計。故上述流程僅是為了說明本發明所作的舉例,本發明不以此為限。
圖5繪示為本發明一較佳實施例的上電初始化之備用系統流程S31的流程圖。請參考第5圖,在此實施例中,同樣地,接續在確認POR(Power on Reset)50電壓準位之後,此備用系統流程S31包括下列步驟:
步驟S501:備用系統201啟用程序初始化。在此實施例中,備用系統201的啟用程序僅有3個,分別是bLDO、bPOR以及bOSC,其分別表示備用系統穩壓器電路204輸出電壓、備用系統啟動重置以及備用系統振盪電路203輸出訊號。由此步驟的例子可以看出,備用系統201的啟動檢查項目(item)數目遠低於主系統的電源檢查表之檢查項目。故備用系統201在一般情況下,會比主系統的MCU更快完成啟動初始化程序。
步驟S502:打開bPOR,等待bLDO電壓越過bPOR準位之後打開bOSC,計數一段時間。
步驟S503:檢查非揮發性記憶體內容是否正常。若正常可執行步驟S504。
步驟S504:判斷主系統的微處理器在一預定時間內,是否完成上電初始化。若確認完成上電初始化,則進行步驟S505。若未完成上電初始化,則進行步驟S506。
步驟S505:關閉備用系統201。若完成上電初始化,則備用系統201功能已經達成,故關閉備用系統201以節省功率消耗。
步驟S506:讀取目前主系統的微處理器101的上電初始化正在哪個步驟。
步驟S507:判斷所卡住的步驟是否在主系統電源啟用程序檢查表中的非必要執行項目欄位。若判斷所卡住的步驟在非必要執行項目欄位,則進行步驟S508。
步驟S508:依照非必要執行項目欄位中,對應的解決方法進行排除錯誤。
上述實施例中,步驟S501~S502係備用系統的上電步驟,依照不同設計,上述上電步驟亦可以不同。本發明不以此為限。再者,上述步驟S505亦可以根據不同設計,不關閉備用系統。本發明亦不以此為限。
上述實施例中,必要執行項目欄位一般會包括幾個項目。舉例來說,POR50這個IP為微處理器101上電的第一步驟,必須正常才能開啟上電程序。另外,在上電過程中,電源電壓VDD或低壓差線性穩壓器(LDO)電壓越過低電壓重置(LVR)電壓準位、上電重置(POR)電壓準位、或電壓奏降偵測(BOD)電壓準位等,必須等待一段時間(待電源穩定或充飽電容的時間),避免上述電源電壓有短時脈衝波形干擾(glitch),使得微處理器101工作不正常。再者,因為微處理器101執行程序都是從非揮性發記憶體,例如快閃記憶
體(Flash Memory)擷取資料(fetch data),所以類似步驟S407的「檢查非揮發性記憶體內容是否正常」不可略過。
上述實施例中,所謂的「非必要執行項目欄位」在此實施例中,可以包括可忽略項目欄位以及可解決項目欄位。可忽略項目欄位舉例來說例如電路區塊致能旗標欄位、電路區塊禁能旗標欄位、訊號穩定旗標欄位、錯誤旗標欄位、準備完成訊號欄位等等。這些旗標有可能在設計的過程中,卡的太過嚴謹,或著一時時序(timing)沒有被抓到,或是因不同情況,邏輯判斷錯誤,導致上電初始化過程中,卡在主系統電源啟用程序檢查表裡面,造成死迴圈(dead loop)無法跳脫出來。
針對可忽略項目欄位的處理方式,在本發明的較佳實施例中,本發明較佳實施例的備用系統201針對上述的旗標欄位中的錯誤,一一進行比對,例如一電路區塊致能(禁能)旗標欄位未依照電源啟用程序步驟設置為真,則檢查對應的一電路區塊是否成功啟動(或關閉)。若對應的電路區塊已成功啟動(或關閉),將電路區塊致能(禁能)旗標欄位忽略以繼續進行主系統電源啟用程序檢查表。同樣的,當該訊號穩定旗標欄位未依照電源啟用程序步驟設置為真,則檢查對應的一訊號是否穩定。若對應的訊號已經穩定,將此訊號穩定旗標欄位忽略以繼續進行主系統電源啟用程序檢查表。同樣的,當錯誤旗標欄位未依照電源啟用程序步驟設置為假,檢查是否有錯誤發生。若錯誤未發生,將錯誤旗標欄位忽略以繼續進行主系統電源啟用程序檢查表。其他以此類推。藉此,可以讓上電初始化得以跳脫死迴圈。上述實施例中,若某個IP設計上有匱乏處,亦可以採用暫時關閉或繞過它,避免卡在互相交握的流程之中出不來。換句話說,上述電路區塊是否成功啟動關閉、檢查對應的一訊號是否穩定以及
檢查是否有錯誤發生也可以完全不進行,直接忽略上述對應的旗標,故本發明不以此為限。
上述實施例中,非必要執行項目欄位的可解決項目欄位舉例來說例如內部振盪器跑不起來導致內部振盪器錯誤旗標欄位被設為真、內部振盪器被時脈濾波(Clock Filter)給濾掉導致時脈濾波屏蔽欄位被設為真等。上述情況,同樣會導致上電初始化過程中,卡在主系統電源啟用程序檢查表裡面,造成死迴圈(dead loop)無法跳脫出來。
針對的處理方式,在本發明的較佳實施例中,針對上述內部振盪器錯誤旗標欄位被設置為真時,備用系統201會檢查對應的一內部振盪器是否輸出,若內部振盪器未輸出,備用系統201會將主系統接收振盪器的接收端切換到一第二內部振盪器,以繼續進行主系統電源啟用程序檢查表。在此實施例中,主系統的微處理器101內部包含了一個內部主振盪器以及一第二內部振盪器,第二內部振盪器是較為低頻的振盪器,在上述情況下,切換到較為低頻的第二內部振盪器,即便損失部份運算能力,亦可以讓主系統的微處理器101繼續電源啟用程序。
針對上述內部振盪器被時脈濾波給濾掉導致時脈濾波屏蔽欄位被設為真時,可能是高溫或某個特定條件造成,在此實施例中,有兩種解決備案:1、可以透過備用系統201,關閉時脈濾波;2、透過備用系統201把內部振盪器的頻率調慢或者調整內部振盪器的電流參數。藉此,以繼續進行主系統電源啟用程序檢查表。
再者,在此實施例中,可解決項目欄位還包含一主系統準備完成欄位。一般來說,當主系統的微處理器101必須在例如步驟S504中所設定的一
預定時間內啟動完成。若微處理器101無法完成啟動,則會進入本發明實施例的步驟S506~步驟S509執行。然若執行完畢步驟S506~步驟S509後,仍然在超過一預定時間後,無法啟動完成,導致準備完成欄位未被設置為真,此時,備用系統201便會對微處理器101進行重置,讓微處理器101重新進行一次上電初始化。
另外,上述備用系統201的非揮發性記憶體202除了用來儲存主系統電源啟用程序檢查表外,還用以紀錄檢查未通過的電源啟用程序步驟發生次數與解決狀況。工程師可以藉由讀取非揮發性記憶體202中所紀錄的上下電失敗的狀態,減少做實驗的時間,同時也節省後續除錯(debug)時間。
由上述實施例,可以看出,本發明實施例是可以暫時繞過上電初始化(Power on Initial)設計上的匱乏處,或者屏蔽掉某些還不成熟的電路(IP)區塊,藉此節省好幾個月的積體電路改版時間,讓正在進行的使用得到立即性的支援效果,等到後續積體電路改版完成,再以已修復錯誤(bug fixed)的改版積體電路取而代之。
申請人在實驗過程中,曾經因積體電路考慮省電設計,在上下電過程中,沒有抓到LDO ready(低壓差線性穩壓器準備)訊號,導致卡在上電程序出不來。另外,積體電路考慮加密設計,曾經在上下電過程中,誤觸加密設定,導致微處理器不能正常跑。又曾經未考慮內部高速電阻電容式振盪電路(HIRC)在高溫時震盪頻率變快,導致過不了時脈濾波器的截止頻率,使微處理器在高溫下強迫停止。在上述實施例中,由於有備用系統201,故可以暫時繞過上述有問題的程序,使行銷人員可及時回應市場(time to market),產生對正在進行的使用施以立即性的支援的功效。另外,上述實施例的備用系統具有記
錄的功效,故可以紀錄曾經上下電失敗的狀態,方便日後追查,所以除錯(Debug)時間可大大的被縮短。再者,由於本案具有備用系統,就算是已賣到客戶手上的積體電路,不需等待漫長改版,透過備用系統暫時先關閉或繞過上述問題,例如修改備用系統的主系統電源啟用程序檢查表(boot_table),同樣可以在短時間內,讓客戶的使用排程不因積體電路未涵蓋某些上下電波形而導致的微處理器啟動失敗而中斷。
綜合以上所述,本發明之精神在於利用一備用系統,並且在主系統電源啟用程序檢查表中,區分出一必要執行項目欄位以及一非必要執行項目欄位。藉由備用系統快速啟動的特性,讓備用系統得以檢查主系統在哪個步驟卡住,並藉由檢查所卡住的步驟,判斷是否在非必要執行項目欄位中。當所卡住的步驟在非必要執行項目欄位中,備用系統便可依照對應解決方案進行解決。由於有備用系統,當主系統因故進入死循環時,可以用備用系統進行解除,也可以藉由備用系統紀錄主系統無法正常啟動原因,藉此減少後續開發案的除錯時間。
應當理解,本文描述的示例和實施例僅用於說明目的,並且鑑於其的各種修改或改變將被建議給本領域技術人員,並且將被包括在本申請的精神和範圍以及所附權利要求的範圍之內。
S501~S509:本發明一較佳實施例的備用系統流程S31的各個步驟
Claims (15)
- 一種上電初始化自我檢查方法,包括:提供一微處理器以及一備用系統;提供一主系統電源啟用程序檢查表,包含該微處理器的一電源啟用程序,其中,該主系統電源啟用程序檢查表包括該電源啟用程序的一必要執行項目欄位以及一非必要執行項目欄位;對該微處理器進行該電源啟用程序(Power On Sequence);其中,當該備用系統啟用完畢,檢查該主系統電源啟用程序檢查表以判定該微處理器的電源啟用程序執行完成與否;當該微處理器的電源啟用程序未執行完成,根據該主系統電源啟用程序檢查表,判定檢查未通過的電源啟用程序步驟是否在該非必要執行項目欄位;當該檢查未通過的電源啟用程序步驟在該非必要執行項目欄位,根據對應的備用解決方案執行該檢查未通過的電源啟用程序步驟以繼續進行該主系統電源啟用程序檢查表。
- 根據請求項1所述之上電初始化自我檢查方法,更包括:提供一非揮發性記憶體;將該檢查未通過的電源啟用程序步驟發生次數與解決狀況紀錄至該非揮發性記憶體。
- 根據請求項1所述之上電初始化自我檢查方法,其中該非必要執行項目欄位包括: 一可忽略項目欄位;以及一可解決項目欄位。
- 根據請求項3所述之上電初始化自我檢查方法,其中,該可忽略項目欄位包括:至少一電路區塊致能旗標欄位;其中,當該電路區塊致能旗標欄位未依照電源啟用程序步驟設置為一預設狀態,包括:檢查對應的一電路區塊是否成功啟動;以及若對應的該電路區塊已成功啟動,將該電路區塊致能旗標欄位忽略以繼續進行主系統電源啟用程序檢查表。
- 根據請求項3所述之上電初始化自我檢查方法,其中,該可忽略項目欄位包括:至少一訊號穩定旗標欄位;其中,當該訊號穩定旗標欄位未依照電源啟用程序步驟設置為一預設狀態,包括:檢查對應的一訊號是否穩定;以及若對應的該訊號已經穩定,將該訊號穩定旗標欄位忽略以繼續進行主系統電源啟用程序檢查表。
- 根據請求項3所述之上電初始化自我檢查方法,其中,該可忽略項目欄位包括:至少一錯誤旗標欄位;其中,當該錯誤旗標欄位未依照電源啟用程序步驟設置為一預設狀態,包括:檢查是否有錯誤發生;以及若錯誤未發生,將該錯誤旗標欄位忽略以繼續進行主系統電源啟用程序檢查表。
- 一種上電初始化自我檢查裝置,用以在電源啟動程序時,對一微處理器進行一電源啟用程序(Power On Sequence),其中,該上電初始化自我檢查裝置包括:一備用系統;一主系統電源啟用程序檢查表,包含該微處理器的該電源啟用程序,其中,該主系統電源啟用程序檢查表包括該電源啟用程序的一必要執行項目欄位以及一非必要執行項目欄位,其中,當該備用系統啟用完畢,檢查該主系統電源啟用程序檢查表以判定該微處理器的電源啟用程序執行完成與否,當該微處理器的電源啟用程序未執行完成,根據該主系統電源啟用程序檢查表,判定檢查未通過的電源啟用程序步驟是否在該非必要執行項目欄位, 當該檢查未通過的電源啟用程序步驟在該非必要執行項目欄位,根據對應的備用解決方案執行該檢查未通過的電源啟用程序步驟以繼續進行該主系統電源啟用程序檢查表。
- 根據請求項7所述之上電初始化自我檢查裝置,其中,該備用系統更包括:一非揮發性記憶體,用以儲存該主系統電源啟用程序檢查表,其中,該備用系統用以將檢查未通過的電源啟用程序步驟發生次數與解決狀況紀錄至該非揮發性記憶體。
- 根據請求項8所述之上電初始化自我檢查裝置,該備用系統更包括:一備用系統振盪電路,用以提供該備用系統一備用時脈訊號;以及一備用系統穩壓器電路,用以提供一備用系統穩壓電壓給該備用系統振盪電路以及該非揮發性記憶體,其中,該備用系統啟動時,確認一備用系統電源重置電壓、該備用系統穩壓電壓以及該備用時脈訊號是否運作正常。
- 根據請求項9所述之上電初始化自我檢查裝置,其中,該備用系統電源啟用程序啟用完畢,檢查該主系統電源啟用程序檢查表,判定該微處理器的電源啟用程序已經執行完成,關閉該備用系統電源重置電壓、該備用系統穩壓電壓以及該備用時脈訊號以關閉該備用系統。
- 根據請求項7所述之上電初始化自我檢查裝置,當該備用系統電源啟用程序啟用完畢,檢查該主系統電源啟用程序檢查表,判定該微處理器的電源啟用程序已經執行完成,則進行關閉備用系統程序。
- 根據請求項7所述之上電初始化自我檢查裝置,該非必要執行項目欄位包括:一可忽略項目欄位;以及一可解決項目欄位。
- 根據請求項12所述之上電初始化自我檢查裝置,其中,該可忽略項目欄位包括:至少一電路區塊致能旗標欄位;其中,當該電路區塊致能旗標欄位未依照電源啟用程序步驟設置為一預設狀態,包括:檢查對應的一電路區塊是否成功啟動;以及若對應的該電路區塊已成功啟動,將該電路區塊致能旗標欄位忽略以繼續進行主系統電源啟用程序檢查表。
- 根據請求項12所述之上電初始化自我檢查裝置,其中,該可忽略項目欄位包括:至少一訊號穩定旗標欄位;其中,當該訊號穩定旗標欄位未依照電源啟用程序步驟設置為一預設狀態,包括: 檢查對應的一訊號是否穩定;以及若對應的該訊號已經穩定,將該訊號穩定旗標欄位忽略以繼續進行主系統電源啟用程序檢查表。
- 一種電子設備,包括:如請求項7~14其中一項所述之上電初始化自我檢查裝置;以及一微處理器。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW112103571A TWI819957B (zh) | 2023-02-02 | 2023-02-02 | 上電初始化自我檢查裝置與方法以及使用其之電子設備 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW112103571A TWI819957B (zh) | 2023-02-02 | 2023-02-02 | 上電初始化自我檢查裝置與方法以及使用其之電子設備 |
Publications (1)
Publication Number | Publication Date |
---|---|
TWI819957B true TWI819957B (zh) | 2023-10-21 |
Family
ID=89858081
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW112103571A TWI819957B (zh) | 2023-02-02 | 2023-02-02 | 上電初始化自我檢查裝置與方法以及使用其之電子設備 |
Country Status (1)
Country | Link |
---|---|
TW (1) | TWI819957B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104572206A (zh) * | 2015-01-14 | 2015-04-29 | 厦门为那通信科技有限公司 | 应用程序自更新和备份恢复的方法 |
CN109885342A (zh) * | 2019-02-25 | 2019-06-14 | 深圳警翼智能科技股份有限公司 | 一种执法记录仪的系统程序修复方法 |
CN111008099A (zh) * | 2018-10-08 | 2020-04-14 | 新唐科技股份有限公司 | 自我检测系统及其方法 |
CN114895950A (zh) * | 2022-04-28 | 2022-08-12 | 上海瑞浦青创新能源有限公司 | 程序和引导层自更新方法及系统 |
-
2023
- 2023-02-02 TW TW112103571A patent/TWI819957B/zh active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104572206A (zh) * | 2015-01-14 | 2015-04-29 | 厦门为那通信科技有限公司 | 应用程序自更新和备份恢复的方法 |
CN111008099A (zh) * | 2018-10-08 | 2020-04-14 | 新唐科技股份有限公司 | 自我检测系统及其方法 |
CN109885342A (zh) * | 2019-02-25 | 2019-06-14 | 深圳警翼智能科技股份有限公司 | 一种执法记录仪的系统程序修复方法 |
CN114895950A (zh) * | 2022-04-28 | 2022-08-12 | 上海瑞浦青创新能源有限公司 | 程序和引导层自更新方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8694830B2 (en) | Debug registers for halting processor cores after reset or power off | |
US6974252B2 (en) | Failsafe mechanism for preventing an integrated circuit from overheating | |
US8151130B2 (en) | Plural voltage level detection upon power drop for switching to standby mode with or without complete state saving interrupt processing | |
US4573117A (en) | Method and apparatus in a data processor for selectively disabling a power-down instruction | |
US10649487B2 (en) | Fail-safe clock monitor with fault injection | |
US20170249224A1 (en) | Semiconductor device | |
CN104142726B (zh) | 芯片复位保护方法与芯片 | |
JP4393954B2 (ja) | マイクロコンピュータ | |
US9697065B1 (en) | Systems and methods for managing reset | |
TWI819957B (zh) | 上電初始化自我檢查裝置與方法以及使用其之電子設備 | |
US9495239B1 (en) | User-configurable error handling | |
JP2008225929A (ja) | 情報処理装置 | |
JP4308735B2 (ja) | 半導体回路 | |
US5546588A (en) | Method and apparatus for preventing a data processing system from entering a non-recoverable state | |
US20110307731A1 (en) | Method capable of preventing erroneous data writing and computer system | |
US20210089430A1 (en) | Chip having debug memory interface and debug method thereof | |
De Carvalho et al. | Increasing the fault coverage of processor devices during the operational phase functional test | |
JP5756413B2 (ja) | 制御装置 | |
JP2010231607A (ja) | エミュレータ | |
JP2017199180A (ja) | 画像処理装置 | |
Dolev et al. | Stabilization enabling technology | |
Peng | On-chip system protection basics for HCS08 microcontrollers | |
TWI386816B (zh) | System with automatic switch machine scheduling and automatic switching machine scheduling control method | |
JPS60124734A (ja) | Cpuに対する割込み処理装置 | |
US20190179394A1 (en) | Method and module for programmable power management, and system on chip |