當(dāng)前位置:首頁 > 嵌入式 > 嵌入式教程
[導(dǎo)讀]基于FA526處理器SoC平臺的Linux操作系統(tǒng)實(shí)現(xiàn)

引言

    智原科技的FIE8100 SoC平臺是一種低功耗、便攜式視頻相關(guān)應(yīng)用開發(fā)SoC平臺,也可用于基于FA526 CPU的SoC設(shè)計(jì)驗(yàn)證。

    基于FA526的Linux軟件開發(fā)套件,開發(fā)人員可將Linux一2.4.19軟件環(huán)境在FIE8100平臺上安裝實(shí)現(xiàn),并完成對平臺上所有IP的驅(qū)動程序安裝和對FA526的內(nèi)部調(diào)試。

FA526介紹

    FA526是一顆有著廣泛用途的32位RISC處理器。它包括一個同步CPU內(nèi)核(core)、獨(dú)立的指令/數(shù)據(jù)緩存(cache)、獨(dú)立的指令/數(shù)據(jù)暫存器(scratchpads)、一個寫緩存(write buffer)、一個內(nèi)存管理單元(memory management unit)和JTAG在線仿真(ICE)接口。CPU內(nèi)核是6級流水線(pipeline)的哈佛(Harvard)結(jié)構(gòu),包括取指令(fetch)、解碼(decode)、搬移(shift)、執(zhí)行(execution)、數(shù)據(jù)訪存(memory)、寫回(write)等。為了提高整體性能,F(xiàn)A526 CPU還包含了一個分支運(yùn)算緩存(Branch Target Buffer:BTB),故可減少分支運(yùn)算的開銷(penalties)。

    FA526 CPU內(nèi)核的指令是兼容ARM V4的結(jié)構(gòu),并使用AMBA AHB接口與外部設(shè)備進(jìn)行通訊。因此,F(xiàn)A526 CPU有著廣泛的應(yīng)用領(lǐng)域,特別是針對那些需要高性能和低功耗的應(yīng)用。FA526 CPU內(nèi)核采用完全同步方式。其基于單相時鐘(single-phase clock)的結(jié)構(gòu)可以很容易集成開發(fā)系統(tǒng)級芯片(System on Chip:SoC)。FA526 CPU內(nèi)核的方框圖如圖1所示。

FIE8100 SoC平臺介紹

    FIE8100 SoC平臺的系統(tǒng)架構(gòu)如圖2所示。它提供有多種外設(shè)接口。其內(nèi)部的高性能處理器內(nèi)核和功耗管理功能特別適合MPEG一4和JPEG的市場需求。目前,智原的MPEG4/JPEG圖Codec所支持的格式為Simple Profile Version 3.1,其中包含XviD編碼和一部分的DivX編碼。

    FIE8100 SoC平臺包含有非常豐富的功能模塊以支持多種應(yīng)用。包括FA526(32Bit RISC CPU)、MPEG-4/JPEG編解碼引擎、USB2.0設(shè)備控制器、USB2.0PHY(物理層)、LCD控制器、DMA控制器、TV Encoder(解碼器)、Capture(視頻捕捉器)和AMBA總線架構(gòu)。為了讓用戶能將自己的IP或功能模塊順利的運(yùn)行在FA526上,智原科技將AHB總線從CPU的引線中拉出,并搭配各類接口和片外芯片,從而開發(fā)制作了一個基于FIE8100 SoC的仿真平臺:MediaCreative!。

基于FA526的Linux安裝

    本開發(fā)系統(tǒng)所需的主開發(fā)硬件環(huán)境,一是兼容Intel x86的PC,二是標(biāo)準(zhǔn)16550 UART接口。而軟件主要是Linux操作系統(tǒng)(RedHat 7.3~8.0或更高版本)和FA526一Linux軟件包。而通用平臺系統(tǒng)所需的器件,主要是一片MediaCreative!(含F(xiàn)IE8100/FWAB326AA芯片)和一片64 MB SDRAM及32 MB Flash。

    通過FA526一Linux可以將Linux-2.4.19軟件環(huán)境在Faraday FA526處理器和外設(shè)IP上進(jìn)行安裝。

    FA526一Linux軟件包通常以"arm-linux一20050429.tgz"打包文件并遞交(此程序發(fā)布于April 29,2005)表1所列是安裝Linux所需的硬盤空間大小。

    安裝FA526一Linux軟件包的具體流程如下:

(1)拷貝文件arm-linux一20050429.tgz至目錄/usr/src:

#cp arm-linux一20050429.tgz/usr/src

(2)解包文件"arm-linux一20050429.tgz":

#cd/usr/src

#tar zxvf arm-linux一20050429.Tgz

(3)安裝Toolchain(GCC一2.95.3,Binutils一2.11.2,GLIBC一2.2.3)至目錄/usr/local:

#cp/usr/src/arm-linux/toolchain/arm-linux-toolchain.tgz/usr/local/

#cd/usr/local

#tar zxvf arm-linux-toolchain.tgz

#rm-f arm-linux-toolchain.Tgz

    此步驟將在目錄/usr/local/arm解壓GCC一2.95.3,Binutils一2.11.2和GLIBC一2.2.3的輸出文件。

(4)添加GCC執(zhí)行路徑shell環(huán)境。

    可執(zhí)行以下命令來添加路徑:

#export PATH=$PATH:/usr/local/arm/2.95.3/bin

    在完成以上四個安裝步驟后,就可以在自己的系統(tǒng)下解壓打包文件(如arm-linux20050429.tgz),之后,系統(tǒng)會自動生成一組目錄。表2列出了這些源目錄的定義。用戶的應(yīng)用程序包含在目錄/usr/src/arm-linux/user/下,而客戶定制的RAM-Disk則包含在目錄/usr/src/arm-linux/images/下。

FA526-Linux的構(gòu)建和開發(fā)

    在嵌入式系統(tǒng)里配置和構(gòu)建FA526一Linux內(nèi)核時,如果FA526的Linux內(nèi)核子目錄路徑為:/usr/src/arm-linux/arm-linux一2.4.19/,那么,F(xiàn)A526一Linux目錄的結(jié)構(gòu)將和標(biāo)準(zhǔn)Linux內(nèi)核一樣,其版本為2.4.19。表3列出了Linux內(nèi)核子目錄的內(nèi)容。

內(nèi)核構(gòu)建

    為FA526架構(gòu)生成內(nèi)核映像時,必須先對內(nèi)核進(jìn)行配置,配置文件路徑為/.config。

    通常,用戶可能為了一些如下的因素要求重新配置FA526一Linux,具體方法為:

(1)定制處理器和板子的功能:修改UART時鐘、系統(tǒng)時鐘等。

(2)定制硬件設(shè)備:添加或刪除某些特殊設(shè)備。

(3)定制內(nèi)核功能:添加或刪除一個內(nèi)核的功能(如網(wǎng)絡(luò)支持)。

    Linux內(nèi)核配置為配置這些可選項(xiàng)目提供了兩種常用方式:一是使用菜單顯示來選擇項(xiàng)目(#make menuconfig);二是使用GUI顯示來選擇項(xiàng)目(#make xconfig)。

    圖3則是針對FA526和CPE開發(fā)板的FA526一Linux的menuconfig介面。

    FA526系統(tǒng)中的主要選項(xiàng)有以下幾種:

(CPE)ARM system type,默認(rèn)值選是中CPE開發(fā)板來支持Faraday CPE(Common Platform Environment)。

[*]Support FA526 processor,設(shè)置FA526系列處理器選項(xiàng)來支持FA526 CPU。

(FIE8100)Platform environment從A320、FIE8100、FIE7000中選擇平臺設(shè)定。

(44000000) System clock,F(xiàn)IE8100的默認(rèn)值是44 MHz。開發(fā)人員應(yīng)根據(jù)實(shí)際電路板設(shè)定來調(diào)整。

(22118400)UART clock.FIE8100的UART時鐘是22.184 MHz。開發(fā)人員可根據(jù)實(shí)際的電路板設(shè)定來設(shè)置UART時鐘頻率。

    需要說明的是:第一次make Linux內(nèi)核時,可清除所有目標(biāo)文件,并重新創(chuàng)建從屬文件(dependency)。如果要修改內(nèi)核的配置,則可調(diào)用"make dep"。操作步驟如下:

#make clean

#make dep(FA526一Linux提供了內(nèi)核腳本文件(shell-script)"mkbootp.sh",這可以使Make內(nèi)核更容易。)

#./mkbootp.sh

    上述操作可創(chuàng)建名為bootplmage的最終內(nèi)核映像文件(kernel image)和名為vmlinux的內(nèi)核ELF文件。以下操作是修改mkbootp.sh的一個例子:

(1)使用定制的ram-disk來為特殊規(guī)格的ramdisk修改"make bootpImage INITRD="。可修改"Default RAM disk size"來滿足ramdisk的大小(見圖4)。可在"Block devices"配置界面里通過"make xconfig"來設(shè)置。

(2)復(fù)制輸出映像到特定目錄:

在mkbootp.sh檔案上修改"cp"這一行以符合需求。

Mkbootp.sh的內(nèi)容是:

"make hootpimage INITRD=/usr/src/arm-linux/images/ramdisk.gz''

"cp arch/arm/boot/bootpImage/tftpboot/mbootpImage"

建立ARMBOOT

FA526一Linux使用ARMB00T來裝載操作系統(tǒng)。FA526的ARMBOOT使用一個名為"faraday.h"的配置文件來配置各種不同的硬件環(huán)境。此文件被放在/usr/src/arm-linux/armboot一1.1.O/faraday.h。其可修改的內(nèi)容和值包括(通常不需要改動):

修改系統(tǒng)時鐘。對于MediaCreative!平臺,它的默認(rèn)值是44 MHz。

修改UART時鐘。對于MediaCreative!平臺,應(yīng)為22.1184 MHz。

修改Flash塊號。對于MediaCreative!平臺,F(xiàn)lash的塊號是1。

修改好MAC和IP后,就可以通過以下命令來建立ARMBOOT:

#cd/usr/src/arm-linux/armboot-1.1.0

#make

     此時,系統(tǒng)會在目錄里自動生成"armboot.bin"文件。此后便可根據(jù)這個指令將armboot燒人到FIE8100的Flash器件里,并編寫特定鏡像文件armboot.bin至Flash地址0x80400000。

    通過ARMBOOT啟動FA526 Linux

    在開發(fā)階段的好多部分,開發(fā)人員必須要做前期規(guī)劃來修改或下載代碼直到得到想要的結(jié)果。在這樣的情況下,需要armboot來下載和運(yùn)行代碼的具體步驟如下:

(1)在Linux主機(jī)上設(shè)置trip服務(wù)器,并設(shè)置/etc/xinetd.d/tftp。

(2)在此狀態(tài)下使用Linux making shell(mkbootp.sh)編譯代碼,并生成Linux代碼至目錄/tftpboot.要運(yùn)行Linux代碼,需按以下步驟執(zhí)行:

重啟FIE8100開發(fā)板(MediaCreative!)。

選擇"90) GO ARMB00T"。

確認(rèn)Linux-Host和F1E8100的IP地址是正確的,(printenv)。

輸入命令:tftp Ox2000000 mbootplmage,以下載代碼。

通過命令"go Ox2000000"啟動Linux,直至出現(xiàn)Linux啟動信息。

Linux的使用

    在完成以上操作后,armboot就可燒入在MediaCreative!開發(fā)板上的Flash里。以后,要通過armboot來運(yùn)行Linux操作系統(tǒng)以對FIE8100平臺進(jìn)行開發(fā)驗(yàn)證,可執(zhí)行以下操作:

(1)開啟MediaCreative!開發(fā)板,運(yùn)行"MPEG4 Burnin",使系統(tǒng)出現(xiàn)Linux運(yùn)行選項(xiàng);

(2)鍵入"空格"鍵,進(jìn)入Linux操作系統(tǒng)。

結(jié)束語

    以上通過智源科技的FIE8100 SOC平臺的設(shè)計(jì)使用,介紹了兼容ARM V4指令集的32位RISC處理器和該SoC平臺的Linux操作系統(tǒng),它具有低功耗、便攜帶的優(yōu)點(diǎn)、開發(fā)人員可將Linux--2.4.19軟件在FIE8100的平臺上安裝實(shí)現(xiàn),并進(jìn)行二次開發(fā)和驗(yàn)證。

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

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

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

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

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

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

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時企業(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)易近期正在縮減他們對日本游戲市場的投資。

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

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

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

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

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

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

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

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

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

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

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