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

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

3天内不再提示

基于IXP网络处理器和ESS解码芯片实现家庭媒体中心系统的设计

电子设计 来源:单片机与嵌入式系统应用 作者:蔡斌,谢长生,吴 2021-06-15 14:09 次阅读

作者:蔡斌,谢长生,吴伟,吴明,张洪涛

1 引 言

1.1 数字家庭的广泛应用

数字技术和计算机技术的飞速发展正不断产生众多的数码产品,从个人电脑手机、PDA到MP3、数字电视、DVD、DV/DC,数字家电产品已经步入了人们的日常生活之中。同时,宽带通信与互联网应用的普及也极大地促进了数字媒体内容的发展。因此,构建一个宽带接入、内部互联、内容共享的数字家庭媒体中心的需求也变得日益突出。

根据IDC的定义,数字家庭是指可以实现家庭内部所有设施控制并可得到反馈信息,声音、文字、图像信息可在不同家用设备上共享,并可随时随地实现这些控制与信息共享。IDC的最新报告表明,至2008年数字家庭市场直接带来的网络、终端等相关软/硬件的投资将超过100亿美元,其中双向机顶盒2008年约安装3 300百万台,年复合增长率将达到311.7%,智能家庭网关由于其数字家庭高端解决方案的市场定位,2003~2008年的年复合增长率将高达89.4%。因此,数字家庭媒体中心的推广必将会产生巨大的附加产值,带来巨大的发展潜力。从1994年数字家庭概念的诞生,到今天数字家庭市场的正式启动;从“维纳斯”计划的推出,到通用即插即用论坛(UPnP,Universal Plug and Play)、数字生活网络联盟(DLNA,Digital Life Network Alliance)的成立,经过十余年的发展,数字化生活已进入了真正的发展期。

1.2 ARM技术的发展

嵌入式系统源自80年代以来的8位单片机技术。在90年代后期,随着网络技术的飞速发展,人们的日常生活进入了后PC时代,许多电子设备需要TCP/IP网络功能和更智能、更强大的计算能力,如语音、音频视频的数据采集、处理与传输,图形界面和触摸屏技术,无线控制技术和相应的软件协议等。因此,对功能更强大的嵌入式处理器的需求也变得越来越突出。ARM作为嵌入式系统领域中应用最广泛的32位处理器体系结构,已遍及工业控制、消费类电子、通信系统、网络应用、无线通信、成像和安全等各类应用领域,并成为多个应用领域的标准CPU,ARM技术已经渗透到人们生活的各个方面。

采用ARM技术知识产权(IP)核的微处理器目前包括:ARM7系列、ARM9系列、ARM9E系列、ARM10E系列、SecurCore系列、StrongARM系列和XScale系列。它们的共同特点是:体积小,功耗低,成本低,性能高;支持Thumb(16位)/ARM(32位)双指令集,能很好地兼容8/16位器件;大量使用寄存器,指令执行速度更快;大部分数据操作都在寄存器中完成;寻址方式灵活简单,执行效率高;指令长度固定。除了具有上述共同特点之外,每个系列还具有各自的特色和应用领域。其中,ARM7、ARM9、ARM9E和ARM10E为4个通用处理器系列,每个系列提供一套相对独特的性能来满足不同应用领域的需求;SecurCore系列专门为安全性要求较高的应用而设计,如电子商务、电子政务、电子银行业务、网络和认证系统等领域;Intel公司的StrongARM系列融合了Intel的设计和处理技术以及ARM体系结构的电源效率,在软件上兼容ARMv4体系结构,同时还采用了具有Intel自身优点的技术,适用于便携式通信和消费类电子领域;Intel公司的XScale系列是基于ARMv5TE体系结构的解决方案,具有高性能、高性价比、低功耗等优点,适用于数字移动电话、个人数字助理和网络产品等领域。

2 数字家庭媒体中心系统的设计

随着电子消费类设备需求的不断增加(如数码相机、数字摄像机、MP3播放器和高清DVD等设备)以及Internet数字媒体内容的迅猛发展,家庭网络中的数字媒体内容开始持续增长,人们更加迫切地需要增强对等通信与信息共享的能力。为了满足数字媒体在家庭内部以及外部Internet充分流通和共享的需求,我们开发了一种高性价比的数字家庭媒体中心系统(DHMCS,Digital Home Media Center System)。该系统结合Intel的IXP网络处理器和ESS多媒体解码芯片,无缝地连接家庭内部的个人电脑和家电,并通过以太网/无线网络连接家庭外的宽带Internet,在家庭环境内/外共享数字媒体内容,能够对多种媒体格式进行管理、存储、显示以及分配,提供集成的数据、多媒体应用以及自动控制与远程管理等功能。

图1描述了DHMCS系统的整体框架。它通过DHCP协议、PPPoE协议、UDP协议、FTP协议、HTTP协议、UPnP协议\[2\]以及USB接口,从家庭PC机、宽带Internet连接的网络、存储卡和DVD等设备中获取多媒体数据,并且将这些数字媒体内容在电视机和音响设备上播放。同时还提供媒体文件的管理以及远程控制功能。

基于IXP网络处理器和ESS解码芯片实现家庭媒体中心系统的设计

图1 DHMCS系统整体框架

2.1 DHMCS的系统结构

DHMCS由两个子系统组成:一个是由IXP 425(Intel XScale系列)网络处理器构成的网络子系统;另一个是由ESS 6688 DVD解码芯片构成的数据解码子系统,以下简称为“IXP子系统”和“ESS子系统”。IXP子系统通过UDP协议、FTP协议、HTTP协议和UPnP协议,从网络上获取媒体数据;ESS子系统则对这些媒体数据进行解码并进行音频/视频输出,同时也能对存储卡和DVD上的播放资源进行处理。IXP子系统和ESS子系统通过I2C总线和双端口SRAM(DPRAM)连接起来,其中: I2C总线主要负责控制命令和响应的传输;而DPRAM则主要负责媒体数据的传输。本文的后续部分主要讨论IXP子系统,而ESS子系统则超出了本文的范围。图2详细描述了DHMCS中IXP子系统和ESS子系统的结构。

图2 DHMCS中IXP子系统和ESS子系统的结构

DHMCS完成一个用户的请求涉及以下7个步骤:① ESS子系统将用户请求网络媒体文件的按键转换为一个请求信息,并且按照一定格式写入DPRAM中,然后ESS子系统使能相应的中断,通知IXP子系统DPRAM中的数据就绪;② IXP子系统从DPRAM中读取就绪的数据,获取用户的请求信息;③ IXP子系统根据获取的请求信息和指定的服务器,建立Ethernet/WiFi网络连接;④ 服务器返回请求的媒体数据到IXP子系统中;⑤ IXP子系统将返回的数据通过相应的应用函数接口写入DPRAM;⑥ IXP子系统使能相应的中断,通知ESS子系统用户请求的数据已返回;⑦ ESS子系统解码返回的媒体数据,并通过音频/视频接口输出。

为了实现DHMCS的网络功能,将IXP子系统的软件功能划分为以下3层: 应用层、操作系统层和驱动层。应用层主要提供网络功能模块以及和ESS子系统通信所需的模块,具体来说,包括UPnP协议、DHCP协议、PPPoE客户端、FTP客户端、HTTP客户端,以及通信协议模块。操作系统层基于MontaVista v3.0的Linux内核,具有内存管理、进程调度、设备管理、文件系统、中断处理和网络协议栈等功能。驱动层主要提供各种设备的驱动,包括以太网驱动、无线WiFi驱动、Flash驱动、DPRAM驱动、I2C驱动,以及USB驱动。图3描述了上述软件结构。

图3 IXP子系统的软件结构

2.2 IXP子系统的应用层设计

用户发出的请求主要有3类: 文件类请求(包括目录列表等请求)、系统的设置或者命令请求,以及UPnP媒体流请求。对应于以上请求,将IXP子系统的应用层划分为:应用代理模块、媒体文件下载模块(负责通过TCP/IP协议取得请求文件)、UPnP媒体流模块(负责处理UPnP请求)、用户远程设置模块(负责处理系统设置请求),以及与ESS子系统进行数据传输和命令控制的通信协议模块。应用代理模块层在DHMCS系统中处于枢纽位置,它将各种网络应用(如FTP、HTTP、UPnP以及用户远程设置)有效地连接起来,起到应用代理的作用。应用代理模块首先从通信协议模块接收ESS子系统发送的用户请求;然后交给相应的模块处理;最后将服务器返回的数据和响应通过通信协议模块返回给ESS子系统。图4描述了IXP子系统应用层的模块划分。

图4 IXP子系统应用层的模块划分

IXP子系统和ESS子系统之间的数据传输和命令控制则由通信协议模块和通信驱动模块共同完成。通信协议模块主要负责IXP子系统和ESS子系统之间通信协议的实现,它将用户的请求或者服务器返回的媒体数据构造成数据包(Packet),并将每个Packet拆分为几个更小的mPacket,以便通信驱动模块的传输,另外两个子系统之间的确认消息也在这一层实现;而通信驱动模块主要负责具体的硬件传输,它直接控制I2C总线和DPRAM硬件,能够将信息准确无误地传输到ESS子系统中。参考OSI标准的7层模型,将IXP子系统和ESS子系统之间的通信协议划分为以下4个层次:应用层进行ESS子系统的请求消息和IXP子系统的响应消息的交互,完成消息的解析和处理;传输层主要是对要传输的数据进行分段重组(SAR),实现媒体文件和命令端到端的传输;链路层主要是进行DPRAM内存块的读/写以及I2C总线上的控制命令传输,提供两端访问DPRAM和I2C总线的通信机制;DPRAM提供双端口读/写内存块的通道,I2C提供命令控制通道。整个过程如图5所示。

图5 IXP子系统和ESS子系统之间通信协议的层次划分

3 IXP子系统的实现

本节将详细介绍IXP子系统中UPnP媒体流模块以及IXP子系统和ESS子系统之间的媒体数据传输功能的实现。系统中其他模块的实现相对容易,在此不做描述。

3.1 UPnP媒体流模块的实现

我们实现的UPnP媒体流模块符合Intel的网络多媒体产品规范(Networked Media Product Requirements:NMPR v1.0)。NMPR规范将媒体设备划分为3部分: 媒体服务器(Media Server)、播放器(Renderer)和控制点(Control Point),并且利用UPnP协议完成这3部分之间媒体数据和控制命令的传输。我们实现的UPnP媒体流模块实际上包含了Renderer和Control Point这两部分,媒体服务器可以是符合NMPR规范的任意的PC机。

图6 UPnP媒体流模块的实现

图6描述了UPnP媒体流模块的实现过程。首先应用代理模块向控制点发送用户的数据请求,控制点接收到用户的请求后就与媒体服务器进行通信;然后将媒体服务器的响应信息返回给应用代理模块,随后媒体服务器将用户所请求的媒体数据传输给Renderer;最后Renderer将这些数据返回给应用代理模块,再由通信协议模块传输给ESS子系统,再由ESS子系统对这些媒体数据进行解码输出。同时控制点还可与Renderer相互通信,实现一系列媒体播放的功能。

3.2 DPRAM媒体数据传输功能的实现

通信协议模块实现的主要功能有:将Packet拆分成多个mPacket;向通信驱动模块发送或接收mPacket;向应用代理模块发送用户的数据请求和控制命令,并接收服务器的响应消息;管理请求队列和响应队列。完成一次IXP子系统和ESS子系统之间媒体数据传输所涉及的数据变化如图7所示。

图7 IXP子系统和ESS子系统之间数据传输所涉及的数据变化

应用代理层到DPRAM的数据传输过程为:① 应用层根据需要将相应的数据传递到传输层;② 传输层收到报文后检查报文的长度,如果报文长度大于底层所能够传输的报文长度,则传输层将报文进行拆分,添加相应的报头信息,以保证接收端能够正确地重组,并传递给链路层;③ 链路层收到上层报文后,在报头添加相应的控制信息,以保证接收端能够正确地存取数据,然后将报文发送到DPRAM上。反之,由DPRAM到应用层的数据传输过程为:① 链路层从DPRAM中读取报文,并去掉相应的报头信息,将数据传递给传输层;② 传输层收到底层传递的数据后,根据该层添加的报头信息重组报文,然后传递给应用层。

4 结束语

本文结合了IXP网络处理器和ESS解码芯片的特点,实现了一种具有高性价比的家庭媒体中心系统。它充分满足了数字媒体在家庭内部以及外部Internet充分流通和共享的需求。

责任编辑:gt

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

    关注

    68

    文章

    19091

    浏览量

    228774
  • 芯片
    +关注

    关注

    452

    文章

    50179

    浏览量

    420662
  • 摄像机
    +关注

    关注

    3

    文章

    1574

    浏览量

    59881
收藏 人收藏

    评论

    相关推荐

    家庭媒体中心

    ` 本帖最后由 goyuqinghua 于 2016-3-1 14:36 编辑 XBMC是一个优秀的自由和开源的(GPL)媒体中心软件。一个好的家庭影院电脑要求体积不大,音效良好,最好价格也不要
    发表于 02-22 16:03

    基于ARM Cortex-A8的处理器可用于低功耗通用多媒体和图形处理

    音频、视频和成像,以及多媒体加速功能。OMAP3525 是市场上首款能够在 500mW 以下提供高清解码的应用处理器。集成的达芬奇技术是硬件启用的视频和成像处理技术,加上专门的视频
    发表于 07-05 02:49

    媒体应用处理器ZMS-08怎么样?

    处理能力与1GHz的ARM Cortex处理器结合在一起,能为包括网络本(web tablet)、上网本、互联网电视、视频会议和家庭媒体
    发表于 10-10 07:18

    如何用IXP网络处理器设计的数字家庭媒体中心系统

    本文结合了IXP网络处理器ESS解码芯片的特点,实现
    发表于 05-28 06:45

    基于IXP425的负载均衡系统的设计与实现

    负载均衡设备是提高网络性能的重要设备。该文研究负载均衡系统及其算法,对多种算法进行比较后选择基于agent 的动态反馈负载均衡算法,在Intel 网络处理器
    发表于 04-17 09:09 25次下载

    IXP系列网络处理器的并行原理及应用

    网络处理器的体系结构入手,在线程和微引擎层次上对IXP系列网络处理器的并行环境进行抽象分析,在线程方面阐述了顺序和非顺序情况下不同的编程方
    发表于 04-20 09:20 13次下载

    基于网络处理器防火墙的设计与实现

    本文介绍了一种基于 IXP2400 网络处理器的防火墙设计方案。首先介绍了基于IXP2400 网络处理器
    发表于 08-07 10:07 27次下载

    e源家庭媒体中心系统设计

    e 源家庭媒体中心是针对互联网上丰富的视音频资源而开发的一种能够自动搜索整合网络视音频资源,并传送到电视机端供用户实时播放观看,全程采用遥控
    发表于 01-07 14:55 21次下载

    基于网络处理器的高速网络测试设备设计

    论文介绍了网络处理器结构及其技术特点,在深入探讨网络测试技术的基础上,提出了用网络处理器实现
    发表于 03-01 13:51 12次下载

    基于网络处理器的IP-DSLAM设计

    利用网络处理器的高速处理能力和完全的可编程特性,本文提出了基于IXP2350的IP-DSLAM设计方案,实现
    发表于 07-30 18:10 8次下载

    网络处理器IXP2400及应用

    本文介绍了INTEL网络处理器IXP2400的硬件结构特点,描述了浩通科技(FLEXCOMM)研发的硬件平台FIDS2400的硬件特性,并以FIDS2400为例介绍了IXP2400在千
    发表于 03-11 13:20 1246次阅读
    <b class='flag-5'>网络</b><b class='flag-5'>处理器</b><b class='flag-5'>IXP</b>2400及应用

    科胜讯推出单芯片媒体处理器CX92755

    科胜讯系统公司推出单芯片媒体处理器用于互联网络设备和互动视频显示,以及数字标牌、家庭自动化/安全
    发表于 03-31 10:10 1925次阅读

    网络处理器IXP的位操作优化

    该文介绍一种针对IXP 09络处理器指令集的编译优化技术,该技术将位信息记录引入到传统数据流分析过程当中,通过使用模式匹配技术生成高效的目标代码,试脸数据表明利用位操作
    发表于 09-26 15:44 31次下载
    <b class='flag-5'>网络</b><b class='flag-5'>处理器</b><b class='flag-5'>IXP</b>的位操作优化

    CTI媒体处理器中DTU模块系统FPGA的设计实现和NGN媒体网关技术的研究

    本文主要是关于CTI媒体处理器中DTU模块系统FPGA的设计实现,以及对于NGN媒体网关技术的研究。
    发表于 10-17 17:35 29次下载
    CTI<b class='flag-5'>媒体</b><b class='flag-5'>处理器</b>中DTU模块<b class='flag-5'>系统</b>FPGA的设计<b class='flag-5'>实现</b>和NGN<b class='flag-5'>媒体</b>网关技术的研究

    基于数字信号处理器实现脱机视频图像解码系统的设计

    处理器芯片对图像进行编/解码处理实现。这种脱机的图像处理系统由于体积小和灵活简便而受到广泛关
    的头像 发表于 07-23 16:15 586次阅读
    基于数字信号<b class='flag-5'>处理器</b><b class='flag-5'>实现</b>脱机视频图像<b class='flag-5'>解码</b><b class='flag-5'>系统</b>的设计