基于ARM的嵌入式設(shè)備中uCLinux系統(tǒng)開發(fā) 高榮山 張顏嶺
發(fā)布時間:2007/8/28 0:00:00 訪問次數(shù):682
摘要:本文針對ARM7芯片S3C4510開發(fā)板,對uCLinux在嵌入式設(shè)備中的系統(tǒng)開發(fā)做了介紹,如何組建軟件開發(fā)平臺,并對引導(dǎo)裝載程序,設(shè)備驅(qū)動程序作了例證和分析。
關(guān)鍵詞:嵌入式 uCLinux ARM BootLoader 驅(qū)動程序
uCLinux System Design in Embedded Equipment Based on ARM
GAO Rong-shan ZHANG Yan-ling SUN Jian-feng
(Department of Electrical Engineering,Ocean University of China,Qingdao,266071,China)
Abstract: This paper introduces the uClinux system design in embedded equipment based on the ARM7 core chip S3C4510.Then it presents the process of organize the software research platform. As to several important problem, such as the bootloader of the develop board and the driver program design, the article also illustrates the method and process through application examples.
Key Words: Embed uCLinux ARM BootLoader Driver program
1 引言
信息家電和手持設(shè)備大大加速了嵌入式系統(tǒng)的發(fā)展,而ARM體系32位高性能、低功耗處理器和嵌入式操作系統(tǒng)Linux無疑成為佼佼者。因為Linux源代碼開放、免費,任何將其定制于PDA、掌上機或者便攜式設(shè)備感興趣的人都可以從因特網(wǎng)免費下載其內(nèi)核和應(yīng)用程序,并開始移植或開發(fā),所以Linux在嵌入式開發(fā)領(lǐng)域得到穩(wěn)步發(fā)展。uCLinux 即是目前嵌入式linux 中最流行的一種,它是針對微控制領(lǐng)域而設(shè)計的Linux系統(tǒng),其最大特征就是沒有MMU(內(nèi)存管理單元模塊),適合嵌入式系統(tǒng)小型化應(yīng)用。
uCLinux支持多任務(wù),支持多種文件系統(tǒng),提供了對網(wǎng)絡(luò)的強大支持,具有完整的TCP/IP協(xié)議棧,以及標準豐富的API。由于它的很多核心代碼都為沒有被MMU的處理器重新編寫過,對標準Linux龐大的應(yīng)用程序庫和驅(qū)動程序庫作了刪改,所以它的內(nèi)核要比常規(guī)的Linux 內(nèi)核小很多;uCLinux包含Linux常用的API和小于512k的內(nèi)核及相關(guān)的工具,總代碼只有900k左右,但同時保留了常規(guī)Linux 操作系統(tǒng)絕大多數(shù)的優(yōu)點。
2 基于ARM的硬件平臺
嵌入式領(lǐng)域32位處理器以ARM公司的ARM核最為流行,本文以Samsung公司的ARM7TDMI芯片S3C4510為處理器開發(fā)板為硬件平臺,開發(fā)板上與S3C4510相關(guān)的部分主要集成了如下器件:
(2M+512k)B 的Flash,其中AT29C010A為512B作為BootLoader,一片SST49VF160為1M×16bitFlash;
16MB 的DRAM,由兩片4M×16bits的HY57V641620提供 ;
16MB 的SRAM,由M-systems的新一代閃存盤DOC2000構(gòu)成;
Ethernet接口;
ARM JTAG 接口。
開發(fā)板上與S3C4510相關(guān)部分功能框圖如圖1 所示。
3 uCLinux內(nèi)核移植
嵌入式 Linux 開發(fā)大致涉及三個層次:引導(dǎo)裝載程序、Linux 內(nèi)核和驅(qū)動及應(yīng)用程序。我們將討論涉及這三層的一些基本概念;深入了解引導(dǎo)裝載程序、內(nèi)核和文件系統(tǒng)是如何交互的。
引導(dǎo)程序BootLoader的主要作用包括初始化處理器;初始化必備的設(shè)備;下載系統(tǒng)映象;初始化操作系統(tǒng)系統(tǒng)并準備執(zhí)行。
引導(dǎo)裝載程序有兩種方法:專用軟件和微小的引導(dǎo)代碼。專用軟件可以直接與遠程系統(tǒng)上的閃存設(shè)備進行交互并將引導(dǎo)裝載程序安裝在閃存的給定位置中。而某些種類的嵌入式設(shè)備具有微小的引導(dǎo)代碼:根據(jù)幾個字節(jié)的指令,它將初始化一些 DRAM 設(shè)置并啟用目標上的一個串行(或者 USB,或者以太網(wǎng))端口與主機程序通信;然后,主機程序或裝入程序可以使用這個連接將引導(dǎo)裝載程序傳送到目標上,并將它寫入閃存。
嵌入式設(shè)備上一些流行的并可免費使用的 Linux 引導(dǎo)裝載程序有 Blob、Redboot 和 Bootldr。所有這些引導(dǎo)裝載程序都用于基于 ARM 設(shè)備上的 Linux,并需要Jflash-linux 工具用于安裝。一旦將引導(dǎo)裝載程序安裝到目標的閃存中,它就會執(zhí)行我們上面提到的所
摘要:本文針對ARM7芯片S3C4510開發(fā)板,對uCLinux在嵌入式設(shè)備中的系統(tǒng)開發(fā)做了介紹,如何組建軟件開發(fā)平臺,并對引導(dǎo)裝載程序,設(shè)備驅(qū)動程序作了例證和分析。
關(guān)鍵詞:嵌入式 uCLinux ARM BootLoader 驅(qū)動程序
uCLinux System Design in Embedded Equipment Based on ARM
GAO Rong-shan ZHANG Yan-ling SUN Jian-feng
(Department of Electrical Engineering,Ocean University of China,Qingdao,266071,China)
Abstract: This paper introduces the uClinux system design in embedded equipment based on the ARM7 core chip S3C4510.Then it presents the process of organize the software research platform. As to several important problem, such as the bootloader of the develop board and the driver program design, the article also illustrates the method and process through application examples.
Key Words: Embed uCLinux ARM BootLoader Driver program
1 引言
信息家電和手持設(shè)備大大加速了嵌入式系統(tǒng)的發(fā)展,而ARM體系32位高性能、低功耗處理器和嵌入式操作系統(tǒng)Linux無疑成為佼佼者。因為Linux源代碼開放、免費,任何將其定制于PDA、掌上機或者便攜式設(shè)備感興趣的人都可以從因特網(wǎng)免費下載其內(nèi)核和應(yīng)用程序,并開始移植或開發(fā),所以Linux在嵌入式開發(fā)領(lǐng)域得到穩(wěn)步發(fā)展。uCLinux 即是目前嵌入式linux 中最流行的一種,它是針對微控制領(lǐng)域而設(shè)計的Linux系統(tǒng),其最大特征就是沒有MMU(內(nèi)存管理單元模塊),適合嵌入式系統(tǒng)小型化應(yīng)用。
uCLinux支持多任務(wù),支持多種文件系統(tǒng),提供了對網(wǎng)絡(luò)的強大支持,具有完整的TCP/IP協(xié)議棧,以及標準豐富的API。由于它的很多核心代碼都為沒有被MMU的處理器重新編寫過,對標準Linux龐大的應(yīng)用程序庫和驅(qū)動程序庫作了刪改,所以它的內(nèi)核要比常規(guī)的Linux 內(nèi)核小很多;uCLinux包含Linux常用的API和小于512k的內(nèi)核及相關(guān)的工具,總代碼只有900k左右,但同時保留了常規(guī)Linux 操作系統(tǒng)絕大多數(shù)的優(yōu)點。
2 基于ARM的硬件平臺
嵌入式領(lǐng)域32位處理器以ARM公司的ARM核最為流行,本文以Samsung公司的ARM7TDMI芯片S3C4510為處理器開發(fā)板為硬件平臺,開發(fā)板上與S3C4510相關(guān)的部分主要集成了如下器件:
(2M+512k)B 的Flash,其中AT29C010A為512B作為BootLoader,一片SST49VF160為1M×16bitFlash;
16MB 的DRAM,由兩片4M×16bits的HY57V641620提供 ;
16MB 的SRAM,由M-systems的新一代閃存盤DOC2000構(gòu)成;
Ethernet接口;
ARM JTAG 接口。
開發(fā)板上與S3C4510相關(guān)部分功能框圖如圖1 所示。
3 uCLinux內(nèi)核移植
嵌入式 Linux 開發(fā)大致涉及三個層次:引導(dǎo)裝載程序、Linux 內(nèi)核和驅(qū)動及應(yīng)用程序。我們將討論涉及這三層的一些基本概念;深入了解引導(dǎo)裝載程序、內(nèi)核和文件系統(tǒng)是如何交互的。
引導(dǎo)程序BootLoader的主要作用包括初始化處理器;初始化必備的設(shè)備;下載系統(tǒng)映象;初始化操作系統(tǒng)系統(tǒng)并準備執(zhí)行。
引導(dǎo)裝載程序有兩種方法:專用軟件和微小的引導(dǎo)代碼。專用軟件可以直接與遠程系統(tǒng)上的閃存設(shè)備進行交互并將引導(dǎo)裝載程序安裝在閃存的給定位置中。而某些種類的嵌入式設(shè)備具有微小的引導(dǎo)代碼:根據(jù)幾個字節(jié)的指令,它將初始化一些 DRAM 設(shè)置并啟用目標上的一個串行(或者 USB,或者以太網(wǎng))端口與主機程序通信;然后,主機程序或裝入程序可以使用這個連接將引導(dǎo)裝載程序傳送到目標上,并將它寫入閃存。
嵌入式設(shè)備上一些流行的并可免費使用的 Linux 引導(dǎo)裝載程序有 Blob、Redboot 和 Bootldr。所有這些引導(dǎo)裝載程序都用于基于 ARM 設(shè)備上的 Linux,并需要Jflash-linux 工具用于安裝。一旦將引導(dǎo)裝載程序安裝到目標的閃存中,它就會執(zhí)行我們上面提到的所
熱門點擊
- 確定準諧振反激式變換器主要設(shè)計參數(shù)的實用方法
- 四探針技術(shù)測量薄層電阻的原理及應(yīng)用 劉新福,
- 黑白電視機高壓包的繞制
- 射頻識別電路中高頻功放的設(shè)計
- LED顯示在交通領(lǐng)域的應(yīng)用與發(fā)展 北京四通智
- 低溫晶片鍵合技術(shù)及在通信光電子器件中的應(yīng)用
- GSM手機射頻系統(tǒng)分析與研究 湖南大學(xué)電氣與
- 無源元件對音質(zhì)的影響與改善的新技術(shù)
- 一種小型化高壓小功率電源的設(shè)計 文章作者:中
- 微控制器Mcore及其應(yīng)用
推薦技術(shù)資料
- AMOLED顯示驅(qū)動芯片關(guān)鍵技
- CMOS圖像傳感器技術(shù)參數(shù)設(shè)計
- GB300 超級芯片應(yīng)用需求分
- 4NP 工藝NVIDIA Bl
- GB300 芯片、NVL72
- 首個最新高端芯片人工智能服務(wù)器
- 多媒體協(xié)處理器SM501在嵌入式系統(tǒng)中的應(yīng)用
- 基于IEEE802.11b的EPA溫度變送器
- QUICCEngine新引擎推動IP網(wǎng)絡(luò)革新
- SoC面世八年后的產(chǎn)業(yè)機遇
- MPC8xx系列處理器的嵌入式系統(tǒng)電源設(shè)計
- dsPIC及其在交流變頻調(diào)速中的應(yīng)用研究