CN1312589C - 存储信息的方法和系统 - Google Patents
存储信息的方法和系统 Download PDFInfo
- Publication number
- CN1312589C CN1312589C CNB038139782A CN03813978A CN1312589C CN 1312589 C CN1312589 C CN 1312589C CN B038139782 A CNB038139782 A CN B038139782A CN 03813978 A CN03813978 A CN 03813978A CN 1312589 C CN1312589 C CN 1312589C
- Authority
- CN
- China
- Prior art keywords
- memory
- information
- storeies
- stored parameter
- access time
- 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.)
- Expired - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/06—Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/20—Employing a main memory using a specific memory technology
- G06F2212/205—Hybrid memory, e.g. using both volatile and non-volatile memory
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Abstract
根据本发明的实施例,简要地提供了存储信息的方法,其中所述方法包括产生存储参数以存储信息,其中所述存储参数表示由软件过程来使用信息,所述方法还包括将信息传输给至少两个存储器中的一个,所述传输至少部分基于所述存储参数和所述两个存储器的特性。
Description
背景技术
计算系统可以包括多个或各种不同的存储器。确定在特定系统内存储信息的适当方法和存储装置是有问题的。在设计特定系统时,可能要考虑各种因素,如存储装置的成本、特定存储装置对系统性能的影响等等。
因此,一直存在着这样的需求,即需要存储信息的可替换方法。
附图说明
在说明书的结尾部分具体指出并清楚地要求了本发明的主题。但是,通过与附图一起参阅下面的详细描述,可以最佳地理解所要求保护的主题,所述主题涉及结构和操作方法,及其目的、特征和优点。其中:
图1为根据所要求保护的主题的实施方案的计算系统的方框图;以及
图2为根据所要求保护的主题的实施方案的存储信息方法的流程图。
应理解的是,为了说明的简单和清楚,附图中说明的元件不必要画成与其实际尺寸一样。例如,为了清楚起见,某些元件的尺寸相对于其他元件被放大了。此外,在认为合适的地方,在几幅附图中重复使用附图标记,以表明相应或相似的元件。
具体实施方式
在接下来的详细说明中,为了提供对所要求保护的主题的完整理解,给出了多个特定的细节。但是,应理解的是,对于本领域的技术人员,所要求保护的主题可以不用这些特定的细节来实现。在其他方面,没有详细描述公知的方法、过程、元件和电路,从而不会模糊了所要求保护的主题。
所要求保护的主题的实施方案可以包括用于执行本文的操作的装置。该装置可以针对所需要的目的来特殊地构成,或者该装置可以包括通用计算设备,所述通用计算设备由存储在设备中的程序选择性地激活或重新配置。这样的程序可存储在存储介质上,比如,但不局限于,任何类型的盘,包括软盘、光盘、CD-ROMs、磁光盘、机电盘,只读存储器(ROMs),随机存取存储器(RAMs),电可编程只读存储器(EPROMs),电可擦除和可编程只读存储器(EEPROMs),闪存,磁或光卡,或者其他任何类型的适用于存储电子指令和数据的媒体。
所要求保护的主题的实施方案没有参考任何特定的程序设计语言来进行描述。应理解的是,各种程序设计语言都可以用来实现本文所描述的所要求保护的主题的教导。例如,可以用高级程序、面向目标的、汇编或机器程序设计语言来实现所要求保护的主题。
在接下来的描述和权利要求中,可以使用术语“耦合”和“连接”以及它们的派生词。应该理解的是,这些术语不是要作为彼此的同义词。更确切地说,在特定的实施方案中,“连接”可以用来表示两个或更多元件是互相直接物理或电接触。“耦合”可表示两个或更多元件是直接物理或电接触。但是,“耦合”也可表示两个或多个元件彼此间不直接接触,但彼此间仍相互合作或相互作用。
参见图1,图1说明了计算系统100的实施方案。计算系统100可以用在各种如下的应用中,例如,个人数字助理(PDA)、双向寻呼机、蜂窝电话、便携式计算机、台式计算机、工作站或服务器。但应该指出,所要求保护的主题的范围和应用决不局限于这些
实施例。
在这个实施方案中,计算系统100可以包括经由总线160相互耦合的处理器110、信息控制器120、存储器130、存储器140和存储器150。总线160可以是数据通路,该数据通路包括,例如,将数据从计算系统100的一个部分传输给另一其他部分的数据线路的集合。
尽管所要求保护的主题的范围并不局限在这方面,但处理器110可以包括,例如,一个或多个微处理器、数字信号处理器、微控制器或类似设备。处理器110可以执行这样的软件过程(software process),例如,软件程序或操作系统,其中该软件过程可以使用这样的数字信息,例如,数据和/或指令。
在某些实施方案中,信息控制器120与处理器110一起可以控制存储器130、140和150。例如,信息控制器120可以控制计算系统100内的信息传递,例如在处理器110、信息控制器120和存储器130、140和150之间的信息传递。信息控制器120可以与处理器110集成在一起(“单片的”(“on-chip”))。在可替换的实施方案中,信息控制器120可以是分立元件或专用芯片,其中信息控制器120在处理器110的外面(“在芯片以外”(“off-chip”))。在其他的实施方案中,信息控制器120的功能性部分可以在处理器110中以例如软件应用程序、模块或例程的方式来实现。信息控制器120也可以称作存储控制器或数据控制器。
存储器130、140和150可以称作存储设备,并且可适用于存储这样的信息,例如,可由处理器110执行的操作系统或软件程序所使用的指令或数据。存储器130、140和150可以具有如此不同的物理特性、属性或性质,例如,不同的存取时间、功率消耗、读周期限制和/或写周期限制。
存取时间可指将信息存储到存储器或从存储器读取信息所花费的时间量。作为一个实施例,存储器130相对于存储器140和150可以是相对更快的存储器,即存储器130的存取时间可以比存储器140和150的存取时间短,但所要求保护的主题的范围并不局限在这个方面。在一个实施方案中,存储器130的存取时间可以小于一微秒,例如,近似为10纳秒。与存储器130相比,存储器140可具有相对较慢的存取时间,至少为一微秒,例如近似为10微秒。与存储器130和140相比,存储器150可具有相对更慢的存取时间,至少为一毫秒,例如近似为10毫秒。
在可替代的实施方案中,尽管所要求保护的主题的范围并不局限在这个方面,但存储器130的存取时间可小于十纳秒,例如近似为一纳秒。与存储器130相比,存储器140可具有相对较慢的存取时间,至少为十纳秒,例如近似为50纳秒。与存储器130和140相比,存储器150可具有相对更慢的存取时间,至少为100纳秒,例如近似为200纳秒。
存储器的功率消耗或功率耗散可以根据在存储器以预定的电压电势工作的过程中由存储器消耗的电流来定义。在一个实施例中,存储器130、140和150可以耦合到电源(图中未示出),该电源提供近似为3伏的电源电压电势。在这个实施例中,存储器130在读或写操作过程中可以使用大约5毫安(mA)的电流。在可替代的实施方案中,存储器140和150的功率消耗可小于存储器130的功率消耗。例如,尽管所要求保护的主题的范围并不局限在这个方面,但存储器140和150可在读或写操作过程中分别使用大约一毫安(mA)和大约三毫安(mA)的电流。而且,存储器的功率消耗根据它的工作电压电势可以改变。在某些实施方案中,存储器130、140和150可以工作在不同的工作电压电势下。
写周期限制可以是存储器的持久性(endurance)的表示,并且可以表示可以对存储器执行的写操作的阈值数目(threshold number)。在某些实施方案中,如果执行了超过预定数目的写操作,则可能降低存储器存储信息的能力。例如,存储器130的写周期限制可以近似为106。在这个实施例中,如果将信息写到存储器130中的次数超过大约106次,则可能降低存储器130存储信息的能力,例如,可能出现存储错误。在可替代的实施方案中,存储器140和150的写周期限制可以分别近似为108和1012,但所要求保护的主题的范围并不局限在这个方面。
存储器130、140和150可具有读周期限制,该读周期限制表示可从存储器执行的读操作的阈值数目。例如,存储器130、140和150的读周期限制可以分别近似为1012、1018和1020,但所要求保护的主题的范围并不局限在这个方面。
在某些实施方案中,存储器130、140和150可具有相同或基本上相同的功率消耗性质和存取时间,但可具有不同的读/写周期特性,但所要求保护的主题的范围并不局限在这个方面。在可替代的实施放案中,存储器130、140和150可具有相同或基本上相同的功率消耗性质和读/写周期特性,但可具有不同的存取时间。
尽管所要求保护的主题的范围并不局限在这个方面,但与存储器140和150相比,存储器130可以是相对更小的存储器,例如,存储器130的存储容量可小于存储器140和150的存储容量。例如,存储器130可具有小于32兆位,例如近似为16兆位的存储容量。与存储器130相比,存储器140可具有相对更大的存储容量,至少为32兆位,例如近似为64兆位。与存储器130和140相比,存储器150可具有相对更大的存储容量,至少为100兆字节,例如近似为500兆字节。在可替代的实施方案中,作为另一个实施例,存储器130可具有小于256兆位,例如近似为64兆位的存储容量。与存储器130相比,存储器140可具有相对更大的存储容量,至少为100兆字节,例如近似为一吉字节。与存储器130和140相比,存储器150可具有相对更大的存储容量,至少为一吉字节,例如近似为100吉字节或近似为一太字节(terabyte)。
在某些实施方案中,存储器130可以作为用于存储器140和/或用于存储器150的高速缓存存储器或磁盘高速缓存存储器进行工作。例如,如在上面所说明的某些实施方案中,与存储器140和150相比,存储器130可以是相对更小且更快类型的存储器。在计算系统100的工作过程中,存储器130可以高速缓存来自存储器140和150的频繁存取信息,但所要求保护的主题的范围并不局限于此。出于对频繁存取信息的请求来自存储器140和150,而所述信息在存储器130中可以获得,从而避免在存储器140和150中相对更长时间的搜索和取数据。因此,通过在存储器130中高速缓存信息,可以改善整体系统的性能。
在某些实施方案中,存储器130、140和150可以是易失性存储器,如例如,静态随机存取存储器(SRAM)或动态随机存取存储器(DRAM),但所要求保护的主题的范围并不局限在这个方面。在可替代供选择的实施方案中,存储器130、140和150可以是非易失性存储器,例如,电可编程只读存储器(EPROM)、电可擦和可编程只读存储器(EEPROM)、闪存(NAND或NOR型,每个单元包括多个位数)、铁电随机存取存储器(FRAM)、聚合物铁电随机存取存储器(PFRAM)、磁随机存取存储器(MRAM)、奥弗辛斯基电效应统一存储器(Ovonics Unified Memory(OUM)),盘存储器,例如,机电硬盘、光盘、磁盘,或者其他任意一种能够存储指令和/或数据的设备。其他类型的非易失性存储器也可以在所要求保护的主题的范围内,包括具有备用电池的易失性存储器,因为当主电源断开时,电池可以防止存储器丢失其内容。
参见图2,图2描述了根据所要求保护的主题的实施方案的存储信息方法200。可以参考计算系统100(图1)说明该方法。在某些实施方案中,处理器110和/或信息控制器120可以包括电路、软件或电路和软件的组合,以实现图2中所描述的方法。
该实施方案可以从接收存储器130、140和150的属性(框210)开始。这些属性可以称作为特性或性质,并可以是存储器的如下物理属性,例如,存取时间、功率消耗和/或读/写周期信息。在一个实施方案中,这些属性可以存储在存储器130、140或150中,并可以根据信息控制器120的请求来提供这些属性。在这个实施方案中,每个存储器都可以包括某存储器所专有的属性。可供选择地,这些属性可以存储在属性列表中,该属性列表可以中心地定位于所述多个存储器中的一个的或计算系统100的另一个部分中(例如,在信息控制器120内)。
可以产生用于在计算系统100中存储信息的层级(框220)。例如,可以指定存储器130为用于存储信息的主存储器。同样地,可以指定存储器140和150为用于存储信息的次存储器,使得如果主存储器不可利用或没有被选择来存储信息时,信息可以存储在次存储器中。可以通过软件过程或操作系统来做出这种指定,并且这种指定是可以基于如下不同的因素,例如根据物理属性,如存取时间或功率消耗。
图2中所说明的实施方案可进一步包括产生存储参数用以存储信息(框230)。这个存储参数可以通过系统设计者或软件程序设计员来产生,或者可以通过一软件过程在执行所述软件过程中产生。该存储参数可以被传达到信息控制器120,并且可以表示在存储信息过程中有用的、与存储相关的信息特性。例如,存储参数可以表示信息是指令还是数据。换句话说,存储参数可以表示该信息是代码还是非代码数据。在另一个实施方案中,存储参数可以表示信息是否相对较频繁地被写入存储器或从存储器读出。例如,存储参数可以表示通过例如软件过程将所述信息传输给存储器或传输来自存储器的所述信息的速率(所述速率即每单位时间写或读的数量)。
在可替代的实施方案中,存储参数可以指定信息为性能相关或性能关键的信息。例如,存储参数可以表示信息的处理对系统性能的改变大于预定量。换句话说,存储参数可以表示处理所指定的性能相关信息对系统性能的影响超过了预定量。信息处理可以指通过软件过程使用信息和/或在存储器中存储信息。在一个实施方案中,计算系统的性能可以通过执行预定的软件程序或一组预定的软件程序来测量,以通过例如计算在预定软件程序或程序组的执行过程中所执行的操作或指令来确定计算系统的处理效率。
可以影响系统性能的一个因素是信息的处理,如执行指令或将数据和/或指令写到存储器和从存储器读取。系统性能可以被传达到信息控制器120。在这个实施例中,如果使用信息的有效过程正在使系统工作在预定性能水平或低于预定性能水平,则信息控制器120可以改变信息的存储。信息控制器120可以通过将信息的存储从一个存储器转移到另一个存储器来改变信息的存储。
在可替代供选择的实施方案中,存储参数可以表示通过软件过程使用信息,该软件过程例如是通过处理器110来执行。例如,存储参数可以表示信息是通过软件过程执行的指令,或者可以表示信息是通过软件过程使用的非指令数据。作为另一个实施例,存储参数可以表示信息通过软件过程被传输给存储器至少预定的次数,或传输来自存储器的信息至少预定的次数,或者存储参数可以表示信息通过软件过程被写到存储器或从存储器读出的频率或速率。
图2中所说明的实施方案可以进一步包括至少部分根据存储器130、140和150的属性和存储参数来确定可以选择存储器130、140和150中的哪个存储器来存储信息(框240)。可以通过信息控制器120来做出该确定。
至少部分根据存储器130、140和150的属性和存储参数,存储信息可以被传输给存储器130、140和150中的一个(框250)。在一个实施方案中,信息控制器120可以确定存储器130的存取时间比存储器140和150的存取时间短。在这个实施方案中,如果存储参数表示信息是指令,且存储器130的存取时间比存储器140和150的存取时间短,则信息控制器120可将信息传输给存储器130。如可以理解的那样,在某些计算系统中,将软件指令存储在具有相对较快存取时间的存储器中可以是有利的。可供选择地,在某些计算系统中,将非性能关键数据存储在具有相对较慢存取时间的存储器中可以是有利的。在这些实施方案中,如果存储参数表示信息是数据,且存储器130的存取时间比存储器140和150的存取时间长,则信息控制器120可将信息传输给存储器130。在这些实施方案中,信息控制器120可请求存储器130、140和150的存取时间信息,并可以接收存储信息和对应的存储参数。信息控制器120可以检查存取时间信息和存储参数,以确定哪个存储器最适合于存储信息。
在某些实施方案中,如果存储参数表示存储信息传输给存储器的速率,且该速率为预定阈值水平或超过预定阈值水平,那么如果存储器130的存取时间比存储器140和150的存取时间短,则信息控制器120可以将信息传输给存储器130。如可以理解的那样,在某些计算系统中,将频繁写入的信息存储到具有相对较快存取时间的存储器中可以是有利的。
在其他的实施方案中,如果存储参数表示存储信息传输给存储器的速率,并且表示该速率为预定水平或超过预定水平,那么如果存储器130的写周期限制高于存储器140和150的写周期限制,则信息控制器120可将信息传输给存储器130。如可以理解的那样,在某些计算系统中,将频繁写入的信息存储到具有相对较高写周期限制的存储器中可以是有利的。
在替代的实施方案中,如果存储参数表示从存储器存取或读出存储信息的速率,并且表示该速率为预定水平或超过预定水平,那么如果存储器130的读周期限制高于存储器140和150的读周期限制,则信息控制器120可将信息传输给存储器130。如可以理解的那样,在某些计算系统中,将频繁读出的信息存储到具有相对较高读周期限制的存储器中可以是有利的。
在某些实施方案中,如果存储参数表示存储信息写到存储器或从存储器读出的次数,并且表示该次数等于或大于预定数目,那么如果存储器130在读和写操作过程中消耗的功率小于存储器140和150,则信息控制器120可将信息传输给存储器130。如可以理解的那样,在某些计算系统中,将频繁读出和写入的信息存储到具有相对较低功率消耗性质的存储器中可以是有利的。在从电池接收其工作电压电势的计算系统中,减小计算系统工作过程中的功率消耗可以延长电池寿命。
在替代的实施方案中,可以用如下其他的因素,例如,用于存储信息的存储器的层级来确定用哪个存储器来存储信息,但所要求保护的主题的范围并不局限在这个方面。例如,计算系统100中用于存储信息的层级可以传达到信息控制器120。在这个实施例中,除了考虑与存储信息有关联的存储参数和存储器属性,信息控制器120还可以检查层级信息,用以确定用哪个存储器来存储所述存储信息。
尽管本文中已经说明并描述了本发明的某些特征,但现在对于本领域的技术人员可以设想许多变形、置换、改变和等效替换。因此,应当理解的是,所附的权利要求书意在覆盖所有落入本发明实际精神内的这些变形和改变。
Claims (34)
1.一种方法,包括:
产生存储参数以存储信息,其中所述存储参数表示所述信息是指令还是数据并且对应于用于从至少两个具有不同属性的存储设备中选择存储设备以存储所述信息的条件;以及
将所述信息传输给至少两个存储设备中的一个,所述传输至少部分基于所述存储参数和所述两个存储设备的属性。
2.如权利要求1的方法,其中所述属性是存取时间,并且该方法进一步包括,如果所述至少两个存储器中的第一存储器的存取时间比所述至少两个存储器中的第二存储器的存取时间短,并且如果所述存储参数表示该信息是指令,则将所述信息传输给所述至少两个存储器中的第一存储器。
3.如权利要求1的方法,其中所述属性是存取时间,并且所述方法进一步包括,如果所述至少两个存储器中的第一存储器的存取时间比所述至少两个存储器中的第二存储器的存取时间长,并且如果所述存储参数表示所述信息是数据,则将所述信息传输给所述至少两个存储器中的第一存储器。
4.如权利要求1的方法,进一步包括请求所述两个存储设备中的第一存储器的物理属性,以及请求所述两个存储设备中的第二存储器的物理属性。
5.如权利要求4的方法,其中所述请求第一存储器的物理属性的步骤包括请求所述第一存储器的功率消耗信息,并且请求第二存储器的物理属性的步骤包括请求所述第二存储器的功率消耗信息。
6.如权利要求4的方法,其中所述请求第一存储器的物理属性的步骤包括请求所述第一存储器的读周期限制信息,并且所述请求第二存储器的物理属性的步骤包括请求所述第二存储器的读周期限制信息。
7.一种方法,包括:
产生参数以存储信息,其中所述参数表示将信息传输给存储器的速率并且对应于用于从到少两个具有不同属性的存储设备中选择存储设备以存储所述信息的条件;以及
至少部分根据存储参数和至少两个存储器的特性将所述信息传输给至少两个存储器中的一个。
8.如权利要求7的方法,其中所述特性是存取时间,并且所述方法进一步包括,如果所述至少两个存储器中的第一存储器的存取时间比所述至少两个存储器中的第二存储器的存取时间短,并且如果所述存储参数表示所述速率为预定水平或超过预定水平,则将所述信息传输给所述至少两个存储器中的第一存储器。
9.如权利要求7的方法,其中所述属性是写周期限制信息,并且所述方法进一步包括,如果所述至少两个存储器中的第一存储器的写周期限制高于所述至少两个存储器中的第二存储器的写周期限制,并且如果所述存储参数表示所述速率为预定水平或超过预定水平,则将所述信息传输给所述至少两个存储器中的第一存储器。
10.如权利要求7的方法,其中所述属性是功率消耗信息,并且所述方法进一步包括,如果所述至少两个存储器中的第一存储器在写操作过程中消耗的功率小于所述至少两个存储器中的第二存储器,并且如果所述存储参数表示所述速率为预定水平或超过预定水平,则将所述信息传输给所述至少两个存储器中的第一存储器。
11.一种方法,包括:
产生存储参数以存储信息,其中所述存储参数表示通过软件过程来使用信息并且对应于用于从至少两个具有不同属性的存储设备中选择存储设备以存储所述信息的条件;以及
至少部分根据存储参数、第一存储设备的物理特性和第二存储设备的物理特性确定是将所述信息存储在第一存储设备中还是存储在第二存储设备中。
12.如权利要求11的方法,其中所述存储参数表示所述信息是由所述软件过程执行的指令。
13.如权利要求11的方法,其中所述存储参数表示所述信息是由所述软件过程使用的数据。
14.如权利要求11的方法,其中所述存储参数表示通过软件过程将所述信息传输给存储器或传输来自存储器的所述信息至少预定的次数。
15.如权利要求11的方法,其中所述存储参数表示通过所述软件过程将所述信息写到存储设备的速率。
16.如权利要求11的方法,进一步包括检查所述第一存储设备的物理特性和所述第二存储设备的物理特性。
17.如权利要求16的方法,其中所述检查所述第一存储设备的物理特性的步骤包括检查所述第一存储设备的存取时间,并且所述检查所述第二存储设备的物理特性的步骤包括检查所述第二存储设备的存取时间。
18.如权利要求16的方法,其中所述检查所述第一存储设备的物理特性的步骤包括检查第一存储设备的功率耗散,并且检查第二存储设备的物理特性包括检查第二存储设备的功率耗散。
19.如权利要求16的方法,其中所述检查所述第一存储设备的物理特性的步骤包括检查所述第一存储设备的读或写周期信息,并且所述检查所述第二存储设备的物理特性的步骤包括检查所述第二存储设备的读或写周期信息。
20.一种将信息存储在系统中的方法,包括:
产生存储参数以存储信息,其中所述存储参数表示所述信息的处理改变系统的性能大于预定量并且对应于用于从至少两个具有不同属性的存储设备中选择存储设备以存储所述信息的条件;以及
至少部分根据存储参数和两个存储器的特性将所述信息传输给至少两个存储器中的一个。
21.如权利要求20的方法,其中所述传输步骤包括至少部分基于所述存储参数以及至少部分基于所述至少两个存储器的存取时间、所述至少两个存储器的功率消耗、所述至少两个存储器的读周期特性或所述至少两个存储器的写周期特性将所述信息传输给所述至少两个存储器中的一个。
22.如权利要求20的方法,进一步包括确定所述至少两个存储器的所述特性。
23.如权利要求22的方法,其中所述确定步骤包括确定所述至少两个存储器中第一存储器的存取时间和所述至少两个存储器中第二存储器的存取时间。
24.如权利要求23的方法,进一步包括如果第一存储器的存取时间比第二存储器的存取时间短,则将所述信息传输给第一存储器。
25.一种装置,包括:
用于产生存储参数以存储信息的装置,其中所述存储参数表示所述信息是指令还是数据并且对应于用于从至少两个具有不同属性的存储设备中选择存储设备以存储所述信息的条件;以及
用于至少部分基于所述存储参数和所述两个存储设备的属性将所述信息传输给至少两个存储设备中的一个的装置。
26.如权利要求25的装置,其中所述属性是存取时间,并且,该装置还包括:用于如果所述至少两个存储设备中的第一存储设备的存取时间比所述至少两个存储器中的第二存储设备的存取时间短,并且如果所述存储参数表示所述信息是指令,则将所述信息传输给所述至少两个存储设备中的第一存储设备的装置。
27.如权利要求25的装置,其中所述用于至少部分基于所述存储参数和所述两个存储设备的属性将所述信息传输给至少两个存储设备中的一个的装置可用于至少部分基于所述至少两个存储设备的存取时间、所述至少两个存储设备的功率消耗、所述至少两个存储设备的读周期特性或用于所述至少两个存储设备的写周期特性将所述信息传输给所述至少两个存储设备中的一个。
28.一种系统,包括:
适合于执行软件过程并且传达存储参数以存储信息的处理器,其中所述存储参数表示由所述软件过程来使用信息并且对应于用于从至少两个具有不同属性的存储设备中选择存储设备以存储所述信息的条件;
具有物理特性的第一非易失性存储器;
具有物理特性的第二非易失性存储器,其中所述第一非易失性存储器的物理特性与所述第二非易失性存储器的物理特性不同;以及
控制器,所述控制器适合于至少部分基于所述存储参数、所述第一非易失性存储器的物理特性和所述第二非易失性存储器的物理特性将所述信息传输给所述第一非易失性存储器或所述第二非易失性存储器。
29.如权利要求28的系统,进一步包括第三非易失性存储器,其中所述控制器进一步适合于至少部分基于所述第三非易失性存储器的物理特性将所述信息传输给所述第一非易失性存储器、所述第二非易失性存储器或所述第三非易失性存储器。
30.如权利要求28的系统,其中所述存储参数表示所述信息是由所述软件过程执行的指令。
31.如权利要求28的系统,其中所述第一非易失性存储器的物理特性是所述第一非易失性存储器的存取时间。
32.如权利要求28的系统,其中所述第一非易失性存储器的物理特性是所述第一非易失性存储器的功率消耗。
33.如权利要求28的系统,其中所述第一非易失性存储器的物理特性是所述第一非易失性存储器的读周期特性。
34.如权利要求28的系统,其中所述第一非易失性存储器的物理特性是所述第一非易失性存储器的写周期特性。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/126,097 US7330954B2 (en) | 2002-04-18 | 2002-04-18 | Storing information in one of at least two storage devices based on a storage parameter and an attribute of the storage devices |
US10/126,097 | 2002-04-18 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1662886A CN1662886A (zh) | 2005-08-31 |
CN1312589C true CN1312589C (zh) | 2007-04-25 |
Family
ID=29214930
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB038139782A Expired - Fee Related CN1312589C (zh) | 2002-04-18 | 2003-04-11 | 存储信息的方法和系统 |
Country Status (6)
Country | Link |
---|---|
US (1) | US7330954B2 (zh) |
EP (1) | EP1497734A2 (zh) |
CN (1) | CN1312589C (zh) |
AU (1) | AU2003223599A1 (zh) |
MY (1) | MY142946A (zh) |
WO (1) | WO2003090088A2 (zh) |
Families Citing this family (47)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7734548B2 (en) * | 2004-12-06 | 2010-06-08 | At&T Intellectual Property, I,L.P. | Methods, systems, and products for providing electronic media |
US7998287B2 (en) * | 2005-02-10 | 2011-08-16 | Cabot Corporation | Tantalum sputtering target and method of fabrication |
US9052826B2 (en) * | 2006-07-28 | 2015-06-09 | Condusiv Technologies Corporation | Selecting storage locations for storing data based on storage location attributes and data usage statistics |
US7870128B2 (en) * | 2006-07-28 | 2011-01-11 | Diskeeper Corporation | Assigning data for storage based on speed with which data may be retrieved |
US20090132621A1 (en) * | 2006-07-28 | 2009-05-21 | Craig Jensen | Selecting storage location for file storage based on storage longevity and speed |
US20080282022A1 (en) * | 2007-05-09 | 2008-11-13 | Broadcom Corporation, A California Corporation | Partially storing software functions that are not expected to change over time in ROM instead of RAM |
DE102007023408A1 (de) * | 2007-05-18 | 2008-11-20 | Mobotix Ag | Verfahren zur Speicherverwaltung |
US8959307B1 (en) | 2007-11-16 | 2015-02-17 | Bitmicro Networks, Inc. | Reduced latency memory read transactions in storage devices |
US8200904B2 (en) * | 2007-12-12 | 2012-06-12 | Sandisk Il Ltd. | System and method for clearing data from a cache |
US8825940B1 (en) | 2008-12-02 | 2014-09-02 | Siliconsystems, Inc. | Architecture for optimizing execution of storage access commands |
US8261009B2 (en) * | 2008-12-30 | 2012-09-04 | Sandisk Il Ltd. | Method and apparatus for retroactive adaptation of data location |
US20100169540A1 (en) * | 2008-12-30 | 2010-07-01 | Sinclair Alan W | Method and apparatus for relocating selected data between flash partitions in a memory device |
US9176859B2 (en) * | 2009-01-07 | 2015-11-03 | Siliconsystems, Inc. | Systems and methods for improving the performance of non-volatile memory operations |
US10079048B2 (en) * | 2009-03-24 | 2018-09-18 | Western Digital Technologies, Inc. | Adjusting access of non-volatile semiconductor memory based on access time |
US9135190B1 (en) * | 2009-09-04 | 2015-09-15 | Bitmicro Networks, Inc. | Multi-profile memory controller for computing devices |
US8665601B1 (en) | 2009-09-04 | 2014-03-04 | Bitmicro Networks, Inc. | Solid state drive with improved enclosure assembly |
US8447908B2 (en) | 2009-09-07 | 2013-05-21 | Bitmicro Networks, Inc. | Multilevel memory bus system for solid-state mass storage |
US8560804B2 (en) * | 2009-09-14 | 2013-10-15 | Bitmicro Networks, Inc. | Reducing erase cycles in an electronic storage device that uses at least one erase-limited memory device |
FR2969890A1 (fr) * | 2010-12-23 | 2012-06-29 | France Telecom | Procede et dispositif de communication de donnees numeriques |
JP2013061847A (ja) * | 2011-09-14 | 2013-04-04 | Sony Corp | 情報処理装置および情報処理方法 |
US9372755B1 (en) | 2011-10-05 | 2016-06-21 | Bitmicro Networks, Inc. | Adaptive power cycle sequences for data recovery |
US9043669B1 (en) | 2012-05-18 | 2015-05-26 | Bitmicro Networks, Inc. | Distributed ECC engine for storage media |
US20140006338A1 (en) * | 2012-06-29 | 2014-01-02 | Applied Materials, Inc. | Big data analytics system |
US9047090B2 (en) * | 2012-08-07 | 2015-06-02 | Qualcomm Incorporated | Methods, systems and devices for hybrid memory management |
US9423457B2 (en) | 2013-03-14 | 2016-08-23 | Bitmicro Networks, Inc. | Self-test solution for delay locked loops |
US9798688B1 (en) | 2013-03-15 | 2017-10-24 | Bitmicro Networks, Inc. | Bus arbitration with routing and failover mechanism |
US9842024B1 (en) | 2013-03-15 | 2017-12-12 | Bitmicro Networks, Inc. | Flash electronic disk with RAID controller |
US9916213B1 (en) | 2013-03-15 | 2018-03-13 | Bitmicro Networks, Inc. | Bus arbitration with routing and failover mechanism |
US10120694B2 (en) | 2013-03-15 | 2018-11-06 | Bitmicro Networks, Inc. | Embedded system boot from a storage device |
US9501436B1 (en) | 2013-03-15 | 2016-11-22 | Bitmicro Networks, Inc. | Multi-level message passing descriptor |
US10489318B1 (en) | 2013-03-15 | 2019-11-26 | Bitmicro Networks, Inc. | Scatter-gather approach for parallel data transfer in a mass storage system |
US9720603B1 (en) | 2013-03-15 | 2017-08-01 | Bitmicro Networks, Inc. | IOC to IOC distributed caching architecture |
US9672178B1 (en) | 2013-03-15 | 2017-06-06 | Bitmicro Networks, Inc. | Bit-mapped DMA transfer with dependency table configured to monitor status so that a processor is not rendered as a bottleneck in a system |
US9734067B1 (en) | 2013-03-15 | 2017-08-15 | Bitmicro Networks, Inc. | Write buffering |
US9875205B1 (en) | 2013-03-15 | 2018-01-23 | Bitmicro Networks, Inc. | Network of memory systems |
US9971524B1 (en) | 2013-03-15 | 2018-05-15 | Bitmicro Networks, Inc. | Scatter-gather approach for parallel data transfer in a mass storage system |
US9430386B2 (en) | 2013-03-15 | 2016-08-30 | Bitmicro Networks, Inc. | Multi-leveled cache management in a hybrid storage system |
US9400617B2 (en) | 2013-03-15 | 2016-07-26 | Bitmicro Networks, Inc. | Hardware-assisted DMA transfer with dependency table configured to permit-in parallel-data drain from cache without processor intervention when filled or drained |
US10055150B1 (en) | 2014-04-17 | 2018-08-21 | Bitmicro Networks, Inc. | Writing volatile scattered memory metadata to flash device |
US9811461B1 (en) | 2014-04-17 | 2017-11-07 | Bitmicro Networks, Inc. | Data storage system |
US9952991B1 (en) | 2014-04-17 | 2018-04-24 | Bitmicro Networks, Inc. | Systematic method on queuing of descriptors for multiple flash intelligent DMA engine operation |
US10025736B1 (en) | 2014-04-17 | 2018-07-17 | Bitmicro Networks, Inc. | Exchange message protocol message transmission between two devices |
US10078604B1 (en) | 2014-04-17 | 2018-09-18 | Bitmicro Networks, Inc. | Interrupt coalescing |
US10042792B1 (en) | 2014-04-17 | 2018-08-07 | Bitmicro Networks, Inc. | Method for transferring and receiving frames across PCI express bus for SSD device |
US10013734B1 (en) | 2017-04-01 | 2018-07-03 | Intel Corporation | Programmable controller and command cache for graphics processors |
US10552050B1 (en) | 2017-04-07 | 2020-02-04 | Bitmicro Llc | Multi-dimensional computer storage system |
CN108228803A (zh) * | 2017-12-29 | 2018-06-29 | 北京奇虎科技有限公司 | 一种文件的存储方法和装置 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1980000383A1 (en) * | 1978-08-12 | 1980-03-06 | Square D Co | Memory system for programmable controller |
US4918586A (en) * | 1985-07-31 | 1990-04-17 | Ricoh Company, Ltd. | Extended memory device with instruction read from first control store containing information for accessing second control store |
US5253357A (en) * | 1991-06-13 | 1993-10-12 | Hewlett-Packard Company | System for determining pluggable memory characteristics employing a status register to provide information in response to a preset field of an address |
US5390334A (en) * | 1990-10-29 | 1995-02-14 | International Business Machines Corporation | Workstation power management by page placement control |
US5845311A (en) * | 1995-03-23 | 1998-12-01 | Csem Centre Suisse D'electronique Et De Microtechnique | Hierarchical ROMs that are selectively accessed by microprocessor instructions containing codes |
CN1233020A (zh) * | 1998-04-20 | 1999-10-27 | 摩托罗拉公司 | 多路超高速缓冲存储器装置和方法 |
WO2001073552A2 (de) * | 2000-03-29 | 2001-10-04 | Fujitsu Siemens Computers Gmbh | Anordnung und verfahren zur reduzierung der verarbeitungszeit einer datenverarbeitungseinrichtung |
CN1338073A (zh) * | 1998-12-22 | 2002-02-27 | 格姆普拉斯公司 | 包含抗磨损存储器的管理装置的存储系统,和存储器的抗磨损管理过程 |
Family Cites Families (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS63240650A (ja) * | 1987-03-28 | 1988-10-06 | Toshiba Corp | キヤツシユメモリ装置 |
GB2226666B (en) * | 1988-12-30 | 1993-07-07 | Intel Corp | Request/response protocol |
DE69033262T2 (de) * | 1989-04-13 | 2000-02-24 | Sandisk Corp | EEPROM-Karte mit Austauch von fehlerhaften Speicherzellen und Zwischenspeicher |
US5249286A (en) * | 1990-05-29 | 1993-09-28 | National Semiconductor Corporation | Selectively locking memory locations within a microprocessor's on-chip cache |
US5561814A (en) * | 1993-12-22 | 1996-10-01 | Intel Corporation | Methods and apparatus for determining memory operating characteristics for given memory locations via assigned address ranges |
US5634109A (en) | 1994-06-20 | 1997-05-27 | International Business Machines Corporation | Method and system for enhanced data management efficiency in memory subsystems utilizing redundant arrays of disk memory devices and a nonvolatile cache |
GB2292822A (en) * | 1994-08-31 | 1996-03-06 | Hewlett Packard Co | Partitioned cache memory |
US5903915A (en) * | 1995-03-16 | 1999-05-11 | Intel Corporation | Cache detection using timing differences |
US5818771A (en) | 1996-09-30 | 1998-10-06 | Hitachi, Ltd. | Semiconductor memory device |
JP3351725B2 (ja) | 1997-01-08 | 2002-12-03 | 株式会社東芝 | パワーシミュレーション装置、パワーシミュレーション方法、及びパワーシミュレーションプログラムを記録した機械読み取り可能な記録媒体 |
US6446181B1 (en) * | 2000-03-31 | 2002-09-03 | Intel Corporation | System having a configurable cache/SRAM memory |
JP3973129B2 (ja) * | 2000-07-19 | 2007-09-12 | 株式会社日立製作所 | キャッシュメモリ装置及びそれを用いた中央演算処理装置 |
US6523089B2 (en) * | 2000-07-19 | 2003-02-18 | Rambus Inc. | Memory controller with power management logic |
JP2002196981A (ja) * | 2000-12-22 | 2002-07-12 | Fujitsu Ltd | データ処理装置 |
US6452823B1 (en) * | 2001-01-31 | 2002-09-17 | Motorola, Inc. | Non-volatile magnetic cache memory and method of use |
US6732241B2 (en) * | 2001-09-07 | 2004-05-04 | Hewlett-Packard Development Company, L.P. | Technique for migrating data between storage devices for reduced power consumption |
JP4176341B2 (ja) * | 2001-10-23 | 2008-11-05 | 株式会社日立製作所 | 記憶制御装置 |
-
2002
- 2002-04-18 US US10/126,097 patent/US7330954B2/en not_active Expired - Fee Related
-
2003
- 2003-04-11 CN CNB038139782A patent/CN1312589C/zh not_active Expired - Fee Related
- 2003-04-11 EP EP03719738A patent/EP1497734A2/en not_active Withdrawn
- 2003-04-11 WO PCT/US2003/011433 patent/WO2003090088A2/en not_active Application Discontinuation
- 2003-04-11 AU AU2003223599A patent/AU2003223599A1/en not_active Abandoned
- 2003-04-17 MY MYPI20031455A patent/MY142946A/en unknown
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1980000383A1 (en) * | 1978-08-12 | 1980-03-06 | Square D Co | Memory system for programmable controller |
US4918586A (en) * | 1985-07-31 | 1990-04-17 | Ricoh Company, Ltd. | Extended memory device with instruction read from first control store containing information for accessing second control store |
US5390334A (en) * | 1990-10-29 | 1995-02-14 | International Business Machines Corporation | Workstation power management by page placement control |
US5253357A (en) * | 1991-06-13 | 1993-10-12 | Hewlett-Packard Company | System for determining pluggable memory characteristics employing a status register to provide information in response to a preset field of an address |
US5845311A (en) * | 1995-03-23 | 1998-12-01 | Csem Centre Suisse D'electronique Et De Microtechnique | Hierarchical ROMs that are selectively accessed by microprocessor instructions containing codes |
CN1233020A (zh) * | 1998-04-20 | 1999-10-27 | 摩托罗拉公司 | 多路超高速缓冲存储器装置和方法 |
CN1338073A (zh) * | 1998-12-22 | 2002-02-27 | 格姆普拉斯公司 | 包含抗磨损存储器的管理装置的存储系统,和存储器的抗磨损管理过程 |
WO2001073552A2 (de) * | 2000-03-29 | 2001-10-04 | Fujitsu Siemens Computers Gmbh | Anordnung und verfahren zur reduzierung der verarbeitungszeit einer datenverarbeitungseinrichtung |
Also Published As
Publication number | Publication date |
---|---|
WO2003090088A3 (en) | 2004-03-25 |
WO2003090088A2 (en) | 2003-10-30 |
MY142946A (en) | 2011-01-31 |
EP1497734A2 (en) | 2005-01-19 |
US20030200400A1 (en) | 2003-10-23 |
AU2003223599A1 (en) | 2003-11-03 |
CN1662886A (zh) | 2005-08-31 |
AU2003223599A8 (en) | 2003-11-03 |
US7330954B2 (en) | 2008-02-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1312589C (zh) | 存储信息的方法和系统 | |
CN101887350B (zh) | 用于存储总线接口的pcm存储器 | |
CN101154190B (zh) | 映射信息管理设备和方法 | |
CN100433192C (zh) | 使用动态随机存取存储器和闪存的系统 | |
US7813212B2 (en) | Nonvolatile memory having non-power of two memory capacity | |
CN101308698B (zh) | 存储装置 | |
CN101535963A (zh) | 具有可编程耐久性的快闪存储器 | |
CN103123608A (zh) | 用于在存储器装置中重新分配可寻址空间的方法和设备 | |
CN101401167B (zh) | 存储器装置分布式控制器系统 | |
US8832355B2 (en) | Storage device, storage controlling device, and storage controlling method | |
EP1761932B1 (en) | Dram with half and full density operation | |
CN104778974A (zh) | 串行存储器装置向外部主机通知内部自计时操作的完成 | |
CN109727630A (zh) | 存储系统及其操作方法 | |
CN115437580A (zh) | 一种数据存储设备的管理方法、系统及数据存储设备 | |
CN112230849A (zh) | 存储器控制方法、存储器存储装置及存储器控制器 | |
US7103724B2 (en) | Method and apparatus to generate cache data | |
US5793684A (en) | Memory device having selectable redundancy for high endurance and reliability and method therefor | |
US5479609A (en) | Solid state peripheral storage device having redundent mapping memory algorithm | |
JP2022522444A (ja) | シーケンス処理ユニットを備えたメモリ制御システム | |
CN109947678B (zh) | 一种存储装置、电子设备及数据交互方法 | |
JP2006107049A (ja) | 半導体装置及びその半導体装置を備えたメモリカード | |
US20220171706A1 (en) | Memory system and operating method thereof | |
CN116779015A (zh) | 存储芯片的测试方法、装置、存储介质与电子设备 | |
CN114063910A (zh) | 文件处理方法及装置、文件处理系统及存储介质 | |
CN116679873A (zh) | 一种数据存储方法、硬盘及计算设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20070425 Termination date: 20170411 |
|
CF01 | Termination of patent right due to non-payment of annual fee |