当前位置: 首页 > 专利查询>英特尔公司专利>正文

用于数据压缩和解压缩的存储器分配技术制造技术

技术编号:37109155 阅读:18 留言:0更新日期:2023-04-01 05:07
本文描述的示例涉及确定用于对压缩数据进行编码的比特数的方式。一些示例包括:对帧中的像素区域的像素数据进行压缩;确定与至少两个分区相关联的比特数;利用所确定的比特数对压缩像素数据所生成的残差值进行编码;以及存储经编码的残差值。在一些示例中,至少两个分区包括第一分区和第二分区。一些示例包括:使用与第一分区相关联的比特数对第一分区中的残差进行编码,以及使用与第二分区相关联的比特数对第二分区中的残差进行编码。一些示例包括:确定残差的仓的分布,其中每个不同的仓表示用于对残差值进行编码的比特数;以及将残差总数的中点确定为存储分布的残差总数的大约50百分位的残差的仓。约50百分位的残差的仓。约50百分位的残差的仓。

【技术实现步骤摘要】
用于数据压缩和解压缩的存储器分配技术
相关技术
[0001]在无损压缩系统中,数据可以被表示为残差,该残差是与中心种子值的差异或增量(delta,

)。对于像素数据,当颜色在区域内没有变化或轻微变化时,残差值的幅度较低,并且可以使用较少的比特来记录残差或对残差进行编码。当颜色在区域内发生变化或显著变化时,残差值的幅度较高,并且可以使用较多的比特来记录残差或对残差进行编码。值可以被分组到大小分区中,并且每大小分区所分配的存储量可以基于残差值的幅度范围,而不是每残差值指派存储器设备中的特定存储量。在一些方案中,可以分配两个组,即上分区和下分区。上分区可用于存储具有在第一范围内的幅度的残差,并且下分区可用于存储具有在第二范围内的幅度的残差。
[0002]用于确定分区大小的方案(被称为“多数逻辑”)如下所示。首先,使用与表示残差值所需的比特数相对应的比特数来设置掩码。例如,如果残差值为二进制1010,则大小掩码将被设置为1111。可以确定最常出现的分区大小。此下分区大小可以设置为最常见的大小。最大残差大小可以用作上分区大小。残差可以根据它们的大小被分为两组,并被存储在下分区大小组中或上分区大小组中。指示残差的分区大小的掩码可以被存储并被用于读取与数据解压缩相关的残差的正确比特数。然而,在某些情况下,多数逻辑确定分区大小使用比所需要的更多的残差存储,并降低整体压缩效率且使用比所需要的更多的存储器空间。
附图说明
[0003]图1是根据实施例的处理系统的框图。
[0004]图2A

2D图示由本文中描述的实施例提供的计算系统和图形处理器。
[0005]图3A

图3C图示由本文中描述的实施例提供的附加的图形处理器和计算加速器体系结构的框图。
[0006]图4是根据一些实施例的图形处理器的图形处理引擎的框图。
[0007]图5A

图5B图示根据本文中描述的实施例的线程执行逻辑,该线程执行逻辑包括在图形处理器核心中采用的处理元件的阵列。
[0008]图6图示根据实施例的附加的执行单元。
[0009]图7是图示根据一些实施例的图形处理器指令格式的框图。
[0010]图8是图形处理器的另一实施例的框图。
[0011]图9A是图示根据一些实施例的图形处理器命令格式的框图。
[0012]图9B是图示根据实施例的图形处理器命令序列的框图。
[0013]图10图示根据一些实施例的用于数据处理系统的示例性图形软件体系结构。
[0014]图11A是图示根据实施例的可用于制造集成电路以执行操作的IP核心开发系统的框图。
[0015]图11B图示根据本文中描述的一些实施例的集成电路封装组件的截面侧视图。
[0016]图11C图示封装组件,该封装组件包括连接到衬底的多个单元的硬件逻辑小芯片。
[0017]图11D图示根据实施例的包括可互换小芯片的封装组件。
[0018]图12、图13A和图13B图示根据本文中所述的各实施例的可以使用一个或多个IP核心制造的示例性集成电路和相关联的图形处理器。
[0019]图14描绘数据压缩的已知示例。
[0020]图15描绘系统的简化框图。
[0021]图16描绘示例直方图分布。
[0022]图17描绘可以结合对区域的像素数据的压缩而使用的过程的示例。
[0023]图18描绘残差分布和下分区的上仓的确定的示例。
具体实施方式
[0024]在以下描述中,出于解释的目的,阐述了众多特定细节以提供对下文所描述的本专利技术的实施例的透彻理解。然而,对本领域技术人员将显而易见的是,可在没有这些特定细节中的一些细节的情况下实施本专利技术的实施例。在其他实例中,以框图形式示出公知的结构和设备,以避免使本专利技术的实施例的基本原理变得模糊。系统概览
[0025]图1是根据实施例的处理系统100的框图。系统100可被用在以下各项中:单处理器桌上型电脑系统、多处理器工作站系统、或具有大量处理器102或处理器核心107的服务器系统。在一个实施例中,系统100是被并入在片上系统(system

on

a

chip,SoC)集成电路内的处理平台,该片上系统(SoC)集成电路用于在移动设备、手持式设备或嵌入式设备中使用,诸如,用于在具有至局域网或广域网的有线或无线连接性的物联网(Internet

of

things,IoT)设备内使用。
[0026]在一个实施例中,系统100可包括以下各项,可与以下各项耦合,或可并入在以下各项内:基于服务器的游戏平台、包括游戏和媒体控制台的游戏控制台、移动游戏控制台、手持式游戏控制台或在线游戏控制台。在一些实施例中,系统100是移动电话、智能电话、平板计算设备或移动互联网连接的设备(诸如,具有低内部存储容量的膝上型电脑)的部分。处理系统100也可包括以下各项,与以下各项耦合,或被集成在以下各项内:可穿戴设备,诸如,智能手表可穿戴设备;利用增强现实(augmented reality,AR)或虚拟现实(virtual reality,VR)特征来增强以提供视觉、音频或触觉输出来补充现实世界视觉、音频或触觉体验或以其他方式提供文本、音频、图形、视频、全息图像或视频、或触觉反馈的智能眼镜或服装;其他增强现实(AR)设备;或其他虚拟现实(VR)设备。在一些实施例中,处理系统100包括电视机或机顶盒设备,或者是电视机或机顶盒设备的部分。在一个实施例中,系统100可包括自动驾驶交通工具,与自动驾驶交通工具耦合,或集成在自动驾驶交通工具中,该自动驾驶交通工具诸如,公共汽车、拖拉机拖车、汽车、电机或电力循环、飞机或滑翔机(或其任何组合)。自动驾驶交通工具可使用系统100来处理在该交通工具周围感测到的环境。
[0027]在一些实施例中,一个或多个处理器102各自都包括用于处理器指令的一个或多个处理器核心107,这些指令当被执行时,执行用于系统或用户软件的操作。在一些实施例中,一个或多个处理器核心107中的至少一个被配置成处理特定的指令集109。在一些实施例中,指令集109可促进复杂指令集计算(Complex Instruction Set Computing,CISC)、精简指令集计算(RISC)或经由超长指令字(Very Long Instruction Word,VLIW)的计算。一个或多个处理器核心107可处理不同的指令集109,不同的指令集109可包括用于促进对其
他指令集的仿真的指令。处理器核心107也可包括其他处理设备,诸如,数字信号处理器(Digital Signal Processor,DSP)。
[0028]在一些实施例中,处理器102包括缓存存储器104。取决于体系结构,处理器102可具有单个内部缓存或多级的内部缓存。在一些实施例中,缓存存储器在处理器102的各种组件之本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种系统,包括:至少一个存储器设备;以及压缩电路,用于通过像素数据区域的至少一个通道的表示相对于种子值对所述像素数据区域进行压缩,其中所述表示与至少两个分区中的一个分区相关联,所述压缩电路用于基于相关联的分区确定用于对所述表示进行编码的比特数,并且所述压缩电路用于基于所确定的比特数对所述表示进行编码。2.如权利要求1所述的系统,其中,为了基于相关联的分区确定用于对所述表示进行编码的比特数,所述压缩电路用于:确定与表示的分布的大约50百分位相关联的中值仓,并且基于包括所述中值仓的仓的范围确定所述至少两个分区中的两个分区之间的仓边界。3.如权利要求2所述的系统,其中,基于相关联的分区确定用于对所述表示进行编码的比特数是基于用于对所述至少两个分区中的表示的分布进行编码的最少比特数。4.如权利要求2所述的系统,其中,为了基于相关联的分区确定用于对所述表示进行编码的比特数,所述压缩电路用于:设置用于对第一组表示进行编码的第一比特数,设置用于对第二组表示进行编码的第二比特数,调整所述第一比特数和所述第二比特数以实现用于对所述第一组表示和所述第二组表示进行编码的最少比特数。5.如权利要求1所述的系统,其中,为了基于相关联的分区确定用于对所述表示进行编码的比特数,所述压缩电路用于确定:下分区中的残差数*下分区大小+上分区中的残差数*上分区大小+用于对与所述下分区相关联的残差进行编码的比特数的掩码大小+用于对与所述上分区相关联的残差进行编码的比特数的掩码大小。6.如权利要求1所述的系统,其中,所述表示包括残差,并且所述残差基于像素值和种子值之间的差异。7.如权利要求1所述的系统,其中,所述至少一个通道与颜色值相关联。8.如权利要求1所述的系统,其中,所述压缩电路用于在像素数据存储在所述至少一个存储器设备中之前对像素数据区域进行压缩。9.如权利要求8所述的系统,其中,所述压缩电路用于在所述像素数据存储在缓存设备中之前对所述像素数据区域解压缩。10.如权利要求1

9中任一项所述的系统,包括图形处理单元GPU,其中所述GPU包括所述压缩电路。11.一种方法,包括:对帧中的像素区域的像素数据进行压缩;确定与至少两个分区相关联的比特数;利用所确定的比特数对压缩所述像素数据所生成的残差值进行编码;以及存储经编码的残差值。12.如权利要求11所述的方法,其中,所述至少两个分区包括第一分区和第二分区。
13.如权利要求12所述的方法,包括:确定残差的仓的分布,其中每个不同的仓表示用于对残差值进行编码的比特数,以及将残差总数的中点确定为存储所述分布的残差总数的大约50百分位的残差的仓。14.如权利要求13所述的方法,包括:确定测试仓的范围,其中所述测试仓包括与所述残差总数的中点相关联的仓和至少一个其他仓;选择所述第一分区的上仓;以及确定用于对所述第一分区中的残差进行编码和对所述第二分区中的残差进行编码的总比特数...

【专利技术属性】
技术研发人员:P
申请(专利权)人:英特尔公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1