【技术实现步骤摘要】
数据压缩
本申请涉及数据压缩领域。
技术介绍
在数据要存储在存储器中和/或从存储器中读取的很多应用中,期望无损和有损的数据压缩二者。通过在将数据存储在存储器中之前压缩数据,可以减少传输到存储器的数据量。数据压缩特别有用的数据的示例是图像数据,诸如要存储在深度缓冲器中的深度数据、要存储在帧缓冲器中的像素数据和要存储在纹理缓冲器中的纹理数据。这些缓冲器可以是任何合适类型的存储器,诸如高速缓冲存储器、单独的存储器子系统、共享存储器系统中的存储器区域或其某种组合。图形处理单元(GPU)可以用于处理图像数据,以便确定要存储在帧缓冲器中、以输出到显示器的图像的像素值。GPU通常具有高度并行化的结构用于并行处理大块数据。使GPU(特别是那些打算在移动设备上实现的GPU)以较低的功率水平运行存在巨大的商业压力。与此相竞争的是期望在更快的GPU上使用更高质量的渲染算法,从而对相对有限的资源(存储器带宽)施加压力。然而,增加存储器子系统的带宽可能不是有吸引力的解决方案,因为将数据移入和移出GPU以及甚至在GPU内移动数据会消耗GPU的大部分功率预算。中央处理单元(CPU)也可能存在与GPU相同的问题。如上所述,减少传输到存储器的数据量的一种方式是压缩要传输到存储器和从存储器传输的数据。压缩和解压缩数据所花费的时间增加了存储器读取和写入操作的等待时间,并且因此可能影响GPU操作的速度。此外,可以允许压缩数据的速率与压缩数据被解压缩的速率不同。作为示例,通常可以允许用于压缩纹理数据的压缩过程(其通常是有损压缩过程)显著地慢于用于解压缩压缩纹理数据的解压缩过程。相反,用于压缩深度数 ...
【技术保护点】
1.一种执行数据压缩以用于压缩图像数据的方法,所述方法包括:在空间解相关模块处执行空间解相关;对多个数据值执行熵编码以形成经编码的数据输出,所述经编码的数据输出包括多个经编码的数据值,所述多个经编码的数据值表示相应的所述多个数据值,其中所述执行熵编码包括:接收所述数据值,其中所接收的所述数据值已经由所述空间解相关模块处理,并且其中所接收的所述数据值与相应像素值有关;以及针对所接收的数据值的多个集合中的每个集合:确定能够用于表示所述集合中的所接收的所述数据值中的最大值的位数;在所述经编码的数据输出中包括所确定的所述位数的指示;以及在所述经编码的数据输出中包括表示所述集合中的所接收的所述数据值的所述经编码的数据值,其中所述经编码的数据值中的每个经编码的数据值均具有所确定的所述位数;其中所接收的数据值的所述集合中的每个集合均与像素值的二维集合有关。
【技术特征摘要】
2017.10.06 GB 1716431.01.一种执行数据压缩以用于压缩图像数据的方法,所述方法包括:在空间解相关模块处执行空间解相关;对多个数据值执行熵编码以形成经编码的数据输出,所述经编码的数据输出包括多个经编码的数据值,所述多个经编码的数据值表示相应的所述多个数据值,其中所述执行熵编码包括:接收所述数据值,其中所接收的所述数据值已经由所述空间解相关模块处理,并且其中所接收的所述数据值与相应像素值有关;以及针对所接收的数据值的多个集合中的每个集合:确定能够用于表示所述集合中的所接收的所述数据值中的最大值的位数;在所述经编码的数据输出中包括所确定的所述位数的指示;以及在所述经编码的数据输出中包括表示所述集合中的所接收的所述数据值的所述经编码的数据值,其中所述经编码的数据值中的每个经编码的数据值均具有所确定的所述位数;其中所接收的数据值的所述集合中的每个集合均与像素值的二维集合有关。2.根据权利要求1所述的方法,其中所确定的所述位数是能够用于表示所述集合中的所接收的所述数据值中的所述最大值的最小有效位数。3.根据权利要求2所述的方法,其中存在能够由所述指示来指示的有效位数的预定集合,并且其中所述最小有效位数是所述预定集合中的足以表示所述集合中的所接收的所述数据值中的所述最大值的所述有效位数的最小值。4.根据权利要求3所述的方法,其中所述有效位数的所述预定集合不包括能够用于表示所述集合中的所接收的所述数据值中的最大值的所有可能的最小位数。5.根据权利要求2至4中任一项所述的方法,其中所接收的所述数据值中的每个数据值均具有n位,并且针对所接收的数据值的特定集合的所确定的所述最小有效位数是m,其中m≤n,以使得所述特定集合中的所接收的所述数据值中的每个数据值均具有至少(n-m)个前导零,并且其中针对所述特定集合的所述经编码的数据值中的每个经编码的数据值均包括所述特定集合中的对应的n位所接收的数据值的m个最低有效位。6.根据任一项前述权利要求所述的方法,其中所接收的数据值的所述集合中的每个集合均与像素值的2×2集合有关。7.根据任一项前述权利要求所述的方法,其中所接收的所述数据值被组织成块,其中每个块均包括所接收的数据值的多个集合,并且其中针对所接收的数据值的每个块的所述经编码的数据输出被放置在相应的数据包中。8.根据任一项前述权利要求所述的方法,其中所接收的所述数据值已经被重新映射,由此所述重新映射根据由所述空间解相关模块使用的空间解相关技术而被配置,以使得重新映射的数据值具有特定幅度的可能性针对较大的幅度而降低。9.根据任一项前述权利要求所述的方法,其中所接收的所述数据值是无符号的,具有偏向零的分布。10.根据任一项前述权利要求所述的方法,其中所接收的所述数据值表示MSAA差分数据值。11.一种用于压缩图像数据的数据压缩单元,所述数据压缩单元包括:空间解相关模块,被配置为对数据值执行空间解相关;以及熵编码模块,被配置为对多个数据值执行熵编码,以形成经编码的数据输出,所述经编码的数据输出包括多个经编码的数据值,所述多个经编码的数据值表示相应的所述多个数据值,所述熵编码模块被配置为:接收所述数据值,其中所接收的所述数据值已经由所述空间解相关模块处理,并且其中所接收的所述数据值与相应像素值有关;以及针对所接收的数据值的多个集合中的每个集合:确定能够用于表示所述集合中的所接收的数据值中的最大值的位数;在所述经编码的数据输出中包括所确定的所述位数的指示;以及在所述经编码的数据输出中包括表示所述集合中的所接收的所述数据值的所述经编码的数据值,其中所述经编码的数据值中的每个经编码的数据值均具有所确定的所述位数;其中所接收的数据值的所述集合中的每个集合与像素值的二维集合有关。12.根据权利要求11所述的数据压缩单元,其中所述数据值是像素值。13.根据权利要求11或12所述的数据压缩单元,其中所述熵编码模块还被配置为:针对所接收的数据值的另一集合,在所述经编码的数据输出中包括另一指示,所述另一指示指示所述另一集合中每个数据值的位数;以及在所述经编码的数据输出中包括表示所述另一集合中所接收的所述数据值的另外的经编码的数据值,其中所述另外的经编码的数据值中的每个经编码的数据值均具有根据所述另一指示的位数,其中所述所接收的数据值的另一集合包括比所接收的数据值的所述多个集合中的每个所述集合更少的数据值。14.根据权利要求...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。