引言
智原科技的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)。
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的大小。可在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)證。
編輯:jq
-
cpu
+關(guān)注
關(guān)注
68文章
10905瀏覽量
213032 -
soc
+關(guān)注
關(guān)注
38文章
4204瀏覽量
219110 -
AMBA
+關(guān)注
關(guān)注
0文章
69瀏覽量
15044
發(fā)布評論請先 登錄
相關(guān)推薦
面向NXP i.MX8處理器的電源解決方案

嵌入式 Linux 操作系統(tǒng)配置
ADS8361與TMS470處理器的接口

ADS786x與TMS470處理器的接口

linux操作系統(tǒng)安裝步驟 linux操作系統(tǒng)的特點(diǎn)及組成
恩智浦i.MX8處理器的集成電源設(shè)計(jì)

基于全志V853處理器的智能輔助駕駛算法介紹

使用TPS6521815 PMIC為NXP i.MX 7處理器供電

龍芯2K0300蜂鳥板支持OpenHarmony 4.0 Release版本操作系統(tǒng)
RK3568處理器硬件設(shè)計(jì)的要點(diǎn)及注意事項(xiàng)
中微億芯發(fā)布ARM A9處理器SoC Z7及以7系列FPGA為核心的SIP電路
適用于ARM Cortex?—A53處理器A53處理器和FPGA的集成電源管理IC TPS65220數(shù)據(jù)表

評論