论文部分内容阅读
近年来,嵌入式系统伴随着人们的需求而发展。以软硬件组成为显著特征、以消费电子类产品为主导的智能设备以超乎人们想象的速度达到了前所未有的发展。嵌入式系统是以应用为中心、以计算机技术为基础、软硬件可裁剪、适应于应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。随着计算机技术迅速发展,嵌入式系统成为当前IT产业的焦点之一,呈现了巨大的市场需求。伴随着网络技术发展,网络性能得到了显著提高,同时,多媒体数据压缩技术使多媒体信息数据量不断降低,从而使通过网络实时传输音频流媒体成为可能。基于此,使用计算机网络进行音频数据传输的网络电台系统逐渐得到越来越多推广和使用。目前,网络电台接收通常是基于PC机的流媒体播放软件,使用环境受到很大限制。随着嵌入式处理器技术和嵌入式操作系统不断发展,嵌入式系统功能越来越强大,同时它所具有的便携等优势,使其应用越来越广泛。鉴于此,嵌入式广播接收系统的研究和实现具有重要的价值。与基于PC的流媒体服务器相比,嵌入式流媒体服务器具有体积小、携带方便、功能专业化高、成本低、稳定性高、实时性好等优点。本文正是在这种背景下,提出了基于ARM微处理器的解码方案,在降低硬件成本的基础上保证播放效果,较好解决了以往这种结构带来的价格昂贵、体积庞大、系统利用率低等诸多劣势。论文研究了流媒体技术原理,并在此基础上设计和实现基于ARM处理器可同时实现网络收音机和MP3播放器功能的嵌入式硬件平台。再根据流媒体网络收音机的性能特征,给出了整个系统的软件设计方案以及实现过程。系统利用S3C2440芯片的特点,以ARM处理器及其外围模块为硬件平台,以嵌入式linux为操作系统,以MPLAYER播放软件的,从硬件和软件两个方面,给出了一个在技术和实践上都具有一定意义的基于ARM的多媒体系统设计方案。实现了MP3播放器及网络收音机的全部功能。在软件方面,为了更好的支持对音频数据的播放,在Mplayer源码中添加了Madlib库和Live协议包,做出了与本系统相关的算法改进。本论文按照硬件、系统软件、应用软件三个层面分析了嵌入式多媒体系统的设计和实现。首先,综合论述了本论文研究工作的意义及内容和流媒体播放器以及嵌入式系统、嵌入式Linux、流媒体技术的发展现状。介绍了系统软、硬件平台,嵌入式系统基本原理和相关技术。然后,总体介绍了嵌入式流媒体播放器的硬件设计方案。该系统主要以ARM体系结构SamSungS3C2440处理器为核心控制单元,以UDA1341音频编解码芯片为音频处理单元,配备外部存储器Nand Flash、矩阵键盘、JTAG以及串口等周边器件。通过IIS总线实现了控制信号和音频数据的传输。再次,重点研究并实现了系统软件部分。系统软件部分分为系统层软件和应用软件两个层次。系统软件部分包括:引导加载程序vivi的移植、Linux2.6内核的移植、配置Yaffs根文件系统、Linux设备驱动程序开发。应用软件部分则对Linux应用开发作出了讨论。本设计成功地将Mplayer播放软件移植到开发板上,实现了网络收音机的播放功能;针对流行的MP3格式音频文件运用了优化解码算法,以定点算法代替传统PC浮点算法,以使其适用于嵌入式系统;并基于ARM资源的局限性,提出了软件解码优化设计方法。对其中若干关键代码,进行了较为详细的解释。最后,总结本文,分析了当前系统的情况和所存在的不足,以及今后可以改进和完善的地方。并将驱动程序成功地移植到Linux内核当中;应用程序加载到文件系统当中;说明了嵌入式流媒体系统的测试工作。测试结果表明:其比特率达到了128Kbps,延迟时间小于15s,系统性能良好,达到了我们设计的目标,具有较好的市场应用前景。