基于S3C44B0X的Bootloader設(shè)計(jì)與實(shí)現(xiàn)
在Bootloader stage1部分的最后是堆棧的設(shè)置,由于ARM有5種異常模式,每一種模式的堆棧指針寄存器(SP)都是獨(dú)立的,因此,對(duì)程序中需要用到的每一種模式都要給SP定義一個(gè)堆棧地址。以中止模式SP堆棧地址的定義為例:
ORR r1,r0,#ABORTMODE|NOINT
MSR cpsr_cxsf,r1
LDR sp,=AbortStack
至此,匯編語(yǔ)言程序段的任務(wù)基本完成,執(zhí)行命令BL Main 轉(zhuǎn)到由C語(yǔ)言編寫(xiě)的核心程序,操作系統(tǒng)的內(nèi)核就可通過(guò)該C程序加載到RAM,獲得對(duì)系統(tǒng)的控制權(quán)。
Bootloader的Stage2部分主要用于導(dǎo)入操作系統(tǒng)內(nèi)核,一般通過(guò)串口建立連接,以獲取命令、打印與用戶(hù)的交流信息等,這里限于篇幅不再加以詳述。
5.結(jié)束語(yǔ)
作為嵌入式系統(tǒng)軟件的最底層,Bootloader是系統(tǒng)上電后啟動(dòng)運(yùn)行的第一個(gè)程序,類(lèi)似于PC機(jī)上的BIOS,主要負(fù)責(zé)整個(gè)硬件系統(tǒng)的初始化和軟件系統(tǒng)啟動(dòng)的準(zhǔn)備工作。Bootloader是嵌入式系統(tǒng)開(kāi)發(fā)的重點(diǎn)和難點(diǎn),也是系統(tǒng)運(yùn)行的一個(gè)基本前提條件。設(shè)計(jì)和實(shí)現(xiàn)一個(gè)好的Bootloader,可以大大增強(qiáng)系統(tǒng)的穩(wěn)定性,提高系統(tǒng)的實(shí)時(shí)性。
本論文創(chuàng)新觀點(diǎn)是:設(shè)計(jì)了具有較高性?xún)r(jià)比的ARM7核心板,結(jié)合實(shí)際應(yīng)用詳細(xì)分析了S3C44B0X的存儲(chǔ)空間映射,設(shè)計(jì)實(shí)現(xiàn)的基于S3C44B0X的 Bootloader具有典型代表性、良好的健壯性和可移植性,只須有針對(duì)性的稍加修改,就可應(yīng)用到各種類(lèi)似的嵌入式平臺(tái)中,對(duì)進(jìn)一步開(kāi)發(fā)復(fù)雜系統(tǒng)的 Bootloader具有很好的借鑒和啟發(fā)作用。
本項(xiàng)目經(jīng)濟(jì)效益(30萬(wàn)元),包括Internet接入設(shè)備研制、GPRS網(wǎng)絡(luò)接入設(shè)備研制和GPRS-Internet網(wǎng)關(guān)軟件研制三部分。 Internet接入設(shè)備由數(shù)據(jù)前端采集盒和嵌入式ARM系統(tǒng)構(gòu)成,嵌入式ARM系統(tǒng)通過(guò)串口接收單片機(jī)發(fā)來(lái)的數(shù)據(jù)并將這些數(shù)據(jù)利用TCP/IP協(xié)議通過(guò)網(wǎng)線發(fā)送到噪聲數(shù)據(jù)中心。
參考文獻(xiàn):
[1]白偉平等.基于ARM的嵌入式Bootloader淺析[J].微計(jì)算機(jī)信息,2006,4-2:99-100
[2]夏靖波等.嵌入式系統(tǒng)原理與開(kāi)發(fā)[M].西安電子科技大學(xué)出版社.2006
[3]Samsung Limited. S3C44BOX RISC Microprocessor Datasheet[EB/OL]. 2001
[4]孫天澤等.嵌入式設(shè)計(jì)與Linux驅(qū)動(dòng)開(kāi)發(fā)指南-基于ARM9處理器[M].電子工業(yè)出版社.2006
存儲(chǔ)器相關(guān)文章:存儲(chǔ)器原理
評(píng)論