0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

探究关于FA526处理器SoC平台的Linux操作系统实现

电子工程师 来源:电子元器件 作者:马俊 陈宏铭 2021-03-24 14:39 次阅读

引言

智原科技的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)。

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的大小。可在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的平台上安装实现,并进行二次开发和验证。

编辑:jq

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • cpu
    cpu
    +关注

    关注

    68

    文章

    10824

    浏览量

    211118
  • soc
    soc
    +关注

    关注

    38

    文章

    4117

    浏览量

    217913
  • AMBA
    +关注

    关注

    0

    文章

    68

    浏览量

    14950
收藏 人收藏

    评论

    相关推荐

    SK-AM68处理器入门套件用户指南

    电子发烧友网站提供《SK-AM68处理器入门套件用户指南.pdf》资料免费下载
    发表于 11-13 15:02 0次下载
    SK-AM68<b class='flag-5'>处理器</b>入门套件用户指南

    AM69处理器入门套件用户指南

    电子发烧友网站提供《AM69处理器入门套件用户指南.pdf》资料免费下载
    发表于 11-13 08:34 0次下载
    AM69<b class='flag-5'>处理器</b>入门套件用户指南

    嵌入式 Linux 操作系统配置

    随着物联网(IoT)和智能设备的快速发展,嵌入式系统在各个领域扮演着越来越重要的角色。Linux因其开源、灵活和稳定的特性,成为嵌入式系统的首选操作系统。 1. 硬件选择 在配置嵌入式
    的头像 发表于 11-06 10:22 205次阅读

    ADS8361与TMS470处理器的接口

    电子发烧友网站提供《ADS8361与TMS470处理器的接口.pdf》资料免费下载
    发表于 10-22 10:13 0次下载
    ADS8361与TMS470<b class='flag-5'>处理器</b>的接口

    ADS786x与TMS470处理器的接口

    电子发烧友网站提供《ADS786x与TMS470处理器的接口.pdf》资料免费下载
    发表于 10-22 10:11 0次下载
    ADS786x与TMS470<b class='flag-5'>处理器</b>的接口

    linux操作系统安装步骤 linux操作系统的特点及组成

    Linux操作系统安装步骤 Linux操作系统是一种开源的操作系统,它以其稳定性、安全性和灵活性而闻名。以下是安装
    的头像 发表于 10-21 11:24 440次阅读

    恩智浦i.MX8处理器的集成电源设计

    电子发烧友网站提供《恩智浦i.MX8处理器的集成电源设计.pdf》资料免费下载
    发表于 09-18 14:25 0次下载
    恩智浦i.MX8<b class='flag-5'>处理器</b>的集成电源设计

    基于全志V853处理器的智能辅助驾驶算法介绍

    全志V853处理器,是专为智慧视觉领域设计的AI处理器,配备了高效的NPU算力和丰富的外设接口,能够提供稳定的AI边缘计算支持;同时,基于V853处理器这一性能优势,全志还为客户提供了一整套完整的智能辅助驾驶算法。
    的头像 发表于 09-14 09:23 615次阅读
    基于全志V853<b class='flag-5'>处理器</b>的智能辅助驾驶算法介绍

    使用TPS6521815 PMIC为NXP i.MX 7处理器供电

    电子发烧友网站提供《使用TPS6521815 PMIC为NXP i.MX 7处理器供电.pdf》资料免费下载
    发表于 09-13 09:40 0次下载
    使用TPS6521815 PMIC为NXP i.MX 7<b class='flag-5'>处理器</b>供电

    龙芯2K0300蜂鸟板支持OpenHarmony 4.0 Release版本操作系统

    龙芯2K0300蜂鸟板是基于龙芯中科自研的LoongArch架构2K0300处理器设计的,整体结构小巧紧凑,功能丰富齐全。龙芯2K0300蜂鸟板采用核心板加扩展底板的模块化设计方式,有助于合作厂商
    发表于 06-20 10:02

    RK3568处理器硬件设计的要点及注意事项

    电子发烧友网站提供《RK3568处理器硬件设计的要点及注意事项.pdf》资料免费下载
    发表于 06-11 11:48 1次下载

    中微亿芯发布ARM A9处理器SoC Z7及以7系列FPGA为核心的SIP电路

    近日,中科芯控股公司中微亿芯举办了"融核造芯 智创未来"高性能可编程 SoC / SIP 系列新品发布会,隆重发布了ARM A9处理器SoC Z7,及以7系列FPGA为核心的SIP电路。
    的头像 发表于 05-28 18:22 1122次阅读

    联想笔记本搭载骁龙X1E78100处理器现身Geekbench数据库

    此款联想新机搭载基本频率高达3.42 GHz的骁龙义勇侠X1E78100处理器,配置了32GB的记忆体,并在新型Windows11 Pro Insider预览版操作系统中以平衡电源模式运行Geekbench 6.2.2测试。
    的头像 发表于 04-02 11:35 1487次阅读

    适用于ARM Cortex®—A53处理器A53处理器和FPGA的集成电源管理IC TPS65220数据表

    电子发烧友网站提供《适用于ARM Cortex®—A53处理器A53处理器和FPGA的集成电源管理IC TPS65220数据表.pdf》资料免费下载
    发表于 03-27 10:04 0次下载
    适用于ARM Cortex®—A53<b class='flag-5'>处理器</b>A53<b class='flag-5'>处理器</b>和FPGA的集成电源管理IC TPS65220数据表

    M3芯片和i7处理器的区别

    M3芯片与i7处理器在多个方面存在显著差异。
    的头像 发表于 03-11 16:41 3528次阅读