一种分配显存空间的方法、装置及计算机存储介质与流程

文档序号:20917185发布日期:2020-05-29 13:41阅读:275来源:国知局
一种分配显存空间的方法、装置及计算机存储介质与流程

本发明实施例涉及图形处理器(gpu,graphicsprocessingunit)技术领域,尤其涉及一种分配显存空间的方法、装置及计算机存储介质。



背景技术:

在通过图形应用程序以使用gpu处理图形数据的过程中,纹理数据、模型顶点属性等与图形具有关联的数据都需要存储在gpu的显存空间中。具体来说,图形应用程序可经由图形应用程序编程接口(api,applicationprogramminginterface)调用gpu驱动程序,向gpu发出指令以进行图形的绘制等操作。在绘制过程中,应用程序需要通过调用glbufferdata、glteximage2d等接口以将数据对象存储在gpu的显存空间中,并在绘制结束后通过调用gldeletebuffers、gldeletetextures等接口以释放数据的存储空间;在整个绘制过程中,gpu驱动程序负责实现显存空间的申请,数据对象的拷贝,显存空间的释放等操作。执行显存空间的申请和释放过程需要较大的cpu运算能力开销,将数据对象拷贝至显存空间同样也需要较大的cpu运算能力开销,基于此,目前在处理图形数据的过程中,cpu基于以上运算能力的开销导致执行效率较低。



技术实现要素:

有鉴于此,本发明实施例期望提供一种分配显存空间的方法、装置及计算机存储介质;能够降低图形处理过程中cpu的运算开销,从而提高图形处理的执行效率。

本发明实施例的技术方案是这样实现的:

第一方面,本发明实施例提供了一种分配显存空间的方法,所述方法包括:

从空闲数据列表中查找与待处理数据的特征值相同的第一空闲数据;其中,所述空闲数据列表包括已完成处理的空闲数据,各所述空闲数据的特征值以及各所述空闲数据于显存的存储空间索引;

相应于查找到所述第一空闲数据,将所述第一空闲数据返回以利用所述第一空闲数据及所述第一空闲数据于所述显存的存储空间进行图形处理。

第二方面,本发明实施例提供了一种分配显存空间的装置,所述装置包括:查找部分和返回部分;其中,

所述查找部分,经配置为从空闲数据列表中查找与待处理数据的特征值相同的第一空闲数据;以及,在查找到所述第一空闲数据时触发所述返回部分;

其中,所述空闲数据列表包括已完成处理的空闲数据,各所述空闲数据的特征值以及各所述空闲数据于显存的存储空间索引;

所述返回部分,经配置为将所述第一空闲数据返回以利用所述第一空闲数据及所述第一空闲数据于所述显存的存储空间进行图形处理。

第三方面,本发明实施例提供了一种计算装置,所述计算装置包括:存储器和处理器;其中,所述存储器,用于存储能够在处理器上运行的计算机程序;

所述处理器,用于在运行所述计算机程序时,执行第一方面所述的分配显存空间的方法的步骤。

第四方面,本发明实施例提供了一种计算机存储介质,所述计算机存储介质存储有分配显存空间的程序,所述分配显存空间的程序被至少一个处理器执行时实现第一方面所述的分配显存空间的方法的步骤。

本发明实施例提供了一种分配显存空间的方法、装置及计算机存储介质;当需要针对待处理数据进行图形处理或操作的情况下,可以直接将与待处理数据具有相同特征值的第一空闲数据返回,以通过对第一空闲数据进行图形处理来替代对待处理数据进行图形处理。结合图形场景中经常出现重复绘制物体的情况,上述方案可以同时避免gpu驱动程序为待处理数据重新在所述显存中申请存储空间以及将待处理数据拷贝到存储空间的操作,降低了cpu执行显存空间申请及数据拷贝的运算开销。

附图说明

图1为能够实施本发明实施例的一个或多个方面的计算装置框图;

图2为本发明实施例提供的空闲数据列表的示意图;

图3为本发明实施例提供的gpu驱动程序针对待处理数据分配显存空间的方案流程示意图;

图4为本发明实施例提供的gpu驱动程序针对显存空间确定是否释放的方案流程示意图;

图5为本发明实施例提供的一种分配显存空间的方法的流程示意图;

图6为本发明实施例提供的一种分配显存空间的装置组成示意图;

图7为本发明实施例提供的另一种分配显存空间的装置组成示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。

一般来说,在进行图形处理的过程中需要处理大量的纹理、模型顶点属性等图形数据,而这些数据的内容的大部分是保持不变的,以及在绘制场景的过程中场景内的物体会被重复绘制,所以,会出现相同的数据对象被重复的申请、拷贝、释放。基于此,本发明实施例期望描述一种分配显存空间的技术,举例来说,期望通过缓存重复出现的数据对象及该数据对象的存储空间以避免cpu重复地针对相同数据对象执行显存空间申请、拷贝及释放的操作。

图1为一种能够实施本发明实施例的一个或多个方面的计算装置2,该计算装置2的实例包括但不限于:无线装置、移动或蜂窝电话(包含所谓的智能电话)、个人数字助理(pda)、视频游戏控制台(包含视频显示器、移动视频游戏装置、移动视频会议单元)、膝上型计算机、桌上型计算机、电视机顶盒、平板计算装置、电子书阅读器、固定或移动媒体播放器,等。在图1的实例中,该计算装置2可以包括:处理器6、系统存储器10和gpu12。计算装置2还可包含显示处理器14、收发器模块3、用户接口4和显示器8。收发器模块3和显示处理器14两者可为与处理器6和/或gpu12相同的集成电路(ic)的部分,两者可在包含处理器6和/或gpu12的一或多个ic的外部,或可形成于在包含处理器6和/或gpu12的ic外部的ic中。

为清楚起见,计算装置2可包含图1中未图示的额外模块或单元。举例来说,计算装置2可在其中计算装置2为移动无线电话或的实例中包含扬声器和麦克风(两者均未在图1中示出)来实现电话通信,或在计算装置2为媒体播放器的情况下包含扬声器。计算装置2还可包含摄像机。此外,计算装置2中所示的各种模块和单元可能不是在计算装置2的每个实例中都是必需的。举例来说,在计算装置2为桌上型计算机或经装备以与外部用户接口或显示器介接的其它装置的实例中,用户接口4和显示器8可在计算装置2外部。

用户接口4的实例包含(但不限于)轨迹球、鼠标、键盘和其它类型的输入装置。用户接口4还可为触摸屏,并且可作为显示器8的部分并入。收发器模块3可包含电路以允许计算装置2与另一装置或网络之间的无线或有线通信。收发器模块3可包含调制器、解调器、放大器和用于有线或无线通信的其它此类电路。

处理器6可为微处理器,例如中央处理单元(cpu),其经配置以处理供执行的计算机程序的指令。处理器6可包括控制计算装置2的运算的通用或专用处理器。用户可将输入提供到计算装置2,以致使处理器6执行系统存储器10中所存储的一或多个软件应用程序。在处理器6上执行的软件应用程序可包含(例如)操作系统、文字处理器应用程序、电子邮件应用程序、电子表格应用程序、媒体播放器应用程序、视频游戏应用程序、图形用户接口应用程序或另一程序。另外,处理器6可执行存储在系统存储器10中的用于控制gpu12的运算的gpu驱动程序22。用户可经由一或多个输入装置(未图示)(例如,键盘、鼠标、麦克风、触摸垫或经由用户输入接口4耦合到计算装置2的另一输入装置)将输入提供到计算装置2。

在处理器6上执行的软件应用程序18为图形应用程序的情况下,该图形应用程序可包含一或多个图形渲染指令,其指令处理器6来致使将图形数据渲染到显示器8。在一些实例中,所述软件指令可符合图形api20,例如开放式图形库(opengl,opengraphicslibrary)api、开放式图形库嵌入系统(opengles)api、direct3dapi、x3dapi、rendermanapi、webglapi、开放式计算语言(opencltm)、renderscript或任何其它异构计算api,或任何其它公用或专有标准图形或计算api。所述软件指令还可为针对无渲染算法(例如计算摄影、卷积神经网络、视频处理、科学应用程序等)的指令。为了处理图形渲染指令,处理器6可向gpu12发出一或多个图形渲染命令发(例如,通过gpu驱动程序22),以致使gpu12执行图形数据的渲染中的一些或全部。在一些实例中,待渲染的图形数据可包含例如点、线、三角形、四边形、三角形带等图形图元的列表。

gpu12可经配置以执行图形运算,举例来说,经从cpu6和/或系统存储器10所提供的图形数据生成像素数据,与本地的图形存储器40(例如常用帧缓冲区(buffer))交互以存储和更新图形数据,传递像素数据到显示设备8。图形数据可包含(例如)绘制命令、状态信息、图元信息、纹理信息等。在一些情况下,gpu12可内置有高度并行结构,其提供比处理器6高效的对复杂图形相关运算的处理。举例来说,gpu12可包含经配置来以并行方式对多个顶点或像素进行运算的多个处理元件,例如着色器单元。在一些情况下,gpu12的高度并行性质允许gpu12比使用处理器6直接将场景绘制到显示器8更快速地将图形图像(例如,gui和二维(2d)和/或三维(3d)图形场景)绘制到显示器8上。

在一些情况下,可将gpu12集成到计算装置2的母板中。在其它情况下,gpu12可存在于图形卡上,所述图形卡安装在计算装置2的母板中的端口中,或可以其它方式并入在经配置以与计算装置2互操作的外围装置内。gpu12可包含一或多个处理器,例如一或多个微处理器、专用集成电路(asic)、现场可编程门阵列(fpga)、数字信号处理器(dsp)或其它等效的集成或离散逻辑电路。gpu12还可包含一或多个处理器核心,使得gpu12可被称作多核处理器。

图形存储器40可为gpu12的一部分。因此,gpu12可在不使用总线的情况下从图形存储器40读取数据且将数据写入到图形存储器40。换句话说,gpu12可使用本地存储装置而不是芯片外存储器在本地处理数据。此类图形存储器40可被称作显存40。这允许gpu12通过消除gpu12经由总线读取和写入数据的需要来以更高效的方式操作,其中经由总线操作可经历繁重的总线业务。图形存储器40可包含一或多个易失性或非易失性存储器或存储装置,例如,随机存取存储器(ram)、静态ram(sram)、动态ram(dram)、可擦除可编程rom(eprom)、电可擦除可编程rom(eeprom)、快闪存储器、磁性数据媒体或光学存储媒体。

在一些实例中,gpu12可将最终完全形成的图像由显存存储在系统存储器10中。显示处理器14可从系统存储器10检索图像,且输出致使显示器8的像素照亮以显示所述图像的值。显示器8可为计算装置2的显示器,其显示由gpu12产生的图像内容。显示器8可为液晶显示器(lcd)、有机发光二极管显示器(oled)、阴极射线管(crt)显示器、等离子显示器或另一类型的显示装置。

结合图1所示的计算装置2,cpu6在运行图形应用程序18,经由图形api20调用gpu驱动程序22以进行图形绘制或处理的过程中,需要通过调用gpu驱动程序22以对图形存储器40或显存40的存储空间进行申请、数据拷贝以及释放等操作,而这些操作由于需要通过cpu6的调用以实现,从而增加了cpu6的计算开销。结合被绘制或处理的图形所展示的场景中通常包括需要重复绘制或处理的数据对象,本发明实施例所描述的一种分配显存空间的方案可以通过gpu驱动程序22以实现。

在一些示例中,gpu驱动程序22从空闲数据列表中查找与待处理数据的特征值相同的第一空闲数据;其中,所述空闲数据列表包括已完成处理的空闲数据,各所述空闲数据的特征值以及各所述空闲数据于显存的存储空间索引。在某些实现过程中,图形应用程序18可将需进行图形处理的待处理数据及待处理数据的数据量经由图形api20传入gpu驱动程序22;gpu驱动程序22在获得待处理数据以及待处理数据的数据量后,可以按照已预先约定的特征值计算方法计算获得待处理数据的特征值,在本申请中,某一对象(例如待处理数据、空闲数据等)的特征值优选为能够唯一标识该对象区别于其他对象的标志,比如按照散列hash算法,诸如循环冗余校验-32(crc-32,cyclicredundancycheck32)、信息摘要算法-5(md5,message-digestalgorithm5)、安全散列算法1(sha1,securehashalgorithm1)、race原始完整性校验消息摘要(ripemd-160,raceintergrityprimitivesevaluationmessagedigest160)、sha256、sha512、sha3-224、sha3-256、sha3-384、sha3-512等算法计算获得的hash值。而空闲数据列表则记录了显存中已完成处理但尚未释放其在显存的存储空间的数据的相关信息,本发明实施例中,基于该种数据已处理完毕,因此,也被称之为空闲数据。而空闲数据的相关信息则可以包括但不限于空闲数据的特征值,例如hash值、空闲数据的数据量、空闲数据于所述显存的存储空间索引。而在某些实现过程中,空闲数据列表可以通过列表的数据结构对空闲数据的相关信息进行保存,具体形式如图2所示。

在一些示例中,相应于gpu驱动程序22从所述空闲数据列表中查找到所述第一空闲数据,将所述第一空闲数据返回以利用所述第一空闲数据及所述第一空闲数据于所述显存的存储空间进行图形处理。举例来说,若待处理数据与第一空闲数据的特征值相同,结合前述特征值的功能,就可以确定待处理数据与第一空闲数据的内容一致。因此,当需要针对待处理数据进行图形处理或操作的情况下,可以直接将第一空闲数据返回,以通过对第一空闲数据进行图形处理来替代对待处理数据进行图形处理。由上述内容并结合图形场景中经常出现重复绘制物体的情况,通过本示例可以同时避免gpu驱动程序22为待处理数据重新在所述显存中申请存储空间以及将待处理数据拷贝到存储空间的操作,降低了cpu6执行显存空间申请及数据拷贝的运算开销。

针对上述示例,在一些示例中,相应于gpu驱动程序22从所述空闲数据列表中查找不到所述第一空闲数据,则从所述空闲数据列表中查找与所述待处理数据的数据量相同的第二空闲数据;相应于gpu驱动程序22从所述空闲数据列表中查找到所述第二空闲数据,将所述待处理数据拷贝至所述第二空闲数据于所述显存的存储空间。需要说明的是,当从空闲数据列表所包含的已完成处理的数据中未找到与待处理数据具有相同内容的第一空闲数据,则无法直接利用针对空闲数据进行图形处理来替代针对待处理数据进行图形处理,那么就无法按照上述示例以实现同时避免gpu驱动程序22为待处理数据重新在所述显存中申请存储空间以及将待处理数据拷贝到新申请的存储空间的操作,但是由于空闲数据列表中还包括已完成处理数据的数据量,那么可以查找与待处理数据的数据量相同的第二空闲数据,当查找到第二空闲数据,结合两者数据量相同,则可以获知两者于显存中所需的的存储空间也相同。基于此,可以根据空闲数据列表中第二空闲数据于显存的存储空间索引将待处理数据拷贝至第二空闲数据于所述显存的存储空间中。通过本示例,即使gpu驱动程序22需要执行将待处理数据拷贝到存储空间的操作,但仍然避免执行为待处理数据重新在所述显存中申请存储空间的操作,降低了cpu6执行显存空间申请的运算开销。

针对上述示例,在一些示例中,所述方法还包括:相应于gpu驱动程序22从所述空闲数据列表中查找不到所述第二空闲数据,为所述待处理数据于所述显存申请新的存储空间,并将所述待处理数据拷贝至所述新申请的存储空间。需要说明的是,结合上述两个示例,当从空闲数据列表所包含的已完成处理的数据中既查找不到第一空闲数据,又查找不到第二空闲数据,此时,为了图形处理的正常进行,gpu驱动程序22只能为待处理数据重新在所述显存中申请存储空间以及将待处理数据拷贝到存储空间。

当数据处理完毕后,结合以上三个示例,在一些示例中,当存储于显存的数据处理完毕后,gpu驱动程序22将处理完毕的数据标记为空闲数据,并通过所述空闲数据列表记录所述空闲数据的数据量、所述空闲数据的特征值以及所述空闲数据于所述显存的存储空间索引。举例来说,当数据处理完毕后,图形应用程序18可以通过调用图形api20向gpu驱动程序22输入处理完成且需确认是否释放的数据,此时,gpu驱动程序22可以计算并记录处理完毕的数据的特征值,并且将该处理完毕的数据标记为空闲数据后,通过空闲数据列表记录该处理完毕数据的数据量、该处理完毕的数据的特征值以及该处理完毕的数据于所述显存的存储空间索引。可以理解地,本示例的执行同样也表示着空闲数据列表的生成过程。

在一些示例中,针对处理完毕后的数据是否需要对下显存中的存储空间进行释放操作,本发明实施例所参考的是显存中尚未使用的空间是否适用于后续的图形处理,在本发明实施例中,显存中已使用的存储空间不仅包括存储有正在被处理数据的存储空间,而且还包括存储有空闲数据的存储空间。本发明实施例对此不做赘述。基于以上描述,gpu驱动程序22还可以检查所述显存已使用的存储空间是否达到设定的阈值:相应于所述已使用的存储空间大于或等于设定的阈值,按照设定策略从所述空闲数据列表中选择空闲数据,并将被选择的空闲数据于所述显存的存储空间进行释放。需要说明的是,当显存已使用的存储空间已达到(例如大于或等于)设定的阈值,说明显存剩余的可使用存储空间不足以胜任后续的图形处理操作,因此需要选择一些空闲数据的存储空间进行释放以补充可使用的存储空间,在具体操作过程中,gpu驱动程序22可采用最近最少使用(lru,leastrecentlyused)策略,从空闲数据列表中选取最近时间段内最少使用的,也就是使用频率低的空闲数据,并将选择出来的空闲数据于显存所占用的存储空间进行释放。

基于上述示例,若显存中尚未使用的空间仍然能够胜任后续的图形处理操作,那么就无须进行释放显存已使用的存储空间,举例来说,相应于所述已使用的存储空间小于所述设定的阈值,则gpu驱动程序22确定不对所述显存已使用的存储空间进行释放。

综合以上所有示例,参见图3,其示出了能够实现以上所有示例的一个或多个方面的gpu驱动程序22针对待处理数据分配显存空间的方案流程,在本流程中,特征值优选设定为hash值,该流程可以包括:

s301:接收由图形应用程序18传入的待处理数据及待处理数据的数据量;

s302:根据待处理数据的hash值从空闲数据列表中查找是否存在与待处理数据的hash值相同的第一空闲数据;

s303:若存在与待处理数据的hash值相同的第一空闲数据,则将所述第一空闲数据返回,本流程结束。

s304:若不存在与待处理数据的hash值相同的第一空闲数据,则从所述空闲数据列表中查找是否存在与所述待处理数据的数据量相同的第二空闲数据;

s305:若存在第二空闲数据,则将所述待处理数据拷贝至所述第二空闲数据于所述显存的存储空间,本流程结束;

s306,若不存在第二空闲数据,则为所述待处理数据于所述显存申请新的存储空间,并将所述待处理数据拷贝至所述新申请的存储空间;本流程结束。

可以理解地,通过上述流程完成待处理数据的显存空间分配后,会通过gpu12对待处理数据按照cpu6通过gpu驱动程序22所下发的指令进行图形处理。当处理完毕之后,gpu驱动程序22就需要针对显存的存储空间是否进行释放确认,参见图4,其示出了能够实现以上所有示例的一个或多个方面的gpu驱动程序22针对显存空间确定是否释放的方案流程,在本流程中,所述设定策略优选为lru策略,该流程可以包括:

s401:接收由图形应用程序输入的处理完成且需确认是否释放的数据;

s402:检查所述显存已使用的存储空间是否达到设定的阈值:

s403:若所述已使用的存储空间达到设定的阈值,按照lru策略从所述空闲数据列表中选择空闲数据,并将被选择的空闲数据于所述显存的存储空间进行释放;本流程结束;

s404:若所述已使用的存储空间未达到设定的阈值,确定不对所述显存已使用的存储空间进行释放;本流程结束。

综合上述示例及方案流程,参见图5,其示出了本发明实施例提供的一种分配显存空间的方法,该方法可以包括:

s501:从空闲数据列表中查找与待处理数据的特征值相同的第一空闲数据;

需要说明的是,所述空闲数据列表包括已完成处理的空闲数据,各所述空闲数据的特征值以及各所述空闲数据于显存的存储空间索引;

s502:相应于查找到所述第一空闲数据,将所述第一空闲数据返回以利用所述第一空闲数据及所述第一空闲数据于所述显存的存储空间进行图形处理。

在一些示例中,所述方法还包括:

相应于查找不到所述第一空闲数据,则从所述空闲数据列表中查找与所述待处理数据的数据量相同的第二空闲数据;

相应于查找到所述第二空闲数据,将所述待处理数据拷贝至所述第二空闲数据于所述显存的存储空间。

在一些示例中,所述方法还包括:

相应于查找不到所述第二空闲数据,为所述待处理数据于所述显存申请新的存储空间,并将所述待处理数据拷贝至所述新申请的存储空间。

在一些示例中,所述方法还包括:当存储于显存的数据处理完毕后,将处理完毕的数据标记为空闲数据,并通过所述空闲数据列表记录所述空闲数据的数据量、所述空闲数据的特征值以及所述空闲数据于所述显存的存储空间索引。

在一些示例中,所述方法还包括:检查所述显存已使用的存储空间是否达到设定的阈值:

相应于所述已使用的存储空间大于或等于设定的阈值,按照设定策略从所述空闲数据列表中选择空闲数据,并将被选择的空闲数据于所述显存的存储空间进行释放。

在一些示例中,所述方法还包括:

相应于所述已使用的存储空间小于所述设定的阈值,则确定不对所述显存已使用的存储空间进行释放。

图6为能够实现前述示例、流程及方案的一个或多个方面的分配显存空间的装置60,可以包括:查找部分601、返回部分602;其中,

所述查找部分601,经配置为从空闲数据列表中查找与待处理数据的特征值相同的第一空闲数据;以及,在查找到所述第一空闲数据时触发所述返回部分602;

其中,所述空闲数据列表包括已完成处理的空闲数据,各所述空闲数据的特征值以及各所述空闲数据于显存的存储空间索引;

所述返回部分602,经配置为将所述第一空闲数据返回以利用所述第一空闲数据及所述第一空闲数据于所述显存的存储空间进行图形处理。

在一些示例中,参见图7,所述装置60还包括:拷贝部分603;

所述查找部分601,还经配置为:

若查找不到所述第一空闲数据,则从所述空闲数据列表中查找与所述待处理数据的数据量相同的第二空闲数据;以及,在查找到所述第二空闲数据时触发所述拷贝部分603;

所述拷贝部分603,经配置为将所述待处理数据拷贝至所述第二空闲数据于所述显存的存储空间。

在一些示例中,参见图7,所述装置60还包括:申请部分604;

所述查找部分601,还经配置为:若查找不到所述第二空闲数据,触发所述申请部分604和所述拷贝部分603;

所述申请部分604,经配置为:为所述待处理数据于所述显存申请新的存储空间;

所述拷贝部分603,还经配置为:将所述待处理数据拷贝至所述新申请的存储空间。

在一些示例中,参见图7,所述装置60还可以包括:记录部分605,经配置为:当存储于显存的数据处理完毕后,将处理完毕的数据标记为空闲数据,并通过所述空闲数据列表记录所述空闲数据的数据量、所述空闲数据的特征值以及所述空闲数据于所述显存的存储空间索引。

在一些示例中,参见图7,所述装置60还可以包括:检查部分606和释放部分607;其中,

所述检查部分606,经配置为检查所述显存已使用的存储空间是否达到设定的阈值;以及,当所述已使用的存储空间大于或等于设定的阈值时触发所述释放部分607;

所述释放部分607,经配置为按照设定策略从所述空闲数据列表中选择空闲数据,并将被选择的空闲数据于所述显存的存储空间进行释放。

在一些示例中,参见图7,所述装置60还可以包括:确定部分608;

所述检查部分606,还经配置为当所述已使用的存储空间小于所述设定的阈值时,触发所述确定部分608;

所述确定部分608,还经配置为确定不对所述显存已使用的存储空间进行释放。

可以理解地,在本实施例中,“部分”可以是部分电路、部分处理器、部分程序或软件等等,当然也可以是单元,还可以是模块也可以是非模块化的。

另外,在本实施例中的各组成部分可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。

所述集成的单元如果以软件功能模块的形式实现并非作为独立的产品进行销售或使用时,那么可将功能作为一或多个指令或代码存储在计算机可读媒体上或经由计算机可读媒体传输。计算机可读媒体可包含计算机数据存储媒体或通信媒体,通信媒体包含促进将计算机程序从一处传递到另一处的任何媒体。数据存储媒体可为可由一或多个计算机或一或多个处理器存取以检索用于实施本发明中描述的技术的指令、代码和/或数据结构的任何可用媒体。举例来说且非限制,此类计算机可读媒体可包括u盘、移动硬盘、ram、rom、eeprom、cd-rom或其它光盘存储装置、磁盘存储装置或其它磁性存储装置,或可用于运载或存储呈指令或数据结构的形式的所要程序代码且可由计算机存取的任何其它媒体。并且,任何连接被恰当地称作计算机可读媒体。举例来说,如果使用同轴电缆、光纤电缆、双绞线、数字订户线(dsl)或例如红外线、无线电和微波等无线技术从网站、服务器或其它远程源传输软件,那么同轴电缆、光纤电缆、双绞线、dsl或例如红外线、无线电和微波等无线技术包含于媒体的定义中。如本文中所使用,磁盘和光盘包含压缩光盘(cd)、激光光盘、光学光盘、数字多功能光盘(dvd)、软性磁盘和蓝光光盘,其中磁盘通常以磁性方式再现数据,而光盘利用激光以光学方式再现数据。以上各项的组合也应包含在计算机可读媒体的范围内。

代码可由一或多个处理器执行,所述一或多个处理器例如是一或多个数字信号处理器(dsp)、通用微处理器、专用集成电路(asic)、现场可编程逻辑阵列(fpga)或其它等效的可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。因此,如本文中所使用的术语“处理器”和“处理单元”可指前述结构或适于实施本文中所描述的技术的任何其它结构中的任一者。另外,在一些方面中,本文中所描述的功能性可在经配置用于编码和解码的专用硬件和/或软件模块内提供,或者并入在组合式编解码器中。而且,所述技术可完全实施于一或多个电路或逻辑元件中。

本发明实施例的技术可实施于各种各样的装置或设备中,所述装置或设备包含无线手持机、集成电路(ic)或一组ic(即,芯片组)。本发明中描述各种组件、模块或单元是为了强调经配置以执行所公开的技术的装置的功能方面,但未必需要由不同硬件单元实现。实际上,如上文所描述,各种单元可结合合适的软件和/或固件组合在编码解码器硬件单元中,或者通过互操作硬件单元的集合来提供,所述硬件单元包含如上文所描述的一或多个处理器。

已描述了本发明的各种方面。这些和其它实施例在所附权利要求书的范围内。需要说明的是:本发明实施例所记载的技术方案之间,在不冲突的情况下,可以任意组合。

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1