www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當(dāng)前位置:首頁 > 嵌入式 > 嵌入式軟件

1引言  linux具備良好的裁剪性和移植性,并且開源、資源豐富,已成為嵌入式系統(tǒng)的開發(fā)熱點。一個完整的嵌入式linux系通通常包括bootloader、內(nèi)核、文件系統(tǒng)三部分,目標(biāo)板上電后由bootloader初始化硬件,引導(dǎo)內(nèi)核和文件系統(tǒng)來啟動linux。但由于在嵌入式開發(fā)中基于mips體系的bootloader較少,開發(fā)者在移植mips bootloader需花費大量精力。結(jié)合octeon3010(mips64)的u-boot移植經(jīng)驗,分析嵌入式linuxbootloader的工作原理及功能,設(shè)計了一個基于mips體系的bootloader模型。對octeon系列的mips處理器bootloader的設(shè)計具有參考價值和指導(dǎo)意義。  2 bootloader原理分析  bootloader是在運行操作系統(tǒng)內(nèi)核前所執(zhí)行的一段小程序。通過執(zhí)行這段小程序,實現(xiàn)初始化硬件設(shè)備、建立內(nèi)存空間的映射圖,從而為系統(tǒng)的軟硬件環(huán)境設(shè)置一個合適狀態(tài),以便為最終調(diào)用操作系統(tǒng)內(nèi)核準(zhǔn)備好正確環(huán)境?! 〈蠖鄶?shù)bootloader包含"啟動加載"和"下載"兩種操作模式。從最終用戶來看,bootloader就是用來加載操作系統(tǒng),而無工作模式區(qū)別。其中,啟動加載模式是bootloader從目標(biāo)機上的某個固態(tài)存儲設(shè)備將操作系統(tǒng)加載到ram中運行,整個過程并沒有用戶介入。這種模式是bootloader的正常工作模式。而在下載模式下,目標(biāo)機上的bootloader通過串口連接或網(wǎng)絡(luò)連接從主機(host)下載文件,例如下載內(nèi)核映像和根文件系統(tǒng)映像等?! ∮捎趯崿F(xiàn)bootloader依賴cpu的體系結(jié)構(gòu),因此大多數(shù)bootloader分為stage1和stage2兩部分,并依賴于cpu體系結(jié)構(gòu)的代碼,例如:設(shè)備初始化代碼等,通常放在stage1中,一般采用匯編語言。而stage2則通常采用c語言實現(xiàn)復(fù)雜功能,而且代碼具有良好的可讀性和移植性。stage1步驟通常包括:硬件設(shè)備初始化;為加載bootloader的stage2準(zhǔn)備ram空間;拷貝bootloader的stage2到ram空間中;設(shè)置好堆棧;跳轉(zhuǎn)到stage2的c入口點。bootloader的stage2步驟通常包括:初始化當(dāng)前階段使用的硬件設(shè)備;檢測系統(tǒng)內(nèi)存映射;將kernel映像和根文件系統(tǒng)映像從flash上讀到ram空間中;為內(nèi)核設(shè)置啟動參數(shù);調(diào)用內(nèi)核。  3設(shè)計移植  3.1啟動流程  針對具體的硬件內(nèi)容,詳細(xì)分析u-boot的啟動流程后,給出啟動流程中需要修改的代碼。  3.2移植分析  片級移植主要是針對具體cpu初始化代碼的修改,針對對應(yīng)的mips平臺,主要包括:通用寄存器的初始化、cp0的初始化(status,config,watch,count,compare,etc.)、watchdog初始化、cache初始化、tlb初始化。板級移植包括:串口驅(qū)動、flash讀寫驅(qū)動(nor,nand)、hd讀寫驅(qū)動、網(wǎng)卡驅(qū)動。而功能層擴展可根據(jù)需求添加新功能或裁減優(yōu)化,包括調(diào)試功能、啟動功能、下載功能等?! ?.3修改代碼  主要修改的代碼為:makefile添加開發(fā)板的編譯支持;include/configs/myboard.h開發(fā)板的定義,啟動參數(shù)等;cpu/mips/start.s修改初始化代碼和入口;board/myboard/flash.c對應(yīng)的nor flash驅(qū)動;board/myboard/myboard.c對應(yīng)的板級初始化代碼;board/myboard/lowlevel_init.s初始化硬件的匯編代碼;board/myboard/serial.c串口驅(qū)動?! ? octeon系列cpu的硬件初始化實例  4.1開發(fā)環(huán)境及硬件平臺簡介  采用的是宿主機+目標(biāo)板的開發(fā)模式,宿主機為pc+fc6,目標(biāo)板的cpu采用基于mips64 v2體系結(jié)構(gòu)的處理器octeon_cn3010,nor flash采用amd公司8 mb的am-29dl640g.sdram采用三星公司512 mb的m378t6553cz3-cd5(64 mb×8 bit)。存儲部分的硬件連接如圖1所示。
  4.2具體實現(xiàn)代碼  系統(tǒng)的起始地址統(tǒng)一規(guī)定為0xbfc00000,加電后,cpu從該地址開始執(zhí)行。該地址也就是系統(tǒng)異常處理向量表的第一項(reset)。0xbfc00000處的中斷向量表起始處的跳轉(zhuǎn)命令,跳到了inittlbstart中,完成了系統(tǒng)的大部分初始化,例如設(shè)置寄存器、cpu、sdram、flash等。以下為具體程序代碼:
  系統(tǒng)完成初始化后,跳轉(zhuǎn)到board.c。在board.c中的checkboard()函數(shù)將進一步設(shè)置cpu、sdram、cache、串口等,并將硬件初始化代碼從flash拷貝到sdram中繼續(xù)運行,最后調(diào)用main_loop()函數(shù),進入bootloader的第一個c函數(shù)-main_loop()函數(shù),在這個函數(shù)中將初始化硬件平臺相關(guān)的參數(shù)、模塊,并優(yōu)化參數(shù),設(shè)置loader參數(shù)等硬件初始化?! ?.3 bootloader的燒錄和啟動  使用flash燒錄器把生成的u-boot.bin文件燒錄到flash后,將其放人目標(biāo)板的flash槽。目標(biāo)板通電后,串口輸出數(shù)據(jù)。至此,bootloader被成功移植?! ?結(jié)語  通過分析引導(dǎo)轉(zhuǎn)載系統(tǒng)在嵌入式linux系統(tǒng)中的工作原理及功能,結(jié)合移植經(jīng)驗,設(shè)計了一個基于mips體系

本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

德國康佳特亮相上海工博會,展示多款應(yīng)用就緒的嵌入式解決方案平臺

關(guān)鍵字: 嵌入式 傳感器 處理器

雙方攜手為客戶打造以存儲為核心的模塊化基礎(chǔ)架構(gòu),支持先進的多裸片架構(gòu)設(shè)計

關(guān)鍵字: 非易失性存儲 半導(dǎo)體 嵌入式

本屆年會將在上海(11月13-14日)、北京(11月19-20日)和深圳(11月27-28日)舉行,面向嵌入式設(shè)計工程師推出25門技術(shù)課程

關(guān)鍵字: 嵌入式 MCU 模擬

上海2025年9月5日 /美通社/ -- 由紐倫堡會展(上海)有限公司舉辦的上海國際嵌入式會議將于 2025 年 10 月 16-17 日在上海世博展覽館舉辦。 此次會議將由三個版塊組成:嵌入式技術(shù)會議、汽...

關(guān)鍵字: 嵌入式 CE CHINA EMBEDDED

從外部看,電子系統(tǒng)仿佛一個統(tǒng)一的學(xué)科或設(shè)備,各組成部分協(xié)同工作,渾然一體。然而揭開表象,其內(nèi)在卻是另一番景象:一個碎片化、多層次的世界——其中每一層都獨立且復(fù)雜,衍生出各自特有的工具、專家、工作流程,甚至哲學(xué)體系。

關(guān)鍵字: 嵌入式 電子系統(tǒng) 半導(dǎo)體

8位單片機在嵌入式設(shè)計領(lǐng)域已經(jīng)成為半個多世紀(jì)以來的主流選擇。盡管嵌入式系統(tǒng)市場日益復(fù)雜,8位單片機依然不斷發(fā)展,積極應(yīng)對新的挑戰(zhàn)和系統(tǒng)需求。如今,Microchip推出的8位PIC?和AVR?單片機系列,配備了先進的獨立...

關(guān)鍵字: 單片機 嵌入式 CPU

深圳2025年8月28日 /美通社/ -- 8月26日,2025 ELEXCON深圳國際電子展盛大啟幕。本屆大會以"All for AI"為主題,深圳市德...

關(guān)鍵字: AI 工業(yè)級 SSD 嵌入式

深圳2025年8月26日 /美通社/ -- 8月26日,由博聞創(chuàng)意會展主辦的 第22屆深圳國際電子展暨嵌入式展(elexcon2025)在深圳(福田)會展中心隆重開幕。 作為中國電子與嵌入式技術(shù)領(lǐng)域的專業(yè)大展,本屆展會...

關(guān)鍵字: 嵌入式 電子 高通 AI

模塊化設(shè)計作為一種將系統(tǒng)拆分為獨立、可復(fù)用組件的方法,能夠在低代碼平臺中實現(xiàn)功能的靈活組合,并最大限度地提升系統(tǒng)性能。本文將探討如何通過模塊化設(shè)計,使得低代碼平臺既能快速適應(yīng)變化,又能保持高效穩(wěn)定的運行。

關(guān)鍵字: 模塊化設(shè)計 嵌入式

CPU親和度通過限制進程或線程可以運行的CPU核心集合,使得它們只能在指定的CPU核心上執(zhí)行。這可以減少CPU緩存的失效次數(shù),提高緩存命中率,從而提升系統(tǒng)性能。

關(guān)鍵字: Linux 嵌入式
關(guān)閉