【技术实现步骤摘要】
【国外来华专利技术】用于高效存储和访问时空数据的存储器架构
[0001]相关申请的交叉引用
[0002]本申请要求于2019年12月10日提交的美国申请号16/709,217的优先权,该申请的全部内容通过引用并入本文。
[0003]本专利技术总体上涉及存储器架构,并且更具体地,在一些实施例中,涉及用于高效存储和访问时空数据的存储器架构。
技术介绍
[0004]平面存储器模型或线性存储器模型是指存储器寻址范式,其中存储器对于程序而言表现为单个连续的地址空间。在这样的模型中,中央处理单元(CPU)可以直接(并且线性地)寻址所有可用存储器,而无需求助于任何类型的存储器分段或分页方案。尽管如此,可以在线性存储器模型之上实现存储器管理和地址转换,以促进操作系统功能、资源保护、多任务处理或增加存储器容量,使其超出处理器物理地址空间所导致的限制。
[0005]虚拟存储器寻址是一种存储器管理技术,它提供了对在给定机器上实际可用的存储资源的理想化抽象。计算机的操作系统使用硬件和软件的组合,将由程序使用的存储器地址(称为虚拟地址)映射到计算机存储器中的物理地址。从进程或任务的角度来看,主存储器表现为连续的地址空间或连续分段的集合。操作系统管理虚拟地址空间和物理存储器到虚拟存储器的分配。CPU中的称为存储器管理单元(MMU)的地址转换硬件自动地将虚拟地址转换为物理地址。操作系统内的软件可以例如使用分页技术来扩展这些能力,以提供可以超过物理存储器容量的虚拟地址空间,从而引用与计算机中物理存在的相比更多的存储器。
[0006]不管 ...
【技术保护点】
【技术特征摘要】
【国外来华专利技术】1.一种用于对多维数据进行存储器地址编码的计算机实现的方法,所述多维数据包括第一多维数据和第二多维数据,所述方法包括:对所述第一多维数据应用地址编码以获得用于所述第一多维数据的第一存储器地址;对所述第二多维数据应用所述地址编码以获得用于所述第二多维数据的第二存储器地址,其中所述第二多维数据是从所述第一多维数据通过将所述第一多维数据中与特定维度对应的相应数据增加一个单位来获得的;将所述第一多维数据存储在存储器中的所述第一存储器地址处;和将所述第二多维数据存储在所述存储器中的所述第二存储器地址处,其中,所述地址编码确保所述第二存储器地址和所述第一存储器地址之间的线性差独立于所述多维数据的任何维度的尺寸而有界。2.根据权利要求1所述的计算机实现的方法,其中所述第一多维数据包括与第一维度对应的第一数据和与第二维度对应的第二数据,并且其中对所述第一多维数据应用所述地址编码以获得所述第一存储器地址包括:识别所述第一数据的第一位表示;识别所述第二数据的第二位表示;和对所述第一位表示和所述第二位表示进行交织以获得所述第一存储器地址。3.根据权利要求2所述的计算机实现的方法,其中对所述第一位表示和所述第二位表示进行交织包括:将包括所述第一位表示的最低有效位和所述第二位表示的最低有效位的第一位集合组合在一起;和将一个或多个附加的位集合附接到所述第一位集合的连续更高有效位位置中以获得所述第一存储器地址,其中每个附加的位集合包括来自所述第一数据和所述第二数据中的每一者的在相同位位置处的相应位。4.根据权利要求1所述的计算机实现的方法,其中所述存储器是主存储器,所述方法还包括:接收访问所述第一多维数据的第一存储器访问请求;对所述第一多维数据应用所述地址编码以获得所述第一存储器地址;至少部分地基于所述第一存储器地址的至少一部分来确定所述第一多维数据没有存储在高速缓冲存储器中;从所述主存储器中检索包括所述第一多维数据的数据块;和将所述数据块存储在所述高速缓冲存储器中。5.根据权利要求4所述的计算机实现的方法,还包括:接收访问所述第二多维数据的第二存储器访问请求;对所述第二多维数据应用所述地址编码以获得所述第二存储器地址;至少部分地基于所述第二存储器地址的至少一部分来确定所述第二多维数据存储在所述高速缓冲存储器中;和从所述高速缓冲存储器中检索所述第二多维数据,其中先前存储在所述高速缓冲存储器中的所述数据块还包括所述第二多维数据。6.根据权利要求4所述的计算机实现的方法,其中所述数据块在大小上与所述高速缓
冲存储器的最小缓存行对应,并且其中至少部分地基于所述地址编码,所述数据块还包括所述第二多维数据的概率大于百分之五十。7.根据权利要求1所述的计算机实现的方法,其中所述地址编码确保所述第一存储器地址和所述第二存储器地址之间的线性差在2
(4k
‑
1)
之内的概率为2
(
‑
k)
,其中k≥1。8.根据权利要求1所述的计算机实现的方法,其中所述第一多维数据和所述第二多维数据表示时空数据。9.一种用于对多维数据进行存储器地址编码的系统,所述多维数据包括第一多维数据和第二多维数据,所述系统包括:至少一个处理器;和存储计算机可执行指令的至少一个存储器,其中所述至少一个处理器配置成访问所述至少一个处理器并执行所述计算机可执行指令以:对所述第一多维数据应用地址编码以获得用于所述第一多维数据的第一存储地址;对所述第二多维数据应用所述地址编码以获得用于所述第二多维数据的第二存储器地址,其中所述第二多维数据是从所述第一多维数据通过将所述第一多维数据中与特定维度对应的相应数据增加一个单位来获得的;将所述第一多维数据存储在存储器中的所述第一存储器地址处;和将所述第二多维数据存储在所述存储器中的所述第二存储器地址处,其中所述地址编码确保所述第二存储器地址和所述第一存储器地址之间的线性差独立于所述多维数据的任何维度的尺寸而有界。10.根据权利要求9所述的系统,其中所述第一多维数据包括与第一维度对应的第一数据和与第二维度对应的第二数据,并且其中所述至少一个处理器配置成通过执行所述计算机可执行指令以进行以下操作来对所述第一多维数据应用所述地址编码以获得第一存储器地址:识别所述第一数据的第一位表示;识别所述第二数据的第二位表示;和对所述第一位表示和所述第二位表示进行交织以获得所述第一存储器地址。11.根据权利要求10所述的系统,其中所述至少一个处理器配置成通过执行所述计算机可执行指令以进行如下操...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。