基于嵌入式ARMLinux的mp3的设计与实现.docx

上传人:b****8 文档编号:11360056 上传时间:2023-02-28 格式:DOCX 页数:48 大小:552.58KB
下载 相关 举报
基于嵌入式ARMLinux的mp3的设计与实现.docx_第1页
第1页 / 共48页
基于嵌入式ARMLinux的mp3的设计与实现.docx_第2页
第2页 / 共48页
基于嵌入式ARMLinux的mp3的设计与实现.docx_第3页
第3页 / 共48页
基于嵌入式ARMLinux的mp3的设计与实现.docx_第4页
第4页 / 共48页
基于嵌入式ARMLinux的mp3的设计与实现.docx_第5页
第5页 / 共48页
点击查看更多>>
下载资源
资源描述

基于嵌入式ARMLinux的mp3的设计与实现.docx

《基于嵌入式ARMLinux的mp3的设计与实现.docx》由会员分享,可在线阅读,更多相关《基于嵌入式ARMLinux的mp3的设计与实现.docx(48页珍藏版)》请在冰豆网上搜索。

基于嵌入式ARMLinux的mp3的设计与实现.docx

基于嵌入式ARMLinux的mp3的设计与实现

基于嵌入式ARM-Linux的播放器的设计与实现

摘要

随着21世纪的到来,人类进入了PC时代。

在这一阶段,嵌入式技术得到了飞速发展和广泛应用。

由此,本文提出了一种基于嵌入式ARM-Linux的播放器设计与实现的方案。

本文首先详细分析了ARM体系结构,研究了嵌入式Linux操作系统在ARM9微处理器的移植技术,包括交叉编译环境的建立、引导装载程序应用、移植嵌入式Linux内核及建立根文件系统,并且实现了嵌入式Linux到S3C2410开发板的移植。

由于嵌入式系统本身硬件条件的限制,常用在PC机的图形用户界面GUI系统不适合在其上运行。

为此,本文选择了Minigui作为研究对象,在对其体系结构等方面进行研究基础上,实现了Minigui到S3C2410开发板的移植,完成了嵌入式图形用户界面开发,使得系统拥有良好的操作界面。

对于播放器,本文实现了Linux系统下的通用媒体播放器—Mplayer到S3C2410开发板的移植。

通过对音频数据输出的研究,解决了Mp1ayer播放声音不正常的问题,实现了一个集音乐和视频播放于一体的嵌入式多媒体播放系统。

最后,总结了论文所做的工作,指出了嵌入式播放器所需要进一步解决和完善的问题。

关键词:

嵌入式ARM-Linux;S3C2410;Mplayer;GUI界面;Minigui

 

PlayerDesigningandImplementBasedOnEmbeddedARM-Linux

Abstract

Alongwiththe21stcenturyarrivals,thehumanityentersthepostPCtime.Inthisstage,embeddedtechnologygetsrapidlydevelopedandwidelyused.So,thispaperaimstodesignaplayerbasedonembeddedARM-Linux.

First,inthispaper,ARMarchitectureandthecharacteristicareanalyzedindetail.TheemphasisofthestudyisputontheportingtechniquesofembeddedLinuxoperationsystembasedontheARM9micro-processor,whichincludesettingcrosscomplier、transplantingBootloader、transplantingembeddedLinuxkernelandsettingrootfilesystem;Furthermore,implementthetechniqueoftransplantingEmbeddedLinuxtoS3C2410board.

GUI(GraphicalUserInterfaces)systemswhicharesupportedbynormalPCscannotrunwellontheembeddedsystems,justbecauseoftherestrictionofthehardwareofembeddeddevices.So,thispaperselectsMiniguiasresearchobject.BasedontheMiniguiarchitectureanditsotheraspects,thetechniqueoftransplantingMiniguitoS3C2410boardisgivenindetail,andthenanembeddedGUIsystemisestablishedanditalsomakesthehandleinterfacefriendly.

Abouttheplayer,thispaperimplementstransplantingtheuniversalplayeronLinux-MplayertoS3C2410board.Bylearningofaudiodata,itsolvestheproblemofsoundabnormality,andachievesanembeddedmultimediasystemwhichcouldplayaudioandvideofiles.

Keywords:

EmbeddedARM-Linux;S3C2410;Mplayer;GUIinterface;Minigui

 

 

第一章绪论

1.1系统研究背景

从上世纪末开始,随着计算机和电子技术的发展走上快车道,便携式电子设备,诸如智能手机,个人电子助理(PDA)的运算存储能力和通信能力都得到了长足的进步,便携式设备的用户界面也变的越来越友好,从早期的只能显示单色文字的LED,发展到现在大尺寸6万色彩色液晶屏幕。

因此,用户已经不再仅仅满足于早期的便携式电子设备提供的传统的,简单的语音通信或文档处理功能。

随着多媒体技术发展,用户希望能够在轻巧的便携式设备上同样能够享受到过去只能在笨重的台式机或笔记本电脑上才能享受到语音甚至视频等多媒体服务。

1.1.1多媒体播放器与嵌入式系统

随着芯片技术的快速发展,嵌入式系统的性能逐步提高,功能也越来越丰富。

嵌入式系统在众多领域的应用给我们的生活带来了便利,并且对人们的生活方式的改变和生活质量的提高具有重要的影响。

在这些领域中,消费电子产品的应用具有更为广泛的潜力,尤其是便携式消费电子产品。

当前,消费类电子产品更新换代的速度进一步加快,市场需求不断增大。

在MP3数码随身听取得巨大的市场成功后,支持视频的便携式播放器逐渐进入消费者的视线,成为继MP3之后的新一代数码影音娱乐平台。

受MP3的影响,人们习惯的将这一类嵌入式多媒体系统称作MP4。

在法国Archos公司推出第一款MP4掌上影院后,众多企业均看好MP4的发展态势。

新一代MP4良好的发展前景和潜在的市场,成为移动数码产业的新亮点,吸引着众多厂商大力研发,并将其推向市场。

除播放视频这一基本功能外,嵌入式多媒体系统还附带了若干增值功能,如音乐播放、图片浏览、游戏、调频收音、录音、电子书以及拍照、录像功能。

1.1.2嵌入式多媒体播放器国内外发展现状

目前嵌入式多媒体的内部结构,比较成熟的解决方案有三种:

基于SigmaDesigns851x系列芯片的解决方案、基于TlDM32ODSP+ARM处理器的解决方案和基于工ntelPXA27x的解决方案,这三种解决方案是目前的主流方案。

上述几种方案各有特点:

(1)SigmaDesigns851x方案

SigmaDesignS851x处理器是目前性能最强、最全面的专业解码芯片,采用双核设计,将200MHz32位RISC处理器和MPEG解码处理器集成于单芯片上,在无需其它外围芯片支持的情况下,完成系统所需各种接口的提供、系统处理以及流畅的WMAV9、DivXV3.11、DivXV4.X和S.X、MPEG-4、MPEG-2、MPEG-1等音视频解码。

其中对系统要求极高的MPEG-2解码,SigmaDesigns851x能轻松达到3OfpsDI,流畅自如,难能可贵!

优点:

单芯片,低成本,低功耗;硬核视频解码,视频播放效果好

缺点:

无法播放网络视频格式RM,RMVB等

(2)TIDM320DSP-I-ARM处理器的解决方案

作为DSP巨头,TI力推DM320DSP的PMP解决方案。

TI方案是利用DM320DSP进行音视频编解码处理,ARM处理器负责系统处理及提供外围设备接口。

与SigmaDesigns方案一样,TI方案支持的媒体类型非常丰富,能支持WMV、DivXV3.11、DivXV4.X和5.X、MPEG-4、MPEG-2、MPEG-1等。

但由于TlDM320为纯DSP芯片,因此必须配合ARM处理器才能组成完整的解决方案,因此在成本上并不具备优势。

优点:

支持的媒体类型丰富,编解码能力强

缺点:

必须配合ARM处理器,成本不占优势,功耗较大;不支持网络视频格式RM,RMVB

(3)IntelPXA27x的解决方案

Intel公司于2003年底推出了性能最为强劲的PXA27x嵌入式处理器,最高频率可达624MHz。

作为一款性能及其强劲的嵌入式处理器,配合嵌入式Linux或wince操作系统,PXA27x理论上可以支持任何媒体格式,并通过软件升级,支持未来媒体格式。

但由于MPEG-2对硬件的极高要求,因此单纯依靠PXA27x处理器进行MPEG-2编解码是不现实的。

Intel公司于2004年推出了2700G多媒体加速芯片,配合PXA270进行视频加速与3D加速。

同时,PXA27x加入了wirelessMMX技术和SpeedStep动态电源管理技术,不但大大增强了PXA270的媒体处理能力,而且极大降低了系统功耗,延长PMP产品的电池寿命。

2700G的加入,更使PXA27x方案成为全能解决方案,不但完美解决了MPEG-2编解码问题,更使基于PXA27x的PMP产品能向多功能化发展,可以加入游戏、摄像等功能,成为个人娱乐终端。

优点:

支持目前所有的媒体类型,可通过软件升级支持未来媒体类型;接口丰富,可支持SD、MS、CF等;支持最大400万象素摄像头;支持动态电源管理,功耗低

缺点:

成本可能较高

目前市面上还有其它几种非主流方案,如PxA255解决方案、SunplusSPCA536解决方案、Freescalei.MX21解决方案等。

基于PXA255的方案特点是功耗较低,且能够支持较多的媒体格式,但缺点是无法支持大尺寸图像的编解码,如MPEG-2等。

SunplusSPCA536解决方案价格低廉,但仅支持MPEG-4编解码与JPEG,支持媒体类型单纯,功能单一;FreeSCalei.MX21芯片原为智能手机专门设计,接口类型比较丰富,但音视频处理能力一般,无法进行流畅的MPEG-4播放,无法处理MPEG-2视频。

由于PMP(便携式多媒体播放器)产品的研发难度较大,目前市面上的大多数PMP产品均为国外或台湾设计。

中国大陆消费类娱乐产品的生产商因研发能力普遍较低而无法自己研发产品,因此未来中国大陆PMP设计制造将更多的按照生产商+DesignHouse的模式进行,这样生产商可以充分发挥自己的渠道和规模优势,而DesignHouse则发挥自己的强设计能力和低营运成本优势,双方合作则能够共同把PMP市场做大、做强。

国内目前也有进行PMP方案设计的公司,如南京东集公司(),采用的是Intel嵌入式处理器PXA255方案。

采用SigmaDesignS解决方案的公司主要集中在深圳,如深圳市深视通科技开发有限公司(),该公司目前己经设计出了基于SiglnaDesigns85n处理器的成熟的PMP解决方案,并制作了DEMO。

而TIDM320方案,目前主要依靠TI合作伙伴美国Ingenient公司推广[1]。

1.2嵌入式处理器

嵌入式处理器是嵌入式硬件平台的核心,负责系统事件的响应、任务的调度、外围器件的控制以及信号的处理。

嵌入式处理器是由通用计算机中的CPU演变而来的。

它的特征是32位以上,具有较高的性能。

与通用计算机中的CPU不同的是,嵌入式处理器在实际嵌入式应用中只保留和嵌入式应用紧密相关的功能硬件,去除其他的冗余功能部分,这样就以最低的功耗和资源实现嵌入式应用的特殊要求。

嵌入式处理器体积小、功耗低、成本低、可靠性高的优点使其在互联网、通信、消费类电子等多个领域得到了广泛的应用。

目前主要的嵌入式处理器按体系结构不同可分为五大类:

ARM、MIPS、POWERPC、x86和SH系列。

ARM内核是由ARM公司开发的一系列32位RISC处理器内核,当前有6个系列的产品:

ARM7,ARM9,ARM9E,ARM10E,SecurCore以及最新的ARM11系列。

目前业界可以提供ARM内核处理器的著名半导体公司有Intel,TI,Freescale,AnalogDevices,CirrusLogic和Samsung等。

本课题设计采用的S3C2410处理器就是Samsung提供的一款采用32位ARM内核的处理器。

S3C2410内部集成了微处理器和一些手持设备的常用外围组件,特别适用于手持产品。

S3C2410微处理器是一个多用途的通用芯片,它内部集成了微处理器和常用外围组件,可用于各种领域。

它是应用于手持设备的低成本实现,提供了更高性价比。

HHARM2410套件由核心板和底板(外设板或称基本板)组成,核心板上集成SamsungS3C2410处理器,64MSDRAM以及16M的FLASH,为您的应用研发提供了足够的空间。

底板上则提供以下外设接口:

一个四线RS-232串口(COM1),一个USBHOST接口,一个10M/100M自适应以太网接口,一个TFTLCD接口,一个触摸屏接口。

核心板和底板配合即构成一个最小的完整应用系统。

系统具有体积小、耗电低、处理能力强、等特点,能够装载和运行嵌入式Linux操作系统。

用户可以在这个系统平台上进行自主软件开发。

HHARM2410套件中提供底板硬件电路图及硬件设计文档,极大的方便了用户进行硬件扩展开发。

HHARM2410套件提供完备的嵌入式Linux开发环境及丰富的开发调试工具软件。

S3C2410微处理器的精彩特性[2]:

✧ARM920T嵌入式处理器内核,主频可达203MHz;

✧扩展总线最大频率100MHz;

✧32位数据,27位外部地址线;

✧完全静态设计(0-203M);

✧存储控制器(八个存储体):

⏹包含RAM(SDRAM)控制器,NAND控制器;

⏹复位时引导芯片选择(8-,16-比特存储或NAND可供选择);

✧四个带有PWM的16位定时器

✧多达55个中断源的中断控制器;

✧RTC;

✧三个UART,SupportsIrDA1.0;

✧四个DMA通道;(支持外设DMA)

✧8通道,500KSPS,10-bitADC;

✧支持STN

✧与TFTLCD控制器;

✧看门狗;

✧IIS音频接口;

✧两个USB口;

✧IIC-Bus接口;

✧两个串行外围接口电路(SPI)

✧SD卡接口;

✧HHARM2410开发套件硬件主要结构:

✧SumsungS3C2410处理器

✧16Mbytes16位FLASH

✧64Mbytes32位SDRAM

✧一个四线RS-232接口

✧一个10M/100M自适应以太网接口

✧一个TFTLCD接口,

✧一个触摸屏接口。

✧JTAG接口

✧9V直流电源

✧H/W复位建

✧运行状态指示LED灯

1.3嵌入式系统

1.3.1嵌入式系统的概述

嵌入式系统的定义如下:

是一种以应用为中心、以计算机技术为基础,软件硬件可裁剪,适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。

由嵌入式系统的定义可见,嵌入式系统具有以下几大特点:

(1)技术密集

嵌入式系统是将先进的计算机技术、半导体技术和电子技术以及各个行业的具体应用相结合后的产物。

这一点就决定了它必然是一个技术密集、不断创新的知识集成系统。

(2)专用性强

嵌入式系统是与应用紧密结合的,具有很强的专用性。

嵌入式系统的个性化很强,其中的软件系统和硬件的结合非常紧密,一般要针对硬件进行系统的移植,即使在同一品牌、同一系列的产品中也要根据系统硬件的变化不断进行修改。

同时针对不同的任务,往往需要对系统进行较大的更改,程序的编译下载要和系统相结合。

(3)系统精简

嵌入式系统必须根据应用需求可对软硬件进行裁剪,满足应用系统的功能、可靠性、成本、体积等要求。

因此目前嵌入式系统的开发一般是先建立一个相对通用的软硬件平台,然后在其基础上进行裁剪和精简,开发出适应各种需要的系统。

一般而言,嵌入式系统的结构自底向上可分为3个部分,如图1-1所示

图1-1嵌入式系统的结构

嵌入式硬件平台是整个嵌入式操作系统和应用软件运行的基础。

不同的应用通常有不同的硬件平台,但是基本的结构是相同的,通常包括嵌入式处理器、存储器和输入输出(工/0)接口,如图1-2所示[1]。

图1-2嵌入式硬件平台结构

1.3.2嵌入式系统的选择

现今,与嵌入式应用相结合的嵌入式操作系统有VxWorks、Linux、WinCE、

COS-II等,他们各有其特点,相比较而言,嵌入式Linux更具有优势。

归纳起来,嵌入式Linux至少具有以下优势[3]:

  

(1)开放的源码,丰富的软件资源

  Linux是自由的操作系统,它的开放源码使用户获得了最大的自由度。

Linux上的软件资源十分丰富,每一种通用程序在Linux上都可以找到。

  

(2)功能强大的内核,性能高效、稳定,多任务

  Linux的内核非常稳定,它的高效和稳定性已经在各个领域,尤其在网络服务器领域,得到了事实的验证。

Linux内核小巧灵活,易于裁减,这使得它很适合嵌入式系统的应用。

  (3)支持多种体系结构,如X86、ARM、MIPS、ALPHA、SPARC等

  目前,Linux已经被移植到数十种硬件平台上,几乎支持所有流行的CPU。

  (4)完善的网络通讯、图形、文件管理机制

  Linux自产生之日起就与网络密不可分,网络是Linux的强项。

另外,Linux还支持多种文件和图形系统。

  (5)支持大量的周边硬件设备

  Linux上的驱动已经非常丰富了,它们支持各种主流硬件设备和最新硬件技术。

  (6)大小、功能都可定制

  Linux秉承Unix的优秀设计思想,非常灵活,各部分的可定制性都很强。

  (7)良好的开发环境,不断发展的开发工具集

  Linux有着非常优秀的完整开发工具链,有十几种集成开发环境,其中很多是免费的,大大降低了开发费用。

  (8)软件开发者的广泛支持

  Linux的自由精神吸引了成千上万的程序员投入到Linux的开发和测试中来,这使得Linux在短时间内就成为一个功能强大的操作系统。

  (9)价格低廉

  有效降低产品成本,对成本敏感的嵌入式系统来说至关重要,Linux恰好具有这一特性。

正是这些优势,嵌入式Linux系统的研发热潮正在蓬勃兴起,并且占据了很大的市场份额,除了一些传统的Linux公司(如RedHat、MontaVista等)正在从事嵌入式Linux的开发和应用之外,IBM、Intel、Motorolar等著名企业也开始进行嵌入式Linux的研究[4]。

嵌入式图形用户界面(GraphicsUserInterface)系统是嵌入式实时操作系统的一个重要组成部分,随着嵌入式系统硬件设备可获得性的提高和价格的不断降低及嵌入式系统应用范围的不断扩大,嵌入式GUI系统的重要性越来越突出,特别是对高性能嵌入式人机图形交互界面的要求也越来越迫切,比如消费电子和工业实时控制系统[5][6][7]。

这些系统对GUI的基本要求包括:

●轻型、占用资源少

●高性能

●高可靠性

●可配置

此外,适合嵌入式Linux的GUI还要求是开放源码的自由软件[8]。

时代的发展告诉我们,图形用户界面GUI的应用加速了计算机的普及广度,嵌入式技术的发展加速了计算机的普及深度,后PC时代呼唤着两者日益紧密的结合[9]。

所以对二者的研究有着深刻的意义。

1.4本文的意义和主要工作

本文在研究嵌入式系统开发技术的基础上,提出了一套满足要求的低成本的嵌入式多媒体终端的解决方案。

通过对系统的功能需求分析以及市场上主流处理器的功能和性能分析,选择了华恒公司的HHARM9-EDU-R3实验平台和RedHat9.0Linux分别作为系统的硬件和软件开发平台。

本文的主要工作包括三方面的内容,首先,基于ARM平台开发相应的引导

加载程序、构建嵌入式Linux操作系统;第二,针对ARM处理器和Linux操作

系统特点进行音视频解码器的设计和研究;第三,对系统进行验证;论文的主要结构如下:

第二章系统软硬件平台的搭建。

包括ARM处理器及硬件核心部件介绍、bootloader实现、交叉开发环境建立、Linux移植、minigui移植等;

第三章Mplayer到开发板的移植。

Mplayer为Linux下通用的媒体播放软件,但非为嵌入式系统而设计,然而其强大的功能却是嵌入式系统所需要的。

为此本章完成其到开发板的移植,来完善嵌入式系统对音视频文件的支持;

第四章嵌入式播放器Mplayer的设计,针对播放器Mplayer整体结构设计及数据处理流程到诸如分流器,音、视频解码,音、视频同步等各个关键功能模块作描述。

最后,对论文进行总结与展望。

第二章系统软硬件平台的搭建

2.1 硬件开发平台的介绍

本设计使用的硬件开发平台是华恒科技的HHARM9-EDU-R3教学实验系统,此平台由核心板和外设板组成,下面分别对这两部分进行介绍[10]。

2.1.1核心板

核心板的功能模块结构图如图2-1所示,板上集成SamsungS3C2410处理器,16M的FLASH和64M SDRAM,它能为我们的研发、应用提供足够的空间。

图2-1核心板功能模块结构图

  S3C2410是一款16/32-bitRISC(精简指令集)高性价比,低功耗,体积小,高性能,高集成度的微处理器,采用203MHZ的ARM920T内核。

集成了16KB指令缓存和16KB数据缓存,利用MMU实现对虚拟内存的管理,支持TFT LCD屏,支持NAND FLASH。

正是由于S3C2410的这些特点,才使核心板的模块组成成为可能,也为Linux系统的移植提供必要的硬件资源。

2.1.2 外设板

  外设板为核心板的应用提供了其它的接口和设备,它提供以下外设接口:

(1)10M/100M自适应以太网接口一个;

(2)四线RS-232串口(COM1)一个;

(3)四线RS232/RS485串口各一个(COM2、COM3);

(4)IDE/CF卡接口;

(5)SD/MMC卡接口;

(6)USBHOST接口一个;

(7)USBDevice接口一个;

(8)TFTLCD接口;

(9)触摸屏接口;

(10)音频输入输出接口,麦克风接口;

(11)A/D,D/A接口;

(12)PS/2接口;

核心板和底板是通过一个144针的插槽相接,它们配合后即构成一个完整的应用系统。

2.1.3 设计所用硬件介绍

  首先,核心板是必不可少的部分,它是一个最小系统。

其次,本设计是一个人机交互界面设计的应用,故需要一个LCD显示屏和触摸屏,通过以上的TFT LCD接口和触摸屏接口与外设板相接.

最后,设计的调试需要通过在PCLinux上运行minicom与开发板通信,所以需要使用到一个串

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 初中教育 > 语文

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1