當(dāng)前位置:首頁 > 嵌入式 > 嵌入式硬件
[導(dǎo)讀]1 引言PC/104是一種專門為嵌入式控制而定義的工業(yè)控制總線。其實(shí)質(zhì)是一種緊湊的IEEE-P996總線規(guī)范。PC/104的信號(hào)定義和PC/AT基本一致,但電氣和機(jī)械規(guī)范完全不同,是一種優(yōu)

1 引言

PC/104是一種專門為嵌入式控制而定義的工業(yè)控制總線。其實(shí)質(zhì)是一種緊湊的IEEE-P996總線規(guī)范。PC/104的信號(hào)定義和PC/AT基本一致,但電氣和機(jī)械規(guī)范完全不同,是一種優(yōu)化的、低功耗的、小型的、堆棧式結(jié)構(gòu)的嵌入式控制系統(tǒng)[1]。

基于嵌入式PC/104的操作系統(tǒng)多為DOS或者Windows。采用DOS系統(tǒng)無圖形窗口,交互能力差;采用Windows系統(tǒng)則需要昂貴的版權(quán)費(fèi),成本高,且存在安全問題。

ARM(Advanced RISC Machines) 公司是全球領(lǐng)先的16/32位RISC微處理器知識(shí)產(chǎn)權(quán)設(shè)計(jì)供應(yīng)商[2]。 ARM處理器具有體積小、功耗低、性能優(yōu)良且成本低廉等優(yōu)點(diǎn),與PC/104的工作環(huán)境對(duì)其提出的要求相符,而且Linux具有開放源碼的特點(diǎn),用戶不必為昂貴的版權(quán)費(fèi)用擔(dān)心。因此,研究以基于ARM的Xscale處理器替代傳統(tǒng)的X86架構(gòu)的PC/104處理器,并以嵌入式Linux系統(tǒng)替代DOS或 Windows系統(tǒng)具有重要意義。

2 PC/104目標(biāo)硬件平臺(tái)介紹

本文采取博創(chuàng)公司的UP-PXA270 PC/104 CPU模塊作為構(gòu)建Linux的目標(biāo)硬件平臺(tái)。該模塊采用Intel PXA270 Xscale低功耗處理器,主頻104MHZ~520MHZ,集成了64M的SDRAM,有16M的Nor Flash存儲(chǔ)軟件程序及重要數(shù)據(jù),提供了CF卡接口、USB接口、VGA接口、LVDS接口、串口、以太網(wǎng)接口。

3 Linux系統(tǒng)在PC/104上的實(shí)現(xiàn)

3.1 內(nèi)核的選擇與下載

目前,Linux已經(jīng)正式發(fā)布了2.6.20內(nèi)核版本,綜合考慮先進(jìn)性和穩(wěn)定性兩個(gè)因素,本

文不采用最新的2.6.20版本,而是采用更穩(wěn)定和成熟的2.6.10版本,該版本可從下面的網(wǎng)址

http://www.arm.linux.rog.uk/下載。

3.2 交叉編譯環(huán)境的建立

由于宿主機(jī)和目標(biāo)板的處理器架構(gòu)不同,需要建立交叉編譯環(huán)境。在宿主機(jī)上完成程序的開發(fā)和編譯,在目標(biāo)板上執(zhí)行,可以充分利用宿主機(jī)的高性能,有效提高編譯效率。

主機(jī)采用商用版Redhat-Linux9.0,以解決基于Windows虛擬機(jī)環(huán)境存在兼容性及對(duì)速度產(chǎn)生影響等問題。

本文在X86架構(gòu)上的主機(jī)上采用針對(duì)ARM的工具鏈進(jìn)行開發(fā),開發(fā)工具鏈采用UP-PXA270 PC/104 CPU模塊配套光盤中提供的交叉編譯器arm-linux-gcc,安裝步驟如下:

以超級(jí)用戶root登陸,并打開一個(gè)shell,依次執(zhí)行如下操作:

1) #mkdir/usr/local/arm;創(chuàng)建開發(fā)工具目錄;

2) #cd/usr/local/arm;進(jìn)入該目錄;

3) #tar xvzf arm_linux_gcc.tar.gz;解壓縮交叉編譯工具;

4) #export PATH=/usr/local/arm/3.2.1/bin:¥PATH。設(shè)置環(huán)境變量。

便可完成安裝,建立好交叉編譯環(huán)境。

3.3 Boot Loader移植

引導(dǎo)加載程序Boot loader是在操作系統(tǒng)內(nèi)核運(yùn)行前運(yùn)行的一小段程序。用來完成硬件和軟件運(yùn)行環(huán)境的初始化,建立內(nèi)存空間映射圖,以便最終調(diào)用操作系統(tǒng)內(nèi)核。作用與PC機(jī)上的BIOS基本相同,是最底層的引導(dǎo)程序。

本文采用了功能最多、最具彈性的被最為積極開發(fā)和維護(hù)的開放源碼的bootloader,即U-BOOT。它除了提供引導(dǎo)功能外,還提供監(jiān)控程序的功能,該功能在系統(tǒng)開發(fā)期間非常有用。

Boot Loader移植操作如下:

首先確定在cpu./xscale/和board./pxa270下存在xscale.c和pxa270.c兩個(gè)文件,然后在根目錄下輸入:make pxa270_config得到U-Boot.bin映像文件,最后用JTAG燒錄到FLASH,完成Boot Loader的移植。

3.4 Linux內(nèi)核的配置與裁減

Linux內(nèi)核已經(jīng)發(fā)展到2.6.20版本,功能非常強(qiáng)大,但是,體積也變的異常龐大。因此,必須針對(duì)PC/104目標(biāo)板的硬件配置進(jìn)行裁減。

根據(jù)目標(biāo)板PXA270的資源配置,采用make menuconfig配置內(nèi)核,將有關(guān)CPU、內(nèi)存管理、JFFS2文件系統(tǒng)支持、串口支持、網(wǎng)口支持編譯進(jìn)內(nèi)核,將音頻、觸摸屏接口、LVDS接口作為模塊編譯,需要時(shí)動(dòng)態(tài)載入,這樣編譯下來的內(nèi)核只有300KB左右,大大減小了內(nèi)核的體積,減輕了目標(biāo)板有限的存儲(chǔ)空間和內(nèi)存的壓力。

編譯并生成鏡像命令如下:

1)#tar jxvf my-linux-2.6.10..tar.bz2

2)#ln –s linux-2.6.10 linux

3)#cd linux

4)#make clean

5)#make dep

6)#make bzImage

3.5 文件系統(tǒng)的選擇和建立

根據(jù)文件系統(tǒng)的特性[5]和PC/104目標(biāo)板的硬件環(huán)境,選擇JFFS2作為PC/104目標(biāo)板的文件系統(tǒng)。JFFS2文件系統(tǒng)具有垃圾回收功能維護(hù)空間,并且它的元數(shù)據(jù)的結(jié)構(gòu)允許文件系統(tǒng)的寫入操作,故可提供對(duì)使用Flash系統(tǒng)而言非常重要的斷電可靠性和損耗平衡特性,能應(yīng)對(duì)PC104工作時(shí)的突發(fā)事件,避免系統(tǒng)由于突發(fā)事件造成崩潰,從而提高系統(tǒng)的安全性。

商用發(fā)行版Red Hat的文件系統(tǒng)內(nèi)容來自GNU,體積龐大,不適合做嵌入式系統(tǒng)的文件系統(tǒng),而Busybox是小型嵌入式系統(tǒng)常用的一個(gè)套件,它可以根據(jù)配置執(zhí)行ash shell的基本功能,以及幾十個(gè)小應(yīng)用程序的功能,而大小只有300K左右,是目前嵌入式領(lǐng)域最活躍的系統(tǒng)應(yīng)用套件。故本文使用Busybox系統(tǒng)套件。

將全部的文件系統(tǒng)移植到目標(biāo)板之前,需要用mkfs.jffs2工具打包。具體移植操作如下:

1) 解壓根文件系統(tǒng),生成root目錄。

#tar jxf up-netpxa270_fs.tar.bz2

2) 解壓busybox

#cd up-techpxa270/kernel/02_root

#tar zxf busybox-1.00-pre9.tar.gz

#cd busybox-1.00-pre9

3) 配置安裝busybox

#make menucongfig

4) 生成JFFS2文件系統(tǒng)

#/mkfs.jffs2 -r root -o rootfs.img -e 0x20000 --pad=0xd00000

移植好文件系統(tǒng)后,便可以通過U-boot引導(dǎo),并掛載該文件系統(tǒng)根分區(qū)啟動(dòng)Linux。

4 系統(tǒng)測(cè)試

開發(fā)的基于Xscale的PC/104 Linux系統(tǒng)硬件如圖1所示。室溫25℃,通風(fēng)良好條件下,經(jīng)測(cè)試,系統(tǒng)能夠啟動(dòng)并穩(wěn)定運(yùn)行(如圖2),通過PING命令測(cè)試表明,系統(tǒng)能夠與外網(wǎng)連通(如圖3),且工作穩(wěn)定,系統(tǒng)構(gòu)建成功。

 


圖1 PC/104開發(fā)板

[!--empirenews.page--]

 

5 結(jié)論

以博創(chuàng)公司的UP-PXA270 PC/104 CPU模塊作為構(gòu)建Linux的目標(biāo)硬件平臺(tái),采用商用版Redhat-Linux9.0建立交叉編譯環(huán)境;利用U-BOOT進(jìn)行Boot Loader移植,用make menuconfig配置內(nèi)核;將音頻、觸摸屏接口、LVDS接口作為模塊編譯,以減小內(nèi)核的體積;并根據(jù)文件系統(tǒng)的特性,使用Busybox系統(tǒng)套件進(jìn)行文件系統(tǒng)移植。測(cè)試結(jié)果表明,本文構(gòu)建的基于Xscale處理器的PC/104Linux系統(tǒng)能夠正常啟動(dòng)并與外網(wǎng)穩(wěn)定通訊,為PC/104在工業(yè)控制領(lǐng)域的廣泛應(yīng)用提供了新的途徑,提出的移植方法具有普遍的借鑒價(jià)值。

今后,需要在此基礎(chǔ)上,研究并實(shí)現(xiàn)易于使用、界面友好的圖形用戶接口,提高系統(tǒng)的人機(jī)交互性和操作便捷性。

本文作者創(chuàng)新觀點(diǎn):首次提出以Xscale處理器架構(gòu)的PC/104板作為L(zhǎng)inux系統(tǒng)的移植目標(biāo)平臺(tái)并進(jìn)行系統(tǒng)構(gòu)建。

參考文獻(xiàn)

[1] 包乃蘭,寧立革,林濤,郭計(jì)策.一種嵌入式系統(tǒng)控制方案的研究[J].微計(jì)算機(jī)信息,2005,9-2:62-64

[2] 王田苗. 嵌入式系統(tǒng)設(shè)計(jì)與實(shí)例開發(fā)[M].北京:清華大學(xué)出版社,2003.

[3] 鄒淼,包啟亮.PC/104下嵌入式Linux操作系統(tǒng)優(yōu)化方案[J].光電工程,2004,12(31):152-155

[4] 蔡勇,戰(zhàn)興群,張炎華等. 基于嵌入式Linux的“北斗一號(hào)”衛(wèi)星導(dǎo)航系統(tǒng)軟件設(shè)計(jì)[J].中國(guó)慣性技術(shù)學(xué)報(bào),2005(13):54-58

[5] Karim Yaghbmour. 構(gòu)建嵌入式LINUX系統(tǒng)[M]. 北京:中國(guó)電力出版社,2006.

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

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

倫敦2024年8月29日 /美通社/ -- 英國(guó)汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對(duì)日本游戲市場(chǎng)的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營(yíng)業(yè)績(jī)穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤(rùn)率延續(xù)升勢(shì) 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長(zhǎng) 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競(jìng)爭(zhēng)力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競(jìng)爭(zhēng)優(yōu)勢(shì)...

關(guān)鍵字: 通信 BSP 電信運(yùn)營(yíng)商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國(guó)電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場(chǎng) NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長(zhǎng)三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡(jiǎn)稱"軟通動(dòng)力")與長(zhǎng)三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉