CN1164900A - 存储器件中存储数据的方法和*** - Google Patents

存储器件中存储数据的方法和*** Download PDF

Info

Publication number
CN1164900A
CN1164900A CN95194545A CN95194545A CN1164900A CN 1164900 A CN1164900 A CN 1164900A CN 95194545 A CN95194545 A CN 95194545A CN 95194545 A CN95194545 A CN 95194545A CN 1164900 A CN1164900 A CN 1164900A
Authority
CN
China
Prior art keywords
data
data block
group
memory device
address
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN95194545A
Other languages
English (en)
Inventor
斯科特·E·劳埃德
谢伊-平·T·王
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Motorola Solutions Inc
Original Assignee
Motorola Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Motorola Inc filed Critical Motorola Inc
Publication of CN1164900A publication Critical patent/CN1164900A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0207Addressing or allocation; Relocation with multidimensional access, e.g. row/column, matrix

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Mathematical Physics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Communication Control (AREA)

Abstract

提供一种将数据存入一个存储器件(222)的方法。本方法在一个两维地址空间内存储诸数据元组成的块,以使得这些块在上述地址空间内重叠。上述数据元可为表示多项式展开之指数的数字字。

Description

存储器件中存储数据的方法和***
本发明一般性涉及数据存储***,尤其涉及用以将数据存入一个存储器件的一种方法和***。
数据存储***被广泛应用于各种计算环境中。图1显示一个计算机(10),它包含一个数据存储***(14)。典型地,一个数据存储***包含一个大容量存储器(16),存储器管理单元(22),和CPU存储器(24)。中央处理单元(CPU)(12)执行软件程序,并且通过总线(20)连接至存储器管理单元(22)和CPU存储器(24)。
存储器管理单元(22)控制大容量存储器(16)与CPU存储器(24)之间的数据传输,而且在某些情况下可以在中央处理单元(12)与大容量存储器(16)之间传输数据。为将来自大容量存储器(16)的数据移送至CPU存储器(24),存储器管理单元(22)利用总线(18)[译者注:原文中为(13),根据图示应为18]从大容量存储器(16)中读取数据块,然后利用总线(20)将这些数据块写入CPU存储器(24)。以类似的方式,通过先从CPU存储器(24)中读取数据块而后将其写入大容量存储器(16),存储器管理单元(22)可将来自CPU存储器(24)的数据块移送至大容量存储器(16)。
大容量存储器(16)典型地提供一个装置,用以以相对低的每存储数据元成本存储大量数据。具备技术上普通技能的人可认识到,大容量存储器(16)可包括一个硬盘,一组随机存取存储器(RAM)芯片,或其它存储媒体。
CPU存储器(24)存储CPU(12)所使用的数据和程序指令。具备技术上普通技能的人将认识到,CPU存储器(24)可为静态或超高速缓存RAM,他们与CUP(12)存在于同一集成电路上。存储在CPU存储器(24)中的数据通过总线(20)被CPU(12)存取。与大容量存储器(16)相比,CPU存储器(24)允许更为快速的存取过程。然而,CPU存储器(24)一般容量较小,这归因于其相对较高的价格——与它容许短的存取时间相关。对于存储CPU(12)操作中所需的所有数据,CPU存储器(24)通常不够大。因此,要么CPU(12)必须通过存储器管理单元(22)周期性地存取来自大容量存储器(16)的数据,要么存储器管理单元(22)必须周期性刷新CPU存储器(24)的内容。因为大容量存储器(16)比CPU存储器(24)速度慢,CPU(12)在存取来自大容量存储器(16)的数据时必须***若干等待状态。由CPU(12)***的等待状态将降低计算机(10)的整体性能。另外,在许多情形下,存储器管理单元(22)向CPU存储器(24)装入数据块所需的时间量将引起CPU(12)空闲,这亦将降低计算机(10)的性能。
因此,存在对一种数据存储***的重要需求,这种数据存储***允许数据块以减少所需总体存储空间的方式存储。还存在对一种数据存储***的需求,这种数据存储***将数据装入存储器,并减少数据块在该存储器和大容量存储器之间交换。
因此,本发明的一个优点是提供一种减少存储器件中存储数据所需存储空间的方法。
本发明的另一个优点是提供一种有效地减少将数据装入上述存储器件所需时间量的存储数据方法。
本发明一个进一步的优点是提供一种减少在一存储器件和一大容量存储器之间数据交换需求的方法。
在本发明的一个实施例中,提供一种方法用以将一组数据块存入一个存储器件。在本方法中,每一个数据块具有一组数据元。首先确定是否一个公共数据元存在于一组数据块中的两个数据块之间。该组数据块随后被存入上述存储器件,以使得如果一个公共数据元存在于一组数据块中的两个数据块之间,则该组数据块中这两个数据块之间的公共数据元被存入存储器件的一个单独区域。
在本发明的另一个以供选择的实施例中,提供一种方法用以将一组数据块存入一个存储器件。该组数据块中每一个数据块拥有一个起始地址和一组可寻址数据元,并且该组数据元中的每一个数据元拥有一个相对于该起始地址的地址。进一步地,该组数据块包含第一和第二数据块。上述方法为第一数据块和第二数据块指定地址,以使得第二数据块的那组数据元的至少一个数据元之地址与第一数据块的那组数据元的至少一个数据元之地址相同。本方法确定第一数据块和第二数据块的上述一组数据元中,上述拥有相同地址的至少一个数据元是否相等。如果上述数据元相等,本方法开辟一个重迭记录,它包含第二数据块的起始地址和第一与第二数据块之间公共数据元的数目。随后改变第二数据块的起始地址,并且重复所述诸步骤直至找到公共数据元的最大数目。第一数据块随后被存储于所分配的起始地址。第二数据块被存储于由公共元最大数目对应的重迭记录所给定的起始地址。
在本发明一个进一步的实施例中,提供一个存储器管理单元用以将一组数据块存入计算机的存储器件。该存储器管理单元包含确定装置,用以确定上述一组数据块中的两个数据块之间是否存在一个公共数据元。另外,该存储器管理单元包含存储装置,有效地连接至上述存储器件,并响应于上述确定装置,用以将上述一组数据块存入存储器件,以使得如果该组数据块中的两个数据块之间存在上述公共数据元,该组数据块中的上述两个数据块之间的公共数据元被存入存储器件的一个单独区域。
在其后所附的权利要求中,将指出本发明所具有的特别之处。然而,通过参考以下结合附图的详细说明,本发明的其它特性将更为明了并得到最好的理解。其中:
图1显示一台包含数据存储***的已有技术的计算机方框图。
图2显示根据本发明的一个实施例,一个存储器件中存储数据方法的流程图。
图3描述一个存储器件中用以定位数据的两维寻址方案设计之示例。
图4描述位于两维地址空间非重迭区域的两个数据块的示例。
图5描述根据本发明实施例之一,位于两维地址空间重迭区域的图4中两个数据块的示例。
图6显示根据本发明另一个以供选择的实施例,将一组数据块中两个数据块存入一个存储器件的方法流程图。
图7显示根据本发明之进一步实施例,将一个数据块序列存入一个存储器件的方法流程图。
图8显示根据本发明的附加实施例,将数据块序列的一个需要最小存储量的排列存入一个存储器件的方法流程图。
图9显示一台包含本发明一个实施例中的存储器管理单元的多处理器计算机方框图。
图10显示本发明的一个实施例所用及的一个存储器管理单元的方法流程图。
图11描述包含本发明一个实施例中所使用的指数值的一个数据块的示例。
具备技术上普通技能的人应认识到,本发明的方法可以用软件或硬件,或者其任意形式的结合加以实现,术语”指数”或”指数值”,以及”块”或“数据块”在本说明中可以互换使用。
图2显示根据本发明的一个实施例,将一组数据块中的两个数据块存入一个存储器件的方法流程图。首先,在判决框(30)中作出一个判定——在两个数据块之间是否存在一个公共数据元。如果是,则本方法继续执行框(32)。如果非,本方法继续执行框(34)。
在框(32)中,存储上述两个数据块以使得公共数据元被存储于该存储器件的一个单独区域中。在此情形下,因两个数据块之间的重迭,相对于分立地存储,需要较少存储量以存储上述两个数据块。返回来,较少的存储量可以减少数据块在存储器件和大容量存储器之间交换的需求。
在框(34)中,诸数据块被存储于该存储器件分立的非重迭区域。
图3描述一个存储器件中用以定位数据的两维编址寻址方案设计之示例。在一个实施例中,存储器件中的地址由具有两个索引——行地址和列地址——的阵列表示。因此,一个两维地址可表示为一个有序对(i,j),其中i表示行地址,j表示列地址。一个数据元可被存储于存储器件的每一个两维地址上。
轴(64)表示行地址值,轴(66)表示列地址值。边界(48)指示存储器件的存储空间。一个数据元可被存入存储器件之存储空间的任意位置。换句话说,存储于边界(48)以内的一个数据元的两维地址可由(i,j)给定,其中0≤i≤f,0≤j≤e。
数据块(40)包括一组数据元,其中之一如数据元(44)所示。数据块(40)由两维起始地址(50)标定。起始地址(50)给出数据块(40)中第一个数据元的位置。该第一数据元先于该块中的其它数据元被存取。起始地址(50)由有序对(a,b)给定。一个数据块中的所有其它数据元被定位于相对该数据块起始地址的诸地址上。例如,数据元(44)的行地址由行偏移(54)与起始地址(50)的行地址之和给定,数据元(44)的列地址由列偏移(56)与起始地址(50)的列地址之和给定。在此例中,行偏移(54)等于1个存储单元,列偏移(56)等于5个存储单元,因此所得数据元(44)的两维地址是(a+1,b+5)。
数据块(42)由有序对(c,d)所表示的起始地址(52)标定。最大行偏移(58)和最大列偏移(60)给定数据元(46)相对于起始地址(52)的两维地址。该最大行偏移和最大列偏移表示一个数据块中将被最后一个存取的数据元之地址。例如,最大行偏移(58)等于5个存储单元,最大列偏移(60)等于6个存储单元。因此所得数据元(46)的两维地址是(c+5,d+6)。
图4描述位于两维地址空间中非重迭区域的两个数据块的示例。数据块(100)包含十六个两位数字字,并由起始地址(104)标定。数据块(102)包含十个两位数字字,并由起始地址(106)标定。轴(90)指示两维地址空间的列地址,轴(92)指示两维地址空间的行地址。
图5描述根据本发明实施例之一,位于两维地址空间重迭区域的图4中两个数据块的示例。数据块(100)保留在由起始地址(104)所给定的位置。然而,数据块(102)被移送至新的起始地址(108)。数据块(102)的该新位置允许来自这两块中具有相同值的数据元或者公共数据元共用相同的两维地址。在图5中,该公共数据元为两位数字字。
通过重迭数据块以使得公共数据元被定位于公共两维地址,本发明减少用于存储一个或多个数据块所需的存储空间量。
图4和5出于例示的目的描述两位数据元。进一步地,图4和5均用两维编址寻址的形式描述。具备技术上普通技能的人将认识到,可以使用由任意多位所组成的数据元,并且该编址寻址方式可以在n-维意义上加以实施。
图6显示根据本发明之另一个以供选择的实施例,将一组数据块中两个数据块存入一个存储器件的方法流程图。在框(140)中,起始地址被分配给上述两个数据块以使得这两个数据块在两维地址空间中重迭;换句话说,这两个数据块中的第一个数据块的至少一个数据元与这两个数据块中的第二个数据块的至少一个数据元具有相同的两维地址。
其次,在判决框(142)中执行一个检验以确定具有相同地址的诸数据元是否相等。如果是,本方法继续执行框(144)。如果非,本方法继续执行框(146)。
在框(144)中,开辟一个重迭记录。该重迭记录可以是一个用于存储数据的软件变元或硬件装置。该重迭记录存储第二数据块的起始地址和公共数据元的数目。本方法产生一组重迭记录。
在框(146)中,第二数据块的起始地址被改变以允许这两个数据块中不相同的数据元共用相同的地址。
其次,在判决框(148)中,执行一个检验以确定是否已找到这两个数据块之间公共数据元的最大数目。这通过比较重迭记录以寻找具有最大数目的一个公共数据元来完成。公共数据元重迭记录的上述比较要求上述第一和第二数据块在此之前以任何可能的方式完成重迭。如果上述第一和第二数据块以任何可能的方式已完成重迭,则本方法继续执行框(150)。如果非,本方法返回框(142)。
在框(150)中,上述第一数据块被存储于存储器件中在框(140)中所分配的起始地址上。该第一数据块中的诸数据元被存储于存储器件中相对于所分配起始地址的诸两维地址上。
在框(152)中,上述第一数据块被存储于存储器件中由具有公共元最大数目的重迭记录所给定的起始地址上。第二数据块中的诸数据元被存储于存储器件中相对于由重迭记录所给定的起始地址的诸两维地址上。
图7显示根据本发明之进一步实施例,将一个数据块序列存入一个存储器件的方法流程图。诸数据块可以多种方式排序。例如,该序列可被排序成从拥有最少数据元的数据块开始到拥有最多数据元的数据块结束。或者,序列中数据块可作随机排序。在一个最佳实施例中,该序列以递减数据块大小排序;这即是,该序列开始于拥有最多数据元的数据块,结束于拥有最少数据元的数据块。
在框(160)中,起始地址被分配给该序列中上述第一数据块和第二数据块,以使得这两个数据块在地址空间内重迭;换句话说,第一数据块中的至少一个数据元与该相继数据块中的至少一个数据元具有相同的地址。
其次,在判决框(162)中执行一个检验以确定具有相同地址的数据元是否相等。如果是,本方法继续执行框(164)。如果非,本方法继续执行框(166)。
在框(164)中,建立一个重迭记录。该重迭记录可以是一个用于存储数据的软件变量或硬件装置。该重迭记录存储第二数据块的起始地址和公共数据元的数目。本方法产生一组重迭记录。
在框(166)中,第二数据块的起始地址被改变以允许第一和第二数据块的不同数据元共用同一地址。
其次,在判决框(168)中,执行一个检验以确定是否已找到上述两个数据块之间公共数据元的最大数目。这通过比较重迭记录以寻找具有最大数目的一个公共数据元来完成。重迭记录的比较,要求第一和第二数据块预先以任何可能的方式完成重迭。如果第一和第二数据块以任何可能的方式已完成重迭,则本方法继续执行框(170)。如果非,本方法返回框(162)。
在框(170)中,定义一个集合数据块。该集合数据块包含具有在框(160)中所分配的起始地址的第一数据块,以及具有由公共数据元最大数目所对应的重迭记录所给定起始地址的第二数据块。第一和相继数据块的数据元具有相对于它们各自数据块之起始地址的两维地址。
在判决框(172)中,执行一个检验以确定上述数据块序列中是否还存在另一个数据块。如果是,本方法继续执行框(174)。如果非,本方法继续执行框(176)。
在框(174)中,上述集合数据块替代第一数据块,序列中下一个数据块替代第二数据块。当退出框(174)时,本方法返回框(160)。
在框(176)中,上述包含序列中所有数据块的集合数据块被存入存储器件。
图8显示根据本发明的一个附加实施例,存储数据块序列的一个需要最小存储量的排列的方法流程图。在此实施例中,比较数据块序列的所有可能的排序,并且需要最少存储空间的排序或排列被存入存储器件。在框(190)中,起始地址被分配给序列中的第一数据块和一个相继数据块,以使得这两个数据块在地址空间内重迭;换句话说,第一数据块中至少一个数据元与相继数据块中至少一个数据元具有相同的地址。
其次,在判决框(192)中执行一个检验以确定具有相同地址的数据元是否相等。如果是,本方法继续执行框(194)。如果非,本方法继续执行框(196)。
在框(194)中,建立一个重迭记录。该重迭记录可以是一个用于存储数据的软件变量或硬件装置。该重迭记录存储第二数据块的起始地址和公共数据元的数目。本方法产生一组重迭记录。
在框(196)中,第二数据块的起始地址被改变以允许第一和第二数据块的不同数据元共用同一地址。
其次,在判决框(198)中,执行一个检验以确定是否已找到上述两个数据块之间公共数据元的最大数目。这通过比较重迭记录以寻找具有最大数目的一个公共数据元来完成。重迭记录的比较要求上述第一和第二数据块预先以任何可能的方式完成重迭。如果上述第一和第二数据块以任何可能的方式已完成重迭,则本方法继续执行框(200)。如果非,本方法返回框(192)。
在框(200)中,定义一个集合数据块。该集合数据块包含具有在框(190)中所分配的起始地址的第一数据块,以及具有由公共数据元最大数目所对应的重迭记录所给定的起始地址的第二数据块。第一和第二数据块的数据元具有相对于它们各自数据块之起始地址的两维地址。
在判决框(202)中,执行一个检验以确定上述数据块序列中是否还存在另一个数据块。如果是,本方法继续执行框(204)。如果非,本方法继续执行框(206)。
在框(204)中,上述集合数据块替代第一数据块,序列中下一个数据块替代第二数据块。当退出框(204)时,本方法返回框(190)。
在框(206)中,存储一个包含序列中所有数据块的集合数据块所需的存储量被存储。本方法记录关于上述序列每个排列的集合数据块所需的存储量或大小。
在判决框(208)中,执行一个检验以确定是否存在数据块序列的其它排列。如果是,本方法返回框(190),否则本方法继续执行框(210)。
在框(210)中,进行一个诸集合数据块大小之间的比较。随后,需要最少存储空间的集合数据块被存入存储器件。
图9显示包含本发明一个实施例的存储器管理单元的一台多处理器计算机的方框图。计算机(216)包含存储器件(222),存储器管理单元(212),加法电路(217),以及一组计算元,其中的三个被显示为计算元(211),(213),和(215)。
计算机(216)用以计算如下形式的多项式展开:
y=∑x1 g1ix2 g2i…xn gni    公式1
这里y表示计算机(216)的输出,亦可称之为多项式展开的函数;这里x1,x2,…,xn表示计算机(216)的数据输入,亦可称之为多项式展开的自变量;而这里的g1i,g2i,...,gni表示展开式中第i项的指数,它们施加于数据输入;其中的i,m,和n为整数。
计算机(216)以下述方式计算一个多项式展开。利用总线(219)将一组数据输入x1,x2,...,xn馈入计算机(216),然后分配给一组计算元,其中的计算元(211),(213),和(215)被图示。应被理解的是,其余的计算元(未示出)可被提供用以执行以上公式(1)所表示多项式展开中的每一项。每一个计算元计算多项式展开中的一项,并确定接受哪一个数据输入。计算元读取被存于存储器件(222)内的指数值,计算一项后,一个计算元将该项传递至加法电路(217),它将计算元所计算的诸项相加并将和值置于计算机(216)的输出端(233)。
例如,图9描绘多项式y=x1 g11x2 g21+x1 g12x2 g22+…xn gnm的计算。该例中,计算元(211)通过总线(221)从存储器件(222)读取指数g11和g21,同时计算元(213)利用总线(223)从存储器件(222)读取指数g12和g22,以及计算元(215)利用总线(225)从存储器件(222)读取指数gnm。计算元(211)计算x1 g11x2 g21项,然后通过总线(227)将其送至加法电路(217);计算元(213)计算x1 g12x2 g22项,然后通过总线(229)将其送至加法电路(217);以及计算元(215)计算xn gnm项,然后通过总线(231)将其送至加法电路(217)。当接到来自诸计算元的各项时,加法电路(217)将诸项相加并将所得的多项式展开放置于计算机输出端(233)。
对具备普通技能的人将显而易见的是,计算机(216)能够计算由公式1给出形式的多项式,多项式中的一些项可不同于上例,多项式诸项可由不同于上例中多项式各项的形式的数据输入组成。
存储器件(222)存储被一组计算元使用的诸指数值。存储器件(222)可存储指数值的一个或多个块,其中每一块对应于一个不同的多项式展开。
存储器管理单元(212)包含存储装置(224)和确定装置(214)。存储装置(224)通过总线(218)有效地连接至存储器件(222),而确定装置(214)通过总线(220)有效地连接至存储装置(224)。
根据本发明,存储器管理单元(212)将一组指数值的块存入存储器件中,以一种减少存储这组块所需的存储空间之方式。这些块中的每一块包括用于计算一个对应的多项式展开的诸指数值。为减少所需的存储空间,确定装置(214)确定是否两个或多个块有相同的指数。如果是,确定装置(214)通过总线(220)通知存储装置(224)。存储装置(224)通过总线(218)返回来发信号给存储器件(222)存储该块,以使得相同的指数或公共数据元被存储于存储器件(222)的单独位置。
图10显示本发明的一个实施例所使用的一个存储器管理方法的流程图。在框(240)中,一个多项式展开的诸指数值采用两维寻址方案被存入该存储器件。每一个展开式的指数值被定位在对应该多项式展开的数据块中。因此,每一个多项式展开拥有一个起始地址,并且多项式展开的指数被置于相对于它们各自展开式起始地址的地址上。如果存在公共指数值,即具有相同值并位于两个或多个块中的诸指数,则这些公共指数值被存储于存储器件中的单独两维地址上。
其次,如框(242)所示,计算元读取存储于存储器件中的多个指数值。这是通过设定一个指向当前被计算的多项式展开之起始地址的指针来完成的。将位于该两维地址上的指数值从存储器件中取回,之后该指针增值以指向该多项式展开的另一个指数。重复取回指数值然后指针增值的步骤,直至该多项式的最后一个指数被取回。
图11描述一个包含指数值的数据块之示例。根据一个实施例,数据块(250)包含一组数据元,其中每个数据元表示作为一个两位数字字的指数值。第一个数据元(254)表示指数g1,1,最后一个数据元表示指数g128,64。数据块(250)的诸指数值被用以计算由公式1给出之形式的多项式展开。
每一个指数被定位于存储器件中的一个两维地址(i,j),其中i表示行地址,j表示列地址。轴(260)表示行地址的诸个值,轴(262)表示列地址的诸个值。
数据块(250)可被存入图9中的存储器件(222)。在此情形下,诸指数值可被存入存储器件(222),以使得每一个列地址可以指向一些指数值,它们被图9中计算机(216)的一组计算元中特定的一个计算元读取,且每一个行地址可以指向一些指数值,它们被应用于一组数据输入中特定的一个。例如,数据块(250)可被用于计算机(216)中,旨在提供用于64个计算元和128个数据输入的诸指数值。
尽管图11显示一个拥有128个行地址,64个列地址,以及128×64个指数值的数据块,但是,具备普通技能的人将理解,一个数据块可拥有任意数目的行地址和列地址,以及任意数目的指数值。同样,一个技术上熟练的人将认识到,当数据块(250)被存储于存储器件(222)中时,行地址和列地址可以交换,以分别指向被一个特定计算元读取的诸指数和对应于一个特定数据输入的诸指数。
于是,在这里已经描述了用以将数据存入一个存储器件的一种方法之概念,以及包含一个最佳实施例的若干实施例,这种方法减少数据所需的存储空间。
对于技术上娴熟的人们,将十分明了的是,所揭示的发明可以通过众多的途径加以改变,并且可以设想多种不同于以上所特别设计和描述之最佳形式的实施例。
相应地,通过所附权利要求,意在涵盖落入本发明之真正精神与范围之内的,对本发明的所有变更形式。

Claims (10)

1.  一种用以将一组数据块存入一个存储器件的方法,上述一组数据块中每一个数据块拥有一组数据元,本方法包括下列步骤:
(a)确定在该组数据块中的两个数据块之间是否存在一个公共数据元;和
(b)将该组数据块存入存储器件,以便如果该组数据块中的两个数据块之间存在公共数据元,则该组数据块中这两个数据块之间的公共数据元被存入存储器件内的一个单独区域。
2.权利要求1所述的方法,特征在于每个数据元是一个长度为n位的数字字,特征在于n是一个整数。
3.权利要求2所述的方法,特征在于n为2。
4.权利要求1所述的方法,特征在于该组数据元中的每个数据元为通过一个n-维地址可存取的,特征在于n是一个整数。
5.权利要求4所述的方法,特征在于n为2。
6.权利要求1所述的方法,特征在于该组数据元中的每个数据元相当于一个多项式展开中的一个指数。
7.权利要求6所述的方法,特征在于上述多项式展开具有以下形式:
y=∑x1 g1ix2 g2i…xn gni
其中y表示一个函数;
其中i,m和n为整数;
其中x1,x2,...,xn表示自变量;以及
其中g1i,...,gni表示上述展开式中第i项的指数,它们被施加于上述自变量。
8.权利要求1所述的方法,特征在于对于一组数据块对,步骤(a)和(b)被重复。
9.一种用以将一组数据块存入一个存储器件的方法,该组数据块中的每个数据块拥有一个起始地址和一组可寻址的数据元,并且该组数据元中的每个数据元拥有一个相对于上述起始地址的地址,该组数据块拥有第一和第二数据块,本方法包括以下步骤:
(a)为上述第一和第二数据块指定起始地址,以使得第二数据块的那组数据元的至少一个数据元之地址与第一数据块的那组数据元的至少一个数据元之地址相同;
(b)确定第一和第二数据块的一组数据元中,拥有相同地址的至少一个数据元是否相等;
(i)如果是,建立一个重迭记录,它包含第二数据块的起始地址和第一与第二数据块之间公共数据元的数目;
(ii)如果非,继续执行步骤(c)
(c)改变第二数据块的起始地址;
(d)重复步骤(b)-(c),直至找到公共数据元的最大数目;
(e)将第一数据块存储于存储器件内步骤(a)中所分配的起始地址上;以及
(f)将第二数据块存储于存储器件内由公共元最大数目对应的重迭记录所给定的起始地址上。
10.在一台计算机内,包含一个存储器件,一个用以将一组数据块存入存储器件的存储器管理单元,上述诸数据块中的每一个拥有一组数据元,上述存储器管理单元包括:
确定装置,用以确定一组数据块中的两个数据块之间是否存在一个公共数据元;以及
存储装置,有效地连接至上述存储器件,并响应于上述确定装置,用于将上述一组数据块存入存储器件,以便如果该组数据块中的两个数据块之间存在公共数据元,则该组数据块中的两个数据块之间的公共数据元被存入存储器件的一个单独区域。
CN95194545A 1994-08-10 1995-06-30 存储器件中存储数据的方法和*** Pending CN1164900A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/288,673 1994-08-10
US08/288,673 US5548752A (en) 1994-08-10 1994-08-10 Method and system for storing data in a memory device

Publications (1)

Publication Number Publication Date
CN1164900A true CN1164900A (zh) 1997-11-12

Family

ID=23108140

Family Applications (1)

Application Number Title Priority Date Filing Date
CN95194545A Pending CN1164900A (zh) 1994-08-10 1995-06-30 存储器件中存储数据的方法和***

Country Status (6)

Country Link
US (1) US5548752A (zh)
CN (1) CN1164900A (zh)
AU (1) AU2950095A (zh)
CA (1) CA2197078A1 (zh)
GB (1) GB2305755A (zh)
WO (1) WO1996005551A1 (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5640336A (en) * 1996-01-02 1997-06-17 Motorola Computational array and method for calculating multiple terms of a polynomial in a single computing element
US5828671A (en) * 1996-04-10 1998-10-27 Motorola, Inc. Method and apparatus for deinterleaving an interleaved data stream
US5893089A (en) * 1996-11-15 1999-04-06 Lextron Systems, Inc. Memory with integrated search engine
US5978903A (en) * 1997-08-19 1999-11-02 Advanced Micro Devices, Inc. Apparatus and method for automatically accessing a dynamic RAM for system management interrupt handling
US20040193620A1 (en) * 2003-03-31 2004-09-30 International Business Machines Corporation Association caching
JP5957347B2 (ja) * 2012-09-20 2016-07-27 株式会社東芝 Icカード、および携帯可能電子装置

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4037093A (en) * 1975-12-29 1977-07-19 Honeywell Information Systems, Inc. Matrix multiplier in GF(2m)
JPH0616272B2 (ja) * 1984-06-27 1994-03-02 株式会社日立製作所 メモリアクセス制御方式
US4645461A (en) * 1986-01-30 1987-02-24 Mortensen Educational Products, Inc. Method for structurally differentiating polynomial functions
US5122984A (en) * 1987-01-07 1992-06-16 Bernard Strehler Parallel associative memory system
US5226147A (en) * 1987-11-06 1993-07-06 Mitsubishi Denki Kabushiki Kaisha Semiconductor memory device for simple cache system
JPH01302444A (ja) * 1988-05-31 1989-12-06 Toshiba Corp 論理アドレスキャッシュ制御方式
US4939641A (en) * 1988-06-30 1990-07-03 Wang Laboratories, Inc. Multi-processor system with cache memories
DE69021144T2 (de) * 1989-06-16 1995-11-30 Sony Corp Verfahren und Gerät zur Wiedergabe eines digitalen Videosignals.
US5053991A (en) * 1989-10-06 1991-10-01 Sanders Associates, Inc. Content-addressable memory with soft-match capability
JPH03227179A (ja) * 1990-01-31 1991-10-08 Sony Corp 画像データ処理装置
US5068816A (en) * 1990-02-16 1991-11-26 Noetzel Andrew S Interplating memory function evaluation
US5301155A (en) * 1990-03-20 1994-04-05 Mitsubishi Denki Kabushiki Kaisha Multiblock semiconduction storage device including simultaneous operation of a plurality of block defect determination circuits
US5249284A (en) * 1990-06-04 1993-09-28 Ncr Corporation Method and system for maintaining data coherency between main and cache memories
JPH0589687A (ja) * 1991-09-27 1993-04-09 Nec Corp 不揮発性半導体記憶装置
JPH05225076A (ja) * 1992-02-13 1993-09-03 Nec Corp 共通情報管理方法及びシステム

Also Published As

Publication number Publication date
AU2950095A (en) 1996-03-07
WO1996005551A1 (en) 1996-02-22
US5548752A (en) 1996-08-20
GB2305755A (en) 1997-04-16
CA2197078A1 (en) 1996-02-22
GB9702709D0 (en) 1997-04-02

Similar Documents

Publication Publication Date Title
Blelloch et al. Sorting with asymmetric read and write costs
Crauser et al. A theoretical and experimental study on the construction of suffix arrays in external memory
CN88101302A (zh) 分布处理***中处理数据用的方法与装置
US11604834B2 (en) Technologies for performing stochastic similarity searches in an online clustering space
US7831624B2 (en) Skip list with address related table structure
CN107239230A (zh) 用于高效存储器内嵌去重应用的最优化的跳房子多散列表
US20140136510A1 (en) Hybrid table implementation by using buffer pool as permanent in-memory storage for memory-resident data
US10229052B2 (en) Reverse map logging in physical media
CN107273042A (zh) 重复删除dram***算法架构
CN1831824A (zh) 缓存数据库数据组织方法
CN1848118A (zh) 管理文件***的设备和方法
JPS62113234A (ja) レコ−ドセツト分類方法
CN100338607C (zh) 一种组织和访问分布式文件***目录的方法
US11327881B2 (en) Technologies for column-based data layouts for clustered data systems
CN1164900A (zh) 存储器件中存储数据的方法和***
US7502778B2 (en) Apparatus, system, and method for efficient adaptive parallel data clustering for loading data into a table
US20020052868A1 (en) SIMD system and method
Lee A word-parallel, bit-serial signature processor for superimposed coding
Park et al. FAST: Flash-aware external sorting for mobile database systems
CN1809805A (zh) 用于比乘法器硬件的位数宽的大整数操作数的有效的乘法序列
CN1158668A (zh) 存储器件中存储数据的方法和***
CN113157692B (zh) 一种关系型内存数据库***
Roh et al. Advanced block nested loop join for extending SSD lifetime
Freire et al. Towards reducing communications in sparse matrix kernels
US20090063589A1 (en) Apparatus and method to decouple large object data processing from main-line data processing in a shared-nothing architecture

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C01 Deemed withdrawal of patent application (patent law 1993)
WD01 Invention patent application deemed withdrawn after publication