您的位置:首页 > 运维架构 > Linux

S3C6410 硬件加速功能

2013-07-12 12:34 183 查看
转自:http://blog.chinaunix.net/uid-22028566-id-2983719.html

三星的微处理器S3C6410,基于ARM11核心,主要针对的就是低功耗超便携产品,如手机和PND等这样的应用方案。内部有很多非常有用的硬件加速模块,可以用在视频片理、声音处理、2D图形,3D图形、显示缩放和处理等等环节,构成框图如下:
Multimedia Acceleration

Camera I/F

Multi Format Codec

(H.264/MPEG4/VC1)

NTSC,PAL TV out

(with Image Enhancement)

JPEG

2D Graphics

3D Graphics
图1 S3C6410的硬件加速模块图
1、JPEG加速

在压缩和解压JPEG图片的过程中,要进行大量的运算,成为处理速度很有限的便携设备多媒体功能的一个瓶颈,针对上述情况,6410内置了JPEG解码核,该硬件模块独立进行JPEG的编/解码处理,大大提高了效率,分担了CPU的负担。

性能概述:

①编/解码图片分辨率最大支持到:4096 X 4096;(驱动只做到了2048x1536)

②编码输出格式支持:YCbCr4:2:2 或 YCbCr4:2:0

③解码输入格式支持:YCbCr4:4:4,YCbCr4:2:2, YCbCr4:2:0

④图片压缩格式RGB565或YCbCr4:2:2

⑤支持普通颜色转换

⑥最小支持分辨率:160 x 120

⑦编码支持4种不同的图像质量级别

⑧支持Camera图像直接压缩成JPEG数据

2、MFC模块(H.264/MPEG4/H263/VC1)

MFC为多媒体视频编码器的简称,它支持多媒体处理过程中最耗资源的4种常用格式转换,硬件运算的效率是有目共睹的,所以该模块大大提升了6410的多媒体能力。

性能概述:

①简单的MPEG4编/解码功能

②H.264/AVC基本的编/解码功能

③H.263 P3 编/解码功能

④VC-1(WMV9) 主要的解码功能

⑤多任务处理机制,例如1个数据流编码3个数据流解码同时进行

⑥视频的旋转、伸缩、镜像等处理

⑦ VGA格式可达30fps的编/解码速率

720x480分辨率,可达30fps

720x576分辨率,可达25fps

3、TV out

TV out功能,其实就是把内存里的数字信号转换为模拟信号输出给电视,不单要进行DA转换,还要进行编码,变成PAL或NTSC等电视的标准信号,如果都交给主CPU来处理,将大大占用系统资源,通过本模块,CPU只要把要显示的数据往相关寄存器丢,就什么不用管了,省事省力效力高。

性能概述:

①原始模式、全屏、宽屏显示模式

②内置动态图像加速引擎,实现黑白伸缩和补偿,对比度、亮度、GAMMA值的调节

③可实现LCD与TV输出不同的窗口

④支持的输出格式:NTSC-M,NTSC-J,PAL-B/D/G/H/I,PAL-M,PAL-Nc

4、2D accelerate

2D加速模块与2450里的2D的工作原理一样的,通过对画点画线,块搬移和颜色扩展等2D图形相关操作进行加速,实现图形加速的。

得到加速的API有:BitBlt,AlphaBlend,StretchBlt,TransparentBlt,LineDraw

上层应用调用以上API,如果参数在支持范围之内,就默认得到了2D硬件加速。

性能概述:

①画点画线

②块搬移:Memory to Screen,Host to Screen,

③颜色扩展

④窗口裁剪、旋转

⑤Alpha Blending(该功能有BUG)

5、3D accelerate

3D加速使用的是OpenGL ES引擎,独立的DSP作为运算单元,OpenGL与微软的DirectX一样,是一个功能强大,调用方便的底层图形库。OpenGL使用简便,效率高。它具有七大功能:
  1.建模:OpenGL图形库除了提供基本的点、线、多边形的绘制函数外,还提供了复杂的三维物体(球、锥、多面体、茶壶等)以及复杂曲线和曲面绘制函数。
  2.变换:OpenGL图形库的变换包括基本变换和投影变换。基本变换有平移、旋转、变比镜像四种变换,投影变换有平行投影(又称正射投影)和透视投 影两种变换。其变换方法有利于减少算法的运行时间,提高三维图形的显示速度。
  3.颜色模式设置:OpenGL颜色模式有两种,即RGBA模式和颜色索引(Color Index)。
  4.光照和材质设置:OpenGL光有辐射光(Emitted Light)、环境光(Ambient Light)、漫反射光(Diffuse Light)和镜面光(Specular Light)。材质是用光反射率来表示。场景(Scene)中物体最终反映到人眼的颜色是光的红绿蓝分量与材质红绿蓝分量的反射率相乘后形成的颜色。
  5:纹理映射(Texture Mapping)。利用OpenGL纹理映射功能可以十分逼真地表达物体表面细节。
  6:位图显示和图象增强图象功能除了基本的拷贝和像素读写外,还提供融合(Blending)、反走样(Antialiasing)和雾(fog)的特殊图象效果处理。以上三条可使被仿真物更具真实感,增强图形显示的效果。
7:双缓存动画(Double Buffering)双缓存即前台缓存和后台缓存,简言之,后台缓存计算场景、生成画面,前台缓存显示后台缓存已画好的画面。

OpenGL ES引擎是专门针对移动手持设备开发的,具有两种渐变模式,最高值渐变和每像素点渐变。因为采用了32位浮点数的传输管道,所以获得高质量的3D画面成为可能,有了该模块,手持设备就可以使用眩丽的3D界面了。

性能概述:

①75.8M 像素每秒刷新率

②可编程的渐变模式3.0支持

③128Bit浮点数据几何结构运算支持

④32Bit 色深图片支持,可实现高质量3D画面

⑤支持纹理格式1/2/4/8/32-bpp RGB,YUV422,s3tc等数据压缩

⑥硬件裁剪功能

⑦API支持:OpenGL ES 1.1&2.0,D3D Mobile

等等。。。。。。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  s3c6410 linux 硬件加速