溢出临时结果以适应存储边界制造技术

技术编号:30292445 阅读:18 留言:0更新日期:2021-10-09 22:11
一个方面包括一种系统架构,其包括处理单元、加速器、主源缓冲器、主目标缓冲器和存储器块。主源缓冲器存储从外部源接收的源符号的第一部分。主目标缓冲器存储从加速器接收的输出符号。存储器包括溢出源缓冲器,其存储从主源缓冲器接收的源符号的第一部分。加速器获取存储在溢出源缓冲器中的源符号的第一部分和存储在主源缓冲器中的源符号的第二部分,并将源符号的第一部分和第二部分一起转换为输出符号。源符号的第二部分包含源符号的不包含在源符号的第一部分中的一部分。符号的第一部分中的一部分。符号的第一部分中的一部分。

【技术实现步骤摘要】
【国外来华专利技术】溢出临时结果以适应存储边界


[0001]本专利技术总体上涉及管理存储器单元,并且更具体地涉及在溢出(overflow)情况下管理主缓冲器和溢出缓冲器。

技术介绍

[0002]计算系统经常使用改变数据大小的数据转换操作。例如,数据压缩技术可用于减小大数据文件的大小,并且所使用的数据解压缩技术恢复原始的大数据文件。例如,计算系统可以压缩从外部源接收的几千兆字节(GB)的文件。然而,执行压缩的应用可能仅能够访问较小大小(例如,一兆字节(MB))的缓冲器,使得应用仅能够同时读取或写入大数据文件中的少量数据。在这样的情况下,应用需要将大文件划分成任意小尺寸的块并且单独地压缩每个块而不是一次压缩整个文件。块的大小和对齐是可用缓冲空间的特性,并且通常与输入的结构不一致,输入可以表示大小上许多GB的单个流。
[0003]在机器可读级别,数据文件的内容是符号序列。如在此所使用的,术语“符号”(symbol)指位序列(bit sequence)的未划分单元及其在数据转换操作(例如,压缩/解压缩操作)中使用的对应物(counterpart)。“对应物”的含义将在此稍后进行解释。通常,单独的转换技术(例如,压缩/解压缩技术)具有将位序列映射到其含义的表格。例如,如果表将“10100”定义为表示字母“a”,则位序列“10100”是符号,因为划分的部分“10”和“100”中的每一个不用于表示字母“a”,而是可用于表示不同的含义。在这种情况下,符号的长度为5字节。然而,存在许多种类的符号,并且符号的长度根据符号的种类而变化。例如,在压缩的数据文件中,包括由霍夫曼编码算法生成的动态霍夫曼树(“DHT”)的压缩报头可以是符号,因为如果表示DHT的长序列的一部分丢失,则不可能对后面的压缩数据进行解码。此报头的最大大小为约288字节。
[0004]在主缓冲器的可用空间比下一符号的大小短(例如,剩余280字节,但下一符号长288字节)的情况下,在常规系统中存在两个选项。一个选项是用符号的一部分(例如,前280字节)填充剩余空间,并且丢弃符号的其他剩余部分(例如,最后8个字节)。然而,丢弃数据可能导致处理中的严重错误。第二选项是仅用先前存储的符号执行转换操作,而不填充主缓冲器的剩余空间。这可能导致浪费的存储器空间。在一些情况下,应用缓冲器使用可能要求可用缓冲器空间被完全填充,即使符号不完全适合。在这样的环境中,计算系统需要管理溢出情况。
[0005]因此,本领域需要解决上述问题。

技术实现思路

[0006]从第一方面来看,本专利技术提供了一种系统,包括:处理单元;加速器;主源缓冲器,被配置为存储从外部源接收的源符号的第一部分;主目标缓冲器,被配置为存储从所述加速器接收的输出符号;以及存储块,包括溢出源缓冲器,其中,所述溢出源缓冲器被配置为存储从所述主源缓冲器接收的所述源符号的所述第一部分,加速器被配置为提取存储在溢
出源缓冲器中的源符号的第一部分和存储在主源缓冲器中的源符号的第二部分,并执行将源符号的第一部分和第二部分一起转换为输出符号的转换操作,所述源符号的所述第二部分包括所述源符号的不包含在所述源符号的所述第一部分中的部分,所述处理单元用于调用所述加速器进行转换操作。
[0007]从另一方面来看,本专利技术提供了一种系统,包括:处理单元;加速器;主源缓冲器,被配置为存储从外部源接收的源符号;主目标缓冲器,被配置为存储从所述加速器接收的输出符号的第一部分;以及存储块,包括溢出目标缓冲器,所述溢出目标缓冲器被配置为存储从所述加速器接收的所述输出符号的第二部分,所述输出符号的所述第二部分包括所述输出符号的不包含在所述第一部分中的部分,加速器,被配置为执行将源符号转换成输出符号的转换操作,以及处理单元,被配置为调用加速器来执行转换操作。
[0008]从另一方面来看,本专利技术提供了一种计算机实现的方法,包括:由处理单元或加速器将从外部源接收的源符号的第一部分存储在主源缓冲器中;基于确定在没有从所述外部源接收到所述源符号的第二部分的情况下所述第一部分未完成,由所述处理单元或所述加速器将所述源符号的所述第一部分存储在溢出源缓冲器中;由所述加速器获取存储在所述溢出源缓冲器中的所述源符号的第一部分和存储在所述主源缓冲器中的所述源符号的第二部分;由所述加速器将所述源符号的所述第一部分和所述第二部分一起转换成输出符号;以及由处理单元或加速器将从加速器接收的输出符号存储在主目标缓冲器中,源符号的第二部分包括源符号的未包括在第一部分中的一部分,并且加速器包括硬件引擎。
[0009]从另一方面来看,本专利技术提供了一种计算机实现的方法,包括:通过处理单元或加速器将从外部源接收的源符号存储在主源缓冲器中;由所述加速器执行所述源符号到输出符号的转换操作;由所述处理单元或所述加速器将从所述加速器接收的所述输出符号的第一部分存储在主目标缓冲器中;以及基于确定所述主目标缓冲器不可用于存储所述输出符号的第二部分,由所述处理单元或所述加速器将从所述加速器接收的所述输出符号的所述第二部分存储在溢出目标缓冲器中,其中,源符号的第二部分包括源符号的不包括在第一部分中的部分,以及所述加速器包括硬件引擎。
[0010]从另一方面来看,本专利技术提供了一种管理存储器单元的计算机程序产品,所述计算机程序产品包括计算机可读存储媒质,所述计算机可读存储媒质可由处理电路读取并且存储用于由处理电路执行以便执行用于执行本专利技术的步骤的方法的指令。
[0011]从另一方面来看,本专利技术提供了一种存储在计算机可读媒质上并且可加载到数字计算机的内部存储器中的计算机程序,所述计算机程序包括软件代码部分,当所述程序在计算机上运行时,所述软件代码部分用于执行本专利技术的步骤。
[0012]根据本专利技术的一个或多个实施例,提供了一种系统架构,其包括处理单元、加速器、主源缓冲器、主目标缓冲器和存储块。所述主源缓冲器经配置以存储从外部源接收的源符号的第一部分。主目标缓冲器被配置为存储从加速器接收的输出符号。存储块包括溢出源缓冲器。溢出源缓冲器用于存储从主源缓冲器接收到的源符号的第一部分。加速器被配置为提取存储在溢出源缓冲器中的源符号的第一部分和存储在主源缓冲器中的源符号的第二部分,并执行将源符号的第一部分和第二部分一起转换成输出符号的转换操作。源符号的第二部分包含源符号的不包含在源符号的第一部分中的一部分。所述处理单元用于调用所述转换操作。益处可包括防止架构丢失存储在主源缓冲器中的部分源符号,并将源符
号的组合的、整个部分发送到加速器,加速器将源符号的整个部分一起转换,以便恢复预期的无失真的输出符号。当加速器是硬件引擎时的另一益处是处理速度比软件实现的压缩的处理速度快。
[0013]根据本专利技术的额外或替代实施例,以上转换操作包含解压缩操作,其将源符号的第一部分和第二部分一起解压缩为输出符号。
[0014]根据本专利技术的额外或替代实施例,处理单元通过微码来控制加速器的操作。
[0015]根据本专利技术的额外或替代实施例,主源缓冲器将源符号的第一部分存储在主源缓冲器的最后可用空间中。本文档来自技高网
...

【技术保护点】

【技术特征摘要】
【国外来华专利技术】1.一种系统,包括:处理单元;加速器;主源缓冲器,被配置为存储从外部源接收的源符号的第一部分;主目标缓冲器,被配置为存储从所述加速器接收的输出符号;以及存储块,包括溢出源缓冲器,其中,所述溢出源缓冲器被配置成存储从所述主源缓冲器接收的所述源符号的所述第一部分,加速器被配置为提取存储在所述溢出源缓冲器中的所述源符号的第一部分和存储在所述主源缓冲器中的所述源符号的第二部分,并执行将所述源符号的第一部分和第二部分一起转换为输出符号的转换操作,所述源符号的所述第二部分包括所述源符号的不包含在所述源符号的所述第一部分中的部分,所述处理单元被配置为调用所述加速器进行转换操作。2.根据权利要求1所述的系统,其中,所述转换操作包括将所述源符号的所述第一和第二部分一起解压缩成所述输出符号的解压缩操作。3.根据在前权利要求之一所述的系统,其中所述处理单元可操作用于通过微码控制所述加速器的操作。4.根据在前权利要求中任一项所述的系统,其中所述主源缓冲器可操作用于将所述源符号的所述第一部分存储在所述主源缓冲器的最后可用空间中。5.根据在前权利要求中任一项所述的系统,其中所述源符号包括压缩头。6.根据在前权利要求中任一项所述的系统,其中所述存储块进一步包括恢复所述转换操作所需的信息。7.一种系统,包括:处理单元;加速器;主源缓冲器,被配置为存储从外部源接收的源符号;主目标缓冲器,被配置为存储从所述加速器接收的输出符号的第一部分;以及存储块,包括溢出目标缓冲器,所述溢出目标缓冲器被配置为存储从所述加速器接收的所述输出符号的第二部分,所述输出符号的所述第二部分包括所述输出符号的不包含在所述第一部分中的部分,加速器,被配置为执行将所述源符号转换成输出符号的转换操作,以及处理单元,被配置为调用所述加速器来执行转换操作。8.根据权利要求7所述的系统,其中,所述转换操作包括将所述源符号解压缩为所述输出符号的解压缩操作或者将所述源符号压缩为所述输出符号的压缩操作。9.根据权利要求7或8所述的系统,其中,所述处理单元通过微码来控制所述加速器的操作。10.根据权利要求7至9中任一项所述的系统,其中所述主目标缓冲器将所述输出符号的所述第一部分存储在所述主目标缓冲器的最后可用空间中。11.根据权利要求7至10中任一项所述的系统,其中,所述源符号包括压缩模式下的压缩头。12.根据权利要求7至11中任一项所述的系统,其特征在于,所述内存块还包括恢复所述转换操作所需的信息。
13.一种计算机实现的方法,包括:通过处理单元或加速器将从外部源接收的源符号的第一部分存储在主源缓冲器中;基于确定在没有从所述外部源接收到所述源符号的第二部分的情况下所述第一部分未完成,由所述处理单元或所述加速器将所述源符号的所述第一部分存储在溢出源缓冲器中;由所述加速器获取存储在所述溢出源缓冲器中的所述源符号的第一部分和存储在所述主源缓冲器中的所述源符号的第二部分;由所述加速...

【专利技术属性】
技术研发人员:G
申请(专利权)人:国际商业机器公司
类型:发明
国别省市:

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

1