位置:51电子网 » 技术资料 » 通信网络

基于AVS-M和DM642视频服务器的研究

发布时间:2008/5/29 0:00:00 访问次数:426

1 引言

  avs是具有自主知识产权的数字音视频编解码技术标准,其包括系统、视频、音频、数字版权管理等四个主要技术标准和一致性测试等支撑标准。其中,移动视频标准avs-m (avs第七部分)适用范围包括视频会议、可视电话、移动多媒体等领域。

  tms320dm642是ti公司开发研制的一款专门面向多媒体应用的专用数字信号处理芯片,使用此dsp芯片并利用avs-m算法来进行视频压缩,可大幅提高视频压缩率,减少传输流量,即使在低带宽情况下也可以有效保证实时性和监控需求。

  我们开发的imlab6421视频服务器,是基于internet 的视/音频监控设备。核心dsp芯片采用dm642芯片。而应用软件、视频压缩算法是根据avs-m标准进行设计、优化的。下面针对这款视频服务器的系统结构、视频优化的软件设计等进行详细的介绍。音频压缩的优化本文不做介绍。

2 硬件设计

  视频服务器imlab6421原理框图如图1所示,系统采用tms320dm642 用于音视频压缩。dm642芯片包含一个64位的外部存储器接口,可驱动4个片选地址空间(ce0,ce1,ce2,ce3),它支持8,16,32,64位宽度的同步和异步访问。我们在 dm642的片外扩展了16m bytes的sdram,位于emif的ce0地址空间,用于存放程序和数据。sdram工作时钟为100mhz,是由dm642芯片的cpu工作时钟6分频产生的。数据更新由dm642自动完成。还在dm642板上设计有512k bytes的flash存储器,位于dm642的ce1地址空间,宽度为8 bits。另外能实现与internet连接的以太网处理器采用的是crystal公司的cs8900a,它高度集成设计使其不再需要其它以太网控制器所必需的昂贵外部器件。

  视频编码工作原理大致为:输入的模拟视频信号经tvp5150(支持pal和ntsc两种制式)被数字化为yuv4:2:2的数字视频格式,经由i2c总线被送至输入缓冲区(采用三缓冲机制), dm642的cpu把捕捉到的视频数据从一个输入缓冲区中取出待编码图像数据进行压缩编码处理,形成的压缩码流放到输出缓冲区,然后打包通过网口直接传输到internet。

  图1 imlab6421硬件原理框图

3 软件设计

  dsp嵌入式程序受硬件资源的限制,对程序流程和数据组织需要从硬件资源和代码运行效率上做仔细的考虑。通过分析avs-m编码器的程序流程,借助实验中积累的经验,本文给出了avs-m编码器的优化方案,主要介绍cache性能优化、存储空间的分配以及cpu与dma的并行性设计等。

3.1存储结构及cache性能优化

  (1)存储结构:dm642的存储器系统由片内内存l1、 l2和片外外存两部分组成,l1, l2和片外sdram构成了整个存储器系统的三级层次结构,如图2所示。其中,片内内存采用两级缓存结构,第一级由l1p和l1d组成,l1距离dsp核最近,数据访问速度最快,只需一个时钟周期,只能作为不能寻址的cache使用。第二级l2是一个统一的程序/数据空间,可以整体作为sram映射到存储空间,也可以整体作为第二级cache,或是二者按比例进行组合。第三级是片外外存,一般由sdram构成。l1p cache大小为16kb,直接映射,每行大小32 字节;l1d cache大小16kb, 2路映射,每行大小64 字节。l2是l1和外存储器的中间层,容量较大有256kb,访问速度较慢,根据 l2 配置为cache 或sram 的不同选择,访问速度需8个或6个时钟周期。片外存储器容量很大但访问速度很慢,一般都会远远大于 8 个时钟周期。

  图2 三级存储系统

  (2)cache性能优化:要优化cache的使用性能需了解cache的具体结构,如cache容量、行大小、组相联数等。下面总结了一些优化cache性能的方法:合理配置l2;合理布置程序代码段和数据段的内存布局,为防止有效代码、数据在缓冲存储器中相互排挤,应尽量把顺序执行的代码、同时使用的数据放在相互邻接的物理空间当中;若函数模块和数据包含在一个循环中,循环体的大小应和cache的容量相吻合,以便能把整个循环体全部放入cache中。为了提高cache中数据的重复利用率,把数据操作构成一条数据处理链,链中的下一级操作就能直接使用上一级操作留在cache中的数据。此外还可以根据cache行数据宽度信息调节数据在物理内存中的存放位置,从而利用数据预取增加cache的命中率;挖掘l1d的不命中流水处理能力,加速待使用数据的读入速度;通过合理的数据填充策略,避免同一时钟周期对相同存储体的读写操作将造成存储器的存取冲突。

3.2 存储空间的分配

  在dsp上由于内存空间有限,需要合理分配内存空间,这对于程序的运行效率十分重要。使用的一个原则是:应尽量把数据和代码放入片内存储器。因为外存比cpu工作

1 引言

  avs是具有自主知识产权的数字音视频编解码技术标准,其包括系统、视频、音频、数字版权管理等四个主要技术标准和一致性测试等支撑标准。其中,移动视频标准avs-m (avs第七部分)适用范围包括视频会议、可视电话、移动多媒体等领域。

  tms320dm642是ti公司开发研制的一款专门面向多媒体应用的专用数字信号处理芯片,使用此dsp芯片并利用avs-m算法来进行视频压缩,可大幅提高视频压缩率,减少传输流量,即使在低带宽情况下也可以有效保证实时性和监控需求。

  我们开发的imlab6421视频服务器,是基于internet 的视/音频监控设备。核心dsp芯片采用dm642芯片。而应用软件、视频压缩算法是根据avs-m标准进行设计、优化的。下面针对这款视频服务器的系统结构、视频优化的软件设计等进行详细的介绍。音频压缩的优化本文不做介绍。

2 硬件设计

  视频服务器imlab6421原理框图如图1所示,系统采用tms320dm642 用于音视频压缩。dm642芯片包含一个64位的外部存储器接口,可驱动4个片选地址空间(ce0,ce1,ce2,ce3),它支持8,16,32,64位宽度的同步和异步访问。我们在 dm642的片外扩展了16m bytes的sdram,位于emif的ce0地址空间,用于存放程序和数据。sdram工作时钟为100mhz,是由dm642芯片的cpu工作时钟6分频产生的。数据更新由dm642自动完成。还在dm642板上设计有512k bytes的flash存储器,位于dm642的ce1地址空间,宽度为8 bits。另外能实现与internet连接的以太网处理器采用的是crystal公司的cs8900a,它高度集成设计使其不再需要其它以太网控制器所必需的昂贵外部器件。

  视频编码工作原理大致为:输入的模拟视频信号经tvp5150(支持pal和ntsc两种制式)被数字化为yuv4:2:2的数字视频格式,经由i2c总线被送至输入缓冲区(采用三缓冲机制), dm642的cpu把捕捉到的视频数据从一个输入缓冲区中取出待编码图像数据进行压缩编码处理,形成的压缩码流放到输出缓冲区,然后打包通过网口直接传输到internet。

  图1 imlab6421硬件原理框图

3 软件设计

  dsp嵌入式程序受硬件资源的限制,对程序流程和数据组织需要从硬件资源和代码运行效率上做仔细的考虑。通过分析avs-m编码器的程序流程,借助实验中积累的经验,本文给出了avs-m编码器的优化方案,主要介绍cache性能优化、存储空间的分配以及cpu与dma的并行性设计等。

3.1存储结构及cache性能优化

  (1)存储结构:dm642的存储器系统由片内内存l1、 l2和片外外存两部分组成,l1, l2和片外sdram构成了整个存储器系统的三级层次结构,如图2所示。其中,片内内存采用两级缓存结构,第一级由l1p和l1d组成,l1距离dsp核最近,数据访问速度最快,只需一个时钟周期,只能作为不能寻址的cache使用。第二级l2是一个统一的程序/数据空间,可以整体作为sram映射到存储空间,也可以整体作为第二级cache,或是二者按比例进行组合。第三级是片外外存,一般由sdram构成。l1p cache大小为16kb,直接映射,每行大小32 字节;l1d cache大小16kb, 2路映射,每行大小64 字节。l2是l1和外存储器的中间层,容量较大有256kb,访问速度较慢,根据 l2 配置为cache 或sram 的不同选择,访问速度需8个或6个时钟周期。片外存储器容量很大但访问速度很慢,一般都会远远大于 8 个时钟周期。

  图2 三级存储系统

  (2)cache性能优化:要优化cache的使用性能需了解cache的具体结构,如cache容量、行大小、组相联数等。下面总结了一些优化cache性能的方法:合理配置l2;合理布置程序代码段和数据段的内存布局,为防止有效代码、数据在缓冲存储器中相互排挤,应尽量把顺序执行的代码、同时使用的数据放在相互邻接的物理空间当中;若函数模块和数据包含在一个循环中,循环体的大小应和cache的容量相吻合,以便能把整个循环体全部放入cache中。为了提高cache中数据的重复利用率,把数据操作构成一条数据处理链,链中的下一级操作就能直接使用上一级操作留在cache中的数据。此外还可以根据cache行数据宽度信息调节数据在物理内存中的存放位置,从而利用数据预取增加cache的命中率;挖掘l1d的不命中流水处理能力,加速待使用数据的读入速度;通过合理的数据填充策略,避免同一时钟周期对相同存储体的读写操作将造成存储器的存取冲突。

3.2 存储空间的分配

  在dsp上由于内存空间有限,需要合理分配内存空间,这对于程序的运行效率十分重要。使用的一个原则是:应尽量把数据和代码放入片内存储器。因为外存比cpu工作

相关IC型号

热门点击

 

推荐技术资料

耳机的焊接
    整机电路简单,用洞洞板搭线比较方便。EM8621实际采... [详细]
版权所有:51dzw.COM
深圳服务热线:13751165337  13692101218
粤ICP备09112631号-6(miitbeian.gov.cn)
公网安备44030402000607
深圳市碧威特网络技术有限公司
付款方式


 复制成功!