freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于arm嵌入式的bootloader的設(shè)計(jì)與實(shí)現(xiàn)-wenkub

2022-11-27 20:48:11 本頁面
 

【正文】 否則應(yīng)用軟件就會變得過于復(fù)雜,使開發(fā)難度過大,安全性和可靠性都難以保證。不同應(yīng)用對嵌入式軟件系統(tǒng)有 不同的要求,并且隨著計(jì)算機(jī)技術(shù)的發(fā)展,這些要求也在不斷變化。嵌入式系統(tǒng)是以應(yīng)用為中心、以計(jì)算機(jī)技術(shù)為基礎(chǔ)、軟件硬件可剪裁來適應(yīng)系統(tǒng)對功能、可靠性、成本、體積、功耗嚴(yán)格要求的專用計(jì)算機(jī)系統(tǒng)。 最后,對實(shí)現(xiàn)的 bootloader 進(jìn)行了擴(kuò)展:即在闡明 ARM 嵌入式系統(tǒng)中 bootloader的一些共同點(diǎn)之后,介紹了如何對其他 ARM 系統(tǒng)進(jìn)行移植,以做到通用性。 Bootloader是嵌入式系統(tǒng)中執(zhí)行在內(nèi)核操作系統(tǒng)前的一段代碼,它的基本作用就是加載內(nèi)核鏡 像。 相應(yīng)地,這也給處理器提出了要求。它并不是最近出現(xiàn)的新技術(shù),只是隨著微電子技術(shù)和計(jì)算機(jī)技術(shù)的發(fā)展,微控制芯片功能越來越大,而嵌入微控制芯片的設(shè)備和系統(tǒng)越來越多,從而使得這種技術(shù)越來越引人注目。它對軟硬件的體積大小、成本、功耗和可靠性都提出了嚴(yán)格的要求。當(dāng)今,眾多的半導(dǎo)體廠商都生產(chǎn)基于 ARM 體系結(jié)構(gòu)的通用微處理芯片, ARM 技術(shù)已經(jīng)在當(dāng)今的嵌入式微處理器領(lǐng)域中占據(jù)了它的領(lǐng)先地位。 在實(shí)踐平臺上,本課題硬件上采用了 Intel Xscale 系列的 PXA255 作為處理器, Xscale核心是與 ARM V5TE 構(gòu)架兼容的,因此具有一定的代表性,并以此來搭建課題的硬件實(shí)踐平臺,軟件上以 Linux 作為操作系統(tǒng)。 關(guān)鍵詞 :嵌入式系統(tǒng) ARM Bootload 目錄 II 目錄 摘要 ..................................................................................................................................I Abstract ................................................................................................ 錯誤 !未定義書簽。嵌入式系統(tǒng)是將先進(jìn)的計(jì)算機(jī)技術(shù)、半導(dǎo)體技術(shù)、電子技術(shù)和各行業(yè)的具體應(yīng)用相結(jié)合后的產(chǎn)物,它是一個技術(shù)密集、資金密集、高度分散、不斷創(chuàng)新的知識集成系統(tǒng)。通常,應(yīng)用系統(tǒng)對嵌入式軟件的基本要求是體積小、執(zhí)行速度快、具有較好的可剪裁性和可移植性。 嵌入式軟件,特別是操作系統(tǒng)的支持,使得對硬件的要求越來越高。世界上幾乎所有的主要半導(dǎo)體廠商都生產(chǎn)基于 ARM 體系結(jié)構(gòu)的通用芯片,如 TI, Motorola, Intel, NS,Ateml, Philips, SAMSUNG 等。現(xiàn)在,專門為嵌入式產(chǎn)品開發(fā)的各個操作系 統(tǒng)層出不窮,WINDOW CE, POCKET PC, Linux 等等,各界關(guān)注地也特別多。如何實(shí)現(xiàn) bootloader 的基本功能,如何針對基于 ARM 體系的微處理器來實(shí)現(xiàn) bootloader,就成為本課題的一個基本論題。 緒言 在實(shí)現(xiàn)過程中具體研究開發(fā)如下 : ? 選擇基于 Intel Xscale 構(gòu)架的 PXA255 芯片作為處理器,并以此構(gòu)建一套硬件開發(fā)系統(tǒng) ? 與實(shí)際項(xiàng)目接軌,選擇 GNU 的 linux 作為系統(tǒng)的操作系統(tǒng) ? 在上述軟硬件開發(fā)系統(tǒng)上實(shí)現(xiàn)基于 PXA255 的 bootloader 的基本功能,即引導(dǎo)加載內(nèi)核鏡像的功能 ? 在實(shí)現(xiàn) bootloader 基本功能的基礎(chǔ)上,增加 bootloader 的擴(kuò)展功能,包括:通過串口打印調(diào)試信息、通過串口更新鏡像、通過 USB 接口更新鏡像、實(shí)現(xiàn) bootloader加載模式與下載模式的轉(zhuǎn)換以及實(shí)現(xiàn)對 FLASH 的擦寫操作支持 ? 在 Xscale 的構(gòu)架 基礎(chǔ)上在理論上擴(kuò)展到 ARM 系統(tǒng),分析對于 ARM 系統(tǒng),bootloader 實(shí)現(xiàn)的一些共性以及一些限制 ? 分析對于實(shí)現(xiàn) bootloader,移植到其他 ARM 平臺的相關(guān)處理 3. 主要內(nèi)容 根據(jù)所涉及的主要研究工作,本文的內(nèi)容主要包括一下幾個部分:第一章簡要敘述 ARM世界的一些主流處理器以及其優(yōu)勢特點(diǎn);緊接著第二章則詳細(xì)描述了 ARM 的體系結(jié)構(gòu),指令系統(tǒng)并在此基礎(chǔ)上簡單的描述了一下 PXA255 的相關(guān)結(jié)構(gòu);第三章的內(nèi)容是介紹bootloader 的概念,并專門針對 ARM bootloader 進(jìn)行了詳細(xì)說明;第四章在首先 介紹軟硬件平臺之后詳細(xì)介紹了 bootloadr 的實(shí)現(xiàn),包括基本功能,擴(kuò)展功能等,以及軟件上的編譯連接的實(shí)現(xiàn),代碼組織結(jié)構(gòu)等;第五章針對第四章的實(shí)現(xiàn),對結(jié)果進(jìn)行分析以及擴(kuò)展功能的一些數(shù)據(jù)測試,以及如何在實(shí)現(xiàn)的 bootloader 基礎(chǔ)上進(jìn)行移植;最后一章進(jìn)行一下總結(jié)與展望。 第四章, 簡單介紹了其實(shí)現(xiàn)的軟硬件平臺,詳細(xì)介紹了基于 PXA255 處理器的bootloader 基本功能的實(shí)現(xiàn)以及擴(kuò)展功能的實(shí)現(xiàn)以及軟件上編譯連接的處理。目前據(jù)不完全統(tǒng)計(jì),全世界嵌入式處理器的品種總量已經(jīng)超過 1000 多種,流行體系結(jié)構(gòu)有 30 多個系列。 ARM 簡介 ARM( Advanced RISC Machines),既可以認(rèn)為是一個公司的名字,也可以是對一類微處理器的通稱,還可以認(rèn)為是一種技術(shù)的名字。世界各大半導(dǎo)體生產(chǎn)商從 ARM 公 司購買其設(shè)計(jì)的 ARM 微處理器核,根據(jù)各自不同的應(yīng)用領(lǐng)域,加入適當(dāng)?shù)耐鈬娐?,從而形成自己?ARM 微處理器芯片進(jìn)入市場。 ( 1) ARM7 微處理器系列 [5] ARM7 系列微處理器為低功耗的 32 位 RISC 處理器,最適合用于對價位和功耗要求較 高的消費(fèi)類應(yīng) 用。 - 代碼密度高并兼容 16 位的 Thumb 指令集。 ARM7 系列微處理器的主要 應(yīng)用領(lǐng)域?yàn)椋汗I(yè)控制、 Inter 設(shè)備、網(wǎng)絡(luò)和調(diào)制解調(diào)器設(shè)備、移動電話等多種多媒體和嵌入式應(yīng)用 。具有以下特點(diǎn) : - 5 級整數(shù)流水線,指令執(zhí)行效率更高。 - 全性能的 MMU,支持 Windows CE、 Linux、 Palm OS 等多種主流嵌入式操作系統(tǒng)。 ARM9 系列微處理器包含 ARM920T、 ARM922T 和 ARM940T 三種類型 ,以適用于不同的應(yīng)用場合。 - 5 級整數(shù)流水線,指令執(zhí)行效率更高。 - 全性能的 MMU,支持 Windows CE、 Linux、 Palm OS 等多種主流嵌入式操作系統(tǒng)。 ARM9 系列微處理器主要應(yīng)用于下一代無線設(shè)備、數(shù)字消費(fèi)品、成像設(shè)備、工業(yè)控制、存儲設(shè)備和網(wǎng)絡(luò)設(shè)備等領(lǐng)域。 - 6 級整數(shù)流水線,指令執(zhí)行效率更高。 - 全性能的 MMU,支持 Windows CE、 Linux、 Palm OS 等多種主流嵌入式操作系統(tǒng)。 ARM10E 系列微處理器 包含 ARM1020E、 ARM1022E 和 ARM1026EJS 三種類型,以適用于不同的應(yīng)用場合。 ARM 處理器的優(yōu)勢特點(diǎn) 采用 RISC 結(jié)構(gòu)的 ARM 微處理器一般具有如下特點(diǎn): 1. 體積小、低功耗、低成本、高性能; 2. 支持 Thumb( 16 位) /ARM( 32 位)雙指令集,能很好地兼容 8/16 位器件; 3. 大量使用寄存器,指令執(zhí)行速度更快; 4. 大多數(shù)數(shù)據(jù)操作都在寄存器中完成; 5. 尋址方式靈活簡單,執(zhí)行效率高; 6. 指令長度固定; ARM 處理器之所以能夠廣泛應(yīng)用于各個領(lǐng)域,與以上所列的各個特點(diǎn)密切相 關(guān),綜合起來,主要包括以下幾點(diǎn)。 RISC 結(jié)構(gòu)優(yōu)先選取使用頻 率 最高的簡單指令,避免復(fù)雜指令;將指令長度固定,指令格式和 尋址 方式種類減少;以控制邏輯為主,不用或少用微碼控制等措施來達(dá)到上述目的。 ARM 主要使用 32 位的 RISC 指令,但是指令代碼利用率低, ARM 為了彌補(bǔ)此不足,在新型 ARM 構(gòu)架( V4T版本以上)定義了 16 位的 Thumb 指令集。 低功耗 由于 ARM 架構(gòu)的處理器主要用于手持式嵌入式系統(tǒng)之中,因此 ARM 構(gòu)架在設(shè)計(jì)中十分注意低電壓、低功耗這一點(diǎn),因而在手持式嵌入式系統(tǒng)得到廣 泛的應(yīng)用。為了更好的在后面篇幅中介紹實(shí)現(xiàn),先簡單介紹相關(guān)的體系結(jié)構(gòu)以及相關(guān)指令集。 1. ALU:它有兩個操作數(shù)鎖存器、加法器、邏輯功能、結(jié)果以及零檢測邏輯構(gòu)成。 4. 浮點(diǎn)部件:浮點(diǎn)部件是作為選件供 ARM 構(gòu)架使用。 不同的 ARM core 可能還有所不同。其中,除系統(tǒng)模式外,其他 5 種特權(quán)模式又稱為異常模式。這種體系結(jié)構(gòu)可以使操作系統(tǒng)控制整個系統(tǒng)的資源。但是 系統(tǒng)模式屬于特權(quán)模式,可以訪問所有的系統(tǒng)資源,也可以直接進(jìn)行處理器模式的切換。任意時刻(也就是任意的處理器模式下),可見的寄存器包括 15 個通用處理器模式 處理器模式描述 用戶模式( User, usr) 正常程序執(zhí)行的模式 快速中斷模式( FIQ, fiq) 用于高速數(shù)據(jù)傳輸和通道處理 普通中斷模式( IRQ, irq) 用于通常的中斷處理 監(jiān)管模式( Supervisor, svc) 供操作系統(tǒng)使用的一種保護(hù)模式 數(shù)據(jù)訪問中止模式( Abort, abt) 用于虛擬存儲及存儲保護(hù) 未定義指令中止模式( Undefined, und) 用于支持通過軟件方針硬件的協(xié)處理器 系統(tǒng)模式( System, sys) 用于運(yùn)行特權(quán)級的操作系統(tǒng)任務(wù) ARM 體系結(jié)構(gòu)介紹 寄存器( R0- R14)、一個或者兩個狀態(tài)寄存器以及程序計(jì)數(shù)器( PC)。 R13 寄存器對應(yīng) 6 個不同的物理寄存器,即除了前面提過的用戶模式與系統(tǒng)模式共用一個寄存器外,其它模式都有相應(yīng)的物理寄存器;一般地, R13 寄存器在 ARM 中通常用作棧指針,在 ARM 指令中這只是一種習(xí)慣的用法,并沒有任何指令強(qiáng)制性的使用 R13 作為棧指針。由于 ARM 采用了流水線機(jī)制,當(dāng)正確讀取了 PC 的值時,該值為當(dāng)前指令地址加 8 個字節(jié)。它包含了標(biāo)志位、中斷禁止位、當(dāng)前處理器模式標(biāo)志以及其它的一些控制和狀態(tài)位。由于用戶模式和系統(tǒng)模式不是異常中斷模式,所 以它們沒有 SPSR。大部分的 ARM指令可以根據(jù) CPSR 中的這些條件標(biāo)志位來選擇性地執(zhí)行。 T:對于 ARMv4 以及更高的版本的 T 系列的 ARM 處理器 ? T= 0 表示執(zhí)行 ARM 指令 ? T= 1 表示執(zhí)行 Thumb 指令 對于 ARMv5 以及更高版本的非 T 系列的 ARM 處理器 ? T=0 表示執(zhí)行 ARM 指令 ? T= 1 表示強(qiáng)制下一條執(zhí)行的指令產(chǎn)生為定義指令中斷 Modes 位控制處理器模式,在這不再贅述。這些字節(jié)單元的地址是一個無符號的 32 位數(shù)值,其取值范圍為 0 到 232- 1。 ARM 的存儲器格式 在 ARM 體系中,每個字單元中包含 4 個字節(jié)單元或者兩個半字單元,其中 1 個半字單元中包含兩 個字節(jié)單元。這種存儲器格式如下圖所示: 31 24 23 16 15 8 7 0 字單元 A 半字單元 A+ 2 半字單元 A 字節(jié)單元 A+ 3 字節(jié)單元 A+ 2 字節(jié)單元 A+ 1 字節(jié)單元 A 圖 littleendian 格式的存儲系統(tǒng) ARM 指令集介 紹 ARM 指令系統(tǒng)屬于 RISC 指令系統(tǒng)。 ? 靈活的第二操作數(shù) ARM 指令的另一個重要的特點(diǎn)是數(shù)據(jù)處理類指令有靈活的第二操作數(shù) operand2(位與程序代碼的位 0- 11)。 ? Thumb 指令 ARM 在有的版本支持 16 位 Thumb 指令。 ARM 指令字長為固定的 32 位,一條典型的 ARM 指令編碼格式如下 [9]: 31 28 27 26 2524 21 20 19 16 15 12 11 0 Cond 00 I opcode S Rn Rd operand2 圖 其中: ? cond 位 28- 31,執(zhí)行指令的條件編碼。 ? Rn 位 16- 19,第一操作數(shù)的寄存器編碼。對于具體的指令集,可以參考相關(guān)文檔。 ? 當(dāng)異常中斷發(fā)生時,系統(tǒng)執(zhí)行完當(dāng)前指令后 ,將跳轉(zhuǎn)到相應(yīng)的異常中斷處理程序處執(zhí)行。異常中斷向量表的大小位 32 字節(jié),其中每個異常中斷占據(jù) 4 個字節(jié)大小,保留了 4 個字節(jié)空間。這是通過將當(dāng)前程序狀態(tài)寄存器 CPSR 的內(nèi)容保存到將要執(zhí)行的異常中斷對應(yīng)的 SPSR 寄存器中
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1