CN1606097A - 闪速存储器控制装置、存储器管理方法、及存储器芯片 - Google Patents
闪速存储器控制装置、存储器管理方法、及存储器芯片 Download PDFInfo
- Publication number
- CN1606097A CN1606097A CNA2004100805793A CN200410080579A CN1606097A CN 1606097 A CN1606097 A CN 1606097A CN A2004100805793 A CNA2004100805793 A CN A2004100805793A CN 200410080579 A CN200410080579 A CN 200410080579A CN 1606097 A CN1606097 A CN 1606097A
- Authority
- CN
- China
- Prior art keywords
- page
- flash memory
- leaf
- data
- memory
- 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.)
- Granted
Links
- 230000015654 memory Effects 0.000 title claims abstract description 357
- 238000007726 management method Methods 0.000 title claims abstract description 28
- 238000006243 chemical reaction Methods 0.000 claims abstract description 10
- 238000000034 method Methods 0.000 claims description 25
- 238000012545 processing Methods 0.000 claims description 16
- 238000013519 translation Methods 0.000 claims description 16
- 230000004044 response Effects 0.000 claims description 10
- 238000012546 transfer Methods 0.000 claims description 6
- 230000005540 biological transmission Effects 0.000 claims description 3
- 230000001771 impaired effect Effects 0.000 claims 2
- 238000013500 data storage Methods 0.000 claims 1
- 238000011057 process analytical technology Methods 0.000 description 37
- 238000013507 mapping Methods 0.000 description 31
- 230000008569 process Effects 0.000 description 11
- 238000010586 diagram Methods 0.000 description 8
- 230000008901 benefit Effects 0.000 description 5
- 230000006870 function Effects 0.000 description 5
- 238000000354 decomposition reaction Methods 0.000 description 4
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 239000002699 waste material Substances 0.000 description 2
- 238000012937 correction Methods 0.000 description 1
- 238000013144 data compression Methods 0.000 description 1
- 230000006837 decompression Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000005611 electricity Effects 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/26—Sensing or reading circuits; Data output circuits
-
- 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/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0893—Caches characterised by their organisation or structure
-
- 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/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0238—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
- G06F12/0246—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
-
- 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/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0862—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with prefetch
-
- 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/72—Details relating to flash memory management
- G06F2212/7201—Logical to physical mapping or translation of blocks or pages
-
- 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/72—Details relating to flash memory management
- G06F2212/7203—Temporary buffering, e.g. using volatile buffer or dedicated buffer blocks
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Read Only Memory (AREA)
- Stored Programmes (AREA)
- Memory System (AREA)
Abstract
一种用于在串行闪速存储器中XIP的基于优先级的闪速存储器控制装置、使用其的存储器管理方法、及其存储器芯片。通过将优先级分配到串行闪速存储器的各个页,并且根据它们的优先级将从串行闪速存储器检索的页存储在系统存储器或高速缓存存储器来提供有效的存储器管理。使用根据本发明的闪速存储器控制装置的存储器管理方法,包括:如果从主控制单元接收用于读取给定逻辑地址的数据的请求,则通过参考预定的地址转换表来搜索相应的逻辑地址的数据;和根据搜索的结果从系统存储器或高速缓存存储器读取相应的逻辑地址的数据,并且将读取的数据发送到主控制单元。
Description
本申请要求已于2003年10月8日提交到韩国知识产权局的第10-2003-0069952号韩国专利申请的优先权,在这里该申请全部公开作为参考。
技术领域
本发明涉及一种用于在串行闪速存储器中XIP(本地执行)的基于优先级的闪速存储器控制装置、使用其的存储器管理方法、及其存储器芯片。更具体地讲,本发明涉及一种通过将优先级分配到串行闪速存储器的各个页,并且根据它们的优先级将从串行闪速存储器检索的页存储在系统存储器或高速缓存存储器中的有效的存储器管理而致使的系统性能的改进。
背景技术
通常,闪速存储器是非易失性存储器器件,从其数据能够被再次电删除,或在其数据能够被再次写入。闪速存储器具有比基于磁盘存储器的存储器件的功耗和尺寸要低的功耗和要小的尺寸。由于这个原因,闪速存储器已经被活跃地研究和开发作为磁盘存储器的替代品。
具体地讲,期待着闪速存储器将广泛地应用作为用于移动计算器件,如数码相机、移动电话、和个人数字助手(PDA)的存储器件。
根据制造方法,闪速存储器能够粗略地分类为具有在其中单元并行地置于位线和地线之间的结构的并行闪速存储器、和具有在其中单元串行地置于位线和地线之间的结构的串行闪速存储器。
其中,与并行闪速存储器相比,串行闪速存储器具有优点:具有高写入率,并且相对便宜;和能够被容易地制造成具有高容量。因此,串行闪速存储器已经被广泛地用于存储大容量的数据。
与将数据从其自由地读取、或将数据自由地写入到其的磁盘存储器不同,由于删除和读/写操作的执行基础彼此不一致,所以在串行闪速存储器中,基于块来执行删除操作,基于页来执行读/写操作。
因此,串行闪速存储器具有缺点:其没有提供不需要将数据转移到系统存储器而直接地执行写入的数据的本地执行功能(以下,称为“XIP”)。
然而,近来,通过使用预定的控制器串行闪速存储器已经适用于支持XIP功能。
具体地讲,如果将电施加到系统,则控制器从串行闪速存储器读取包含用于系统的初始引导的引导代码的页,然后将读取的页存储在缓存器中。如果系统的主控制单元请求引导代码,则控制器仅仅读取引导代码,然后将其提供到主控制单元。
此外,控制器响应于从主控制单元接收到控制命令来读取包含需求的数据的页,从读取的页提取需求的数据,然后将提取的数据发送到主控制单元。控制器还将读取的页存储在高速缓存存储器中,从而能够有效地访问读取的页的数据。
在以这种方式支持串行闪速存储器的XIP功能时,响应于由主控制单元的请求,控制器重复地执行将需求的数据发送到主控制单元并将从串行闪速存储器读取的页存储在高速缓存存储器中的处理。因此,在重复的处理期间,读取的页被连续地积累在高速缓存存储器中。
在这些处理中,高速缓存存储器根据预定的置换算法(例如,最近最少使用(LRU)、先进先出(FIFO)、或随机)来执行页置换。在这种情况下,直接映射技术被广泛地使用作为用于页置换的映射方法。
直接映射类型高速缓存存储器用相应于读取的页的存储器地址的高速缓存存储器的标记来存储读取的页。如果在将读取的页存储在高速缓存存储器期间,读取的页的数据和先前写入的页的数据存在冲突,则根据置换算法先前写入的页被删除,并且新读取的页被存储。
在这种情况下,如果系统的主控制单元请求删除的页的数据,则产生表示由主控制单元请求的数据不存在于高速缓存存储器的事实的高速缓存遗漏。因此,控制器应该再次访问串行闪速存储器,然后提交需求的数据,导致大量循环的浪费。
换言之,由于这样低效的存储器管理,导致包括在系统中频繁地发生的定时器中断、用于处理通信的时间关键中断、被频繁地检索的系统库、和必须在预定的时间周期中执行的实时请求(application)的数据与其他一般代码页被平等地对待。因此,存在问题:这样的处理降低了系统的全部性能,并且限制了系统的实时特性。
因此,需要一种根据各个页的数据的重要性来管理从串行闪速存储器读取的页的有效的存储器管理方法。
发明内容
构思本发明以解决上述问题。本发明的基本目的在于经通过对串行闪速存储器中的各个页分配优先级,并且根据它们的优先级将从存储器读取的页存储在系统存储器中或高速缓存存储器中的有效的存储器管理来改善系统的性能。
本发明的另一个目的在于通过经根据优先级的数据处理来防止在高速缓存存储器中发生高速缓存遗漏来降低高速缓存存储器中的遗漏率。
本发明的另一个目的在于通过降低在高速缓存存储器中的遗漏率以防止循环的浪费来保持系统的实时特性。
根据本发明,优先级分配到串行闪速存储器中的各个页。如果主控制单元请求给定逻辑地址的数据,则闪速存储器控制装置通过参考由系统存储器的映射信息组成的地址转换表来搜索需求的数据。
根据搜索的结果,闪速存储器控制装置读取在系统存储器或高速缓存存储器中有关的逻辑地址的数据,然后将读取的数据发送到主控制单元,或者从串行闪速存储器读取包含相应的数据的页,然后将请求的数据发送到主控制单元。
此外,闪速存储器控制装置根据它们的优先级将已经从串行闪速存储器读取的页存储在系统存储器或高速缓存存储器中,并且将改变的映射信息写入有关的地址转换表中。
在本发明中,由系统存储器的映射信息组成的地址转换表被限定为页地址转换表(以下,称为“第一PAT”),其中写入关于根据优先级从高速缓存存储器或串行闪速存储器转移到系统存储器,以在其中存储的页的映射信息。由高速缓存存储器的映射信息组成的地址转换表被限定为页地址转换表(以下,称为“第二PAT”),其中写入关于根据优先级从串行闪速存储器转移到高速缓存存储器,以在其中存储的页的映射信息。
此外,根据本发明,基于对页的主要数据的访问率、重要性等确定优先级,并且根据预定的优先级的级别由预定的等级来表示。
根据本发明的一方面,提供了一种串行闪速存储器,包括:扇区,表示由多个页组成并且数据在其中存储的数据区域;和扇区,表示具有关于数据区域的逻辑地址的信息的备用区域。每个页由具有在其中写入的主要数据的数据部分和在其中写入分配到主要数据的优先级的备用部分组成。
根据本发明的另一方面,提供了一种用于在串行闪速存储器中XIP的基于优先级的闪速存储器控制装置,其中,当主控制单元请求给定逻辑地址的数据时,通过参考预定的地址转换表来搜索需求的数据,并且根据搜索的结果,从系统存储器或高速缓存存储器读取相应的数据,然后将其发送到主控制单元,或者从串行闪速存储器读取包含相应的数据的页,然后将其发送到主控制单元。
在闪速存储器控制装置中,根据它们的优先级从串行闪速存储器读取的页可以存储在系统存储器或高速缓存存储器中,并且将改变的映射信息写入地址转换表中。
根据本发明的另一方面,提供了一种用于在串行闪速存储器中XIP的基于优先级的闪速存储器管理方法,包括步骤:如果从主控制单元接收用于读取给定逻辑地址的数据的请求,则通过参考预定的地址转换表来搜索相应的逻辑地址的数据;和根据搜索的结果从系统存储器或高速缓存存储器读取相应的逻辑地址的数据,并且将读取的数据发送到主控制单元。
该方法还可包括步骤:根据搜索的结果从串行闪速存储器读取包含相应的数据的页,并且将请求的数据发送到主控制单元。此外,该方法还可包括步骤:根据它们的优先级将从串行闪速存储器读取的页存储在系统存储器或高速缓存存储器中,并且将改变的映射信息写入地址转换表中。
根据本发明的另一方面,提供了一种闪速存储器芯片,包括:串行单元类型串行闪速存储器,由每个具有在其中写入主要数据的数据部分和在其中写入分配到主要数据的优先级的备用部分的页组成;和闪速存储器控制装置,用于根据它们的优先级将从串行闪速存储器读取的页存储在系统存储器或高速缓存存储器中,并且将改变的映射信息写入预定的地址转换表中。
附图说明
通过结合附图对优选的实施例进行下面的描述,本发明的以上和其他目的、特性及优点将会变得更清楚,其中:
图1示意性地示出根据本发明的一个实施例的串行闪速存储器的页结构;
图2是示意性地示出根据本发明的一个实施例的串行闪速访问系统的结构的方框图;
图3是示意性地示出图2所示的闪速存储器控制装置的方框图;
图4示意性地示出在控制器中的读的命令处理结构;
图5示意性地示出在控制器中的根据优先级的页处理结构;
图6是示意性地示出使用根据本发明的一个实施例的用于在串行闪速存储器中XIP的基于优先级的闪速存储器控制装置的存储器管理方法的流程图;
图7是示意性地示出使用根据本发明的另一个实施例的用于在串行闪速存储器中XIP的基于优先级的闪速存储器控制装置的存储器管理结构的方框图;和
图8是示意性地示出使用根据本发明的另一个实施例的用于在串行闪速存储器中XIP的基于优先级的闪速存储器控制装置的存储器管理结构的方框图。
具体实施方式
以下,将参考附图来详细地描述根据本发明的用于在串行闪速存储器中XIP的基于优先级的闪速存储器控制装置、使用其的存储器管理方法、及其存储器芯片。
尽管如使用包括预定地址转换表的闪速存储器控制装置而实现,以下将描述用于在串行闪速存储器中XIP的基于优先级的闪速存储器控制装置、使用其的存储器管理方法、及其存储器芯片,但是这仅仅是示例性的。本领域的技术人员应该明白:可以对根据先前分配的优先级将从串行闪速存储器读取的页存储在系统存储器中,并且将改变的映射信息写入用于系统存储器的地址转换表的存储器管理方法作出各种修改和等同物,由此,当响应于由主控制单元的请求而执行读取操作时,通过参考用于系统存储器的地址转换表能够搜索需求的数据。
串行闪速存储器主要分割成表示数据区域的扇区、和表示备用区域的扇区。数据写入数据区域中。关于串行闪速存储器的一般信息,如闪速存储器和存储器容量的模型、及写入数据区域中的数据的物理地址和与其相应的逻辑地址之间的映射信息被写入备用区域中。
写入数据区域中的数据可包括:用于引导操作系统(OS)的引导代码、OS/应用程序、用于执行写入OS区域中的程序的数据、和由用户输入的数据或当OS操作时产生的信号。
这样数据区域包括多个以预定大小分割的块。每个块包括多个页。
图1示意性地示出根据本发明一个实施例的串行闪速存储器的页结构。
如图1所示,串行闪速存储器100的页主要分割成其中写入主要数据的数据部分、和其中写入分配到主要数据的优先级的备用部分。
根据对页的主要数据的访问率、及其重要性来确定优先级,并且根据确定的优先级的级别由预定等级来表示该优先级。
即,如果确定优先级具有两个级别,则由高(H)或低(L)来表示。
例如,在当串行闪速存储器100是由528个字节组成的与非(NAND)闪速存储器时的情况下,该串行闪速存储器100的数据区域包括多个每个具有32页的块。
每页包括512字节的数据部分和16字节的备用部分。
图2是示意性地示出根据本发明的一个实施例的串行闪速存储器访问系统的结构的方框图。
如图2所示,串行闪速存储器访问系统包括:主控制单元300,其对串行闪速存储器100产生写或删除命令;闪速存储器控制装置500,其执行用于在串行闪速存储器100中支持XIP的操作控制,并且响应于主控制单元300的控制命令来直接访问串行闪速存储器100;和系统存储器700。
如果将电施加到闪速存储器控制装置500,则闪速存储器控制装置500扫描串行闪速存储器100的备用区域,产生在其上反映串行闪速存储器100的当前已写状态的映射表,然后将该表存储在高速缓存存储器中,以当访问串行闪速存储器100时来参考该表。
此外,当主控制单元300请求给定逻辑地址的数据时,闪速存储器控制装置500通过参考第一PAT来搜索需求的数据。
根据搜索结果,闪速存储器控制装置500从系统存储器700或高速缓存存储器读取相应的逻辑地址的数据,并且将读取的数据发送到主控制单元300,或者从串行闪速存储器100读取包含相应数据的页,并且将请求的数据发送到主控制单元300。
此外,闪速存储器控制装置500根据它们的优先级将从串行闪速存储器100读取的页存储在系统存储器中或高速缓存存储器中,并且将改变的映射信息写入第一PAT或第二PAT中。
例如,如果闪速存储器控制装置500从主控制单元300接收指示主控制单元300意图读取给定逻辑地址的数据的控制命令,则闪速存储器控制装置500通过参考第一PAT和第二PAT来搜索请求的逻辑地址。
作为搜索的结果,如果从第一PAT和第二PAT没有发现关于相应的逻辑地址的信息,则闪速存储器控制装置500从串行闪速存储器100读取包含需求的数据的页,然后通过读取的页将相应的数据发送到主控制单元300。
闪速存储器控制装置500然后将读取的页存储在闪速存储器中。此时,如果由于在与读取页的存储器地址相应的闪速存储器的标记处的存在页,导致发生标记冲突,则装置500将先前页和读取页的优先级互相比较。
作为比较的结果,如果先前页的优先级比读取页的优先级要高,则闪速存储器控制装置500将读取页存储在系统存储器700中,并且将映射信息写入第一PAT中。
相反,如果先前页的优先级比读取页的优先级要低,则闪速存储器控制装置500将存储在高速缓存存储器中的先前页转移到系统存储器700,以在那里存储,然后将改变的映射信息写入第一PAT中。此时,装置500将读取页存储在高速缓存存储器中,然后将改变的映射信息写入第二PAT中。
通常,系统存储器700可以是RAM,如DRAM、SDRAM、SRAM、或UtRAM。
图3是示意性地示出图2所示的闪速存储器控制装置的方框图。
如图3所示,闪速存储器控制装置500包括:系统接口单元510、高速缓存模块520、访问模块530、闪速存储器接口单元540、和控制器550。
系统接口单元510接收从主控制单元300产生的控制命令,并且响应于接收的控制命令来处理用于对主控制单元300提供操作的结果的信号的发送/接收。
高速缓存模块520包括:第一PAT 521、第二PAT 522、和高速缓存存储器523。
第一PAT 521指示系统存储器700的已写状态。从高速缓存存储器523或串行闪速存储器100转移到系统存储器700以在其中存储的页的逻辑地址和物理地址之间的映射信息被写入第一PAT 521中。
从串行闪速存储器100转移到高速缓存存储器523以在其中存储的页的逻辑地址和物理地址之间的映射信息被写入第二PAT 522中。
高速缓存存储器523包括:主高速缓存(没有显示)、和为减少高速缓存遗漏的发生而服务作为用于将数据从高速缓存存储器转移到主存储器件的缓存器的受损高速缓存(victim cache)(没有显示)。高速缓存存储器523通常由作为独立静态随机访问存储器(SRAM)芯片的L2-Cache实现。
当发生标记冲突时,根据本发明的受损高速缓存器将根据页置换算法输出的先前已写的页存储,从而减少了在高速缓存存储器中高速缓存遗漏的发生。
访问模块530读取包含用于初始引导在串行闪速存储器100中XIP的系统的引导代码的页,存储该读取页,然后将需求的引导代码发送到主控制单元300。访问模块530包括:引导加载器531、预取532、和错误检测代码/错误纠正代码(以下,称为“EDC/ECC”)533、和分解(Decomp)534。
引导加载器531使得有效的系统引导方便。如果加电,则引导加载器531检索OS程序和初始化代码,如写入串行闪速存储器100的引导区域中的用于系统引导的映像,然后将其存储在缓冲器中。当主控制单元300开始第一代码取循环,以请求读取引导代码时,引导加载器531将存储的初始化代码发送到主控制单元300,从而能够开始引导。
提供预取532、EDC/ECC 533、和分解534以增强闪速存储器控制装置500的性能。预取532预先从串行闪速存储器100检索被期待由主控制单元300请求的数据,然后将该数据存储在缓冲器中。EDC/ECC 533检测/纠正在发送/接收的数据中的错误。分解534对根据系统需求而需求的数据压缩和解压缩负责。
由于分解534是根据系统需求而提供的,所以如果必要可以将其省略。
闪速存储器接口单元540响应于主控制单元300的控制命令,执行将数据发送到串行闪速存储器100,或执行从串行闪速存储器100接收数据。
控制器550执行全部操作控制,从而通过各个部件能够实现串行闪速存储器100中XIP。控制器550通过参考第一和第二PAT 521和522来将需求的数据发送到主控制单元330,并且根据它们的优先级将从串行闪速存储器100读取的页存储在高速缓存存储器523或系统存储器700中。
图4示意性地示出了在控制器中读的命令处理结构。
如图4所示,如果从主控制单元300接收到通过其将读取写在串行闪速存储器100中的数据的控制命令,则为了访问数据,闪速存储器控制装置500的控制器550将请求数据的逻辑地址转换成物理地址。
因此,当控制器550从主控制单元300接收请求的逻辑地址时,控制器550从接收到的逻辑地址读取逻辑块号(LBN)。
然后,控制器550通过使用读取的LBN来在初始化处理中访问存储在高速缓存存储器523中的映射表,并且确定该LBN是否是映射表中的有效块。如果确定该LBN是有效块,则控制器550通过映射表来检测与LBN相应的物理块号(PBN)。
相反,如果确定该LBN不是映射表中的有效块,则控制器550检测另外的有效PBN。
此后,控制器550从接收的逻辑地址检测逻辑页号(LPN),组合检测的LPN和PBN,然后搜索第一PAT 521,以确定相应的LPN是否在其中存在。
作为搜索的结果,如果相应的LPN存在于第一PAT 521,则控制器550检测与其相应的物理页号(PPN)。
然后,控制器550组合检测的PPN和页偏移,以访问系统存储器700,然后确定写入与PPN相应的系统存储器700的物理地址的数据是否是有效值。
如果确定该数据是有效值,则控制器550读取写入系统存储器700的相应物理地址的数据,然后将读取的数据发送到主控制单元300。如果确定该数据不是有效值,则控制器550确定由主控制单元300请求的页没有存在于系统存储器700中。
如上所述,如果由主控制单元300请求的页没有存在于系统存储器700中,则控制器550通过参考第二PAT 522来确定由主控制单元300请求的数据的物理页号(PPN)是否存在于高速缓存存储器523中。
如果确定PPN存在于高速缓存存储器523中,则控制器550读取写入高速缓存存储器523的相应物理地址的数据,然后将读取的数据发送到主控制单元300。如果确定PPN没有存在于高速存储器523中,则控制器550使用物理地址(PBN和PPN)来访问串行闪速存储器100。
通过以上过程,由于需求的数据没有存储在高速缓存存储器523中,所以控制器550能够防止由高速缓存遗漏发生导致的系统存储器700的重复搜索所产生的循环的浪费。
此外,由于通过高速缓存存储器523的受损高速缓存,减少了高速缓存遗漏的机会,所以在控制器550中提高了高速缓存成功率。因此,可以提供系统的实时特性。
图5示意性地示出在控制器中根据优先级的页处理结构。
如图5所示,当响应于主控制单元300的请求,在读取操作中,从串行闪速存储器100读取包括预定数据的页时,闪速存储器控制装置500的控制器550根据其优先级来处理读取的页。
换言之,基于直接映射技术控制器550在与串行闪速存储器100中的物理地址相应的标记地址将读取的页存储在高速缓存存储器523中。
控制器550然后确定在将读取的页存储在高速缓存存储器523的处理期间是否发生标记冲突。如果发生标记冲突,则控制器550将冲突页的优先级彼此比较,并且将读取的页存储在高速缓存存储器523中或系统存储器700中。
例如,将存储器地址为#00000的页(A)存储在高速缓存存储器523中与其相应的标记地址#000处。
在该处理期间,控制器550确定是否发生标记冲突。
如果确定没有发生标记冲突,则完成页(A)在高速存储器523中的存储(①)。
此后,如果主控制单元300连续地请求写入串行闪速存储器100中的数据,则将存储器地址为#01000的页(F)存储在高速缓存存储器523中与其相应的标记地址#000处(②)。
在该处理中,控制器550确定是否发生标记冲突。这里,页(F)与通过写操作而先前写入的页(A)冲突。
如果发生这样的冲突,则控制器550将页(A)和页(F)的优先级彼此比较。
作为比较的结果,由于要被存储的页(F)优先级(L)低于页(A)的优先级(H),所以控制器550根据其优先级将页(F)存储在系统存储器700中。
此后,响应于由主控制单元300的连续的数据请求,控制器550从串行闪速存储器100读取有关的数据。在这种情况下,控制器550将存储器地址为#02000的页(M)存储在高速缓存存储器523中与其相应的标记地址#000处(③)。
在该过程中,控制器550确定是否发生标记冲突。这里,页(M)与通过写操作而先前写入的页(A)再次冲突。
与以上情况相同,如果发生这样的冲突,则控制器550将页(A)和页(M)的优先级彼此比较。
作为比较的结果,由于要被存储的页(M)的优先级(H)与页(A)的优先级(H)相同,所以控制器550根据页置换算法将先前写入的页(A)转移到受损高速缓存,以存储(④),并且将读取的页(M)存储在高速缓存存储器523的标记地址#000处。
在如上构造的根据本发明的用于在串行闪速存储器中XIP的基于优先级的闪速存储器控制装置500中,串行闪速存储器100和闪速存储器控制装置500可以集成为单一串行闪速存储器芯片。
由于其支持XIP功能,所以这样的串行闪速存储器芯片能够替代ROM或NOR闪速存储器。此外,该存储器芯片通过基于优先级的存储器管理方法能够更有效地执行XIP功能。
例如,在如上所述的根据本发明实施例的用于在串行闪速存储器中XIP的基于优先级的闪速存储器控制装置中,所有模块可用硬件或软件实现,或者其中一些可用软件实现。
因此,用硬件或软件实现根据本发明实施例的用于在串行闪速存储器中XIP的基于优先级的闪速存储器控制装置的事实并没有脱离本发明的精神和范围。这将是清楚的,即在不脱离本发明的精神和范围的情况下,可以对其作出包括在用硬件和/或软件实现中的改变和修改。
以下,将参考附图详细地描述使用如上构造的用于在串行闪速存储器中XIP的基于优先级的闪速存储器控制装置的存储器管理方法。
在使用用于在串行闪速存储器中XIP的基于优先级的闪速存储器控制装置的存储器管理方法中,如果施加电,则包含用于引导系统的引导代码的页被从串行闪速存储器100中读取,然后被缓冲。当主控制单元300请求引导代码时,该引导代码然后被发送到主控制单元300。以这种方式,在串行闪速存储器中支持XIP的初始化处理完成后,在从主控制单元300接收的控制命令的处理期间,执行存储器管理方法。
换言之,如果在系统通过初始化处理而被引导后,主控制单元300请求写入串行闪速存储器100中给定逻辑地址的数据,则执行从串行闪速存储器100读取的页的处理。
因此,在描述使用用于在串行闪速存储器中XIP的基于优先级的闪速存储器控制装置的存储器管理方法时,对认为脱离本发明的范围的初始化处理和与写/删除操作有关的处理的详细描述将被省略。
图6是示意性地示出使用根据本发明的一个实施例的用于在串行闪速存储器中XIP的基于优先级的闪速存储器控制装置的存储器管理方法的流程图。
如图6所示,如果闪速存储器控制装置500的控制器550从主控制单元300接收用于读取给定逻辑地址的数据的请求(S1),则其通过参考从串行闪速存储器100和第一PAT 521获得的映射表来将请求的逻辑地址转换成物理地址(S2)。
控制器550然后通过使用转换的物理地址来确定主控制单元300请求读取的数据的物理页地址(PPN)是否存在于第一PAT 521中(S3)。
如果确定该物理地址存在于第一PAT 521中,则控制器550访问系统存储器700,并且从系统存储器700的相应的物理地址读取页(S4)。
如果确定该物理地址没有存在于第一PAT 521中,则控制器550通过参考第二PAT 522来确定主控制单元300请求读取的数据的物理地址是否存在于高速缓存存储器523的主高速缓存中(S5)。
如果确定该相应的物理地址存在于主高速缓存中,则控制器550通过使用物理地址来访问主高速缓存,并且从主高速缓存的相应的物理地址读取页(S6)。
相反,如果确定相应的物理地址没有存在于主高速缓存中,则控制器550确定主控制单元300请求读取的数据的物理地址是否存在于高速缓存存储器523的受损高速缓存中(S7)。
如果确定相应的物理地址存在于受损高速缓存中,则控制器550通过使用物理地址来访问受损高速缓存,并且从受损高速缓存的相应的物理地址读取页(S8)。
如果相应的物理地址没有存在于受损高速缓存中,则控制器550访问串行闪速存储器100,并且从串行闪速存储器100的相应的物理地址读取页(S9)。
控制器550然后根据直接映射技术,在与串行闪速存储器100中的物理地址相应的标记地址,将读取的页存储于高速缓存存储器523的主高速缓存中(S10)。
此后,控制器550确定在要被写的页和先前存储在主高速缓存中相应的标记地址的页之间是否发生标记冲突(S11)。
如果确定没有标记冲突,则控制器550完成页在主高速缓存中的存储,并且将改变的映射信息写入第二PAT 522(S12)。
如果确定存在标记冲突,则控制器550将先前存储的页和读取的页的优先级彼此比较(S13)。基于比较的结果,控制器550确定先前存储的页的优先级是否高于读取的页的优先级(S14)。
如果确定先前存储的页的优先级高于读取的页的优先级,则控制器550将读取的页存储在系统存储器700中,并且将改变的映射信息写入第一PAT521中(S15)。
相反,如果先前存储的页的优先级低于读取的页的优先级,则控制器550将先前存储的页转移到高速缓存存储器523的受损高速缓存中,以在其中存储,然后将读取的页存储在高速缓存存储器523的主高速缓存中。
另外,控制器550将改变的映射信息写入第二PAT 522(S16)。
将参考图7示例性地详细描述根据本发明实施例的使用用于在串行闪速存储器中XIP的基于优先级的闪速存储器控制装置的存储器管理方法。
图7是示意性地示出使用根据本发明实施例的用于在串行闪速存储器中XIP的基于优先级的闪速存储器控制装置的存储器管理结构的方框图。
如图7所示,如果闪速存储器控制装置500的控制器550从主控制单元300接收通过其将读取写入串行闪速存储器100中的预定数据的控制命令(①),则其搜索系统存储器700,以通过参考第一PAT 521来确定请求的数据的物理地址是否存在于系统存储器700中(②)。
作为搜索的结果,如果相应的物理地址存在于系统存储器700中,则控制器550通过使用请求的数据的物理地址来访问系统存储器700(③),在相应的物理地址从系统存储器700读取数据,然后将该读取的数据发送到主控制单元300(④)。
相反,如果相应的物理地址没有存在于系统存储器700中,则控制器550搜索高速缓存存储器523的主高速缓存,以通过参考第二PAT 522确定请求的数据的物理地址是否存在于高速缓存存储器523的主高速缓存中(⑤)。
作为搜索的结果,如果相应的物理地址存在于主高速缓存中,则控制器550通过使用请求数据的物理地址来访问主高速缓存(⑥),在相应的物理地址从主高速缓存读取数据,并且然后将读取的数据发送到主控制单元300(⑦)。
相反,如果相应的物理地址没有存在于主高速缓存中,则控制器550通过使用请求的数据的物理地址来访问受损高速缓存(⑧)。
此后,控制器550确定相应的物理地址是否存在于受损高速缓存中。如果相应的物理地址存在于受损高速缓存中,则控制器550在相应的物理地址从受损高速缓存读取数据,然后将读取的数据发送到主控制单元300(⑨)。如果相应的物理地址没有存在于受损高速缓存中,则控制器550通过使用物理地址来访问串行闪速存储器100(⑩)。
然后,控制器550读取包含从串行闪速存储器100请求的数据的页,并且将请求的数据发送到主控制单元300。此外,控制器550根据它们优先级将从串行闪速存储器100读取的页存储在高速缓存存储器523中或系统存储器700中。
此外,控制器550将改变的映射信息写入第一PAT 521或第二PAT 522。
尽管根据本发明的用于串行闪速存储器中XIP的基于优先级的闪速存储器控制装置500、使用其的存储器管理方法、和其存储器芯片已经被描述,如使用包括第一PAT 521的闪速存储器控制装置500实现,但是第一PAT 521可以实现于系统上的给定存储器空间如系统存储器700而不是闪速存储器控制装置500。
图8是示意性地示出使用根据本发明的另一个实施例的用于在串行闪速存储器中XIP的基于优先级的闪速存储器控制装置的存储器管理结构的方框图。
如图8所示,即使在第一PAT 521与高速缓存模块520分离,并且独立地位于系统存储器中的情况下,执行与参考图7描述的相同的基于优先级闪速存储器管理处理。
根据以上描述的本发明,从串行闪速存储器读取的页根据预先分配到它们的优先级被存储在系统存储器中或高速缓存存储器中。因此,本发明提供了通过防止非需求的数据积累在高速缓存存储器中来有效地管理存储器的方法。
此外,根据本发明,数据以最大长度积累在高速缓存存储器中,以防止在高速缓存存储器中的高速缓存遗漏的发生。因此,存在优点:控制器的代码执行的性能能够被最大化,并且高速缓存存储器的遗漏率能够被降低。
根据本发明,由于高速缓存存储器的遗漏率被降低,所以循环的浪费能够被防止。因此,存在优点:系统的实时特性能够被保持。
此外,根据本发明,具有比具有相同性能的高速缓存存储器的容量要小的容量的存储器被需求。因此,本发明具有优点:可降低用于设计系统的成本,并且改善系统的性能。
尽管,结合在附图中示出的实施例描述了本发明,但是该实施例仅仅为示例性的。本领域的技术人员应该明白可以对其作出各种修改和改变。
因此,本发明的技术精髓和范围应该由所附的权利要求限定。
Claims (19)
1、一种串行闪速存储器,包括:
扇区,表示由多个页组成并且数据存储在其中的数据区域;和
扇区,表示具有关于数据区域的逻辑地址的信息的备用区域,
其中,每个页由具有在其中写入主要数据的数据部分、和在其中写入分配到主要数据的优先级的备用部分组成。
2、如权利要求1所述的串行闪速存储器,其中,基于对每页的主要数据的访问率、及页的主要数据的重要性中的至少一个来确定优先级。
3、一种用于在串行闪速存储器中XIP的基于优先级的闪速存储器控制装置,其中:
当主控制单元请求给定逻辑地址的数据时,通过参考预定的地址转换表来搜索请求的数据,并且
根据搜索的结果,从系统存储器或高速缓存存储器读取相应的数据,然后将其发送到主控制单元,或者从串行闪速存储器读取包含相应的数据的页,然后将其发送到主控制单元。
4、如权利要求3所述的装置,其中,根据它们的优先级从串行闪速存储器读取的页存储在系统存储器或高速缓存存储器中,并且将改变的映射信息写入地址转换表中。
5、如权利要求4所述的装置,其中,如果在将读取的页写入闪速存储器的处理期间发生标记冲突,则通过比较先前存储的页和读取的页的优先级,并且如果先前存储的页的优先级高于读取的页的优先级则通过将读取的页存储在系统存储器中,或者如果先前存储的页的优先级不高于读取的页的优先级则通过将先前存储的页转移到受损高速缓存并将读取的页存储在主高速缓存中,来根据它们的优先级将读取的页存储在系统存储器或高速缓存存储器中。
6、如权利要求3所述的装置,其中,地址转换表包括:
第一PAT,其中写入关于存储在系统存储器中的页的映射信息;和
第二PAT,其中写入关于存储在高速缓存存储器中的页的映射信息。
7、如权利要求6所述的装置,其中,第一PAT位于系统存储器中。
8、如权利要求6所述的装置,其中,第二PAT位于高速缓存模块中。
9、如权利要求3所述的装置,还包括:
高速缓存模块,其将从串行闪速存储器读取的页存储在高速缓存存储器中,并且具有其中写入关于读取的页的映射信息的地址转换表;和
控制器,其通过参考地址转换表来发送由主控制单元请求的数据,并且根据它们的优先级将从串行闪速存储器读取的页存储在高速缓存存储器或系统存储器中。
10、如权利要求9所述的装置,还包括:
系统接口单元,其可操作以从主控制单元接收控制命令,并且响应于接收到的控制命令发送操作的结果;
访问模块,其可操作以读取写入串行闪速存储器中的引导代码,并且将读取的引导代码存储在缓冲器中,所述的访问模块包括代码加载器,其当主控制单元请求引导代码时,可操作以发送引导代码,从而在串行闪速存储器中实现XIP;和
闪速存储器接口,其响应于主控制单元的控制命令,可操作以分别执行将数据发送到串行闪速存储器,或执行从串行闪速存储器接收数据。
11、如权利要求3所述的装置,其中,基于对每页的主要数据的访问率、及页的主要数据的重要性中的至少一个来确定优先级。
12、一种闪速存储器芯片,包括:
串行单元类型串行闪速存储器,其由每个具有在其中写入主要数据的数据部分和在其中写入分配到主要数据的优先级的备用部分的页组成;和
闪速存储器控制装置,其可操作以根据它们的优先级将从串行闪速存储器读取的页存储在系统存储器或高速缓存存储器中,并且将改变的映射信息写入预定的地址转换表中。
13、如权利要求12所述的闪速存储器芯片,其中,闪速存储器控制装置可操作以通过参考地址转换表来搜索由主控制单元请求的给定逻辑地址的数据,并且根据搜索的结果,从系统存储器或高速缓存存储器读取相应的数据并将该数据发送到主控制单元,或者从串行闪速存储器读取包含相应的数据的页并将该页发送到主控制单元。
14、一种用于在串行闪速存储器中XIP的基于优先级的闪速存储器管理方法,包括:
如果从主控制单元接收用于读取给定逻辑地址的数据的请求,则通过参考预定的地址转换表来搜索相应的逻辑地址的数据;和
根据搜索的结果从系统存储器或高速缓存存储器读取相应的逻辑地址的数据,并且将读取的数据发送到主控制单元。
15、如权利要求14所述的方法,还包括根据搜索的结果从串行闪速存储器读取包含相应的数据的页,并且将请求的数据发送到主控制单元。
16、如权利要求15所述的方法,还包括根据它们的优先级将从串行闪速存储器读取的页存储在系统存储器或高速缓存存储器中,并且将改变的映射信息写入地址转换表中。
17、如权利要求14所述的方法,其中,地址转换表包括:
第一PAT,其中写入关于存储在系统存储器中的页的映射信息;和
第二PAT,其中写入关于存储在高速缓存存储器中的页的映射信息。
18、如权利要求16所述的方法,其中,根据它们的优先级将读取的页存储在系统存储器或高速缓存存储器中的步骤,包括:
确定在将读取的页写入闪速存储器的处理期间是否发生标记冲突;
如果确定没有发生标记冲突,则将读取的页存储在闪速存储器中,或如果发生标记冲突,则将先前存储的页和读取的页的优先级彼此比较;和
如果确定先前存储的页的优先级高于读取的页的优先级,则将读取的页存储在系统存储器中,或如果先前存储的页的优先级不高于读取的页的优先级,则将先前存储的页转移到受损高速缓存中并将读取的页存储在主高速缓存中。
19、如权利要求16所述的方法,其中,基于对每页的主要数据的访问率、及页的主要数据的重要性中的至少一个来确定优先级。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR0369952 | 2003-10-08 | ||
KR200369952 | 2003-10-08 | ||
KR1020030069952A KR100562906B1 (ko) | 2003-10-08 | 2003-10-08 | 시리얼 플래시 메모리에서의 xip를 위한 우선순위기반의 플래시 메모리 제어 장치 및 이를 이용한 메모리관리 방법, 이에 따른 플래시 메모리 칩 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1606097A true CN1606097A (zh) | 2005-04-13 |
CN100593217C CN100593217C (zh) | 2010-03-03 |
Family
ID=34309561
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200410080579A Expired - Fee Related CN100593217C (zh) | 2003-10-08 | 2004-10-08 | 闪速存储器控制装置、存储器管理方法、及存储器芯片 |
Country Status (5)
Country | Link |
---|---|
US (1) | US20050080986A1 (zh) |
EP (1) | EP1522928A3 (zh) |
JP (1) | JP4044067B2 (zh) |
KR (1) | KR100562906B1 (zh) |
CN (1) | CN100593217C (zh) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101276367B (zh) * | 2007-03-30 | 2012-08-08 | 西门子信息技术解决方案及服务有限责任公司 | 用于在数据存储器上数字地存储数据的方法 |
CN103049389A (zh) * | 2012-12-14 | 2013-04-17 | 锐迪科科技有限公司 | Nand闪存控制器及其写入控制方法 |
CN103999038A (zh) * | 2011-12-28 | 2014-08-20 | 英特尔公司 | 用于在易失性存储器与非易失性存储器之间分布代码和数据存储的方法和设备 |
CN105843558A (zh) * | 2016-03-25 | 2016-08-10 | 福建联迪商用设备有限公司 | 处理流水文件的方法及系统 |
CN106549702A (zh) * | 2016-10-14 | 2017-03-29 | 上海微小卫星工程中心 | 用于卫星的数据存储机 |
CN107844267A (zh) * | 2016-09-19 | 2018-03-27 | 芬基波尔有限责任公司 | 缓冲区分配和存储器管理 |
CN108089817A (zh) * | 2016-11-23 | 2018-05-29 | 三星电子株式会社 | 存储系统及其操作方法和操作数据处理系统的方法 |
CN110007859A (zh) * | 2019-03-27 | 2019-07-12 | 新华三云计算技术有限公司 | 一种i/o请求处理方法、装置及客户端 |
CN111078286A (zh) * | 2018-10-19 | 2020-04-28 | 上海寒武纪信息科技有限公司 | 数据通信方法、计算系统和存储介质 |
CN112667558A (zh) * | 2019-10-15 | 2021-04-16 | 瑞昱半导体股份有限公司 | 处理系统与芯片内执行控制方法 |
Families Citing this family (33)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100493884B1 (ko) * | 2003-01-09 | 2005-06-10 | 삼성전자주식회사 | 시리얼 플래시 메모리에서의 현지 실행을 위한 제어 장치및 그 방법, 이를 이용한 플래시 메모리 칩 |
WO2006109421A1 (ja) * | 2005-04-08 | 2006-10-19 | Matsushita Electric Industrial Co., Ltd. | キャッシュメモリ |
US7523381B2 (en) * | 2005-09-01 | 2009-04-21 | Micron Technology, Inc. | Non-volatile memory with error detection |
JP2007080325A (ja) * | 2005-09-12 | 2007-03-29 | Matsushita Electric Ind Co Ltd | 半導体記憶装置 |
EP1777613B1 (en) | 2005-10-11 | 2021-11-24 | Infortrend Technology, Inc. | Pool spares for data storage virtualization subsystem |
KR20050107369A (ko) * | 2005-10-27 | 2005-11-11 | 서운식 | 모바일 기기를 위한 코드 직접 수행기능을 갖는 대용량저장장치 및 제어 방법 |
KR100804647B1 (ko) * | 2005-11-15 | 2008-02-20 | 삼성전자주식회사 | 병렬형 플래시 인터페이스를 지원하는 직렬형 플래시메모리 장치를 이용한 시스템 부팅 방법 및 장치 |
US8065563B2 (en) * | 2006-03-23 | 2011-11-22 | Mediatek Inc. | System for booting from a non-XIP memory utilizing a boot engine that does not have ECC capabilities during booting |
US7555678B2 (en) * | 2006-03-23 | 2009-06-30 | Mediatek Inc. | System for booting from a non-XIP memory utilizing a boot engine that does not have ECC capabilities during booting |
JP5137002B2 (ja) | 2007-01-25 | 2013-02-06 | 株式会社メガチップス | メモリコントローラ |
US7861139B2 (en) * | 2007-01-26 | 2010-12-28 | Micron Technology, Inc. | Programming management data for NAND memories |
KR100823171B1 (ko) * | 2007-02-01 | 2008-04-18 | 삼성전자주식회사 | 파티션된 플래시 변환 계층을 갖는 컴퓨터 시스템 및플래시 변환 계층의 파티션 방법 |
KR100817087B1 (ko) * | 2007-02-13 | 2008-03-27 | 삼성전자주식회사 | 플래시 메모리를 구비하는 스토리지 장치에서의 버퍼 캐시운용 방법 |
KR101466585B1 (ko) | 2008-07-10 | 2014-11-28 | 삼성전자주식회사 | 메모리 장치 및 메모리 장치의 관리 방법 |
US8504776B2 (en) * | 2008-08-29 | 2013-08-06 | Infineon Technologies Ag | Device and method for controlling caches |
JP4909963B2 (ja) * | 2008-09-09 | 2012-04-04 | 株式会社東芝 | 統合メモリ管理装置 |
US8725927B2 (en) * | 2008-10-15 | 2014-05-13 | Micron Technology, Inc. | Hot memory block table in a solid state storage device |
KR101739878B1 (ko) * | 2011-02-22 | 2017-05-26 | 삼성전자주식회사 | 컨트롤러, 이의 동작방법, 및 상기 컨트롤러를 포함한 메모리 시스템 |
US9268631B2 (en) | 2012-03-29 | 2016-02-23 | Intel Corporation | Adaptive moving read references for memory cells |
US9952879B2 (en) | 2012-08-30 | 2018-04-24 | Microsoft Technology Licensing, Llc | Application pre-layout in byte-addressable persistent random access memory |
US9740500B2 (en) * | 2012-08-30 | 2017-08-22 | Microsoft Technology Licensing, Llc | Layout system for operating systems using BPRAM |
KR101992934B1 (ko) * | 2012-11-14 | 2019-06-26 | 삼성전자주식회사 | 메모리 시스템 및 이의 동작 방법 |
JP6034183B2 (ja) * | 2012-12-27 | 2016-11-30 | 株式会社東芝 | 半導体記憶装置 |
CN105814548B (zh) * | 2014-07-14 | 2019-02-12 | 上海兆芯集成电路有限公司 | 具有使用不同编索引方案的主高速缓存器和溢出高速缓存器的高速缓存器系统 |
US20160259728A1 (en) * | 2014-10-08 | 2016-09-08 | Via Alliance Semiconductor Co., Ltd. | Cache system with a primary cache and an overflow fifo cache |
US20160188534A1 (en) * | 2014-12-31 | 2016-06-30 | Samsung Electronics Co., Ltd. | Computing system with parallel mechanism and method of operation thereof |
US10234927B2 (en) | 2015-11-12 | 2019-03-19 | International Business Machines Corporation | Storage system power usage |
US9823854B2 (en) * | 2016-03-18 | 2017-11-21 | Qualcomm Incorporated | Priority-based access of compressed memory lines in memory in a processor-based system |
US10296256B2 (en) | 2016-07-14 | 2019-05-21 | Google Llc | Two stage command buffers to overlap IOMMU map and second tier memory reads |
TWI616755B (zh) * | 2016-09-06 | 2018-03-01 | 宏碁股份有限公司 | 儲存裝置及其資料映射方法 |
US10719447B2 (en) * | 2016-09-26 | 2020-07-21 | Intel Corporation | Cache and compression interoperability in a graphics processor pipeline |
EP3528510B1 (en) | 2016-10-13 | 2022-02-09 | Panasonic Intellectual Property Management Co., Ltd. | Flat speaker and display device |
US10282436B2 (en) * | 2017-01-04 | 2019-05-07 | Samsung Electronics Co., Ltd. | Memory apparatus for in-place regular expression search |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5568423A (en) * | 1995-04-14 | 1996-10-22 | Unisys Corporation | Flash memory wear leveling system providing immediate direct access to microprocessor |
GB2291990A (en) * | 1995-09-27 | 1996-02-07 | Memory Corp Plc | Flash-memory management system |
JP3707854B2 (ja) * | 1996-03-01 | 2005-10-19 | 株式会社東芝 | キャッシュ機能を有するコンピュータ及びキャッシュメモリ制御方法 |
JPH10154101A (ja) * | 1996-11-26 | 1998-06-09 | Toshiba Corp | データ記憶システム及び同システムに適用するキャッシュ制御方法 |
EP1182551B1 (en) * | 2000-08-21 | 2017-04-05 | Texas Instruments France | Address space priority arbitration |
US7617352B2 (en) * | 2000-12-27 | 2009-11-10 | Tdk Corporation | Memory controller, flash memory system having memory controller and method for controlling flash memory device |
-
2003
- 2003-10-08 KR KR1020030069952A patent/KR100562906B1/ko not_active IP Right Cessation
-
2004
- 2004-03-31 JP JP2004106979A patent/JP4044067B2/ja not_active Expired - Fee Related
- 2004-07-09 US US10/886,690 patent/US20050080986A1/en not_active Abandoned
- 2004-10-07 EP EP04256204A patent/EP1522928A3/en not_active Withdrawn
- 2004-10-08 CN CN200410080579A patent/CN100593217C/zh not_active Expired - Fee Related
Cited By (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101276367B (zh) * | 2007-03-30 | 2012-08-08 | 西门子信息技术解决方案及服务有限责任公司 | 用于在数据存储器上数字地存储数据的方法 |
CN103999038A (zh) * | 2011-12-28 | 2014-08-20 | 英特尔公司 | 用于在易失性存储器与非易失性存储器之间分布代码和数据存储的方法和设备 |
CN103999038B (zh) * | 2011-12-28 | 2017-05-10 | 英特尔公司 | 用于在易失性存储器与非易失性存储器之间分布代码和数据存储的方法和设备 |
CN103049389A (zh) * | 2012-12-14 | 2013-04-17 | 锐迪科科技有限公司 | Nand闪存控制器及其写入控制方法 |
CN103049389B (zh) * | 2012-12-14 | 2016-08-03 | 锐迪科科技有限公司 | Nand闪存控制器及其写入控制方法 |
CN105843558A (zh) * | 2016-03-25 | 2016-08-10 | 福建联迪商用设备有限公司 | 处理流水文件的方法及系统 |
CN105843558B (zh) * | 2016-03-25 | 2018-07-24 | 福建联迪商用设备有限公司 | 处理流水文件的方法及系统 |
WO2017161795A1 (zh) * | 2016-03-25 | 2017-09-28 | 福建联迪商用设备有限公司 | 处理流水文件的方法及系统 |
CN107844267A (zh) * | 2016-09-19 | 2018-03-27 | 芬基波尔有限责任公司 | 缓冲区分配和存储器管理 |
CN106549702A (zh) * | 2016-10-14 | 2017-03-29 | 上海微小卫星工程中心 | 用于卫星的数据存储机 |
CN106549702B (zh) * | 2016-10-14 | 2020-05-19 | 上海微小卫星工程中心 | 用于卫星的数据存储机 |
CN108089817A (zh) * | 2016-11-23 | 2018-05-29 | 三星电子株式会社 | 存储系统及其操作方法和操作数据处理系统的方法 |
US11644992B2 (en) | 2016-11-23 | 2023-05-09 | Samsung Electronics Co., Ltd. | Storage system performing data deduplication, method of operating storage system, and method of operating data processing system |
CN108089817B (zh) * | 2016-11-23 | 2023-12-19 | 三星电子株式会社 | 存储系统及其操作方法和操作数据处理系统的方法 |
CN111078286A (zh) * | 2018-10-19 | 2020-04-28 | 上海寒武纪信息科技有限公司 | 数据通信方法、计算系统和存储介质 |
CN111078286B (zh) * | 2018-10-19 | 2023-09-01 | 上海寒武纪信息科技有限公司 | 数据通信方法、计算系统和存储介质 |
CN110007859A (zh) * | 2019-03-27 | 2019-07-12 | 新华三云计算技术有限公司 | 一种i/o请求处理方法、装置及客户端 |
CN110007859B (zh) * | 2019-03-27 | 2022-04-08 | 新华三云计算技术有限公司 | 一种i/o请求处理方法、装置及客户端 |
CN112667558A (zh) * | 2019-10-15 | 2021-04-16 | 瑞昱半导体股份有限公司 | 处理系统与芯片内执行控制方法 |
Also Published As
Publication number | Publication date |
---|---|
KR100562906B1 (ko) | 2006-03-21 |
KR20050034127A (ko) | 2005-04-14 |
JP2005115910A (ja) | 2005-04-28 |
CN100593217C (zh) | 2010-03-03 |
EP1522928A3 (en) | 2008-12-03 |
JP4044067B2 (ja) | 2008-02-06 |
EP1522928A2 (en) | 2005-04-13 |
US20050080986A1 (en) | 2005-04-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1606097A (zh) | 闪速存储器控制装置、存储器管理方法、及存储器芯片 | |
CN1276358C (zh) | 用于存储设备的地址转换单元 | |
CN1282089C (zh) | 控制串行快闪存储器中适当执行的装置和方法及相应芯片 | |
CN100347685C (zh) | 用于将数据写入快闪存储设备的半导体存储器的装置和方法 | |
CN1295622C (zh) | 地址映射方法和映射信息管理方法及其闪速存储器 | |
US8966156B2 (en) | Memory device, memory system and mapping information recovering method | |
CN1152287C (zh) | 二进制程序转换设备和转换方法 | |
CN1306420C (zh) | 利用永久历史页表数据预取数据到高速缓存的装置和方法 | |
CN1315060C (zh) | 储存存储器型式数据的转译旁视缓冲器 | |
CN1846200A (zh) | 在处理器中用于减少功耗的微变换检测缓冲器及微标记符 | |
JP5762930B2 (ja) | 情報処理装置および半導体記憶装置 | |
JP2012108912A (ja) | データ格納装置、使用者装置及びそれの住所マッピング方法 | |
CN1504896A (zh) | 在非易失性存储器系统中执行块高速缓冲存储的方法和装置 | |
CN1700188A (zh) | 用于控制非易失性存储器的控制器 | |
CN1306414C (zh) | 闪速存储器和闪速存储器的映射控制设备和方法 | |
CN1538456A (zh) | 闪存存取装置及方法 | |
JP2013030254A (ja) | 半導体記憶装置、情報処理装置 | |
CN1940922A (zh) | 一种提高搜索信息速度的方法及系统 | |
CN1705936A (zh) | 用于分割一逻辑块的方法及设备 | |
CN1149487C (zh) | 一并擦除型非易失性存储器和快速存储器的控制方法 | |
CN1879092A (zh) | 高速缓冲存储器及其控制方法 | |
CN1934541A (zh) | 采用压缩的缓存线的信息价值的多处理器计算系统以及能够在所述系统中使用的处理器 | |
CN1525391A (zh) | 非易失性存储卡 | |
CN1763731A (zh) | 高速缓冲存储器系统 | |
CN1704912A (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: 20100303 Termination date: 20141008 |
|
EXPY | Termination of patent right or utility model |