CN101297276A - 具有本地执行功能和存储功能的大容量存储设备 - Google Patents

具有本地执行功能和存储功能的大容量存储设备 Download PDF

Info

Publication number
CN101297276A
CN101297276A CNA2006800399655A CN200680039965A CN101297276A CN 101297276 A CN101297276 A CN 101297276A CN A2006800399655 A CNA2006800399655 A CN A2006800399655A CN 200680039965 A CN200680039965 A CN 200680039965A CN 101297276 A CN101297276 A CN 101297276A
Authority
CN
China
Prior art keywords
memory
function
controller
interface
storage
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
CNA2006800399655A
Other languages
English (en)
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.)
MGINE CO Ltd
Original Assignee
MGINE CO Ltd
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 MGINE CO Ltd filed Critical MGINE CO Ltd
Publication of CN101297276A publication Critical patent/CN101297276A/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/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0866Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B62LAND VEHICLES FOR TRAVELLING OTHERWISE THAN ON RAILS
    • B62BHAND-PROPELLED VEHICLES, e.g. HAND CARTS OR PERAMBULATORS; SLEDGES
    • B62B3/00Hand carts having more than one axis carrying transport wheels; Steering devices therefor; Equipment therefor
    • B62B3/04Hand carts having more than one axis carrying transport wheels; Steering devices therefor; Equipment therefor involving means for grappling or securing in place objects to be carried; Loading or unloading equipment
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B62LAND VEHICLES FOR TRAVELLING OTHERWISE THAN ON RAILS
    • B62BHAND-PROPELLED VEHICLES, e.g. HAND CARTS OR PERAMBULATORS; SLEDGES
    • B62B3/00Hand carts having more than one axis carrying transport wheels; Steering devices therefor; Equipment therefor
    • B62B3/002Hand carts having more than one axis carrying transport wheels; Steering devices therefor; Equipment therefor characterised by a rectangular shape, involving sidewalls or racks
    • B62B3/005Details of storage means, e.g. drawers, bins or racks
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B62LAND VEHICLES FOR TRAVELLING OTHERWISE THAN ON RAILS
    • B62BHAND-PROPELLED VEHICLES, e.g. HAND CARTS OR PERAMBULATORS; SLEDGES
    • B62B5/00Accessories or details specially adapted for hand carts
    • B62B5/06Hand moving equipment, e.g. handle bars
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B65CONVEYING; PACKING; STORING; HANDLING THIN OR FILAMENTARY MATERIAL
    • B65BMACHINES, APPARATUS OR DEVICES FOR, OR METHODS OF, PACKAGING ARTICLES OR MATERIALS; UNPACKING
    • B65B67/00Apparatus or devices facilitating manual packaging operations; Sack holders
    • B65B67/12Sack holders, i.e. stands or frames with means for supporting sacks in the open condition to facilitate filling with articles or materials
    • B65B67/1222Sack holders, i.e. stands or frames with means for supporting sacks in the open condition to facilitate filling with articles or materials characterised by means for suspending sacks, e.g. pedal- operated
    • B65B67/1233Clamping or holding means
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B65CONVEYING; PACKING; STORING; HANDLING THIN OR FILAMENTARY MATERIAL
    • B65FGATHERING OR REMOVAL OF DOMESTIC OR LIKE REFUSE
    • B65F1/00Refuse receptacles; Accessories therefor
    • B65F1/14Other constructional features; Accessories
    • B65F1/141Supports, racks, stands, posts or the like for holding refuse receptacles
    • B65F1/1415Supports, racks, stands, posts or the like for holding refuse receptacles for flexible receptables, e.g. bags, sacks
    • 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
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B65CONVEYING; PACKING; STORING; HANDLING THIN OR FILAMENTARY MATERIAL
    • B65FGATHERING OR REMOVAL OF DOMESTIC OR LIKE REFUSE
    • B65F2210/00Equipment of refuse receptacles
    • B65F2210/132Draining means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/20Employing a main memory using a specific memory technology
    • G06F2212/202Non-volatile memory
    • G06F2212/2022Flash memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/21Employing a record carrier using a specific recording technology
    • G06F2212/214Solid state disk

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Mechanical Engineering (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Transportation (AREA)
  • Chemical & Material Sciences (AREA)
  • Combustion & Propulsion (AREA)
  • Read Only Memory (AREA)
  • Memory System (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Telephone Function (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

本发明涉及一种用于具有本地执行功能和存储功能的移动电话的大容量存储设备。这种具有本地执行本地执行功能和存储功能的大容量存储设备包括划分为用于存储程序代码的本地执行区域和用于存储大容量数据的存储区域的NAND闪存;和控制器,用于控制本地执行区域,使得在来自主机的随机存取请求下,主机可以通过NOR接口访问本地执行区域,并执行存储接口功能,使得在来自主机的块单元存取请求下,主机可以通过存储接口访问在块单元中的存储区域。

Description

具有本地执行功能和存储功能的大容量存储设备
技术领域
本发明涉及一种用于具有本地执行功能和存储功能的移动电话的大容量存储设备,尤其涉及一种用于具有本地执行功能和存储功能的移动电话的大容量存储设备,其中NAND闪存被划分为用于执行程序代码的本地执行(execute-in-place,XIP)区域和用于存储大容量数据的存储区域,并实现了用于直接仲裁和控制本地执行功能和存储控制功能的控制器,从而能够在一个NAND闪存中实现NOR闪存和NAND闪存中每一种功能。
背景技术
通常,闪存是一种非易失性存储器,例如ROM(Read only memory),其中在没有供电的情况下也能保存记录一次的内容并提供写入功能。闪存分为NOR闪存和NAND闪存,其中NOR闪存具有在位线和地线之间并行布置的基本单元,而NAND闪存具有串行布置的基本单元。
NOR闪存通过与基本单元顺序无关地读写任意地址的随机存取方式在bite单元中访问。但是,由于每个基本单元需要接触电极,因此与NAND闪存相比具有基本单元区域很大的缺陷。
在NAND闪存中,选择相应的块,然后,读取相互串联连接的每一个基本单元。因此,在块单元中可以访问NAND闪存。
这里,在NAND闪存中,“块”表示通过一次删除操作能够删除的单元,“页”表示能够在读/写操作过程中能够读或写的数据大小。
同NOR闪存相比,NAND闪存具有快速、低价和大容量的优点,由此可以作为大容量存储设备广泛应用。但是,其不可能在bite单元中访问,并且无法提供能够直接执行所记录数据而不用将其移动到主存储器的本地执行功能。
因此,NAND闪存用作辅助数据存储设备,而将用于***引导的引导代码存储在具有本地执行功能的NOR闪存中。
图1是表示用于移动电话的常规大容量存储设备的框图。
在图1中所示,如上所述,NAND闪存200用作辅助数据存储设备,而将在CPU100(Central Processing Unit)中用于***引导的引导代码和用于控制作为存储设备的NAND闪存的软件存储在NOR闪存中。
DRAM400是用于该程序和***操作中的主存储器。这里,将用于控制NAND闪存的程序移到DRAM400中执行。
但是,传统大容量存储设备存在的缺陷为:为了存储程序而需要价格高、容量低的一个单独的NOR闪存。
为了解决该问题,申请号为10-2001-54988的韩国专利公开了将例如引导代码等程序代码存入NAND闪存中,然后程序执行过程中将相应程序代码复制到主存储器中并在bite单元中读出,由此执行该程序。
但是,在上述技术中,由于在***引导过程中为了执行该引导代码需要将引导代码移到主存储器中,因此存在执行时间延迟的问题。同时,由于引导代码被移到主存储器中,减少了主存储器的可使用存储空间。
为了解决该问题,韩国专利号10-493884公开了具有预定存储容量的串行闪存控制器设备,该设备可以访问到串行闪存以读取属于必要数据的整页,以便将所需数据传输到主控制器或者执行该所需数据以支持在串行闪存中的本地执行功能。
在该韩国专利中,由于NAND闪存能够用作NOR闪存,因此在降低成本和提高执行速度方面具有很大优点。但是,仍然存在需要分别制造用于存储程序代码的存储器和用于存储大容量数据的存储器的问题。
因此,急需一种能够在一个存储器中存储程序代码和大容量数据的大容量存储设备。
发明内容
技术问题
因此本发明用以解决现有技术中存在的上述问题,本发明的目的在于提供一种用于具有本地执行功能和存储功能的移动电话的大容量存储设备,其中将NAND闪存划分成用于执行程序代码的本地执行区域和用于存储大容量数据的存储区域,并实现了用于直接仲裁和控制本地执行功能和存储控制功能的控制器,由此能够在一个NAND闪存中实现NOR闪存和NAND闪存的这两种功能。
技术方案
为了实现该目的,本发明提供一种具有本地执行功能和存储功能的大容量存储设备,其包括:
NAND闪存,其划分为存储程序代码的本地执行(execute-in-place,XIP)区域和存储大容量数据的存储区域;和
控制器,其用于控制本地执行区域,使得在来自主机的随机存取请求下主机可以通过NOR接口端口访问本地执行区域,并执行存储接口功能,使得在来自主机的块单元存取请求下主机可以通过存储接口访问在块单元中的存储区域。
优选地,该控制器包括:
本地执行存储控制器,其通过NOR接口连接到主驱动器,用于控制本地执行区域,使得在来自主机的随机存取请求下使主机能够访问本地执行区域;
高速缓冲存储器,其用于暂时存储从主机和本地执行区域接收的数据;
存储控制器,其通过存储接口连接到主机执行存储接口功能,使得在来自主机的块单元随机存取请求下主机可以访问块单元中的存储区域;
磁盘缓冲器,其用于暂时存储从主机和存储区域接收的数据;
***控制器,其用于根据从主机请求的数据存取方式选择性地驱动本地执行存储控制器和存储控制器,并控制整个电路操作;以及
NAND控制器,其插在***控制器和NAND闪存之间,根据NAND接口方式控制NAND闪存。
优选地,该本地执行存储器控制器包括:
NOR主驱动器,其用于支持在NOR闪存接口的请求下的任何操作,为了实现本地执行更新存储管理器列表;和
本地执行管理器,其用于将主机请求的存取地址转换为物理地址,并在坏块上执行存储管理操作;
该存储控制器包括:
存储主驱动器,其用于管理与存储相关的协议并将与存储相关的信息转换成适于NAND闪存的任何数据形式,以及
存储管理器,其用于将主机请求的存取地址转换成逻辑单元号(Logical Unit Number,LUN),并在坏块上执行存储管理操作;
***控制器,其用于将从本地执行存储控制器接收的物理地址以及从存储控制器接收的逻辑单元号转换成要发送到NAND控制器的块页地址。
优选地,该NAND控制器包括:闪存转换层,其用于将请求的物理地址和逻辑单元号转换成I/O命令和块地址,并管理和控制NAND闪存物理状态。
优选地,在NOR接口和存储接口中,地址端口的分线、数据线、输出驱动线和写驱动线可以共用。
优选地,该NOR接口和存储接口进一步包括:等待信号线,其用于解决主机数据读取时间和NAND闪存块单元中数据存取时间之间的差。
有益效果
因此,将NAND闪存划分成用于执行程序代码的本地执行区域和用于存储大容量数据的存储区域,并实现了用于直接仲裁和控制本地执行功能和存储控制功能的控制器,由此能够在一个NAND闪存中实现NOR闪存和NAND闪存中的每一种功能。
附图说明
通过在下文中结合附图的具体描述,本发明的上述以及其它目的、特征和优点将更清楚,其中:
图1是表示用于移动电话的常规大容量存储设备的框图;
图2是表示根据本发明一实施例的用于移动电话的大容量存储设备的框图;
图3是表示根据本发明另一实施例的用于移动电话的大容量存储设备的框图;
图4是表示本发明接口结构的框图;
图5是从CPU的角度表示本发明用于移动电话的大容量存储设备结构的原理图;
图6是表示根据本发明控制器的示意性结构的分层视图;
图7是表示图6的控制器的具体结构的框图;和
图8是表示根据本发明控制的信号的波形图。
具体实施方式
下面将参照附图具体介绍本发明的优选实施例。
图2是表示根据本发明一实施例的用于移动电话的大容量存储设备的框图。
如图2所示,本发明一实施例的用于移动电话的大容量存储设备包括CPU10、NAND闪存30、***CPU 10和NAND闪存30之间的控制器20,以及作为主存储器直接连到CPU 10的DRAM35(Dynamic RandomAccess Memory)。
本发明的NAND闪存30划分为用于存储例如引导代码等程序代码的本地执行区域31和用于存储大容量数据的存储区域33。这里,可以根据条件或其目的改变本地执行区域31和存储区域33的划分比率。
控制器20用于控制本地执行区域31,使得在来自CPU 10的随机存取请求下使CPU 10访问本地执行区域31。同样,该控制器还以如下方式执行存储接口功能,使得在来自CPU 10的块单元随机存取请求下使CPU 10访问存储区域33。其具体结构将在下面图6和图7中说明进行介绍。
以多片封装形式将控制器20和NAND闪存30安装在一个半导体封装中。在该大容量存储设备中,由于不需要单独的主驱动器控制NAND闪存30,因此可以对用户的使用提供便利。
图3是表示根据本发明另一实施例的用于移动电话的大容量存储设备的框图。
如图3所示,NAND闪存30和DRAM35通过控制器20连接到CPU10(主机)上。在这种大容量存储设备的结构中,同样以多片封装的形式将控制器20和NAND闪存30安装在一个半导体封装中。此外,因为不需要单独的主驱动器控制NAND闪存30,由此可以对用户的使用提供便利。
图4是表示本发明接口结构框图。
如图4所示,根据本发明的控制器20包括用于和CPU 10连接的NOR接口40、存储接口50、以及用于和NAND闪存30连接的NAND接口60。
该NOR接口40包括作为访问程序代码接口的执行本地执行功能的片选端口(CS_XIP),输出控制端口(OE),用于在NAND闪存30中记录数据的写控制端口(WE),用于输入读入或记录地址数据的地址端口(ADDR),用于输入和输出读出或记录数据的数据端口(DQ),以及用于为了解决在CPU 10的数据读取时间和NAND闪存30中块单元的数据存取时间之间差别而向CPU 10发送等待信号的等待端口(WAIT)。
该存储接口50包括用于通过CPU 10执行存储接口控制功能的片选端口(CS_IDE),用于执行DMA(Direct Memory Access)功能的DMA请求端口(DREQ),以及DMA确认端口(DACK)等。
在该存储接口50中,可以使用不同配置的大容量存储接口,例如IDE/ATA、硬盘方式、SD(Security Digital)卡接口、多媒体卡(MMC)接口、存储条接口等。
在本发明的实施例中,采用IDE/ATA协议。IDE/ATA协议包括用作硬件接口标准的IDE(intelligent drive electronics)和用作协议标准的ATA(advanced technology attachment)。
在存储接口50中,输出控制端口(OE)、等待控制端口(WE)、地址端口分线(ADDR)、数据端口(DQ)和等待端口(WAIT)在NOR接口端口中可以共用,由此可以减少连接端口的数量并且能够提高运行效率。
对于地址端口,提供本地执行功能的NOR接口40具有26条地址线,而使用IDE/ATA接口的存储接口50仅将地址线中的3条线(0至2)用于寻址轨道和扇区。
NAND接口60包括作为NAND闪存存取接口的片选端口(CE),用于输入和输出地址、数据和命令的输入/输出端口(I/O 0-7),用于锁定通过输入/输出端口输入的命令的命令锁定驱动端口(CLE),用于锁定通过输入/输出端口(I/O 0-7)输入的地址的地址锁定驱动端口(ALE),用于将通过输入/输出端口(I/O 0-7)输入的数据记录到NAND闪存30中的写驱动端口(WE),用于传输通过输入/输出端口(I/O 0-7)输出的数据的读驱动端口(RE),以及用于显示当前NADN闪存30的准备状态的可用和占用端口(R/B)。
图5是从CPU的角度表示本发明用于移动电话的大容量存储设备结构的原理图。
如图5所示,其中CPU 10连接到根据本发明的用于移动电话的大容量存储设备,由于CPU 10是分别通过NOR接口和存储接口连接到本地执行区域31和存储区域33,所以CUP 10将该大容量存储器识别为两个设备,即一个用于本地执行的闪存和一个用于硬盘。
换句话说,CPU 10将本地执行区域31和存储区域33识别为相互间物理上完全独立。因此,本发明的特征在于不同的两个闪存(NOR闪存和NAND闪存)视为存在于使用一个NAND闪存的存储设备中。
图6是表示根据本发明控制器的示意性结构的分层视图,而图7是表示图6的控制器的具体结构的框图。
如图所示,根据本发明的控制器20包括内部时钟产生部分21,本地执行存储控制器22,高速缓冲存储器23,***控制器24,存储控制器25,硬盘缓冲器26,NAND控制器27和闪存管理器28。
本地执行存储控制器22,通过NOR接口40连接到CPU 10上,用于控制本地执行区域31使得CPU 10在CPU 10的随机存取请求下访问本地执行区域31。
本地执行存储控制器22由片选信号(nCS_XIP)驱动。同时,本地执行存储控制器22还用作将通过地址端口(ADDR)输入的地址数据转换为物理地址并将其发送到***控制器24。如图6所示,在本地执行存储控制器22中,本地执行的本地执行主驱动器70和本地执行管理器75用于控制软件程序或与芯片的硬连接安装。本地执行主驱动器70用于在NOR闪存接口的请求下支持任一操作(读、写、删除等)。同时,本地执行(NOR)主驱动器70还是产生和控制用于本地执行的存储管理器列表的任一程序。本地执行管理器75用于将请求地址转换成物理地址,在产生坏块时控制本地执行存储控制器22的操作,并根据NAND闪存的种类执行控制和管理操作。此外,本地执行管理器75用于通过与存储管理器85的信息交换来执行对优先顺序的确定功能。
在本地执行存储管理器22中,把从NAND闪存30的本地执行区域31中读出的块单元数据传输到高速缓冲存储器23中并仅将从高速缓冲存储器23中读出的执行程序代码传输到作为主存储器的DRAM35中。同时,在本地执行存储管理器22中,将从NAND闪存30的本地执行区域31中读出的数据以及存储在高速缓冲存储器23中的数据和其存储信息记录在特定位置,并在相同数据的请求下将存储在高速缓冲存储器23中的数据传输到DRAM35中,由此缩短了数据存取时间。
存储控制器25通过存储接口50连接到CPU 10并执行存储接口功能,使得在来自CPU 10的块单元存取请求下使CPU 10访问该块单元中的存储区域33。该存储控制器25由片选信号(ncs_IDE)驱动。同时,该存储控制器25用于将通过地址线中的三条线输入的地址数据转换成逻辑单元号并将其传输到***控制器24。
如图6所示,在存储控制器25中,通过软件或与芯片硬连接安装用于存储接口的存储主驱动器80和存储管理器85。存储主驱动器80是用于支持和解释与存储相关的协议并将与中断管理和存储相关的信息转换成任何适于NAND闪存形式任一数据的任一程序。该存储管理器85用于将请求地址转换为逻辑单元号并执行在坏块上管理操作,用于电源紧急中断的数据保护,以及根据NAND闪存的种类控制和管理操作等。此外,该存储管理器85还用于通过与本地执行管理器75的信息交换而执行对优先顺序的确定功能。
在存储控制器25中,将从NAND闪存30的存储区域33中读出的块单元数据暂时存储在磁盘缓冲器26中,然后传输给CPU 10。
***控制器24用于根据来自CPU 10请求的数据存取方式选择性地驱动本地执行存储控制器22和存储控制器25,并控制整个电路操作。同时,***控制器24还用于将从本地执行存储控制器接收的物理地址和从存储控制器25接收的逻辑单元号转换成将要传输到NAND控制器27的能够在NAND控制器27中处理的块页地址,由此可以同时在两个接口,即NOR接口和存储接口中使用该NAND闪存33。
与此同时,***控制器24用于将控制信号发送到多路输出选择器以选择性地输出必要的数据,其中将高速缓冲存储器23和缓冲器26的数据线输入到该多路输出选择器中。例如,当***控制器24的控制信号为“0”时,选择输出高速缓冲存储器23的数据。同样,在***控制器24的控制信号为“1”时,选择输出磁盘缓冲器26的数据。
同时,***控制器24还通过输出等待信号(nWAIT)控制定时。这将在图8的解释中进行说明。
NAND控制器27******控制器24和NAND闪存30之间,其用于根据NAND接口方法控制NAND闪存30。即,NAND控制器27在从***控制器24接收的块页地址的基础上用于读出和记录来自NAND闪存30的数据。
如图6所示,在NAND控制器27中,用于管理和控制NAND闪存30的闪存转换层90(Flash Translation Layer,FTL)通过软件程序或硬连接安装。
闪存转换层90用于将所请求的物理地址和逻辑单元号转换成I/O命令和块地址,并保存和管理坏块上的信息。同时,闪存转换层90还用于在NAND闪存的读取、编程和删除过程中分配其操作,并控制NAND闪存的物理状态,由此保护用户数据而免受坏块的侵害。
图8是表示根据本发明控制的信号的波形图。
在普通NAND闪存30中,执行块单元的数据读取。其中,由于CPU10的编码单元很小,因此在它们之间产生时间差。为了解决这种时间差,提供了等待信号(图8的标号“WAIT”)。因此,当在CPU 10的命令代码执行过程中没有等待时间的情况下执行代码读取时,通过从存储设备产生的等待信号导致CPU 10的代码执行等待。这里,当用于执行该代码的CPU 10的内存条无法接收该等待信号时,可以将该等待信号用作CPU10中的特殊处理信号。
正如在上文中可以看到的,在用于具有本地执行功能和存储功能的移动电话的大容量存储设备中,NAND闪存被划分成用于执行程序代码的本地执行区域和用于存储大容量数据的存储区域,并且实现了用于直接仲裁和控制该本地执行功能和存储控制功能的控制器,由此可以在一个NAND闪存中实现NOR闪存和NAND闪存中每一种功能。
尽管已经连同当前被视为最实用和优选的实施例对本发明进行了介绍,但是应当理解本发明并不限于所述的实施例和附图,恰恰相反,各种修改和变化希望覆盖在所附权利要求书的精神和范围内。
工业实用性
NAND闪存被划分成用于执行程序代码的本地执行区域和用于存储大容量数据的存储区域,并且实现了用于直接仲裁和控制该本地执行功能和存储控制功能的控制器,由此可以在一个NAND闪存中实现NOR闪存和NAND闪存中每一种功能。

Claims (6)

1.一种具有本地执行功能和存储功能的大容量存储设备,其特征在于,包括:
NAND闪存,其分为用于存储程序代码的本地执行区域和用于存储大容量数据的存储区域;和
控制器,其用于控制本地执行区域使得在来自主机的随机存取请求下使主机通过NOR接口访问本地执行区域,并执行存储接口功能使得在来自主机的块单元存取请求下使主机通过存储接口访问在块单元中的存储区域。
2.如权利要求1所述的具有本地执行功能和存储功能的大容量存储设备,其特征在于,所述控制器包括:
本地执行存储控制器,其通过NOR接口连接到主机上,用于控制本地执行区域,使得在来自主机的随机存取请求下使主机访问本地执行区域;
高速缓冲存储器,其用于暂时存储从主机和本地执行区域所接收的数据;
存储控制器,其通过存储接口连接到主机,用于执行存储接口功能,使得在来自主机的块单元随机存取请求下使主机访问块单元中的存储区域;
磁盘缓冲器,其用于暂时存储从主机和存储区域接收到的数据;
***控制器,其用于根据主机请求的数据存取方式选择性地驱动本地执行存储控制器和存储控制器,并控制整个电路操作;和
NAND控制器,其******控制器和NAND闪存之间,用于根据NAND接口方式控制NAND闪存。
3.如权利要求2所述的具有本地执行功能和存储功能的大容量存储设备,其特征在于,所述本地执行存储控制器包括:
NOR主驱动器,其用于支持在NOR闪存接口的请求下的任何操作,为本地执行产生、更新存储管理器列表;及
本地执行管理器,用于将主机请求的存取地址转换为物理地址,在坏块上执行存储管理操作;
所述存储控制器包括:
存储主驱动器,用于管理与存储相关的协议并将与存储相关的信息转换成适于NAND闪存的任何数据形式;以及
存储管理器,用于将主机请求的存取地址转换为逻辑单元号,并在坏块上执行存储管理操作;
***控制器,用于将从本地执行存储控制器接收的物理地址以及从存储控制器接收的逻辑单元号转换成要发送到NAND控制器的块页地址。
4.如权利要求2所述的具有本地执行功能和存储功能的大容量存储设备,其特征在于,所述NAND控制器包括闪存转换层,用于将请求的物理地址和逻辑单元号转换成输入输出命令和块地址,并管理和控制NAND闪存物理状态。
5.如权利要求2所述的具有本地执行功能和存储功能的大容量存储设备,其特征在于,在所述NOR接口和存储接口中,地址端口的分线、数据线、输出驱动线和写驱动线可以共用。
6.如权利要求2所述的具有本地执行功能和存储功能的大容量存储设备,其特征在于,所述NOR接口和存储接口进一步包括等待信号线,其用于解决主机数据读取时间和NAND闪存块单元中数据存取时间差。
CNA2006800399655A 2005-10-27 2006-08-17 具有本地执行功能和存储功能的大容量存储设备 Pending CN101297276A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
KR10-2005-0101570 2005-10-27
KR1020050101570A KR20050107369A (ko) 2005-10-27 2005-10-27 모바일 기기를 위한 코드 직접 수행기능을 갖는 대용량저장장치 및 제어 방법
KR10-2006-0025969 2006-03-22

Publications (1)

Publication Number Publication Date
CN101297276A true CN101297276A (zh) 2008-10-29

Family

ID=37185211

Family Applications (1)

Application Number Title Priority Date Filing Date
CNA2006800399655A Pending CN101297276A (zh) 2005-10-27 2006-08-17 具有本地执行功能和存储功能的大容量存储设备

Country Status (5)

Country Link
US (1) US20090235013A1 (zh)
JP (1) JP2011517789A (zh)
KR (2) KR20050107369A (zh)
CN (1) CN101297276A (zh)
TW (1) TWI302707B (zh)

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8291295B2 (en) 2005-09-26 2012-10-16 Sandisk Il Ltd. NAND flash memory controller exporting a NAND interface
KR101128255B1 (ko) * 2006-03-21 2012-03-23 엘지전자 주식회사 컴퓨터 시스템의 스토리지 제어장치
KR101365683B1 (ko) 2007-12-27 2014-02-20 삼성전자주식회사 가변 저항 메모리 장치, 그것의 플렉서블 프로그램 방법,그리고 그것을 포함하는 메모리 시스템
KR101476773B1 (ko) 2008-04-08 2014-12-29 삼성전자주식회사 가변 저항 메모리 장치를 포함하는 반도체 메모리 장치 및메모리 시스템
US8194492B2 (en) 2008-04-08 2012-06-05 Samsung Electronics Co., Ltd. Variable resistance memory device and system
JP5075761B2 (ja) * 2008-05-14 2012-11-21 株式会社日立製作所 フラッシュメモリを用いたストレージ装置
TWI401527B (zh) * 2009-07-29 2013-07-11 Altek Corp Personalized safety shutter value setting method and recording medium
US20110041039A1 (en) * 2009-08-11 2011-02-17 Eliyahou Harari Controller and Method for Interfacing Between a Host Controller in a Host and a Flash Memory Device
US20110041005A1 (en) * 2009-08-11 2011-02-17 Selinger Robert D Controller and Method for Providing Read Status and Spare Block Management Information in a Flash Memory System
EP2609498A1 (en) 2010-08-27 2013-07-03 Fxi Technologies AS Electronic devices
US9021182B2 (en) * 2010-10-03 2015-04-28 Winbond Electronics Corporation Flash memory for code and data storage
KR20120119092A (ko) * 2011-04-20 2012-10-30 삼성전자주식회사 반도체 메모리 시스템 및 이의 구동 방법
TWI490863B (zh) * 2011-11-21 2015-07-01 Winbond Electronics Corp 用於代碼和資料存儲的快閃記憶體
CN103151066B (zh) * 2011-12-06 2016-08-03 华邦电子股份有限公司 用于代码和数据存储的闪存
US9367471B2 (en) 2012-09-10 2016-06-14 Apple Inc. Fetch width predictor
JP2014182449A (ja) * 2013-03-18 2014-09-29 Toshiba Corp メモリコントローラ
TWI609263B (zh) * 2013-08-16 2017-12-21 司固科技公司 可變大小快閃轉變層
US10691838B2 (en) * 2014-06-20 2020-06-23 Cypress Semiconductor Corporation Encryption for XIP and MMIO external memories
CN104679609B (zh) * 2015-02-11 2017-12-15 北京配天技术有限公司 数控***
US10971241B2 (en) 2017-01-30 2021-04-06 Toshiba Memory Corporation Performance based method and system for patrolling read disturb errors in a memory unit
CN111709039B (zh) * 2020-05-12 2023-04-28 杭州寰星电子科技有限公司 一种XIP方式运行Flash中加密程序的方法及***

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05299616A (ja) * 1992-04-16 1993-11-12 Hitachi Ltd 半導体記憶装置
JPH0778766B2 (ja) * 1992-09-25 1995-08-23 インターナショナル・ビジネス・マシーンズ・コーポレイション ランダム・アクセス可能かつ書換え可能メモリを用いる外部記憶装置におけるプログラム直接実行の制御方法および装置
JPH10154101A (ja) * 1996-11-26 1998-06-09 Toshiba Corp データ記憶システム及び同システムに適用するキャッシュ制御方法
US7032081B1 (en) * 2000-07-31 2006-04-18 M-Systems Flash Disk Pioneers Ltd. System and method for enabling non-volatile memory to execute code while operating as a data storage/processing device
US7386653B2 (en) * 2001-08-06 2008-06-10 Sandisk Il Ltd Flash memory arrangement
US7234052B2 (en) * 2002-03-08 2007-06-19 Samsung Electronics Co., Ltd System boot using NAND flash memory and method thereof
TWI228220B (en) * 2002-03-08 2005-02-21 Samsung Electronics Co Ltd System boot using NAND flash memory and method thereof
KR100493884B1 (ko) * 2003-01-09 2005-06-10 삼성전자주식회사 시리얼 플래시 메모리에서의 현지 실행을 위한 제어 장치및 그 방법, 이를 이용한 플래시 메모리 칩
KR100562906B1 (ko) * 2003-10-08 2006-03-21 삼성전자주식회사 시리얼 플래시 메모리에서의 xip를 위한 우선순위기반의 플래시 메모리 제어 장치 및 이를 이용한 메모리관리 방법, 이에 따른 플래시 메모리 칩
JP4357331B2 (ja) * 2004-03-24 2009-11-04 東芝メモリシステムズ株式会社 マイクロプロセッサブートアップ制御装置、及び情報処理システム

Also Published As

Publication number Publication date
KR20050107369A (ko) 2005-11-11
US20090235013A1 (en) 2009-09-17
TW200723281A (en) 2007-06-16
TWI302707B (en) 2008-11-01
KR100610647B1 (ko) 2006-08-09
JP2011517789A (ja) 2011-06-16

Similar Documents

Publication Publication Date Title
CN101297276A (zh) 具有本地执行功能和存储功能的大容量存储设备
US11829601B2 (en) Extended utilization area for a memory device
CN100487632C (zh) 双媒体存储装置
US6678785B2 (en) Flash management system using only sequential write
US8055873B2 (en) Data writing method for flash memory, and controller and system using the same
US11630766B2 (en) Memory system and operating method thereof
US6366977B1 (en) Semiconductor storage device employing cluster unit data transfer scheme and data management method thereof
US8924659B2 (en) Performance improvement in flash memory accesses
US20090150597A1 (en) Data writing method for flash memory and controller using the same
US20110145474A1 (en) Efficient Use Of Flash Memory In Flash Drives
US20190266096A1 (en) Data storage device, method of operating the same, and storage system having the same
CN101120414A (zh) 存储器***中的数据再定位
KR20090026941A (ko) 복수개의 비휘발성 데이터 저장매체를 구비한 저장장치의가상 파일 시스템에서 어드레스 맵핑을 수행하는 방법 및그 장치
KR20150012996A (ko) 자기 랜덤 액세스 메모리(mram)를 이용하는 저장 디바이스의 메모리 어레이의 제어기 관리
US20160124639A1 (en) Dynamic storage channel
CN110389908A (zh) 存储器***、数据处理***和存储器***的操作方法
US20090210612A1 (en) Memory controller, nonvolatile memory device, and nonvolatile memory system
WO2007049850A1 (en) A mass storage device having both xip function and storage function
CN114253462A (zh) 提供混合通道存储设备的方法
CN114253461A (zh) 混合通道存储设备
KR102653845B1 (ko) 데이터 저장 장치 및 동작 방법, 이를 포함하는 스토리지 시스템
US20200089421A1 (en) Data storage device, operation method thereof, and storage system including the same
CN213338708U (zh) 一种控制部件及存储设备
CN111414314B (zh) 数据存储装置、其操作方法及其控制器
KR101165966B1 (ko) 커맨드에 의해 동기 모드 또는 비동기 모드로 액세스 가능한 메모리 시스템

Legal Events

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

Open date: 20081029