[发明专利]由图形处理单元支持的视频解码方法有效
| 申请号: | 200910225048.1 | 申请日: | 2009-11-24 |
| 公开(公告)号: | CN101754013A | 公开(公告)日: | 2010-06-23 |
| 发明(设计)人: | 张辉;朱立华;王传铭 | 申请(专利权)人: | 汤姆森许可贸易公司 |
| 主分类号: | H04N7/26 | 分类号: | H04N7/26;H04N7/50 |
| 代理公司: | 中科专利商标代理有限责任公司 11021 | 代理人: | 李敬文 |
| 地址: | 法国布洛涅*** | 国省代码: | 法国;FR |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 图形 处理 单元 支持 视频 解码 方法 | ||
技术领域
本发明涉及一种用于向CPU提供图形处理单元(GPU)支持以执 行最优视频解码的方法。
背景技术
目前,至少使用两种不同的通用方法来实现处理单元:通用中央 处理单元(CPU)以及专用图形处理单元(GPU)。GPU专门用于计 算三维(3D)场景,以映射至用于显示的二维(2D)场景,并且GPU 具有并行架构,该并行架构使得高度地并行处理成为可能。因此GPU 具有高处理能力。然而,大多数普通编程应用是针对CPU上的顺序处 理而优化的。
因此,需要使用GPU来加速视频编码和解码。传统上,为了从强 大的GPU获利,应当把计算任务(比如图像或者视频处理等等)重新 表示为3D呈现(rendering)任务,使得可以将它们的数据组织为图 形数据,并且应当使用图形API(应用编程接口)。这使得GPGPU(GPU 上的通用计算)困难并且使程序复杂。
为了简化并且改善GPGPU的实现,NVIDIA Corp.发布了针对 GeForce 8800系列以及其上GPU的“计算统一设备架构(Compute Unified Device Architecture)”(CUDA)。CUDA是硬件和软件架构, 用于在作为并行数据计算设备的GPU上发出并且管理计算,而不将它 们映射至图形API。CUDA还改善了存储器访问效率。
一般地,每一个顺序操作的程序以及并行程序的每一个顺序操作 的分支是所谓的线程。线程对它们各自的输入数据相当自治地进行操 作并且提供输出数据。从缓冲器中读取输入数据,并且将输出数据写 入缓冲器中。GPU具有两种基本类型的存储器或者缓冲器:GPU上的 纹理存储通常与其它存储器类型不同,从而能够进行更有效率的访问。 在本文使用的CUDA术语中,这两种基本类型是所谓的全局存储器和 纹理存储器。全局存储器向所有线程提供读和写访问,但是相当慢, 而纹理存储器向线程提供只读访问,但是快速。可以将来自全局存储 器的数据复制到纹理存储器中。该结构是针对典型的GPU任务,比如 纹理映射,而优化的。纹理是映射到3D对象表面的2D图案。
CUDA提供多个多处理器以同时在不同的数据单元上进行相同的 计算任务。CUDA还提供通用DRAM存储器寻址方法,给予程序员 在DRAM中任意位置处进行读和写数据的灵活性。此外,CUDA的 特点在于具有非常快速的通用读和写访问的并行数据高速缓存(片上 共享存储器),以支持高效的数据共享。然而,DRAM和高速缓存在 尺寸上受限并且对于很多任务而言是不足够的。此外,主机功能(即, 当GPU作为CPU的协处理器工作时运行在CPU上的功能)不能访问 共享存储器。在这种情况下,在GPU获得控制之前,不得不先由CPU 来管理程序和数据。
GPU可以对于多个数据层进行并行操作。通常,GPU具有四个数 据层,这四个数据层通常用于每像素的YRGB数据。例如,可以将输 入像素的四个8比特的元素作为4D输入向量进行存储,然后独立地 并同时地处理它们。
视频经常根据MPEG-2标准来编码,MPEG-2标准包括将图像分 割为宏块(MB),并且顺序地处理成行的MB。在图1中示出了相应 的解码过程,该过程主要包括可变长度解码101、逆扫描102、逆量化 103、离散余弦逆变换(iDCT)104以及运动补偿(MC)105。运动 补偿使用在前解码的图像作为参考,因此,这些图像存储在帧存储器 106中。最后,将图像的解码采样输出至显示器。
一个问题是如何将例如视频解码等复杂、顺序的任务映射至组合 的CPU-GPU硬件平台上,特别是具有CUDA功能和上述存储器结构 的平台。尽管例如WO2004/095708提供了一种通用方法,但是依然难 以将如此复杂过程的不同模块分配给不同的硬件处理单元(CPU和 GPU),使得达到CPU和GPU工作负载之间的最优平衡。理想地, CPU和GPU之间的时间成本应当几乎相等,即CPU或者GPU都不 应当等待来自另一单元的结果。
发明内容
本发明至少解决了上述问题。本发明提供一种能够在CPU和GPU 平台上实施的视频解码系统,其中单个解码子任务具有如下结构:能 够以最优方式来使用CPU的顺序处理能力、以及GPU的并行处理能 力合存储器结构。有利地,在执行本发明时,CPU和GPU的处理负 载几乎相等。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于汤姆森许可贸易公司,未经汤姆森许可贸易公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200910225048.1/2.html,转载请声明来源钻瓜专利网。
- 上一篇:锯床、切割加工方法及减小噪音的方法
- 下一篇:一种炭膜反应器及其使用方法





