用于手机用于手机SoC设计的部件级多媒体功能模块设计的部件级多媒体功能模块
Diamond标准音视频引擎就像一个低功耗黑盒,SoC设计师无需精通H.264/AVC、MPEG-4和数字音频就可以将
其整合到便携式多媒体和手机芯片中。
用于手机SoC设计的部件级多媒体功能模块
尽管视频编解码是一个复杂的过程,但Tensilica的Diamond系列标准音、视频引擎却能简化SoC设计团队的设计任务。
Diamond标准音视频引擎就像一个低功耗黑盒,SoC设计师无需精通H.264/AVC、MPEG-4和数字音频就可以将其整合到便携
式多媒体和手机芯片中。
视频编码过程如图1所示。首先,SoC主处理器通过指令配置Diamond视频引擎,然后将未编码的视频帧发送给该引擎,由它
对视频帧进行编码,并将编码后的图像数据(VDE)送回主处理器。进行视频解码时,主处理器首先通过指令配置Diamond视频
引擎,然后将VDE发送给它,由它进行图像解码,最后将已解码的帧传回主处理器。音频解码过程,主处理器将压缩的音频
流发送给Diamond音频引擎,以解压成音频数据流。
已编码和未编码视频数据出入Diamond视频引擎示意图
图1:已编码和未编码视频数据出入Diamond视频引擎示意图
Diamond视频引擎内核中有两个配置好的处理器,它们共同执行视频压缩的任务,而集成的DMA控制器则负责将压缩前后的
图像送入和送出该内核,并在内核中的两个处理器之间传递。Diamond视频引擎内核中的这两个处理器都采用了Tensilica的可
配置Xtensa处理器架构,引擎的流处理器则通过增加额外指令来完成比特流解析和熵编码。
这些新指令中一部分基于Tensilica的可变长度指令扩展(FLIX),并采用每条指令执行两次独立操作的VLIW指令格式。
Diamond视频引擎的像素处理器也增加了可同时操作多个像素的单指令多数据(SIMD)指令。
流处理器和像素处理器中添加的指令使Diamond视频引擎能够在时钟速率低于200MHz时以标准清晰度(SD或D1)显示分辨率
和30帧/秒的速度编码MPEG4 ASP比特流或解码H.264/AVC MP、MPEG4 ASP、MPEG2 MP、和VC-1/WMV9 MP视频比特
流。
Diamond视频引擎的所有内部操作对主处理器都是不可见的,这正符合其作为部件级SoC模块的身份。主处理器通过调用一组
预定义API来操作Diamond视频引擎。在运行视频应用时,主处理器使用主系统内存中的两个队列向Diamond视频引擎发送指
令消息和数据,而用另两个队列接收来自Diamond视频引擎的状态消息和数据。基于队列的消息事务处理则由主处理器和
Diamond视频引擎之间的固件驱动型中断启动。
评论0
最新资源