您好,  [请登录] [QQ登录]  [支付宝登录[免费注册]

商品分类

分享到: 百度搜藏 搜狐微博 新浪微博 腾讯微博 QQ收藏 人人网 Facebook Twitter

基于FA526处理惩罚处罚器SoC平台的Linux利用体系实现

发布日期:2011-05-11

    小序

    智原科技的FIE8100 SoC平台是一种低功耗、便携式视频干系应用开辟SoC平台,也可用于基于FA526 CPU的SoC筹划验证。

    基于FA526的Linux软件开辟套件,开辟职员可将Linux一2.4.19软件环境在FIE8100平台上摆设实现,并完成对平台上全部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所示。


   FIE8100 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架构天生内核映像时,必须先对内核举行配置,配置文件路径为/.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="。可修改"Default RAM disk size"来餍足ramdisk的大小(见图4)。可在"Block devices"配置界面里通过"make xconfig"来设置。

   (2)复制输出映像到特定目次:

在mkbootp.sh文件上修改"cp"这一行以切合需求。

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的平台上摆设实现,并举行二次开辟和验证。