專利名稱::固件管理系統(tǒng)及方法
技術(shù)領(lǐng)域:
:本發(fā)明涉及一種固件讀寫技術(shù),特別涉及一種固件管理系統(tǒng)及方法。
背景技術(shù):
:現(xiàn)代的計(jì)算機(jī)系統(tǒng)中,包含有多樣的存儲裝置。有些內(nèi)存單元被稱為易失(volatile)存儲裝置,亦即是在計(jì)算機(jī)電源關(guān)閉之后,存在于此類內(nèi)存的數(shù)據(jù)隨即消失。有些內(nèi)存單元被稱為非易失(non-volatile)存儲裝置,亦即是在計(jì)算機(jī)電源關(guān)閉之后,存在于此類內(nèi)存的數(shù)據(jù)并不會消失。易失存儲裝置,如動態(tài)存取內(nèi)存(DynamicRandomAccessMemory;DRAM),特別是指同步動態(tài)存取內(nèi)存(SynchronousDRAM;SDRAM),可以被用來達(dá)成許多功能一般用來儲存主系統(tǒng)程序(mainsystemprogram)。計(jì)算機(jī)在開機(jī)完成之后,會先將操作系統(tǒng)加載主系統(tǒng)內(nèi)存(mainsystemmemory)中。當(dāng)使用者開啟應(yīng)用程序,應(yīng)用程序會從硬盤、光盤等儲存設(shè)備加載到主系統(tǒng)內(nèi)存中,以供進(jìn)一步執(zhí)行使用。主系統(tǒng)內(nèi)存也可在程序執(zhí)行期間,用來暫存數(shù)據(jù)、組態(tài)(configuration)或其它信息。非易失內(nèi)存用來儲存可執(zhí)行碼(executablecode),讓計(jì)算機(jī)可以在每次開機(jī)的時后執(zhí)行,這些碼又被稱為固件(firmware)。舉例來說,大部分計(jì)算機(jī)都會有一組可執(zhí)行程序,稱為基本輸入/輸出系統(tǒng)(BasicInput/OutputSystem;BIOS),用來操作不同種類的輸出入裝置,例如軟盤、硬盤等。這些BIOS可執(zhí)行碼被永久儲存在非易失存儲裝置中,稱為只讀存儲器(ReadOnlyMemory;ROM)。但在某些情況下,儲存在只讀存儲裝置上的固件因加強(qiáng)或除錯的需要而更新,有些種類的只讀存儲裝置,例如可電子擦除程序只讀存儲器(ElectricallyErasableProgrammableReadOnlyMemory;EEPROM),允許其儲存的內(nèi)容被更新。想更新EEPROM中的固件,必須先抹去原有固件,再將新的固件完整寫入內(nèi)存中。除了現(xiàn)代的計(jì)算機(jī)系統(tǒng)外,輸出入裝置(I/Odevice)、通信裝置、嵌入式裝置(embeddeddevice)或其它電子裝置,亦包含有易失(volatile)存儲裝置以及非易失(non-volatile)存儲裝置。輸出入裝置包括光讀取裝置(opticalreaddrives)、光學(xué)讀寫裝置(opticalread/writedrives)、硬式磁盤裝置(harddrivedevice)、隨身碟裝置(portabledrivedevice)、顯示裝置(displaydevice)、掃描裝置(scanningdevice)、打印機(jī)(printer)或其它輸出入裝置。通信裝置包括手機(jī)、無線接取點(diǎn)(accesspoint)、橋接器(bridge)、集線器(hub)、路由器(router)、轉(zhuǎn)換器(switch)或其它類似的裝置。嵌入式裝置包括個人數(shù)字助理(personaldigitalassistant;PDA)、光盤播放器(CDplayer)、數(shù)字激光視盤撥放機(jī)(DVDplayer)、游戲機(jī)、家用服務(wù)器(homeserver)或其它類似的裝置。舉例來說,圖1是表示已知的光儲存裝置硬件架構(gòu)示意圖,光儲存媒體讀取裝置10包含一機(jī)械裝置11、一控制單元12與一數(shù)據(jù)讀取組件13。數(shù)據(jù)讀寫組件13包含光學(xué)讀寫頭(opticalhead),從光儲存媒體讀取數(shù)據(jù)或?qū)懭霐?shù)據(jù)到光儲存媒體。機(jī)械裝置11至少包含主軸馬達(dá)??刂茊卧?2包含芯片(chip)/芯片組(chipset)121、一存儲裝置122以及一易失性存儲裝置(未顯示)。存儲裝置122為一非易失性存儲裝置(non-volatilememorydevice),諸如電子可擦除可編程只讀存儲器(ElectricallyErasableProgrammableReadOnlyMemory;EEPROM)、快閃只讀存儲器(FlashROM)或其它不會因電源切斷而造成數(shù)據(jù)消失的內(nèi)存,用以儲存包含程序指令的固件(firmware)。芯片(chip)/芯片組(chipset)121包含處理單元122。處理單元122加載并執(zhí)行固件的程序指令,控制芯片/芯片組121,執(zhí)行數(shù)據(jù)讀寫功能。數(shù)據(jù)讀取組件13、機(jī)械裝置11以及控制單元12是光儲存裝置中最重要的組件。通常,電源開啟(poweron)、電源復(fù)位(powerreset)或不穩(wěn)定供電(unstablepowersupply)常會損壞非易失存儲裝置中所儲存的固件,而造成計(jì)算機(jī)系統(tǒng)、輸出入裝置、通信裝置、嵌入式裝置或其它電子裝置無法運(yùn)作。傳統(tǒng)的解決方法為由使用者下載一份正確的固件,寫入到非易失存儲裝置中,取代已損壞的固件。雖然此人工方法可解決固件損壞的問題,但會花費(fèi)使用者的時間,并造成使用者的不方便。因此,需要一固件管理的系統(tǒng)及方法,用以自動檢查并修復(fù)固件的錯誤,避免使用者花費(fèi)時間修復(fù)錯誤的光儲存裝置固件。
發(fā)明內(nèi)容本發(fā)明的目提供一種固件管理系統(tǒng)及方法,將固件編碼成為可除錯的編碼數(shù)據(jù),并在計(jì)算機(jī)系統(tǒng)、輸出入裝置、通信裝置、嵌入式裝置或其它電子裝置啟動時,自動修復(fù)錯誤的編碼數(shù)據(jù),進(jìn)一步取得正常的固件。依據(jù)上述目的,本發(fā)明的固件管理系統(tǒng),包括第一非易失存儲裝置、第二非易失存儲裝置、芯片以及處理單元。第一非易失存儲裝置儲存第一編碼數(shù)據(jù),而第一編碼數(shù)據(jù)包含多個程序指令碼以及多個錯誤修正碼(errorcorrectioncode),且錯誤修正碼被混插入程序指令碼中。程序指令碼則包含光儲存裝置的固件(firmware)。錯誤修正碼包括相應(yīng)于混插式Reed-Solomon碼(Cross-InterleavedReed-SolomonCode;CIRC)、循環(huán)冗余檢查碼(cyclicredundancycheckcode;CRCC)、converlotion碼、漢明碼(Hammingcode)、Trelix碼或數(shù)據(jù)加密標(biāo)準(zhǔn)(DataEncryptionStandard;DES)的數(shù)碼。第二非易失存儲裝置儲存一固件執(zhí)行模塊。芯片包含錯誤修正方法以及譯碼方法。處理單元由第二非易失存儲裝置加載并執(zhí)行固件執(zhí)行模塊,用以接收第一編碼數(shù)據(jù),而當(dāng)?shù)谝痪幋a數(shù)據(jù)錯誤時,使用相應(yīng)于錯誤修正碼的一錯誤修正方法,依據(jù)其中的錯誤修正碼修正第一編碼數(shù)據(jù)成為第二編碼數(shù)據(jù),使用相應(yīng)于錯誤修正碼的譯碼方法,由第二編碼數(shù)據(jù)取得程序指令碼,并且儲存第二編碼數(shù)據(jù)至第一非易失存儲裝置。另當(dāng)?shù)谝痪幋a數(shù)據(jù)正常時,使用相應(yīng)于錯誤修正碼的譯碼方法,由第一編碼數(shù)據(jù)取得上述程序指令碼。最后,啟動程序指令碼。依據(jù)上述目的,本發(fā)明提出一固件管理方法,被一處理單元加載并執(zhí)行,其方法包括下列步驟由非易失存儲裝置接收第一編碼數(shù)據(jù),第一編碼數(shù)據(jù)包含多個程序指令碼以及多個錯誤修正碼,而錯誤修正碼被混插入程序指令碼中;當(dāng)上述第一編碼數(shù)據(jù)錯誤時,使用相應(yīng)于錯誤修正碼的錯誤修正方法,依據(jù)檢查碼修正第一編碼數(shù)據(jù)成為第二編碼數(shù)據(jù),使用相應(yīng)于錯誤修正碼的譯碼方法,由第二編碼數(shù)據(jù)取得程序指令碼,儲存第二編碼數(shù)據(jù)至非易失存儲裝置;當(dāng)?shù)谝痪幋a數(shù)據(jù)正常時,使用相應(yīng)于錯誤修正碼的譯碼方法,由第一編碼數(shù)據(jù)取得程序指令碼;以及啟動程序指令碼。依據(jù)上述目的,本發(fā)明更提出另一固件管理方法,被一處理單元加載并執(zhí)行,其方法包括下列步驟取得相應(yīng)于光儲存裝置的固件中的多個程序指令碼;使用一編碼方法,編碼程序指令碼成為編碼數(shù)據(jù),編碼數(shù)據(jù)包含上述程序指令碼以及多個錯誤修正碼,錯誤修正碼被混插入上述程序代碼中,用以決定編碼數(shù)據(jù)正確與否;以及儲存編碼數(shù)據(jù)至非易失存儲裝置。其中,程序指令碼可由一網(wǎng)站下載而得。為使本發(fā)明的上述目的、特征和優(yōu)點(diǎn)能更明顯易懂,下文特舉實(shí)施例,并配合附圖,進(jìn)行詳細(xì)說明如下圖1是表示已知的光儲存裝置硬件架構(gòu)示意圖。圖2是表示依據(jù)本發(fā)明實(shí)施例的電子裝置硬件架構(gòu)示意圖。圖3是表示依據(jù)本發(fā)明實(shí)施例的固件管理的固件加載與執(zhí)行方法的方法流程圖。圖4是表示依據(jù)本發(fā)明實(shí)施例的固件管理的固件寫入方法的方法流程圖。附圖符號說明11-機(jī)械裝置;12-控制單元;13-數(shù)據(jù)讀寫組件;121-芯片/芯片組;122-處理單元;123-存儲裝置;20-電子裝置;22-控制單元;221-芯片/芯片組;222-處理單元;223-第一非易失存儲裝置;224-第二非易失存儲裝置;225-易失存儲裝置;S311、S321、...、S341、S351-操作步驟;S511、S512、S513-操作步驟。具體實(shí)施例方式本發(fā)明的目的是提供一種固件管理系統(tǒng)及方法,將固件編碼成為可除錯的編碼數(shù)據(jù),并在計(jì)算機(jī)系統(tǒng)、輸出入裝置、通信裝置、嵌入式裝置或其它電子裝置啟動時,自動修復(fù)錯誤的編碼數(shù)據(jù),進(jìn)一步取得正常的固件。圖2是表示依據(jù)本發(fā)明實(shí)施例的電子裝置硬件架構(gòu)示意圖,電子裝置20包含一控制單元22。電子裝置20可以為各式各樣的計(jì)算機(jī)系統(tǒng)、輸出入裝置(I/Odevice)、通信裝置、嵌入式裝置(embeddeddevice)或其它電子裝置。輸出入裝置包括光讀取裝置(opticalreaddrives)、光學(xué)讀寫裝置(opticalread/writedrives)、硬式磁盤裝置(harddrivedevice)、隨身碟裝置(portabledrivedevice)、顯示裝置(displaydevice)、掃描裝置(scanningdevice)、打印機(jī)(printer)或其它輸出入裝置。通信裝置包括手機(jī)、無線接取點(diǎn)(accesspoint)、橋接器(bridge)、集線器(hub)、路由器(router)、轉(zhuǎn)換器(switch)或其它類似的裝置。嵌入式裝置包括個人數(shù)字助理(personaldigitalassistant;PDA)、光盤播放器(CDplayer)、數(shù)字激光視盤撥放機(jī)(DVDplayer)、游戲機(jī)、家用服務(wù)器(homeserver)或其它類似的裝置??刂茊卧?2包含一芯片(chip)/芯片組(chipset)221、一第二非易失存儲裝置(non-volatilememorydevice)224,諸如電子可擦除可編程只讀存儲器(ElectricallyErasableProgrammableReadOnlyMemory;EEPROM)、快閃只讀存儲器(FlashROM)或其它不會因電源切斷而造成數(shù)據(jù)消失的內(nèi)存,以及一易失存儲裝置(volatilememorydevice)225,諸如動態(tài)存取內(nèi)存(DynamicRandomAccessMemory;DRAM)、同步動態(tài)存取內(nèi)存(SynchronousDRAM;SDRAM)或其它會因電源切斷而造成數(shù)據(jù)消失的內(nèi)存。芯片/芯片組221包含處理單元222以及第一非易失存儲裝置223。熟習(xí)此技藝人士皆知,處理單元222、第一非易失存儲裝置223、第二非易失存儲裝置224以及易失存儲裝置225中的任一者,可設(shè)置在芯片/芯片組221中或芯片/芯片組221外。第二非易失存儲裝置224儲存一編碼數(shù)據(jù),此編碼數(shù)據(jù)包含固件(firmware)的程序指令碼以及錯誤修正碼。錯誤修正碼可被一編碼方法混插入固件的程序代碼中,用以驗(yàn)證程序指令碼的正確性,并且可被至少一修正方法所利用以修復(fù)錯誤的程序指令碼。錯誤修正碼包括相應(yīng)于混插式Reed-Solomon碼(Cross-InterleavedReed-SolomonCode;CIRC)、循環(huán)冗余檢查碼(cyclicredundancycheckcode;CRCC)、converlotion碼、漢明碼(Hammingcode)、Trelix碼或數(shù)據(jù)加密標(biāo)準(zhǔn)(DataEncryptionStandard;DES)的數(shù)碼。考量修正效率,上述修復(fù)方法在較佳情況下,存在于芯片/芯片組221的實(shí)體邏輯中,但并不限定于此,其亦可以存在于第一非易失存儲裝置223、第二非易失存儲裝置224以及易失存儲裝置中之一者。除修正方法外,芯片/芯片組221、第一非易失存儲裝置223、第二非易失存儲裝置224以及易失存儲裝置中之一者,亦可包含相應(yīng)于編碼數(shù)據(jù)的一譯碼方法以及一錯誤檢測方法。譯碼方法用以從編碼數(shù)據(jù)中取得固件的程序指令碼,而錯誤檢測方法用以檢測編碼數(shù)據(jù)中的錯誤數(shù)據(jù)位置。第一非易失存儲裝置223,在較佳的情況下為一屏蔽只讀存儲器(maskROM),包含一由程序代碼所組成的固件執(zhí)行模塊,用以在電子裝置20啟動時,被處理單元222加載并執(zhí)行。詳細(xì)執(zhí)行流程如下所示。圖3是表示依據(jù)本發(fā)明實(shí)施例的固件管理的固件加載與執(zhí)行方法的方法流程圖。此方法開始于步驟S311,由第二非易失存儲裝置224中,加載一第一編碼數(shù)據(jù),此編碼數(shù)據(jù)包含一固件(firmware)的程序指令碼以及檢查碼。檢查碼可被一編碼方法混插入固件的程序指令碼中,用以驗(yàn)證程序指令碼的正確性,并且可被一錯誤修正方法所利用以修復(fù)錯誤的數(shù)據(jù)編碼。此編碼數(shù)據(jù)可由一非易失存儲裝置中加載。如步驟S321,使用一錯誤檢測方法檢測第一編碼數(shù)據(jù)是否存在錯誤數(shù)據(jù),是則執(zhí)行步驟S331,否則執(zhí)行步驟S341。如步驟S341,使用一譯碼方法,由第一編碼數(shù)據(jù)中取得固件。此譯碼方法可以存在于芯片/芯片組221中或軟件程序代碼中,而考量檢測效率,上述譯碼方法在較佳情況下,存在于芯片/芯片組221中。如步驟S331,使用一修復(fù)方法,修正第一編碼數(shù)據(jù)成為沒有錯誤的第二編碼數(shù)據(jù)。此譯碼方法可以存在于芯片/芯片組221中或軟件程序代碼中,而考量修正效率,上述修復(fù)方法在較佳情況下,存在于芯片/芯片組221中。如步驟S332,儲存第二編碼數(shù)據(jù)至原先所加載的儲存裝置。但須注意的是,當(dāng)原先所加載的儲存裝置為只讀存儲裝置,或因其它考量,此步驟可省略。如步驟S333,使用上述譯碼方法,從第二編碼數(shù)據(jù)中取得固件。最后,如步驟S351,加載并執(zhí)行固件。依據(jù)上述目的,本發(fā)明更提出一固件管理的固件寫入方法,本方法由處理單元222所執(zhí)行。圖4是表示依據(jù)本發(fā)明實(shí)施例的固件管理的固件寫入方法的方法流程圖。此方法開始于步驟S511,取得電子裝置20固件的程序指令碼。取得方式可通過各式各樣的網(wǎng)絡(luò),諸如局域網(wǎng)絡(luò)、無線局域網(wǎng)絡(luò)、因特網(wǎng)或無線電信網(wǎng)絡(luò)(wirelesstelephonynetwork),下載,或由一儲存裝置接收。如步驟S512,使用一編碼方法,編碼固件成為一編碼數(shù)據(jù),此編碼數(shù)據(jù)包含一固件的程序指令碼以及錯誤修正碼。錯誤修正碼可被上述編碼方法混插入固件的程序指令碼中,用以驗(yàn)證程序指令碼的正確性,并且可被一錯誤修正方法所利用以修復(fù)錯誤的數(shù)據(jù)編碼。錯誤修正碼可包括相應(yīng)于混插式Reed-Solomon碼(Cross-InterleavedReed-SolomonCode;CIRC)、循環(huán)冗余檢查碼(cyclicredundancycheckcode;CRCC)、converlotion碼、漢明碼(Hammingcode)、Trelix碼或數(shù)據(jù)加密標(biāo)準(zhǔn)(DataEncryptionStandard;DES)的數(shù)碼。如步驟S513,儲存編碼數(shù)據(jù)至電子裝置20中的第二非易失存儲裝置224。雖然本發(fā)明的實(shí)施例揭露如上,然其并非用以限定本發(fā)明,任何熟悉此項(xiàng)技藝者,在不脫離本發(fā)明的精神和范圍內(nèi),當(dāng)可做些許更動與潤飾,因此本發(fā)明的保護(hù)范圍當(dāng)視后附的申請專利范圍所界定者為準(zhǔn)。權(quán)利要求1.一種固件管理系統(tǒng),其包括一第一非易失存儲裝置,設(shè)置在一電子裝置中,儲存一第一編碼數(shù)據(jù),上述第一編碼數(shù)據(jù)包含一程序指令碼以及一錯誤修正碼,上述錯誤修正碼被插入上述程序指令碼中;一第二非易失存儲裝置,設(shè)置在上述電子裝置中,儲存一由程序代碼組成的固件執(zhí)行模塊;以及一處理單元,設(shè)置在上述電子裝置中,用以由上述第二非易失存儲裝置加載并執(zhí)行上述固件執(zhí)行模塊,用以接收上述第一編碼數(shù)據(jù),其中,當(dāng)上述第一編碼數(shù)據(jù)錯誤時,依據(jù)上述錯誤修正碼修正上述第一編碼數(shù)據(jù),并取得上述程序指令碼,啟動上述程序指令碼。2.如權(quán)利要求1所述的固件管理系統(tǒng),其中,上述固件執(zhí)行模塊當(dāng)上述第一編碼數(shù)據(jù)正常時,使用上述譯碼方法,由上述第一編碼數(shù)據(jù)取得上述程序指令碼,啟動上述程序指令碼。3.如權(quán)利要求1所述的固件管理系統(tǒng),其中,當(dāng)上述第一編碼數(shù)據(jù)錯誤時,使用一錯誤修正方法,依據(jù)上述錯誤修正碼修正上述第一編碼數(shù)據(jù)成為一第二編碼數(shù)據(jù),使用一譯碼方法,由上述第二編碼數(shù)據(jù)取得上述程序指令碼,啟動上述程序指令碼。4.如權(quán)利要求3所述的固件管理系統(tǒng),其中,上述固件執(zhí)行模塊儲存上述第二編碼數(shù)據(jù)至上述第一非易失存儲裝置。5.如權(quán)利要求4所述的固件管理系統(tǒng),其中,上述固件執(zhí)行模塊當(dāng)上述第一編碼數(shù)據(jù)正常時,使用上述譯碼方法,由上述第一編碼數(shù)據(jù)取得上述程序指令碼,啟動上述程序指令碼。6.如權(quán)利要求5所述的固件管理系統(tǒng),更包括一芯片,包含由硬件線路實(shí)施的上述錯誤修正方法以及上述譯碼方法。7.如權(quán)利要求6所述的固件管理系統(tǒng),其中,上述錯誤修正碼錯為相應(yīng)于混插式Reed-Solomon碼、循環(huán)冗余檢查碼、converlotion碼、漢明碼、Trelix碼或數(shù)據(jù)加密標(biāo)準(zhǔn)的數(shù)碼。8.如權(quán)利要求3所述的固件管理系統(tǒng),更包括一芯片,包含由硬件線路實(shí)施的上述錯誤修正方法以及上述譯碼方法。9.如權(quán)利要求1所述的固件管理系統(tǒng),其中,上述錯誤修正碼為相應(yīng)于混插式Reed-Solomon碼、循環(huán)冗余檢查碼、converlotion碼、漢明碼、Trelix碼或數(shù)據(jù)加密標(biāo)準(zhǔn)的數(shù)碼。10.如權(quán)利要求1所述的固件管理系統(tǒng),其中,上述程序指令碼包含上述電子裝置的固件。11.一種固件管理方法,被一電子裝置中的一處理單元加載并執(zhí)行,上述電子裝置包含一非易失存儲裝置,其方法包括下列步驟由上述非易失存儲裝置接收一第一編碼數(shù)據(jù),上述第一編碼數(shù)據(jù)包含多個程序指令碼以及多個錯誤修正碼,上述錯誤修正碼被插入上述程序指令碼中;當(dāng)上述第一編碼數(shù)據(jù)錯誤時,依據(jù)上述錯誤修正碼修正上述第一編碼數(shù)據(jù),并取得上述程序指令碼;以及啟動上述程序指令碼。12.如權(quán)利要求11所述的固件管理方法,更包括一步驟,當(dāng)上述第一編碼數(shù)據(jù)正常時,使用上述譯碼方法,由上述第一編碼數(shù)據(jù)取得上述程序指令碼,啟動上述程序指令碼。13.如權(quán)利要求11所述的固件管理方法,其中,上述錯誤修正碼錯為相應(yīng)于混插式Reed-Solomon碼、循環(huán)冗余檢查碼、converlotion碼、漢明碼、Trelix碼或數(shù)據(jù)加密標(biāo)準(zhǔn)的數(shù)碼。14.如權(quán)利要求11所述的固件管理方法,其中,上述程序指令碼包含上述光儲存裝置的固件。15.如權(quán)利要求11所述的固件管理方法,在取得程序指令碼步驟中,當(dāng)上述第一編碼數(shù)據(jù)錯誤時,使用一錯誤修正方法,依據(jù)上述錯誤修正碼修正上述第一編碼數(shù)據(jù)成為一第二編碼數(shù)據(jù),使用一譯碼方法,由上述第二編碼數(shù)據(jù)取得上述程序指令碼。16.如權(quán)利要求15所述的固件管理方法,其中,上述錯誤修正方法以及上述譯碼方法被包含在一芯片的實(shí)體線路中。17.如權(quán)利要求16所述的固件管理方法,更包括一步驟,儲存上述第二編碼數(shù)據(jù)至上述非易失存儲裝置。18.如權(quán)利要求17所述的固件管理方法,更包括一步驟,當(dāng)上述第一編碼數(shù)據(jù)正常時,使用上述譯碼方法,由上述第一編碼數(shù)據(jù)取得上述程序指令碼,啟動上述程序指令碼。19.如權(quán)利要求18所述的固件管理方法,其中,上述錯誤修正方法以及上述譯碼方法被包含在一芯片的實(shí)體線路中。20.如權(quán)利要求19所述的固件管理方法,其中,上述錯誤修正碼錯為相應(yīng)于混插式Reed-Solomon碼、循環(huán)冗余檢查碼、converlotion碼、漢明碼、Trelix碼或數(shù)據(jù)加密標(biāo)準(zhǔn)的數(shù)碼。21.一種固件管理方法,被一計(jì)算機(jī)中的一處理單元加載并執(zhí)行,上述計(jì)算機(jī)耦接至一電子裝置,上述電子裝置具有一非易失存儲裝置,其方法包括下列步驟取得相應(yīng)于上述電子裝置的固件中的一程序指令碼;使用一編碼方法,編碼上述程序指令碼成為一編碼數(shù)據(jù),上述編碼數(shù)據(jù)包含上述程序指令碼以及一錯誤修正碼,上述錯誤修正碼被插入上述程序代碼中,用以決定上述編碼數(shù)據(jù)正確與否;以及儲存上述編碼數(shù)據(jù)至上述電子裝置中的一非易失存儲裝置。22.如權(quán)利要求21所述的固件管理方法,其中,上述程序指令碼由一網(wǎng)站下載而得。23.如權(quán)利要求21所述的固件管理方法,其中,上述錯誤修正碼錯為相應(yīng)于混插式Reed-Solomon碼、循環(huán)冗余檢查碼、converlotion碼、漢明碼、Trelix碼或數(shù)據(jù)加密標(biāo)準(zhǔn)的數(shù)碼。全文摘要一種固件管理系統(tǒng),設(shè)置在一電子裝置中,包括第一非易失存儲裝置、第二非易失存儲裝置以及處理單元。第一非易失存儲裝置儲存第一編碼數(shù)據(jù),而第一編碼數(shù)據(jù)包含多個程序指令碼以及多個檢查碼,且檢查碼被混插入程序指令碼中。第二非易失存儲裝置儲存一固件執(zhí)行模塊。處理單元由第二非易失存儲裝置加載并執(zhí)行固件執(zhí)行模塊,用以接收第一編碼數(shù)據(jù),而當(dāng)?shù)谝痪幋a數(shù)據(jù)錯誤時,使用一錯誤修正方法,依據(jù)檢查碼修正第一編碼數(shù)據(jù)成為第二編碼數(shù)據(jù),并且使用一譯碼方法,由第二編碼數(shù)據(jù)取得程序指令碼,啟動程序指令碼。文檔編號G06F11/10GK1728102SQ200410054939公開日2006年2月1日申請日期2004年7月26日優(yōu)先權(quán)日2004年7月26日發(fā)明者潘天惠申請人:明基電通股份有限公司