a一级爱做片免费观看欧美,久久国产一区二区,日本一二三区免费,久草视频手机在线观看

新聞中心

EEPW首頁 > EDA/PCB > 設計應用 > 基于32位RISC處理器SoC平臺的Linux操作系統實現

基于32位RISC處理器SoC平臺的Linux操作系統實現

——
作者:馬俊 上海交通大學電子學院 時間:2006-10-20 來源:電子元器件 收藏

引言

智原科技的 平臺是一種低功耗、便攜式視頻相關應用開發平臺,也可用于基于FA526 CPU的設計驗證。

基于FA526的Linux軟件開發套件,開發人員可將Linux一2.4.19軟件環境在平臺上安裝實現,并完成對平臺上所有IP的驅動程序安裝和對FA526的內部調試。

FA526介紹

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

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

SoC平臺介紹

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

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

受基于FA526的Linux安裝

本開發系統所需的主開發硬件環境,一是兼容Intel x86的PC,二是標準16550 UART接口。而軟件主要是Linux操作系統(RedHat 7.3~8.0或更高版本)和FA526一Linux軟件包。而通用平臺系統所需的器件,主要是一片MediaCreative!(含FIE8100/FWAB326AA芯片)和一片64 MB SDRAM及32 MB Flash。

通過FA526一Linux可以將Linux-2.4.19軟件環境在Faraday FA526處理器和外設IP上進行安裝。

FA526一Linux軟件包通常以"arm-linux一20050429.tgz"打包文件并遞交(此程序發布于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執行路徑shell環境。

可執行以下命令來添加路徑:

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

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

FA526-Linux的構建和開發

里配置和構建FA526一Linux內核時,如果FA526的Linux內核子目錄路徑為:/usr/src/arm-linux/arm-linux一2.4.19/,那么,FA526一Linux目錄的結構將和標準Linux內核一樣,其版本為2.4.19。表3列出了Linux內核子目錄的內容。

內核構建

為FA526架構生成內核映像時,必須先對內核進行配置,配置文件路徑為<TOPDIR>/.config。

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

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

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

(3)定制內核功能:添加或刪除一個內核的功能(如網絡支持)。

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

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

FA526系統中的主要選項有以下幾種:

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

[*]Support FA526 processor,設置FA526系列處理器選項來支持FA526 CPU。

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

(44000000) System clock,FIE8100的默認值是44 MHz。開發人員應根據實際電路板設定來調整。

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

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

#make clean

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

#./mkbootp.sh

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

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

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

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

Mkbootp.sh的內容是:

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

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

建立ARMBOOT

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

修改系統時鐘。對于MediaCreative!平臺,它的默認值是44 MHz。

修改UART時鐘。對于MediaCreative!平臺,應為22.1184 MHz。

修改Flash塊號。對于MediaCreative!平臺,Flash的塊號是1。

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

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

#make

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

通過ARMBOOT啟動FA526 Linux

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

(1)在Linux主機上設置trip服務器,并設置/etc/xinetd.d/tftp。

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

重啟FIE8100開發板(MediaCreative!)。

選擇"90) GO ARMB00T"。

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

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

通過命令"go Ox2000000"啟動Linux,直至出現Linux啟動信息。

Linux的使用

在完成以上操作后,armboot就可燒入在MediaCreative!開發板上的Flash里。以后,要通過armboot來運行Linux操作系統以對FIE8100平臺進行開發驗證,可執行以下操作:

(1)開啟MediaCreative!開發板,運行"MPEG4 Burnin",使系統出現Linux運行選項;

(2)鍵入"空格"鍵,進入Linux操作系統。

結束語

以上通過智源科技的FIE8100 SOC平臺的設計使用,介紹了兼容ARM V4指令集的32位RISC處理器和該SoC平臺的Linux操作系統,它具有低功耗、便攜帶的優點、開發人員可將Linux--2.4.19軟件在FIE8100的平臺上安裝實現,并進行二次開發和驗證。



評論


相關推薦

技術專區

關閉