CN1201231C - 数据存储器、数据处理***和方法 - Google Patents

数据存储器、数据处理***和方法 Download PDF

Info

Publication number
CN1201231C
CN1201231C CNB991088972A CN99108897A CN1201231C CN 1201231 C CN1201231 C CN 1201231C CN B991088972 A CNB991088972 A CN B991088972A CN 99108897 A CN99108897 A CN 99108897A CN 1201231 C CN1201231 C CN 1201231C
Authority
CN
China
Prior art keywords
data
section
written
logical
physical
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 - Lifetime
Application number
CNB991088972A
Other languages
English (en)
Other versions
CN1241786A (zh
Inventor
铃木馨
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.)
Sony Corp
Original Assignee
Sony Corp
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 Sony Corp filed Critical Sony Corp
Publication of CN1241786A publication Critical patent/CN1241786A/zh
Application granted granted Critical
Publication of CN1201231C publication Critical patent/CN1201231C/zh
Anticipated expiration legal-status Critical
Expired - Lifetime 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
    • 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/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • G06F12/0246Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory

Landscapes

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

Abstract

当将数据读自或写至闪烁存储器时,在闪烁存储器的区段中生成一个表,用于标明一起组成闪烁存储器的存储区的物理块的物理地址与写入物理块的逻辑块的逻辑地址之间的对应关系。

Description

数据存储器、数据处理***和方法
本发明涉及一种数据存储器,它所包括的存储装置具有分为多块的数据存储区,其中写入数据存储区的数据按块管理,本发明涉及一种用于将数据写至和/或读自数据存储器的数据处理***和方法。
迄今为止提出过一种卡型外部数据存储器(今后称为“存储卡”),它采用闪烁存储器(一种非易失性存储器,类似于EEPROM(电可擦可编程只读存储器))作为外部数据存储器,它用于电子设备中,例如计算机等设备中。
在存储卡中,作为数据存储器的闪烁存储器具有分为多块的数据存储区,同时写入闪烁存储器的数据按块管理。
在闪烁存储器中,如数据以彼此不同的频率写入不同的块,则以高频率写入数据的块可能出错。为避免这点,必须以大致相同的频率将数据写至所有块,同时不将数据写至出错块。
为满足以上要求,使用配备着用作数据存储装置的闪烁存储器的存储卡的数据处理***适配为使存入闪烁存储器的数据分为多块,将地址信息加至每块,同时数据块写至闪烁存储器中那些以较低频率写入数据的块中。应注意在下面的描述中作为划分闪烁存储器的数据存储区的结果的块称为“物理块”,而作为划分数据的结果的块则称为“逻辑块”,以便避免在存储区块与数据块之间产生混淆。还有,物理块的地址称为“物理地址”,而逻辑块的地址称为“逻辑地址”。
为自存储卡读取数据,首先访问闪烁存储器的所有物理块,同时在数据处理电路的内部存储器内生成一个表,用以表明物理块的物理地址与存在物理块中的逻辑块的逻辑地址之间的对应关系。引用此表以检测存放所需数据的物理块的物理地址并自该物理块读取所需数据。
此外,为将数据写至存储卡,首先访问闪烁存储器所有物理块并在数据处理电路的内部存储器中生成一个表,用以表明物理块的物理地址与存在物理块中的逻辑块中的逻辑地址之间的对应关系。然后引用此表以检测未用的物理块并将所需数据写至未用物理块。
近来愈来愈多地要求电子设备如计算机等具有更大数据处理能力并能同时处理极大量数据。在这些情况下,与这类电子设备一起使用的外部数据存储器也应具有更大容量。还有,由于建议闪烁存储器具有大为改变的集成度,因此所建议改善的存储卡具有大至例如128MB的容量。
如此大容量的存储卡使用具有大量物理块的闪烁存储器。因此,在大容量存储卡中,每次写和读数据时所生成的表也很大,这要求数据处理电路具有大容量内部存储器。这些要求增加了存储卡的制造成本。
因此,本发明的一个目的是通过提供一个廉价数据存储器和使用该数据存储器的数据处理***和方法而克服现有技术的上述缺点,该数据存储器适合于具有扩大的存储容量并允许高效率地读或写数据。
可通过提供数据存储器以连至外部设备而达到以上目的,该数据存储器根据本发明包括:
一个具有存储区的存储装置,该存储区分为多块,而每一块具有一个特定的绝对地址;以及
一个用于根据来自外部设备的命令将数据写至或读自存储装置的控制装置;
该控制装置包含一个转换表,用于将来自外部设备的命令所指向的数据相对地址转换为绝对地址。
还可以通过提供包括数据处理设备的数据处理***而达到以上目的,该数据处理设备连至包括存储装置的数据存储器,而该存储装置具有分为多块的存储区,及每一块具有一个特定的绝对地址;数据处理设备根据本发明包括:
用于将命令发至存储装置以写或读数据的装置;
该控制装置包含一个转换表,用于将来自外部设备的命令所指向的数据相对地址转换为绝对地址。
还能通过提供将数据写至或读自存储装置的数据处理方法而达到以上目的,该存储装置具有分为多块的存储区,其中每一块具有一个特定的绝对地址;该方法根据本发明包括以下步骤:
生成一个转移表,用于将写至或读自存储装置的数据的相对地址转换为绝对地址;以及
引用转换表以写或读数据。
下面结合附图的本发明优选实施例的详细描述将使本发明的这些目的和其它目的,特征和优点更为明显。
图1是根据本发明的数据处理***中所用数据处理设备的原理框图;
图2是图1中数据处理***中所用存储卡的原理框图;
图3概要地阐释图1中数据处理***中所用应用数据的配置;
图4概要地阐释图1中数据处理***中所用闪烁存储器的配置;
图5是自闪烁存储器中读取数据的例子的操作流程图;
图6概要地阐释表示物理地址与逻辑地址之间对应关系的表;
图7是向闪烁存储器写入数据的例子的操作流程图;以及
图8是将写入闪烁存储器的数据更新的例子的操作流程图。
现参照图1,以原理框图的形式阐释根据本发明的数据处理***。该数据处理***一般以参照数字1标示,并包括数据处理设备10作为主设备,及存储卡20作为通过串行接口连至数据处理设备10的外部存储设备。
此处将借助例子描述通过串行接口在数据处理设备10与存储卡20之间的数据传输。然而应注意,本发明亦可应用于通过并行接口传输数据的***。
数据处理设备10
根据本发明的数据处理***1中包括的数据处理设备10包括一个用于运行以应用数据为基础的预定程序的数据处理电路11,一个用于在数据处理设备10与作为外部设备的存储卡20之间传输应用数据的串行接口电路12,一个配备于数据处理电路11与串行接口电路12之间用于临时存储由数据处理电路11提供的应用数据的寄存器13,以及一个连至数据处理电路11,串行接口电路12和寄存器13中的每一个以控制这些部件11、12和13的操作的控制器14。
在数据处理设备10中,当决定应将应用数据存入作为外部设备的存储卡20中以便数据处理电路11运行预定程序时,在控制器14的控制下,数据处理电路11将应用数据和例如写命令之类的控制数据写至寄存器13。
然后在控制器14的控制下,串行接口电路12自寄存器13中读取应用数据和控制数据,将它们转换为串行数据,并将它们与时钟信号和状态信号一起传送至存储卡20。还有,当在数据处理设备10中决定应自作为外部设备的存储卡20中读取应用数据以便数据处理电路11运行预定程序时,在控制器14的控制下,数据处理电路11将类似读命令之类的控制数据写至寄存器13。因此,在控制器14的控制下,串行接口电路12自寄存器13中读取控制数据,将它转换为串行数据,并将它与时钟信号和状态信号一起传送至存储卡20。
已按照控制数据自存储卡20传送至数据处理设备10的应用数据由串行接口电路12转换为并行数据。于是数据处理电路11自寄存器13中读取应用数据,并在控制器14的控制下以预定方式将它处理。
根据本发明的数据处理***1中所用数据处理设备10不限于任何特定设备,但它可为一个能在它本身与例如存储卡20的外部设备之间传送数据的设备,包括个人计算机,数字照像机,数字录像机或类似设备。
在数据处理***1中,数据处理设备10与存储卡20通过串行接口电路12,更具体地说通过至少三条数据线SCLK,State和DIO,相互连接。第一数据线SCLK用于传送供数据传输用的时钟信号,第二数据线State用于传送数据传输所必需的状态信号,以及第三数据线DIO用于串行地发送准备写至存储卡20的应用数据和控制数据或发送准备自存储卡20读取的应用数据和控制数据。通过这些数据线在数据处理设备10和存储卡20之间传送应用数据和控制数据。
存储卡20
如图2中所示,存储卡20包括一个用作存储装置的闪烁存储器21,一个用于在存储卡20和数据处理设备10之间传送应用数据和控制数据的串/并和并/串接口电路(今后将称为“S/P和P/S接口电路”)22,一个配备在闪烁存储器21与S/P和P/S接口电路22之间用于暂时存放由S/P和P/S接口电路22提供的应用数据的寄存器23,一个连至寄存器23的ECC电路24,如写入寄存器23中的应用数据中存在任何错误,则该ECC电路即根据一个纠错码纠正该错,以及包括一个连至闪烁存储器21,S/P和P/S接口电路22和寄存器23中的每一个以控制这些部件21、22和23的操作的控制器25。
S/P和P/S接口电路22通过上述三条数据线SCLK,State和DIO连至数据处理设备10的串行接口电路12以便在存储卡20与数据处理设备10之间传送应用数据和控制数据。更具体地说,S/P和P/S接口电路22将自数据处理设备10的串行接口电路12发送来的串行数据转换为并行数据并将它写至寄存器23。此外,S/P和P/S接口电路22将读自寄存器23的并行数据转换为串行数据并将它发送至数据处理设备10的串行接口电路12。
通过第三数据线DIO在S/P和P/S接口电路22与数据处理设备10之间传送的串行数据与由数据处理设备10通过第一数据线SCLK发送的时钟信号同步。与此同时,在第三数据线DIO上传送的串行数据根据在第二数据线State上传送的状态信号加以分类。串行数据的种类包括例如准备存入闪烁存储器21的应用数据,准备自闪烁存储器21中读取的应用数据,以及例如写命令,读命令等的控制数据。
当自数据处理设备10传送的数据是例如写命令或读命令的控制数据时,S/P和P/S接口电路22向控制器25提供数据。
如前所述,寄存器23临时地存储一个在闪烁存储器21与S/P和P/S接口电路22之间传送的应用数据。
ECC电路24将一个纠错码加至由S/P和P/S接口电路22存入寄存器23的应用数据中,此外,如在读自闪烁存储器21和写至寄存器23的应用数据中出现任何错误,则ECC电路24将此错误纠正。
控制器25根据由S/P和P/S接口电路22提供的控制数据来控制存储卡20的操作。也即,根据由S/P和P/S接口电路22提供的写命令,控制器25读出一个暂时写入寄存器23中的应用数据并将它存入闪烁存储器21。还有,根据由S/P和P/S接口电路22提供的读命令,控制器25自闪烁存储器21中读取应用数据并将它写至寄存器23。
当要存储的应用数据和写命令自数据处理设备10传送至如上所述地构成的存储卡20时,首先由S/P和P/S接口电路22将数据转换为并行数据并向控制器25提供写命令,接着在控制器25的控制下将应用数据写至寄存器23。
此处ECC电路24将纠错码加至写入寄存器23中的应用数据中。
然后根据由S/P和P/S接口电路22提供的写命令,控制器25自寄存器23中读取应用数据并将它写至闪烁存储器21。
在存储卡20中,当自数据处理设备10收到读命令时,S/P和P/S接口电路22向控制器25提供读命令。
然后根据由S/P和P/S接口电路22提供的读命令,控制器25自闪烁存储器21中读取应用数据并将它写至寄存器23。如写入寄存器23的应用数据中出现错误,则连至寄存器23的ECC电路24根据纠错码纠正错误。
然后在控制器25的控制下,S/P和P/S接口电路22自寄存器23中读取应用数据,将它转换为串行数据并将它发送至数据处理设备10。
前面已描述过,数据处理***1具有一个配备于存储卡20内的ECC电路24,用于纠正存储卡20处的应用数据中的任何错误。然而应注意,可在数据处理设备10中配备ECC电路24,用于纠正数据处理设备10处应用数据中的任何错误。在此情况下,将在数据处理设备10与存储卡20之间传送已加入纠错码的应用数据。
应用数据配置,闪烁存储器结构
在数据处理***1中,用于运行预定程序的应用数据分为多个逻辑块,如图3中所示,每个逻辑块是一个数据擦除单元。应用数据按存储卡20中的逻辑块进行管理。一起用于组成应用数据的逻辑块中的每一块都被赋予一个逻辑地址。每个逻辑地址用当作数据进行处理的逻辑号表示。
当应用数据存入存储卡20的闪烁存储器21中时,逻辑块并不总是按它们的逻辑地址顺序存入闪烁存储器21的。然而当自闪烁存储器21中读出应用数据时,将按逻辑地址顺序将逻辑块重新排列以重建初始应用数据。
一起组成应用数据的逻辑块中的每一块由多段组成,每一段是一个写或读单元。每一段分为例如512字节的实际数据和16字节的冗余数据。逻辑块的逻辑地址散开为多个段中的这类冗余数据。每段被赋予一个特定段号,可根据此段号访问该段。
闪烁存储器21具有一个存储区,它包括多个区段,每个区段分为如图4中所示的多个物理块。存储于闪烁存储器21中的数据按物理块管理及应用数据的一个逻辑块存于一个物理块中。
如上所述,闪烁存储器21的每个区段分为多个物理块,当数据读自或写至闪烁存储器21时,在闪烁存储器21的区段中生成一个表,用于标明闪烁存储器21的物理块的物理地址与应用数据的逻辑块的逻辑地址之间的对应关系。
应注意到,这些区段与组成每个区段的物理块中的每一块事先都已彼此相关连。更具体地说,关于由其地址为o至n的物理块组成的区段o,例如只有具有相应逻辑号o至s的逻辑块存入区段o,但具有逻辑号s+1和随后各号的逻辑块则不存入。逻辑号o至s的逻辑块将不连续地存入区段o中物理地址o至n的物理块中。
数据读取
从先前已描述过的数据处理***1中的存储卡20的闪烁存储器21中读取的数据例子将在下面描述:
为从闪烁存储器21中读取数据,通过串行接口电路12及S/P和P/S接口电路22自数据处理设备10中的数据处理电路11传送一个读命令至存储卡20中的控制器25。
根据读命令,存储卡20的控制器25遵循由图5中流程图规定的过程来从闪烁存储器21中读取所需数据。
更具体地说,首先在步1,控制器25根据将要读取的段数来计算数据所属逻辑块的逻辑地址。例如,如一个逻辑块分为(t+1)个段,其段号为100的段所属的逻辑块的逻辑地址通过计算100/(t+1)来确定。
如先前所描述的,在闪烁存储器21的区段和存于用于组成每个区段的物理块中的逻辑块之间的对应关系是预先确定的。因此,当待读数据所属逻辑块的逻辑地址被确定时,可以知道数据存储在闪烁存储器21的哪个区段内。
其次在步2,控制器25在其内部存储器中生成一个表,用于显示组成存放数据的区段的物理块的物理地址与存于物理块内的逻辑块的逻辑地址之间的对应关系,如图6中所示。与此同时,如在内部存储器内已为任何其它区段生成了这类表,则控制器25将把已有的表改写为供存放待读取数据的区段用的表。
然后在步3,控制器25引用如此生成的表以寻找其中存放着待读数据所属逻辑块的物理块。
再在步4,控制器25在物理块内寻找用于存放待读数据的地点。在物理块内,数据按段号顺序存放。因此,例如,如一个逻辑块分为(t+1)个段,则逻辑块内其段号为100的数据的存放地点通过计算100-B×(t+1)来确定(其中B是数据所属逻辑块的逻辑地址)。
其次在步5,控制器25访问物理块内存放待读数据的地点,并自所考虑的物理块中读取所需数据。
如上所述,控制器25将如此自闪烁存储器21中读取的数据写至寄存器23。如果如此写入寄存器23的数据中出现任何错误,则它在连至寄存器23的ECC电路24中根据纠错码经受纠错操作。
如此纠错的数据通过S/P和P/S接口电路22和串行接口电路12传送至数据处理设备10中的数据处理电路11。
数据写入
现通过下面例子描述数据写至数据处理***1中存储卡20的闪烁存储器21:
为将数据写至闪烁存储器21,首先通过串行接口电路12及S/P和P/S接口电路22将写命令自数据处理设备10的数据处理电路11传送至存储卡20中的控制器25,及通过串行接口电路12及S/P和P/S接口电路22将数据写至存储卡20的寄存器23。
根据写命令,存储卡20的控制器25遵循图7中流程图所规定的过程以便将所需数据写至闪烁存储器21。
更具体地说,首先在步11,控制器25根据待写数据的段号来计算数据所属逻辑块的逻辑地址,例如,如一个逻辑块分为(t+1)段,则其段号为100的段所属的逻辑块的逻辑地址通过计算100/(t+1)而确定。
如先前所描述的,预先确定了闪烁存储器21的区段与用于组成每个区段的物理块内存储的逻辑块之间的对应关系。因此,当待写数据所属逻辑块的逻辑地址被确定后,即可知道数据存放在闪烁存储器21的哪个区段中。
其次在步12,控制器25在其内部存储器内生成一个表,用于显示组成数据要写入的区段的物理块的物理地址与存于物理块中的逻辑块的逻辑地址之间的对应关系,如图6中所示。与此同时,如在内部存储器中已为任何其它区段生成了这样一个表,则控制器25将已有的表重写为数据要写入的区段所用的表。
然后在步13,控制器25引用如此生成的表以寻找用于组成该区段的物理块中的未用的一块。
再在步14,控制器25自寄存器23中读取待写至闪烁存储器21的数据,并将它写至未用的物理块。
其次在步15,控制器25重写该表以将其表述为对应于这样写入数据的物理块的逻辑地址自“未用”改变为已写数据所属逻辑块的逻辑地址。
数据更新
下面将通过例子描述数据处理***1中存储卡20的闪烁存储器所写入数据的更新:
为更新写入闪烁存储器21的数据,首先通过串行接口电路12及S/P和P/S接口电路22将一条读命令自数据处理设备10的数据处理电路11传送至存储卡20中的控制器25。
根据该读命令,存储卡20的控制器25遵循图5中所示流程图所规定的过程以便自闪烁存储器21中读取所需数据。
自闪烁存储器21中所读数据在控制器25的控制下写至寄存器23。如果如此写入寄存器23的数据中发现任何错误,则根据纠错码在连至寄存器23的ECC电路24中将其纠错。
如此纠过错的数据通过S/P和P/S接口电路22及串行接口电路12传送至数据处理设备10中的数据处理电路11。在数据处理电路11中将数据更新。在块中完成数据更新。更新日期所属的所有逻辑块都重写过。
数据处理电路11中如此更新过的数据通过串行接口电路12及S/P和P/S接口电路22与写命令一起传送至存储卡20。
根据传自数据处理设备10的写命令,存储卡20的控制器25遵循图7中流程图所规定的过程以将更新的数据写至闪烁存储器21。也即,更新的数据写至用于形成数据要写入的区段的物理块中的一个未用块。
如图8中所示,在更新的数据写至未用的物理块后,存储卡20中的控制器25把在其内部存储器内生成的表改写以便将其表述为对应于已写入更新的数据的物理块的逻辑地址自“未用”改变为更新的数据所属逻辑块的逻辑地址,以及将其表述为对应于写入更新前的数据的物理块的逻辑地址自更新的数据所属的逻辑块的逻辑地址改变为“已用”。
最后,控制器25在将块中数据更新之前将它们擦除。也即,控制器25引用在其内部存储器中的表以便将表中表述为“已用”的逻辑块中的数据控除。
其他
前面借助例子说明了都是在存储卡20中的控制器25的控制下自和向闪烁存储器读和写数据的。然而应注意,可在数据处理设备10中的控制器14的控制下读和写这些数据。在此情况下,在数据处理设备10的控制器14中的内部存储器的区段中生成一个表,用于标明物理块的物理地址与存于物理块中的逻辑块的逻辑地址之间的对应关系。
在根据本发明的数据处理***1中,为自或向存储卡20的闪烁存储器21读或写数据。如上所述地在闪烁存储器21的区段中生成一个表,用于表明组成闪烁存储器21的存储区的物理块的物理地址与写入物理块的逻辑块的逻辑地址之间的对应关系。因此,即使当闪烁存储器21设计成为具有增长数量的物理块而扩大容量时,存储卡20中的控制器25的内部存储器或数据处理设备10中的控制器14的内部存储器也可以只有足够在闪烁存储器21的区段中生成这类表的容量。
因此,本发明能提供具有更大容量存储卡20的数据处理***1而不会由于扩大存储卡20中控制器25的内部存储器容量或数据处理设备10中控制器14的内部存储器容量而增加成本。
在根据本发明的存储卡20中,当数据读自或写至闪烁存储器21中时,在闪烁存储器21的区段中生成一个表,用于标明形成闪烁存储器21的存储区的物理块的物理地址与写入物理块的逻辑块的逻辑地址之间的对应关系。因此,即使当闪烁存储器21设计成为具有增长数量的物理块而扩大容量时,存储卡20中的控制器25的内部存储器也可以只有足够在闪烁存储器21的区段中生成这类表的容量。因此,本发明能提供具有更大容量的存储卡20而不会由于扩大存储卡20中控制器的内部存储器容量而增加成本。
根据本发明的数据存储器如此适配,以便当数据读自或写至其存储装置时,在区段中生成一个表,用于标明写入组成一个区段的多个逻辑块中的数据的逻辑地址与组成该区段的物理块的物理地址之间的对应关系。因此,即使如果为增长数量的块扩大存储装置容量,则内部存储器的容量也可只为在区段中生成一个表所需的容量。
因此,本发明提供一个具有大存储容量的数据存储器而不必由于扩大内部存储器容量而增加成本。
根据本发明的采用数据存储器的数据处理***如此适配,以便当数据读自或写至其存储装置时,在区段中生成一个表,用于标明写入组成一个区段的多个逻辑块中的数据的逻辑地址与组成该区段的物理块的物理地址之间的对应关系。因此,即使如果为增长数量的块扩大存储装置的容量,则内部存储器的容量也可只为在区段中生成一个表所需的容量。
因此,本发明能提供一个能处理极大量数据的数据处理***而不必由于扩大内部存储器的容量而增加成本。
此外根据本发明的数据处理方法使用数据存储器,它如此适配以便当数据读自或写至其存储装置时,在区段中生成一个表,用于标明写入组成一个区段的多个逻辑块中的逻辑地址与组成该区段的物理块的物理地址之间的对应关系。因此,即使如果为增长数量的块扩大存储装置的容量,则内部存储器的容量也可只为在区段中生成一个表所需的容量。
因此,本发明提供一种数据处理方法,适合于处理极大量数据而不必由于扩大内部存储器的容量而增加成本。

Claims (34)

1.一种连至外部设备的数据存储器,包括:
一个其存储区分为多区段的存储装置,其中每个区段包括多个物理块,每个物理块具有一个特定的物理地址;以及
一个根据来自所述外部设备的命令将数据写至或读自存储装置设备的控制装置;
所述控制装置根据该数据的预定段号确定被写入或读取的数据的逻辑块的逻辑地址,其中
所述控制装置在它的一个内部存储器中对在所述多个区段中的区段产生一个表格,其中包括用于要被写入或读取的数据的逻辑块的所确定的逻辑地址,所述产生的表格映射在所述区段中的物理块的物理地址和这些物理块的相应逻辑地址之间对应关系,其中
所述控制装置从所述产生的表格确定对应于要被写入或读取的数据的所述逻辑块的物理块的物理地址,以及其中
如果所述现有的表格不对应于包含用于要被写入或读取的数据的所述逻辑块的区段,则所述控制装置利用所述产生的表格改写在所述内部存储器中的现有的表格,以及其中
对每个区段产生该转换表,其中包括用于要被写入或读取的数据的逻辑块的所确定逻辑地址。
2.如权利要求1中所述的数据存储器,其中每当执行来自外部设备的命令时该控制装置即生成所述表格。
3.如权利要求1中所述的数据存储器,其中每个逻辑地址被存储在所述存储装置中的物理块中。
4.如权利要求1中所述的数据存储器,其中被包含在一个范围内的逻辑地址被转换为在预先确定区段中的绝对地址。
5.如权利要求1中所述的数据存储器,还包括:
一个接口装置,用于将由外部设备提供的串行数据转换为并行数据,同时将内部提供的并行数据转换为串行数据并将它们提供给外部设备。
6.一种数据处理***,其中包括:
数据存储器,其包括一个存储装置,该存储装置的存储区分为多区段,每区段包括多个物理块,每个物理块具有一个特定的物理地址;以及
连接到该数据存储器的数据处理设备,该数据处理设备包括:
用于向存储装置发送一条写或读数据的命令的控制装置,其中
所述控制装置在它的一个内部存储器中对在所述多个区段中的区段产生一个表格,其中包括用于要被写入或读取的数据的逻辑块的所确定的逻辑地址,所述产生的表格映射在所述区段中的物理块的物理地址和这些物理块的相应逻辑地址之间对应关系,其中
所述控制装置从所述产生的表格确定对应于要被写入或读取的数据的所述逻辑块的物理块的物理地址,以及其中
如果所述现有的表格不对应于包含用于要被写入或读取的数据的所述逻辑块的区段,则所述控制装置利用所述产生的表格改写在所述内部存储器中的现有的表格,以及其中
对每个区段产生该转换表,其中包括用于要被写入或读取的数据的逻辑块的所确定逻辑地址。
7.如权利要求6中所述的数据处理***,其中每当在该存储装置中写入或读出数据时,该控制装置产生该表格。
8.如权利要求6中所述的数据处理***,其中每个逻辑地址被存储在所述存储装置中的物理块中。
9.如权利要求6中所述的数据处理***,其中包含在一个范围内的逻辑地址被转换为在该预先确定的区段中的物理地址。
10.如权利要求6中所述的数据处理***,其中该数据处理设备还包括:
一个接口装置,用于将内部提供的并行数据转换为串行数据,并将它们提供给外部设备。
11.一种将数据写至或读自存储装置的数据处理方法,该存储装置的存储区分为多块,每块具有一个特定于它的物理地址;该方法包括以下步骤:
根据数据的预定段号确定被写入或读取的数据的逻辑块的逻辑地址;
在一个内部存储器中对在所述多个区段中的区段产生一个表格,其中包括用于要被写入或读取的数据的逻辑块的所确定的逻辑地址,所述产生的表格映射在所述区段中的物理块的物理地址和这些物理块的相应逻辑地址之间对应关系;
如果所述现有的表格不对应于包含用于要被写入或读取的数据的所述逻辑块的区段,利用所述产生的表格改写在所述内部存储器中的现有的表格;以及
参照所述产生的表格以写入或读取该数据,其中对每个区段产生所述表,其中包括用于要被写入或读取的数据的逻辑块的所确定逻辑地址。
12.如权利要求11中所述的方法,其中每个逻辑地址被存储在所述存储装置中的物理块中。
13.如权利要求11中所述的方法,其中被包含在一个范围内的逻辑地址被转换为在预先确定区段中的绝对地址。
14.一种数据处理设备,其连接到一个数据存储器,其包括一个存储装置,该存储装置的存储区分为多区段,每区段包括多个物理块,每个物理块具有一个特定的物理地址,该数据处理设备包括:
用于向存储装置发送一条写或读数据的命令的控制装置;其中
所述控制装置根据该数据的预定段号确定被写入或读取的数据的逻辑块的逻辑地址,以及其中
所述控制装置在它的一个内部存储器中对在所述多个区段中的区段产生一个表格,其中包括用于要被写入或读取的数据的逻辑块的所确定的逻辑地址,所述产生的表格映射在所述区段中的物理块的物理地址和这些物理块的相应逻辑地址之间对应关系,其中
所述控制装置从所述产生的表格确定对应于要被写入或读取的数据的所述逻辑块的物理块的物理地址,以及其中
如果所述现有的表格不对应于包含用于要被写入或读取的数据的所述逻辑块的区段,则所述控制装置利用所述产生的表格改写在所述内部存储器中的现有的表格,以及其中
对每个区段产生该转换表,其中包括用于要被写入或读取的数据的逻辑块的所确定逻辑地址。
15.如权利要求14中所述的数据处理设备,其中每当在该存储装置中写入或读出数据时,该控制装置产生该表格。
16.如权利要求14中所述的数据处理设备,包含在一个范围内的逻辑地址被转换为在该预先确定的区段中的物理地址。
17.如权利要求14中所述的数据处理设备,其中该数据处理设备还包括:
一个接口装置,用于将内部提供的并行数据转换为串行数据,并将它们提供给外部设备。
18.一种连至外部设备的数据存储器,包括:
一个其存储区分为多区段的存储装置,其中每个区段包括多个物理块;以及
一个根据来自所述外部设备的命令将数据写至或读自存储装置设备的控制装置;
所述控制装置根据该数据的预定段号确定被写入或读取的数据的逻辑块的逻辑地址,其中
所述控制装置在它的一个内部存储器中对在所述多个区段中的区段产生一个表格,其中包括用于要被写入或读取的数据的逻辑块的所确定的逻辑地址,所述产生的表格映射在所述区段中的物理块的物理地址和这些物理块的相应逻辑地址之间对应关系,其中
所述控制装置从所述产生的表格确定对应于来自所述外部设备的所述命令所针对的所述逻辑块的物理块的物理地址,以及其中
如果所述现有的表格不对应于包含用于要被写入或读取的数据的所述逻辑块的区段,则所述控制装置利用所述产生的表格改写在所述内部存储器中的现有的表格,以及其中
对每个区段产生该转换表,其中包括用于要被写入或读取的数据的逻辑块的所确定逻辑地址。
19.如权利要求18中所述的数据存储器,其中每当执行来自外部设备的命令时该控制装置即生成所述表格。
20.如权利要求18中所述的数据存储器,其中每个逻辑地址被存储在所述存储装置中的相应块中。
21.如权利要求18中所述的数据存储器,其中被包含在一个范围内的逻辑地址被转换为在预先确定区段中的绝对地址。
22.如权利要求18中所述的数据存储器,还包括:
一个接口装置,用于将由外部设备提供的串行数据转换为并行数据,同时将内部提供的并行数据转换为串行数据并将它们提供给外部设备。
23.一种数据处理***,其中包括:
数据存储器,其包括一个存储装置,该存储装置的存储区分为多区段,每区段包括多个物理块;以及
一个数据处理设备,其具有用于对存储装置写入或读取数据的控制装置,其中
所述控制装置根据该数据的预定段号确定被写入或读取的数据的逻辑块的逻辑地址,其中
所述控制装置在它的一个内部存储器中对在所述多个区段中的区段产生一个表格,其中包括用于要被写入或读取的数据的逻辑块的所确定的逻辑地址,所述产生的表格映射在所述区段中的物理块的物理地址和这些物理块的相应逻辑地址之间对应关系,其中
所述控制装置从所述产生的表格确定对应于来自所述外部设备的所述命令所针对的所述逻辑块的物理块的物理地址,以及其中
如果所述现有的表格不对应于包含用于要被写入或读取的数据的所述逻辑块的区段,则所述控制装置利用所述产生的表格改写在所述内部存储器中的现有的表格,以及其中
对每个区段产生该转换表,其中包括用于要被写入或读取的数据的逻辑块的所确定逻辑地址。
24.如权利要求23中所述的数据处理***,其中每当在该存储装置中写入或读出数据时,该控制装置产生该表格。
25.如权利要求23中所述的数据处理***,其中每个逻辑地址被存储在所述存储装置中的相应块中。
26.如权利要求23中所述的数据处理***,其中包含在一个范围内的逻辑地址被转换为在该预先确定的区段中的物理地址。
27.如权利要求23中所述的数据处理***,其中该数据处理设备还包括:
一个接口装置,用于将内部提供的并行数据转换为串行数据,并将它们提供给外部设备。
28.一种将数据写至或读自存储装置的数据处理方法,该存储装置的存储区分为多个区段,每区段包括多个物理块;该方法包括以下步骤:
根据数据的预定段号确定被写入或读取的数据的逻辑块的逻辑地址;
在一个内部存储器中对在所述多个区段中的区段产生一个表格,其中包括用于要被写入或读取的数据的逻辑块的所确定的逻辑地址,所述产生的表格映射在所述区段中的物理块的物理地址和这些物理块的相应逻辑地址之间对应关系;
如果所述现有的表格不对应于包含用于要被写入或读取的数据的所述逻辑块的区段,利用所述产生的表格改写在所述内部存储器中的现有的表格;以及
参照所述产生的表格以写入或读取该数据,其中
对每个区段产生所述表,其中包括用于要被写入或读取的数据的逻辑块的所确定逻辑地址。
29.如权利要求28中所述的方法,其中每个逻辑地址被存储在所述存储装置中的相应物理块中。
30.如权利要求28中所述的方法,其中被包含在一个范围内的逻辑地址被转换为在预先确定区段中的绝对地址。
31.一种数据处理设备,其连接到一个数据存储器,其包括一个存储装置,该存储装置的存储区分为多区段,每区段包括多个物理块,该数据处理设备包括:
用于向所述存储装置发送一条写或读数据的命令的控制装置;其中
所述控制装置根据该数据的预定段号确定被写入或读取的数据的逻辑块的逻辑地址,以及其中
所述控制装置在它的一个内部存储器中对在所述多个区段中的区段产生一个表格,其中包括用于要被写入或读取的数据的逻辑块的所确定的逻辑地址,所述产生的表格映射在所述区段中的物理块的物理地址和这些物理块的相应逻辑地址之间对应关系,其中
所述控制装置从所述产生的表格确定对应于要被写入或读取的数据的所述逻辑块的物理块的物理地址,以及其中
如果所述现有的表格不对应于包含用于要被写入或读取的数据的所述逻辑块的区段,则所述控制装置利用所述产生的表格改写在所述内部存储器中的现有的表格,以及其中
对每个区段产生该转换表,其中包括用于要被写入或读取的数据的逻辑块的所确定逻辑地址。
32.如权利要求31中所述的数据处理设备,其中每当在该存储装置中写入或读出数据时,该控制装置产生该表格。
33.如权利要求31中所述的数据处理设备,包含在一个范围内的逻辑地址被转换为在该预先确定的区段中的物理地址。
34.如权利要求31中所述的数据处理设备,其中该数据处理设备还包括:
一个接口装置,用于将内部提供的并行数据转换为串行数据,并将它们提供给外部设备。
CNB991088972A 1998-06-30 1999-06-30 数据存储器、数据处理***和方法 Expired - Lifetime CN1201231C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP18525698A JP4315488B2 (ja) 1998-06-30 1998-06-30 データ記憶装置、データ処理装置、データ処理システム並びにデータ処理方法
JP185256/1998 1998-06-30

Publications (2)

Publication Number Publication Date
CN1241786A CN1241786A (zh) 2000-01-19
CN1201231C true CN1201231C (zh) 2005-05-11

Family

ID=16167644

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB991088972A Expired - Lifetime CN1201231C (zh) 1998-06-30 1999-06-30 数据存储器、数据处理***和方法

Country Status (7)

Country Link
US (1) US6516400B1 (zh)
EP (1) EP0969378A3 (zh)
JP (1) JP4315488B2 (zh)
KR (1) KR100742849B1 (zh)
CN (1) CN1201231C (zh)
MY (1) MY126422A (zh)
TW (1) TW436771B (zh)

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1174881A1 (en) * 2000-06-22 2002-01-23 STMicroelectronics S.r.l. Integrated circuit for memory card and memory card using the circuit
DE10040267A1 (de) * 2000-08-17 2002-02-28 Philips Corp Intellectual Pty Prozessor-Speicher-System
US7058788B2 (en) * 2001-02-23 2006-06-06 Falconstor Software, Inc. Dynamic allocation of computer memory
KR100437609B1 (ko) * 2001-09-20 2004-06-30 주식회사 하이닉스반도체 반도체 메모리 장치의 어드레스 변환 방법 및 그 장치
US6711663B2 (en) * 2001-11-15 2004-03-23 Key Technology Corporation Algorithm of flash memory capable of quickly building table and preventing improper operation and control system thereof
KR100449708B1 (ko) 2001-11-16 2004-09-22 삼성전자주식회사 플래시 메모리 관리방법
US6704852B2 (en) * 2001-11-16 2004-03-09 Key Technology Corporation Control device applicable to flash memory card and method for building partial lookup table
KR100439507B1 (ko) * 2002-03-18 2004-07-09 삼성전기주식회사 고 용량 플래시 메모리 카드 시스템에서의 데이터 운영 방법
JP2004152279A (ja) * 2002-10-08 2004-05-27 Matsushita Electric Ind Co Ltd プログラム更新方法および端末装置
KR100457812B1 (ko) * 2002-11-14 2004-11-18 삼성전자주식회사 플래시 메모리, 그에 따른 플래시 메모리 액세스 장치 및방법
KR100546403B1 (ko) * 2004-02-19 2006-01-26 삼성전자주식회사 감소된 메모리 버스 점유 시간을 가지는 시리얼 플레쉬메모리 컨트롤러
KR100739760B1 (ko) 2005-11-23 2007-07-13 삼성전자주식회사 컴퓨터의 메모리 사용에 대한 정보를 제공하는 시스템 및방법
KR101011171B1 (ko) * 2005-12-28 2011-01-26 후지쯔 가부시끼가이샤 메모리 제어 방법, 기억 매체 및 장치와 정보 처리 장치
KR100781517B1 (ko) 2006-02-16 2007-12-03 삼성전자주식회사 비휘발성 메모리의 맵핑 정보 관리 장치 및 방법
KR100843133B1 (ko) 2006-09-20 2008-07-02 삼성전자주식회사 플래시 메모리에서 매핑 정보 재구성을 위한 장치 및 방법
KR100809320B1 (ko) 2006-09-27 2008-03-05 삼성전자주식회사 이종 셀 타입을 지원하는 비휘발성 메모리를 위한 맵핑정보 관리 장치 및 방법
KR100880425B1 (ko) 2007-02-13 2009-01-29 삼성전자주식회사 메모리 맵 테이블 서치 타임을 최소화 또는 줄일 수 있는방법 및 그에 따른 반도체 메모리 장치
CN101625643B (zh) * 2009-05-08 2012-01-04 四川和芯微电子股份有限公司 一种8051单片机地址映射方法
CN102043721B (zh) * 2010-05-12 2016-10-26 中颖电子股份有限公司 闪存存储管理方法
CN102841851B (zh) * 2012-07-19 2015-09-09 深圳市江波龙电子有限公司 闪存管理方法和闪存设备
CN103455442B (zh) * 2013-08-30 2016-06-08 华为技术有限公司 多通道先进先出缓存队列控制器及访问方法
KR20170058482A (ko) * 2015-11-18 2017-05-29 에스케이하이닉스 주식회사 메모리 시스템 및 메모리 시스템의 동작 방법

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5491806A (en) * 1990-06-26 1996-02-13 Lsi Logic Corporation Optimized translation lookaside buffer slice having stored mask bits
JPH0736759A (ja) * 1993-07-15 1995-02-07 Hitachi Ltd 半導体ファイルシステム
US5682495A (en) * 1994-12-09 1997-10-28 International Business Machines Corporation Fully associative address translation buffer having separate segment and page invalidation
JP3604466B2 (ja) * 1995-09-13 2004-12-22 株式会社ルネサステクノロジ フラッシュディスクカード
JP3702515B2 (ja) * 1995-12-04 2005-10-05 富士通株式会社 フラッシュメモリ制御方法及びフラッシュメモリ制御ユニット
JP3868585B2 (ja) * 1996-07-30 2007-01-17 シャープ株式会社 メモリ管理装置及びコンピュータ読み取り可能な記録媒体
JPH10124384A (ja) * 1996-08-28 1998-05-15 Toshiba Corp 不揮発性半導体メモリの制御方法
JP3718578B2 (ja) * 1997-06-25 2005-11-24 ソニー株式会社 メモリ管理方法及びメモリ管理装置
JP3552490B2 (ja) * 1997-09-17 2004-08-11 日本ビクター株式会社 フラッシュ型メモリを備えた記憶装置,フラッシュ型メモリの管理方法
US6112285A (en) * 1997-09-23 2000-08-29 Silicon Graphics, Inc. Method, system and computer program product for virtual memory support for managing translation look aside buffers with multiple page size support

Also Published As

Publication number Publication date
JP2000020391A (ja) 2000-01-21
US6516400B1 (en) 2003-02-04
EP0969378A3 (en) 2004-02-04
EP0969378A2 (en) 2000-01-05
JP4315488B2 (ja) 2009-08-19
KR100742849B1 (ko) 2007-07-25
TW436771B (en) 2001-05-28
MY126422A (en) 2006-09-29
KR20000006562A (ko) 2000-01-25
CN1241786A (zh) 2000-01-19

Similar Documents

Publication Publication Date Title
CN1201231C (zh) 数据存储器、数据处理***和方法
US10795811B2 (en) Method for managing a memory apparatus
US10082966B1 (en) Electronic storage device
CN1303498C (zh) 闪存控制器以及使用闪存介质来存储数据的处理设备
US8904090B2 (en) Non-volatile memory device, devices having the same, and method of operating the same
US9772797B2 (en) Buffer memory management method, memory control circuit unit and memory storage device
CN1441440A (zh) 在闪存设备中获得均匀的磨损调整的***和方法
CN1499530A (zh) 非易失性存储器***内有效允许失序写处理的方法和装置
CN106802867B (zh) 固态储存装置及其数据编程方法
CN1795437A (zh) 用于块内页面分组的方法及设备
US8489942B1 (en) Memory management method, and memory controller and memory storage device using the same
CN1652253A (zh) 存储卡和半导体器件
US20100217920A1 (en) Memory system and address allocating method of flash translation layer thereof
CN1900919A (zh) 地址映射方法和映射信息管理方法及其闪速存储器
TWI423022B (zh) 記憶體管理方法、記憶體控制器與記憶體儲存裝置
CN105308575A (zh) 用于错误校正码(ecc)错误处理的方法和装置
CN1538456A (zh) 闪存存取装置及方法
CN103389942A (zh) 控制装置、存储装置及存储控制方法
CN108733577A (zh) 存储器管理方法、存储器控制电路单元及存储器存储装置
CN1214326C (zh) 非易失性存储装置及其控制方法
US10025706B2 (en) Control device, storage device, and storage control method
CN105630687B (zh) 数据写入方法、存储器控制电路单元与存储器存储装置
JP2012068765A (ja) メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法
US9009389B2 (en) Memory management table processing method, memory controller, and memory storage apparatus
CN101030153A (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
CX01 Expiry of patent term

Granted publication date: 20050511

CX01 Expiry of patent term