• 藍色版面
  • 綠色版面
  • 橘色版面
  • 粉紅色版面
  • 棕色版面
帳號:guest(120.119.126.29)          離開系統
字體大小: 字級放大   字級縮小   預設字形  

詳目顯示

研究生: 張源明
研究生(外文): Yuan-Ming Chang
論文名稱: IXP425 XScale 嵌入式系統下移植U-Boot開機載入程式
論文名稱(外文): The Porting of U-Boot Bootloader Based on IXP425 XScale Embedded System
指導教授: 謝文川
指導教授(外文): Wen-Chuan Hsieh
學位類別: 碩士
校院名稱: 樹德科技大學
系所名稱: 資訊管理研究所
論文出版年: 2006
畢業學年度: 94
語文別: 中文
論文頁數: 73
中文關鍵詞: 嵌入式系統開機載入程式開機管理程式
外文關鍵詞: U-BootBootstrap loaderBootloaderBootManagerIXP425ARMXscaleBIOS
相關次數:
  • 被引用:0
  • 點閱:148
  • 評分:*****
  • 下載:0
  • 書目收藏:0
嵌入式系統中常見的Bootloader有RedBoot、ARMboot、Compaq Bootldr、Blob、PMon、U-Boot等,在長期使用單一開發板(Evaluation Board)狀況下,只要選擇一種Boot loader可以解決此問題,但對於大量進行各種不同開發嵌入式系統開發者而言,這可能是很煩瑣的問題,尤其是現在硬體變化速度,令人目不暇給,新產品的硬體變化頻繁,造成開發者必須不斷的修改或增加Bootloader程式,這對產業界而言,是相當曠日費時的。
在由Intel所捐贈IXDPG425網路閘道開發平台,台灣Intel將其取名為『MonteJade』,尚未有研究者將U-Boot成功的移植,而U-Boot這個開放原始碼的bootloader專案,已經可以支援28種不同的處理器及194種不同的開發板,我們可以透過程式碼共用的原則,以相類似的開發板為基礎,在IXDPG425網路閘道開發平台上,將原來的RedBoot換掉,成功將U-Boot移植上去。
在移植過程中,除了遭遇到4個可能的錯誤資訊外,在測試的過程中也遇到另一個錯誤,問題都已順利解決,在MonteJade這個開發板上,可以透過U-Boot讓系統核心linux kernel 2.4和2.6.x版順利運行其上,而且在Bootloader開機的速度上,U-Boot比RedBoot開機速度更快,但佔用的快閃記憶體卻更小,但功能也一樣俱全。
In recently years, embedded systems are widely used in today's society. However, without a well bootloader, these embedded systems are just complicated hunks of silicon with nothing to do. Off-the-shelf bootloaders used in those embedded systems include RedBoot, ARMboot, Compaq Bootldr, Blob, PMon and U-Boot.
The Ministry of Education has signed a Memorandum of Understanding with Intel at the 2005 Intel Developer Forum. Under the MOU, Intel will provide IXDPG425 Development Boards (code-named MonteJade) to 10 universities in promoting industry-academia cooperation.
The research is under the supported by INTEL and the Ministry of Education Jointed Program and has successfully ported U-Boot bootloader into Intel MonteJade, The board already had a RedBoot bootloader programmed and through which system developers could easily load embedded linux and work on it. However, the RedBoot is much larger code size. On the other side, U-Boot is a GPL'ed cross-platform boot loader shepherded by project leader Wolfgang Denk and provides support for hundreds of embedded boards and a wide variety of CPUs including PowerPC, ARM, XScale, MIPS, Coldfire and NIOS.
In this paper, we started from discussing the core issue of porting — IXDPG425 architecture and memory initialization. Then we point out its difficult key factors and ways to solve them. Finally, we demoed the porting process and proved f the ported U-Boot is much smaller code size and shorter booting time compated to RedBoot from experimental observations.
一、  緒論  1
1.1  研究背景  1
1.2  研究目的  1
二、  文獻探討  3
2.1  何謂嵌入式系統  3
2.1.1  嵌入式系統的應用領域  3
2.2  嵌入式系統的組成  5
2.2.1  嵌入式作業系統  6
2.2.2  嵌入式處理器  7
2.3  XScale ARM 處理器  9
2.3.1  Intel公司的XScale微處理器  9
2.3.2  Intel IXP425處理器  11
2.4  Bootloader  13
2.5  Bootloader的操作模式  15
2.6  Bootloder的主要任務與典型的框架  15
2.6.1  stage1執行步驟  16
2.6.2  stage2執行步驟  17
2.7  BootLoader的種類  19
2.8  U-Boot的簡介  22
2.8.1  U-Boot的特性  22
2.8.2  U-Boot常用指令  24
2.9  跨平台編譯環境  24
2.9.1  何謂跨平台編譯  24
2.9.2  常見跨平台編譯工具  25
2.9.3  Montavista Toolkit 3.1  28
2.10  SnapGear Embedded Linux Distribution  28
2.11  國內外相關研究  29
三、  系統分析與設計  30
3.1  移植平台系統架構  30
3.2  JTAG Tool  32
3.3  所需要使用的軟體  33
3.3.1  U-Boot source code  33
3.3.2  測試的作業系統  33
3.3.3  編譯環境  34
3.4  U-Boot原始程式分析  34
3.4.1  U-Boot的目錄結構  34
3.5  U-Boot的記憶體規劃及啟動流程  36
3.5.1  系統位址記憶體規劃  37
3.5.2  Bootloader啓動流程  38
四、  系統實做與展示  40
4.1  硬體開發環境建立  40
4.1.1  硬體環境  40
4.2  軟體開發環境建立  41
4.2.1  安裝tftp伺服器  42
4.2.2  ICE軟體安裝  43
4.2.3  ICE環境設定  43
4.2.4  CONSOLE軟體介面設定  45
4.2.5  CrossCompiler軟體安裝  46
4.2.6  U-Boot原始程式碼安裝  46
4.2.7  軟體測試前置步驟  47
4.2.8  軟體修正與除錯  50
4.2.9  修正後結果測試展示  56
4.2.10  linux 核心載入測試  61
4.2.11  效能比較  67
五、  結論與未來展望  69
5.1  結論  69
5.2  未來展望  69
誌謝  70
參考文獻  71
[1]Karim Yaghmour, 2003, Building Embedded Linux Systems, O’REILLY
[2]Michael Barr, 1999, Programming Embedded Systems in C and C ++, O’REILLY
[3]Abatron Co., http://www.abatron.com/
[4]blob, a StrongARM boot loader, http://sourceforge.net/projects/blob/
[5]CyberGuard, http://www.cyberguard.com/
[6]Das U-Boot - Universal Bootloader, http://sourceforge.net/projects/u-boot
[7]Dan Kegel, Building and Testing gcc/glibc cross toolchains, http://kegel.com/crosstool/
[8]Dan Kegel, Crosstool build results, http://kegel.com/crosstool/crosstool-0.42/buildlogs/
[9]Embedded Linux Works - ROLO: A Developer's Guide, http://netfrag.org/webnews/article.php?id=1578&group=nfo.links.computing
[10]ELDK, http://www.eldk.de/
[11]EtherBoot Project , http://etherboot.sourceforge.net/
[12]http://www.arm.linux.org.tw
[13]Intel®, IXDPG425 Network Gateway Reference Platform User Guide,http://www.intel.com/design/network/desguides/303146.htm
[14]Intel IXP425 Network  Processer, http://www.intel.com/design/network/products/npfamily/ixp425.htm
[15]Klaus Reimer, ARM cross-compiling howto, http://www.ailis.de/~k/docs/crosscompiling/
[16]LinuxSH Wiki, http://www.linux-sh.org/shwiki/FrontPage
[17]Montavista Co, http://www.mvista.com/
[18]PMON, http://www.linux-mips.org/wiki/PMON
[19]PMON5, http://www.carmel.com/pmon/
[20]RedBoot, http://www.cygwin.com/redboot/
[21]Russell King , ARM Linux Kernel Boot Requirements, http://www.arm.linux.org.uk/developer/booting.php
[22]SnapGear Embedded Linux Distribution, http://www.snapgear.org/
[23]The DENX U-Boot and Linux Guide (DULG) for TQM8xxL , http://www.denx.de/wiki/DULG/Manual
[24]u-boot 1.1.4 and 2.6 kernel, http://article.gmane.org/gmane.linux.ports.arm.general/8094/match=
[25]Vincent Sanders, Booting ARM Linux, http://www.simtec.co.uk/products/SWLINUX/files/booting_article.html
[26]Werner Almesberger, Werner Almesberger's Linux Projects, http://www.almesberger.net/cv/projects.html
[27]謝文川,黃立璁,徐緯鐘,2005,INTEL IXP425 ARM嵌入式Linux系統原理與實務,學貫行銷股份有限公司
[28]張進,姜威,2004,”u-boot的啟動流程分析及移植步驟”,數字化期刋 2005 Vol.25 No.7 P68-71
[29]曹程遠,2005,”U-Boot在S3C2410上的移植”,數字化期刋 2005 Vol.21 No.7 P.48-50
[30]謝文川,張源明,陳俊義,2004,”無線區域網路環境下無磁碟教學平台系統之建置-以「Diskless Remote Boot in Linux(DRBL)」為例”,TANet2004台灣網際網路研討會論文集,國立台東大學
[31]謝文程,2005,嵌入式系統之U-Boot移植與實作,國立台灣科技大學,碩士論文
[32]莊博宇,2005,Bootloader與Bootloader上藍芽驅動程式的實作,國立清華大學資訊工程所,碩士論文
[33]簡志宏,2000,嵌入式系統的組合式軟體執行平台的設計,國立成功大學工程科學系碩士論文
[34]Intel®公司,教育部,2005,英特爾與教育部顧問室「通訊科技人才培育先導型計畫」小組合作推展通訊科技教育課程,Intel台灣新聞頻道新聞稿,http://www.intel.com/cd/corporate/pressroom/apac/zht/date/2005/211277.htm
[35]陳思豪,曹世強和林盈達,嵌入式系統開機程式:RedBoot,國立交通大學資訊科學系,http://speed.cis.nctu.edu.tw/~ydlin/miscpub/survey_embBoot.pdf
[36]張耀中,曹世強,林盈達,移植NetBSD至ARM嵌入式處理器,國立交通大學資訊科學系,http://speed.cis.nctu.edu.tw/~ydlin/miscpub/hands-on_portARM.pdf
[37]Li Chun-lin,2005,建立針對arm-linux的交叉編譯環境,電子先鋒,http://www.dz863.com/RTOS/Embedded-linux/arm-linux.htm
[38]詹榮開,2004,嵌入式系統Boot Loader技術內幕,http://www-128.ibm.com/developerworks/cn/linux/l-btloader/index.html
[39]曾宏安等,2006,用U-BOOT構建嵌入式糸統的引尋裝載程序,http://www.51base.com/electron/adhibition/embed/2006050610383.shtml
[40]梁元恩,2005,如何為嵌入式開發建立交叉編譯環境,IBM developerWorks,http://www-128.ibm.com/developerworks/cn/linux/l-embcmpl/
[41]許志逞,U-Boot簡介,http://my.so-net.net.tw/joepasscheng/uboot/U-Boot.html
[42]搶救台灣大作戰 - 嵌入式系統的應用與服務,http://playstation2.idv.tw/iacolumns/jl000013.html
                                                                                                                                                                                                                                                                                                                                                                                                               
第一頁 上一頁 下一頁 最後一頁 top
* *