專利名稱:一種嵌入式設(shè)備的通用啟動方法
一種嵌入式設(shè)備的通用啟動方法本發(fā)明涉及嵌入式技術(shù)領(lǐng)域,尤其涉及一種嵌入式設(shè)備的通用啟動方法,以支持 采用相同CPU方案的多種不同硬件單板。近年來隨著各個(gè)行業(yè)信息化的持續(xù)深入,嵌入式系統(tǒng)因其可定制性已廣泛應(yīng)用于 網(wǎng)絡(luò)通信、消費(fèi)電子、制造、工業(yè)控制、安防系統(tǒng)等多個(gè)領(lǐng)域。與此同時(shí),市場競爭也越來越 激烈,嵌入式系統(tǒng)中的MCU及外設(shè)等硬件更新?lián)Q代很快,為了適應(yīng)軟件日益增長的功能密 度、硬件靈活的網(wǎng)絡(luò)連接、以及微功耗和低成本的需求,開發(fā)商必須及時(shí)地生產(chǎn)出滿足市場 需求的產(chǎn)品來搶占市場。而新產(chǎn)品研發(fā)的基石是要有一個(gè)高效且易于修改、維護(hù)、調(diào)試的硬 件平臺。由于產(chǎn)品的增多,嵌入式設(shè)備支持的硬件類型以及方案也會越來越多?,F(xiàn)有技術(shù) 中,通常對同種方案的每個(gè)產(chǎn)品分別進(jìn)行開發(fā)、維護(hù),這樣需要花費(fèi)大量的人力成本、更糟 糕的是增加了軟件出錯的可能性。因而有必要提出一種支持同種方案的不同產(chǎn)品的嵌入式 設(shè)備的通用啟動方法。本發(fā)明要解決的技術(shù)問題是提供一種嵌入式設(shè)備的通用啟動方法,支持相同CPU 方案的多種不同硬件單板,節(jié)省時(shí)間,降低成本和軟件出錯率。為了解決上述技術(shù)問題,本發(fā)明采用的技術(shù)方案是一種嵌入式設(shè)備的通用啟動方法,支持采用相同CPU方案的多種不同硬件單板, 該方法包括步驟增設(shè)保護(hù)分區(qū),用以存儲設(shè)備啟動類型和硬件標(biāo)識碼;編寫通用啟動程序并將其固化于flash存儲單元中,所述通用啟動程序包括支持 所述各硬件單板的相同啟動代碼部分和對應(yīng)于不同的設(shè)備啟動類型及硬件標(biāo)識碼的不同 啟動代碼部分;在設(shè)備上電時(shí),根據(jù)當(dāng)前應(yīng)用的硬件單板配置相應(yīng)的設(shè)備啟動類型和硬件標(biāo)識碼 并將其存儲于所述保護(hù)分區(qū);系統(tǒng)復(fù)位,之后從所述flash存儲單元中啟動,并根據(jù)當(dāng)前保護(hù)分區(qū)中存儲的設(shè) 備啟動類型和硬件標(biāo)識碼對當(dāng)前的硬件單板進(jìn)行配置。上述方法中,在所開發(fā)硬件單板上的存儲區(qū),如非易失性隨機(jī)訪問存儲器上增設(shè) 所述保護(hù)分區(qū)。上述方法中,若所述系統(tǒng)從flash存儲單元中啟動失敗,則重新配置設(shè)備啟動類 型和硬件標(biāo)識碼后再從flash存儲單元中啟動。本發(fā)明具有以下有益效果本發(fā)明中,針對同一方案的不同硬件單板,僅采用一套通用啟動代碼,不僅節(jié)省了開發(fā)時(shí)間和開發(fā)成本,而且降低了軟件開發(fā)、編譯時(shí)的出錯率,具有操作簡單和便于維護(hù)的 優(yōu)點(diǎn)。下面結(jié)合附圖和具體實(shí)施方式
對本發(fā)明作進(jìn)一步詳細(xì)的說明,
圖1是本發(fā)明實(shí)施例中嵌入式設(shè)備的通用啟動方法流程圖。本發(fā)明的核心思想為編寫支持同種CPU方案的不同硬件單板的通用啟動程序, 在系統(tǒng)啟動時(shí)運(yùn)行該通用啟動程序,以根據(jù)當(dāng)前的硬件單板進(jìn)行相應(yīng)處理。如圖1所示,本實(shí)施例中嵌入式設(shè)備的通用啟動方法包括以下步驟101、在設(shè)備電路板的NVRAM(非易失性隨機(jī)訪問存儲器)上增設(shè)EGIS(保護(hù)分 區(qū)),用以存儲bootType (設(shè)備啟動類型)和HwVersion (硬件標(biāo)識碼)參數(shù)信息。該步驟 中,EGIS也可設(shè)于其他存儲介質(zhì)中。102、編寫通用啟動程序并將其固化到電路板的flash存儲單元中;該通用啟動程 序?yàn)楦鶕?jù)屬于同一方案的不同硬件單板的環(huán)境參數(shù)生成的基本啟動代碼,包括相同啟動代 碼部分和與各硬件單板分別對應(yīng)的不同啟動代碼部分。103、設(shè)備上電,根據(jù)當(dāng)前應(yīng)用的硬件單板配置相應(yīng)的bootType和HwGVersion參 數(shù)并將其存儲于EGIS中。104、最小系統(tǒng)復(fù)位,之后從flash存儲單元啟動;在運(yùn)行通用啟動程序的過程中, 會根據(jù)當(dāng)前存儲的bootType及HwVersion參數(shù)信息進(jìn)行相應(yīng)的處理。105、如果啟動后所預(yù)期的功能正確實(shí)現(xiàn),如網(wǎng)口配置正確,led正常等等,則完 成調(diào)試,結(jié)束;否則,返回步驟103,重新調(diào)整bootType和HwVersion后重新復(fù)位。另外,可在計(jì)算機(jī)(服務(wù)器)一端安裝配套網(wǎng)絡(luò)傳輸協(xié)議服務(wù)器,用以升級待調(diào)試 的通用啟動程序。綜上,應(yīng)用上述方法,對于同一方案的不同產(chǎn)品,僅需采用一套通用啟動程序,跟 現(xiàn)有技術(shù)相比,大大縮短了開發(fā)周期,節(jié)省了大量的勞動成本,尤其在同一方案的不同產(chǎn)品 越多,本發(fā)明的優(yōu)越性會更明顯得體現(xiàn)。以上實(shí)施例僅用以說明本發(fā)明的技術(shù)方案而非限制,僅僅參照較佳實(shí)施例對本發(fā) 明進(jìn)行了詳細(xì)說明。本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解,可以對本發(fā)明的技術(shù)方案進(jìn)行修改 或者等同替換,而不脫離本發(fā)明技術(shù)方案的精神和范圍,均應(yīng)涵蓋在本發(fā)明的權(quán)利要求范 圍當(dāng)中。
權(quán)利要求
一種嵌入式設(shè)備的通用啟動方法,支持采用相同CPU方案的多種不同硬件單板,其特征在于,該方法包括步驟增設(shè)保護(hù)分區(qū),用以存儲設(shè)備啟動類型和硬件標(biāo)識碼;編寫通用啟動程序并將其固化于flash存儲單元中,所述通用啟動程序包括支持所述各硬件單板的相同啟動代碼部分和對應(yīng)于不同的設(shè)備啟動類型及硬件標(biāo)識碼的不同啟動代碼部分;在設(shè)備上電時(shí),根據(jù)當(dāng)前應(yīng)用的硬件單板配置相應(yīng)的設(shè)備啟動類型和硬件標(biāo)識碼并將其存儲于所述保護(hù)分區(qū);系統(tǒng)復(fù)位,之后從所述flash存儲單元中啟動,并根據(jù)當(dāng)前保護(hù)分區(qū)中存儲的設(shè)備啟動類型和硬件標(biāo)識碼對當(dāng)前的硬件單板進(jìn)行配置。
2.根據(jù)權(quán)利要求1所述的通用啟動方法,其特征在于,該方法中,在非易失性隨機(jī)訪問 存儲器上增設(shè)所述保護(hù)分區(qū)。
3.根據(jù)權(quán)利要求1所述的通用啟動方法,其特征在于,該方法中,若所述系統(tǒng)從flash 存儲單元中啟動失敗,則重新配置設(shè)備啟動類型和硬件標(biāo)識碼后再從flash存儲單元中啟 動。
全文摘要
本發(fā)明公開了一種嵌入式設(shè)備的通用啟動方法,支持采用相同CPU方案的多種不同硬件單板,包括增設(shè)保護(hù)分區(qū),用以存儲設(shè)備啟動類型和硬件標(biāo)識碼;編寫通用啟動程序并將其固化于flash存儲單元中,通用啟動程序包括支持各硬件單板的相同啟動代碼部分和對應(yīng)于不同的設(shè)備啟動類型及硬件標(biāo)識碼的不同啟動代碼部分;在設(shè)備上電時(shí),根據(jù)當(dāng)前應(yīng)用的硬件單板配置相應(yīng)的設(shè)備啟動類型和硬件標(biāo)識碼并存儲于保護(hù)分區(qū);系統(tǒng)復(fù)位,之后從flash存儲單元中啟動,并根據(jù)不同的設(shè)備啟動類型和硬件標(biāo)識碼對硬件單板進(jìn)行配置。采用本發(fā)明,節(jié)省了開發(fā)時(shí)間和開發(fā)成本,降低了軟件開發(fā)、編譯時(shí)的出錯率,且具有操作簡單和便于維護(hù)的優(yōu)點(diǎn)。
文檔編號G06F9/445GK101907997SQ20101025225
公開日2010年12月8日 申請日期2010年8月11日 優(yōu)先權(quán)日2010年8月11日
發(fā)明者李新志 申請人:深圳市共進(jìn)電子有限公司