CN111209224A - 存储器***及其操作方法 - Google Patents
存储器***及其操作方法 Download PDFInfo
- Publication number
- CN111209224A CN111209224A CN201910932595.7A CN201910932595A CN111209224A CN 111209224 A CN111209224 A CN 111209224A CN 201910932595 A CN201910932595 A CN 201910932595A CN 111209224 A CN111209224 A CN 111209224A
- Authority
- CN
- China
- Prior art keywords
- read
- address
- memory
- host
- controller
- 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.)
- Withdrawn
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1668—Details of memory controller
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0604—Improving or facilitating administration, e.g. storage management
-
- 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/0253—Garbage collection, i.e. reclamation of unreferenced memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/064—Management of blocks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0656—Data buffering arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0658—Controller construction arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0659—Command handling arrangements, e.g. command buffers, queues, command scheduling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0679—Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
-
- 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
- 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/34—Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
- G11C16/349—Arrangements for evaluating degradation, retention or wearout, e.g. by counting erase cycles
-
- 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/04—Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS
- G11C16/0483—Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS comprising cells having several storage transistors connected in series
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Read Only Memory (AREA)
Abstract
本公开涉及存储器***及其操作方法。该存储器***,包括:主机,被配置为传输读取命令和地址并请求读取操作;控制器,被配置为响应于读取命令和地址生成与读取操作对应的内部命令,并生成其上已经完成读取操作的地址的累积读取计数;以及存储器设备,被配置为响应于内部命令执行读取操作,并通过执行读取操作向控制器传输读取数据。控制器可接收来自存储器设备的读取的数据,临时存储读取的数据,将读取的数据传输至主机,并且当地址的累计读取计数大于或等于设置计数时,生成包括关于地址的信息的地址列表。
Description
相关申请交叉参考
本申请要求2018年11月21日提交的韩国专利申请号10-2018-0144904的优先权,其全部公开内容以引证并入本文。
技术领域
本公开的各种实施例总体上涉及电子设备,并且更具体地,涉及存储器***和存储器***的操作方法。
背景技术
近来,用于计算机环境的范例已经转变为无所不在的计算,使得计算机***可以随时随地使用。因此,诸如移动电话、数码相机和笔记本电脑的便携式电子设备的使用迅速增加。一般地,这种便携式电子设备使用的是采用存储器设备的存储器***,换句话说,使用数据存储设备。数据存储设备被用作便携式电子设备的主存储器设备或辅助存储器设备。
使用存储器设备的数据存储设备提供以下优点:由于没有机械驱动部件,所以稳定性和耐久性良好,信息访问速度提高,并且功耗降低。在存储器***的上下文中,具有这些优点的数据存储设备包括通用串行总线(USB)存储器设备、具有各种接口的存储卡和固态驱动器(SSD)。
存储器设备通常分为易失性存储器设备或非易失性存储器设备。
尽管非易失性存储器具有相对较低的读写速度,但即使在电源中断时也可以保持存储的数据。因此,非易失性存储器设备被用于存储无论是否供电都要求保持的数据。非易失性存储器设备的代表性示例包括只读存储器(ROM)、掩模式ROM(MROM)、可编程ROM(PROM)、可擦除可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)、闪存、相变随机存取存储器(PRAM)、磁性RAM(MRAM)、电阻RAM(RRAM)和铁电RAM(FRAM)。闪存可以是NOR型存储器或NAND型存储器。
发明内容
本公开的各种实施例涉及通过限制读取回收操作提高效率的存储器***以及该存储器***的操作方法。
本公开的一个实施例可提供一种存储器***,包括:主机,被配置为传输读取命令和地址并请求读取操作;控制器,被配置为响应于读取命令和地址生成与读取操作相对应的内部命令,并且生成其上已经完成读取操作的地址的累计读取计数;以及存储器设备,被配置为响应于内部命令执行读取操作,并且向控制器传输通过执行读取操作而读取的数据,其中控制器接收来自存储器设备的读取的数据,临时存储读取的数据,然后将读取的数据传输至主机,并且当地址的累计读取计数大于或等于设置计数时,生成包括关于地址的信息的地址列表。
本公开的一个实施例可提供一种存储器***,包括:控制器,被配置为响应于从主机接收的读取请求和地址生成与读取操作相对应的内部命令,并且生成其上已经完成读取操作的地址的累计读取计数;以及存储器设备,被配置为响应于内部命令执行读取操作,并且向控制器传输通过执行读取操作而读取的数据,其中控制器控制存储器设备,使得当地址的累计读取计数大于或等于第一设置计数时,从存储器设备接收的读取的数据被存储在存储器设备的新存储器块中。
本发明的一个实施例可提供一种操作存储器***的方法,包括:从主机接收读取命令和地址;响应于读取命令和地址执行存储器设备的读取操作;将作为所述读取操作的读取数据临时地存储在控制器中,并将所述读取数据传输至所述主机;生成地址的累计读取计数,并将累计读取计数与第一设置计数进行比较;以及作为比较结果,当累计读取计数大于或等于第一设置计数时,生成包括关于地址的信息的地址列表,并且将地址列表传输至主机。
本公开的一个实施例可提供一种存储器***,包括:主机,被配置为提供用于用户数据的读取请求和第一逻辑地址;以及存储器***,被配置为响应于读取请求从对应于第一逻辑地址的存储区域中读取用户数据,并且当对应于第一逻辑地址的累计读取计数达到阈值时,提供关于第一逻辑地址的信息,其中主机进一步响应于该信息提供用于用户数据的写入请求和第二逻辑地址,并且其中存储器***进一步响应于写入请求将用户数据存储在对应于第二逻辑地址的存储区域中。
本公开的一个实施例可提供一种操作存储器***的方法,包括:通过主机提供用于用户数据的读取请求和第一逻辑地址;通过存储器***,响应于读取请求从对应于第一逻辑地址的存储区域中读取用户数据;当对应于第一逻辑地址的累计读取计数达到阈值时,通过存储器***提供关于第一逻辑地址的信息;通过主机响应于该信息提供用于用户数据的写入请求和第二逻辑地址;以及通过存储器***,响应于写入请求将用户数据存储在对应于第二逻辑地址的存储区域中。
附图说明
图1是示出根据本公开的一个实施例的存储器***的框图。
图2是示出根据本公开的一个实施例的图1的控制器的配置的框图。
图3是示出根据本公开的一个实施例的图1的半导体存储器的示图。
图4是示出图3的示例性存储器块的示图。
图5是示出根据本公开的一个实施例的具有三维结构的存储器块的示图。
图6是示出根据本公开的一个实施例的具有三维结构的存储器块的示图。
图7是示出根据本公开的一个实施例的存储器***的操作的流程图。
图8是示出根据本公开的一个实施例的图1的控制器的框图。
图9是示出根据本公开的一个实施例的存储器***的示图。
图10是示出根据本公开的一个实施例的存储器***的示图。
图11是示出根据本公开的一个实施例的存储器***的示图。
图12是示出根据本公开的一个实施例的存储器***的示图。
具体实施方式
本文提供的具体结构和功能描述在于本发明的实施例。然而,这种描述并不将本发明的范围限于所公开的实施例,因为本发明可以各种形式实施,这些形式可以是任何所公开实施例的修改或变化。
此外,虽然详细描述了所公开的实施例,但本发明不限于具体细节。相反,本发明覆盖落在本公开精神和范围内的所公开实施例的所有修改、等效和替代。
应理解,尽管术语“第一”、“第二”等可用于识别各种元素,但这些元素不受这些术语的限制。这些术语仅用于区分一个元素与另一个具有相同或相似名称的元素。例如,一个实例中的第一元素可以在另一实例中称为第二元素,而不背离本公开的教导。
应理解,当元件被称为“耦合”或“连接”至另一元件时,其可以直接耦合或连接至另一元件,或者其间可存在一个或多个中间元件。相反,应该理解,当一个元件被称为“直接耦合”或“直接连接”至另一元件时,不存在中间元件。解释元件之间关系的其他表述(诸如“在…之间”、“直接位于…之间”、“与…相邻”或“与…直接相邻”)应以相同的方式解释。
本文所用术语仅用于描述具体实施例而不用于限制。在本公开中,除非上下文另有明确说明,否则单数形式用于包括复数形式,反之亦然。应进一步理解,术语“包括”、“具有”等在本说明书中使用时指定所提特征、整数、步骤、操作、元件、部件和/或它们的组合的存在,但不排除一个或多个其他特征、整数、步骤、操作、元件、部件和/或它们的组合的存在或添加。
除非另有定义,否则本文使用的所有术语(包括技术和科学术语)的含义与本公开所属领域的普通技术人员通常理解的含义相同。应进一步理解,本文使用的术语应被解释为具有与它们在本说明书上下文中的含义一致的含义,除非本文明确定义,否则不以理想化或过于正式的意义进行解释。
本领域技术人员熟知的功能和结构的详细描述被省略,以避免模糊本公开的主题。该目的在于省略不必要的描述,以使本公开的主题清楚。
下文参考其中示出本公开的优选实施例的附图更加完整地描述本公开的各种实施例,使得本领域技术人员可以容易地执行和实施本发明。在本说明书中,提及“一个实施例”、“另一实施例”等不是必须表示一个实施例,并且对这种措辞的不同引用不是必须针对相同的实施例。
图1是示出根据本公开的一个实施例的存储器***1000的框图。
参考图1,存储器***1000可包括存储器设备1100、控制器1200和主机1400。存储器设备1100可包括多个半导体存储器100。多个半导体存储器100可分为多个组。尽管在本实施例中,主机1400被示出并描述为包括在存储器***1000中,但在另一实施例中,存储器***1000可以仅包括控制器1200和存储器设备1100,并且主机1400可设置在存储器***1000的外部。
在图1中,示出存储器设备1100的多个组分别通过第一至第n通道CH1-CHn与控制器1200通信。稍后将参考图3详细描述每个半导体存储器100。
每一组可通过一个公共通道与控制器1200通信。控制器1200可通过多个通道CH1-CHn控制存储器设备1100的多个半导体存储器100。
控制器1200耦合在主机1400和存储器设备1100之间。控制器1200可响应于来自主机1400的请求访问存储器设备1100。例如,控制器1200可响应于从主机1400接收的主机命令Host_CMD控制存储器设备1100的读取操作、写入操作、擦除操作或后台操作。主机1400可在写入操作期间与主机命令Host_CMD一起传输地址ADD和数据DATA,并且可在读取操作期间与主机命令Host_CMD一起传输地址ADD。控制器1200可在读取操作期间将数据DATA传输至主机1400。控制器1200可提供存储器设备1100和主机1400之间的接口。控制器1200可运行用于控制存储器设备1100的固件。
当从主机1400接收到与读取命令相对应的主机命令Host_CMD时,控制器1200可控制存储器设备1100以执行读取操作,并且可以计算与被请求从主机1400读取的地址相关联的次数,以生成该地址的累计读取计数,控制器1200也可以管理该计数。当地址的累计读取计数大于或等于第一设置计数时,可将对应地址添加到地址列表ADD_list中,并且更新后的地址列表ADD_list可被传输至主机1400。地址列表ADD_list可包括地址和关于这些地址的信息,每一个都具有大于或等于第一设置计数的累计读取计数。当关于至少一个地址的信息被添加至地址列表ADD_list时,地址列表ADD_list可被传输至主机1400。地址列表ADD_list与对应于主机命令Host_CMD的响应信号CMD_response一起可以被传输至主机1400。响应信号CMD_response可对应于用于请求地址列表ADD_list的主机命令Host_CMD,或者对应于用于请求操作(诸如写入操作或读取操作)的主机命令Host_CMD。换句话说,地址列表ADD_list可以与对应于用于请求地址列表ADD_list的主机命令Host_CMD的响应信号CMD_response一起或者与对应于用于请求操作(诸如写入操作或读取操作)的主机命令Host_CMD的响应信号CMD_response一起传输至主机1400。
控制器1200可管理包括在存储器设备1100中的多个存储器块的相应读取计数,并控制存储器设备1100以对存储器块执行读取回收操作,每个存储器块都具有大于或等于第二设置计数的读取计数。第一设置计数和第二设置计数可以彼此不同。
主机1400可包括便携式电子设备,诸如计算机、个人数字助理(PDA)、便携式多媒体播放器(PMP)、MP3播放器、相机、摄像机或移动电话。主机1400可使用主机命令Host_CMD来请求存储器***1000的写入操作、读取操作、擦除操作等。为了执行存储器设备1100的写入操作,主机1400可以向控制器1200传输与写入命令、数据DATA和地址ADD相对应的主机命令Host_CMD。为了执行读取操作,主机1400可以向控制器1200传输与读取命令和地址ADD相对应的主机命令Host_CMD。这里,地址ADD可以是数据的逻辑地址。
主机1400可从控制器1200接收地址列表ADD_list。地址列表ADD_list可以与响应信号CMD_response一起接收,或者可以只单独地接收地址列表ADD_list。
当接收到地址列表ADD_list,主机1400可基于地址列表ADD_list中包括的地址信息而请求对存储器设备1100的写入操作。换句话说,可以改变与地址列表ADD_list中包括的地址相对应的数据的地址,并且可以将改变后的地址ADD和对应于写入命令的主机命令Host_CMD传输至控制器1200。地址列表ADD_list中包括的地址具有被确定为大于或等于第一设置计数的累计读取计数。因此,地址列表ADD_list中包括的地址是参考主机1400接收地址列表ADD_list的时间而最后请求的读取操作的地址。因此,与地址列表ADD_list中包括的地址相对应的数据可以是作为最晚的读取操作的结果从控制器1200接收到主机1400的数据以及临时存储在控制器1200的读取缓冲器中的数据。从而,当基于地址列表ADD_list中包括的地址信息请求存储器设备1100的写入操作时,控制器1200可被控制,使得从控制器1200接收的数据被传输回控制器1200,或者使用临时存储在控制器1200的读取缓冲器中的数据执行写入操作。
控制器1200和存储器设备1100可集成到单个半导体设备中。在一个实施例中,控制器1200和存储器设备1100可集成到单个半导体设备中以形成存储卡,诸如个人计算机存储卡国际协会(PCMCIA)、小型闪存卡(CF)、智能媒体卡(SM或SMC)、记忆棒多媒体卡(MMC、RS-MMC或MMCmicro)、SD卡(SD、miniSD、microSD或SDHC)或通用闪存(UFS)。
在另一实施例中,控制器1200和存储器设备1100可集成到单个半导体设备中以形成固态驱动器(SSD)。SSD可包括被配置为在半导体存储器中存储数据的存储设备。
在一个实施例中,存储器***1000可设置为电子设备的各种元件中的一种,诸如计算机、超移动PC(UMPC)、工作站、上网本、个人数字助理(PDA)、便携式计算机、网络平板电脑、无线电话、移动电话、智能手机、电子书、便携式多媒体播放器(PMP)、游戏机、导航设备、黑匣子、数码相机、三维电视、数字录音机、数字音频播放器、数字图像记录器、数字图片播放器、数字视频录像机、数字视频播放器、能够在无线环境中传输/接收信息的设备、用于形成家庭网络的各种设备之一、用于形成计算机网络的各种电子设备之一、用于形成远程信息网络的各种电子设备之一、RFID设备、用于形成计算***的各种元件之一等等。
在一个实施例中,存储器设备1100或存储器***1000可嵌入在各种类型的封装中。例如,存储器设备1100或存储器***1000可以封装在一种类型中,诸如堆叠封装(PoP)、球栅阵列(BGA)、芯片级封装(CSP)、塑料引线芯片载体(PLCC)、塑料双列直插封装(PDIP)、华夫格中的裸片、晶圆形状的裸片、板上芯片(COB),陶瓷双列直插封装(CERDIP)、塑料公制四方扁平封装(MQFP)、薄四扁平封装(TQFP)、小外形(SOIC)、收缩小外形封装(SSOP)、薄小外形(TSOP)、薄四扁平封装(TQFP)、***封装(SIP)、多芯片封装(MCP)、晶圆级制造封装(WFP)或晶圆级处理堆叠封装(WSP)。
图2是示出图1的控制器1200的示图。
参考图2,控制器1200可包括主机控制电路1210、处理器1220、存储器缓冲电路1230、纠错电路1240、闪存控制电路1250和总线1260。
总线1260可以在控制器1200的部件之间提供通道。
主机控制电路1210可以控制图1的主机1400与存储器缓冲电路1230之间的数据传输。在一个实施例中,主机控制电路1210可以控制缓冲从主机1400输入到存储器缓冲电路1230的数据的操作。在一个实施例中,主机控制电路1210可以控制将存储器缓冲电路1230中缓冲的数据输出至主机1400的操作。
主机控制电路1210可以将从主机1400接收的主机命令和地址传输至处理器1220,或者可以在处理器1220的控制下将存储在存储器缓冲电路1230中的地址列表传输至主机1400。
主机控制电路1210可包括主机接口。
处理器1220可控制控制器1200的整体操作并执行逻辑操作。处理器1220可通过主机控制电路1210与图1的主机1400通信,并且通过闪存控制电路1250与图1的存储器设备1100通信。处理器1220可以通过将存储器缓冲电路1230用作操作存储器、高速缓存存储器或缓冲存储器来控制存储器***1000的操作。处理器1220可基于优先级重新排列从主机1400接收的多个主机命令并生成命令队列,并且可以基于命令队列控制闪存控制电路1250。处理器1220可以生成其上已经完成读取操作的地址的累计读取计数,并且当该地址的累计读取计数大于或等于第一设置计数时,可以生成地址列表,并将地址列表存储在存储器缓冲电路1230中。此外,处理器1220可以对从存储器设备1100的多个存储器块中的每一个的读取进行计数以生成相应的读取计数,并且控制闪存控制电路1250以在读取计数大于或等于第二设置计数时对存储器块执行读取回收操作。当从主机1400接收到与在最后的读取操作期间读取且保留在存储器缓冲电路1230中的数据的写入操作相对应的主机命令时,处理器1220可以控制闪存控制电路1230以将这种数据传输至存储器设备1100并将数据编程到存储器设备1100。
处理器1220可包括闪存转换层(FTL)1221、地址读取计数器1222、地址列表管理块1223和读取回收控制块1224。
FTL 1221可驱动固件。固件可存储在直接耦合至缓冲存储器1230或处理器1220的附加存储器(未示出)中,或者也可以存储在处理器1220中限定的存储空间中。在写入操作期间,FTL 1221可以映射与从图1的主机1400输入的地址(例如,逻辑地址)相对应的物理地址。此外,在读取操作期间,FTL 1221可以检查映射到从主机1400输入的逻辑地址的物理地址。
FTL 1221可生成命令队列,用于响应于从主机1400接收的主机命令控制闪存控制电路1250。
地址读取计数器1222可对读取操作期间从主机1400接收的地址的读取进行计数,并累计计数。换句话说,作为与在读取操作期间从主机1400接收的地址相关联的读取操作的结果,地址读取计数器1222可将该地址的先前累计读取计数增加1。累计读取计数可存储在存储器缓冲电路1230中。
当读取操作期间从主机1400接收的地址的累计读取计数大于或等于第一设置计数时,地址列表管理块1223可更新关于地址列表上的地址的信息并将更新后的地址列表存储在存储器缓冲电路1230中。
读取回收控制块1224可以管理图1的存储器设备1100的半导体存储器100中的多个存储器块的相应读取计数,并控制闪存控制电路1250以对多个存储器块中的读取计数大于或等于第二设置计数的存储器块执行读取回收操作。
存储器缓冲电路1230可被用作处理器1220的操作存储器、高速缓存存储器或缓冲存储器。存储器缓冲电路1230可以存储将由处理器1220执行的代码和命令。存储器缓冲电路1230可存储将被处理器1220处理的数据。存储器缓冲电路1230可存储地址的累计读取计数和由处理器1220生成的地址列表。
存储器缓冲电路1230可包括地址列表存储块1231、写入缓冲器1232和读取缓冲器1233。地址列表存储块1231可存储地址的累计读取计数和由处理器1220生成的地址列表。地址列表存储块1231可将存储的地址列表传输至主机1400。写入缓冲器1232可临时地存储与写入命令一起从主机1400接收的数据,然后在写命令被传输至存储器设备1100时将临时存储的数据传输至存储器设备1100。读取缓冲器1233可在读取操作期间临时存储从存储器设备1100接收的数据,然后将临时存储的数据传输至主机1400。此外,当从主机1400接收到针对临时存储数据的写入命令时,读取缓冲器1233可将读取缓冲器1233中保留的数据传输至存储器设备1100。
存储器缓冲电路1230可包括静态RAM(SRAM)或动态RAM(DRAM)。
纠错电路1240可执行纠错操作。纠错电路1240可基于将通过闪存控制电路1250写入图1的存储器设备1100的数据执行ECC(纠错码)编码操作。ECC编码数据可通过闪存控制电路1250传输至存储器设备1100。纠错电路1240可以对通过闪存控制电路1250从存储器设备1100接收的数据执行ECC解码操作。例如,纠错电路1240可作为其中一个部件而包括在闪存控制电路1250中。
闪存控制电路1250可生成和输出用于响应于由处理器1220生成的命令队列来控制存储器设备1100的内部命令。在写入操作期间,闪存控制电路1250可控制将存储器缓冲电路1230的写入缓冲器1232中缓冲的数据传输并写入存储器设备1100的操作。在一个实施例中,在读取操作期间,响应于命令队列,闪存控制电路1250可控制在存储器缓冲电路1230的读取缓冲器1233中缓冲从存储器设备1100读取的数据的操作。此外,响应于由处理器1220生成的命令队列,闪存控制电路1250可控制将写入缓冲器1233中保留的数据传输并写入存储器设备1100的操作。
闪存控制电路1250可包括闪存接口。
图3是示出图1的半导体存储器100的示例的示图。
参考图3,半导体存储器100可包括被配置为存储数据的存储器单元阵列10。半导体存储器100可包括***电路200,其被配置为执行用于在存储器单元阵列10中存储数据的编程操作、用于输出所存储数据的读取操作以及用于擦除所存储数据的擦除操作。半导体存储器100可包括控制逻辑300,其被配置为在控制器(图1的1200)的控制下控制***电路200。
存储器单元阵列10可包括多个存储器块MB1-MBk(11;k是正整数)。局部线LL和位线BL1-BLm(m是正整数)可耦合至每个存储器块MB1-MBk(11)。例如,局部线LL可包括第一选择线、第二选择线以及布置在第一和第二选择线之间的多个字线。局部线LL可包括布置在第一选择线和字线之间以及第二选择线和字线之间的伪线。这里,第一选择线可以是源极选择线,而第二选择线可以是漏极选择线。例如,局部线LL可包括字线、漏极和源极选择线以及源极线SL。例如,局部线LL可进一步包括伪线。例如,局部线LL可进一步包括管线。局部线LL可耦合至每个存储器块MB1-MBk(11)。位线BL1-BLm可共同耦合至存储器块MB1-MBk(11)。存储器块MB1-MBk(11)可以实施在二维或三维结构中。例如,在具有二维结构的存储器块11中,存储器单元可以在平行于衬底的方向上布置。例如,在具有三维结构的存储器块11中,存储器单元可以在垂直于衬底的方向上堆叠。
***电路200可以在控制逻辑300的控制下对所选存储器块11执行编程操作、读取操作或擦除操作。例如,***电路200可包括电压生成电路210、行解码器220、页面缓冲器组230、列解码器240、输入/输出电路250、通过/失败检查电路260和源极线驱动器270。
电压生成电路210可响应于操作信号OP_CMD生成用于编程操作、读取操作和擦除操作的各种操作电压Vop。此外,电压生成电路210可响应于操作信号OP_CMD选择性地释放局部线LL。例如,电压生成电路210可在控制逻辑300的控制下生成编程电压、验证电压、通过电压和选择晶体管操作电压。
行解码器220可响应于控制信号AD_signals将操作电压Vop传输至耦合至所选存储器块11的局部线LL。例如,行解码器220可响应于控制信号AD_signals选择性地将由电压生成电路210生成的操作电压(例如,编程电压、验证电压和通过电压)施加于局部线LL之间的字线。
在编程电压施加操作期间,响应于控制信号AD_signals,行解码器220可将由电压生成电路210生成的编程电压施加于局部线LL的所选字线,并将由电压生成电路210生成的通过电压施加于其他未选择的字线。在读取操作期间,响应于控制信号AD_signals,行解码器220可将由电压生成电路210生成的读取电压施加于局部线LL的所选字线,并将由电压生成电路210生成的通过电压施加于其他未选择的字线。
页面缓冲器组230可包括耦合至位线BL1-BLm的多个页面缓冲器PB1-PBm(231)。页面缓冲器PB1-PBm(231)可响应于页面缓冲器控制信号PBSIGNALS而操作。例如,页面缓冲器PB1-PBm(231)可临时存储将在编程操作期间被编程的数据,或者在读取或验证操作期间感测位线BL1-BLm的电压或电流。
列解码器240可响应于列地址CADD在输入/输出电路250和页面缓冲器组230之间传输数据。例如,列解码器240可以通过数据线DL与页面缓冲器231交换数据或者通过列线CL与输入/输出电路250交换数据。
输入/输出电路250可将从控制器(图1的1200)接收的内部命令CMD或地址ADD传输至控制逻辑300,或者与列解码器240交换数据。
在读取操作或验证操作期间,通过/失败检查电路260可响应于使能位VRY_BIT<#>生成参考电流,并且可将从页面缓冲器组230接收的感测电压VPB与由参考电流生成的参考电压进行比较,并且输出通过信号PASS或失败信号FAIL。
源极线驱动器270可通过源极线SL耦合至存储器单元阵列10中包括的存储器单元,并且可以控制施加于源极线SL的电压。源极线驱动器270可以从控制逻辑300接收源极线控制信号CTRL_SL,并且基于源极线控制信号CTRL_SL控制施加于源极线SL的源极线电压。
响应于内部命令CMD和地址ADD,控制逻辑300可通过输出操作信号OP_CMD、控制信号AD_signals、页面缓冲器控制信号PBSIGNALS和使能位VRY_BIT<#>来控制***电路200。此外,控制逻辑300可响应于通过信号PASS或失败信号FAIL确定目标存储器单元在验证操作期间是否通过了验证。
图4是示出图3的存储器块的示例性结构的示图。
参考图4,在存储器块11中,可以在第一选择线和第二选择线之间耦合彼此平行布置的多条字线。这里,第一选择线可以是源极选择线SSL,而第二选择线可以是漏极选择线DSL。更详细地,存储器块11可包括耦合在位线BL1-BLm与源极线SL之间的多个串ST。位线BL1-BLm可分别耦合至串ST,并且源极线SL可共同耦合至串ST。串ST可具有相同的配置;因此,将通过示例详细地描述耦合至第一位线BL1的串ST。
串ST可包括在源极线SL与第一位线BL1之间彼此串联耦合的源极选择晶体管SST、多个存储器单元F1-F16和漏极选择晶体管DST。在每个串ST中可包括至少一个源极选择晶体管SST和至少一个漏极选择晶体管DST,并且可以在每个串ST中包括比图中所示的存储器单元F1-F16的数量更多的存储器单元。
源极选择晶体管SST的源极可耦合至源极线SL,并且漏极选择晶体管DST的漏极可耦合至第一位线BL1。存储器单元F1-F16可串联耦合在源极选择晶体管SST和漏极选择晶体管DST之间。包括在不同串ST中的源极选择晶体管SST的栅极可耦合至源极选择线SSL,漏极选择晶体管DST的栅极可耦合至漏极选择线DSL,并且存储器单元F1-F16的栅极可耦合到多条字线WL1-WL16。在不同串ST中包括的存储器单元中,耦合至相同字线的存储器单元组可以被称为物理页面PPG。因此,存储器块11中包括的物理页面PPG的数量可对应于字线WL1-WL16的数量。
每个存储器单元可存储1位数据。该存储器单元通常被称为单级单元(SLC)。在这种情况下,每个物理页面PPG可存储单个逻辑页面LPG的数据。每个逻辑页面的数据可包括与单个物理页面PPG中包括的单元数相对应的数据位。每个存储器单元可存储2位或更多位数据。该存储器单元通常被称为多级单元(MLC)。在这种情况下,每个物理页面PPG可以存储两个或更多个逻辑页面LPG的数据。
图5是示出根据本公开一个实施例的具有三维结构的存储器块的示图。
参考图5,存储器单元阵列10可包括多个存储器块MB1-MBk(11)。每个存储器块11可包括多个串ST11-ST1m和ST21-ST2m。在一个实施例中,串ST11-ST1m和ST21-ST2m中的每一个可以形成为“U”形。在第一存储器块MB1中,m串可沿行方向(即,X方向)布置。图5示出了在列方向(即,Y方向)上布置两个串,但这只是一个示例。可以在列方向(Y方向)上布置三个或更多个的串。
多个串ST11-ST1m和ST21-ST2m中的每一个可以包括至少一个源极选择晶体管SST、第一至第n个存储器单元MC1-MCn、管道晶体管PT和至少一个漏极选择晶体管DST。
源极选择晶体管SST、漏极选择晶体管DST和存储器单元MC1-MCn可具有彼此相似的结构。例如,源极选择晶体管SST、漏极选择晶体管DST和存储器单元MC1-MCn中的每一个均可以包括沟道层、隧道绝缘层、电荷陷阱层和阻挡绝缘层。例如,可在每个串中提供用于提供沟道层的柱。例如,可以在每个串中提供用于提供沟道层、隧道绝缘层、电荷陷阱层和阻挡绝缘层中的至少一个的柱。
每个串的源极选择晶体管SST可耦合在源极线SL和存储器单元MC1-MCn之间。
在一个实施例中,布置在同一行中的串的源极选择晶体管可耦合至沿行方向延伸的源极选择线。布置在不同行中的串的源极选择晶体管可耦合至不同的源极选择线。在图5中,第一行中的串ST11-ST1m的源极选择晶体管可耦合至第一源极选择线SSL1。第二行中的串ST21-ST2m的源极选择晶体管可耦合至第二源极选择线SSL2。
在一个实施例中,串ST11-ST1m和ST21-ST2m的源极选择晶体管可以共同耦合至单条源极选择线。
每个串中的第一至第n个存储器单元MC1-MCn可耦合在源极选择晶体管SST和漏极选择晶体管DST之间。
第一至第n个存储器单元MC1-MCn可分为第一至第p个存储器单元MC1-MCp和第p+1至第n个存储器单元MCp+1至MCn。第一至第p个存储器单元MC1至MCp可依次布置在垂直方向(即,Z方向)上,并且在源极选择晶体管SST和管道晶体管PT之间彼此串联耦合。第p+1至第n个存储器单元MCp+1-MCn可依次布置在垂直方向(Z方向)上,并且在管道晶体管PT和漏极选择晶体管DST之间彼此串联耦合。第一至第p个存储器单元MC1-MCp和第p+1至第n个存储器单元MCp+1至MCn可通过管道晶体管PT相互耦合。每个串的第一至第n个存储器单元MC1-MCn的栅极可分别耦合至第一至第n条字线WL1-WLn。
在一个实施例中,第一至第n个存储器单元MC1-MCn中的至少一个可用作伪存储器单元。在提供伪存储器单元的情况下,可以稳定地控制对应串的电压或电流。相应串的管道晶体管PT的栅极可耦合至管线PL。
每个串的漏极选择晶体管DST可耦合在对应位线与存储器单元MCp+1-MCn之间。沿行方向布置的串可耦合至沿行方向延伸的对应漏极选择线。第一行中的串ST11-ST1m的漏极选择晶体管可耦合至第一漏极选择线DSL1。第二行中的串ST21-ST2m的漏极选择晶体管可耦合至第二漏极选择线DSL2。
沿列方向布置的串可耦合至沿列方向延伸的对应位线。在图5中,第一列中的串ST11和ST21可耦合至第一位线BL1。第m列中的串ST1m和ST2m可耦合至第m条位线BLm。
在沿行方向布置的串中,耦合至同一字线的存储器单元可形成一个页面。例如,与第一行的串ST11-ST1m中的第一字线WL1耦合的存储器单元可形成单个页面。与第二行的串ST21-ST2m中的第一字线WL1耦合的存储器单元可形成另外单个页面。当选择漏极选择线DSL1和DSL2中的任一条时,可选择在对应行中布置的串。当选择字线WL1-WLn中的任一条时,可以从所选串中选择对应的单个页面。
图6是示出根据本公开一个实施例的具有三维结构的存储器块的示例的示图。
参考图6,存储器单元阵列10可包括多个存储器块MB1-MBk(110)。每个存储器块11可以包括多个串ST11'-ST1m'和ST21'-ST2m'。串ST11'-ST1m'和ST21'-ST2m'中的每一个可在垂直方向(即,Z方向)上延伸。在每个存储器块11中,m串可沿行方向(即,X方向)布置。图6示出了两个串沿列方向(即,Y方向)布置,但这只是一个示例。可以在列方向(Y方向)上布置三个或更多个的串。
串ST11'-ST1m'和ST21'-ST2m'中的每一个均可以包括至少一个源极选择晶体管SST、第一至第n个存储器单元MC1-MCn以及至少一个漏极选择晶体管DST。
每个串的源极选择晶体管SST可耦合在源极线SL和存储器单元MC1-MCn之间。布置在同一行中的串的源极选择晶体管可耦合至同一源极选择线。布置在第一行中的串ST11'-ST1m'的源极选择晶体管可耦合至第一源选择线SSL1。布置在第二行中的串ST21'-ST2m'的源极选择晶体管可耦合至第二源极选择线SSL2。在一个实施例中,串ST11'-ST1m'和ST21'-ST2m'的源极选择晶体管可共同耦合至单个源极选择线。
每个串中的第一至第n个存储器单元MC1-MCn可串联耦合在源极选择晶体管SST和漏极选择晶体管DST之间。第一至第n个存储器单元MC1-MCn的栅极可分别耦合至第一至第n条字线WL1-WLn。
在一个实施例中,第一至第n个存储器单元MC1-MCn中的至少一个可用作伪存储器单元。在提供伪存储器单元的情况下,可以稳定地控制对应串的电压或电流。从而,可以提高存储在每个存储器块11中的数据的可靠性。
每个串的漏极选择晶体管DST可耦合在对应位线和存储器单元MC1-MCn之间。沿行方向布置的串的漏极选择晶体管DST可耦合至沿行方向延伸的对应漏极选择线。第一行中的串ST11'-ST1m'的漏极选择晶体管DST可耦合至第一漏极选择线DSL1。第二行中的串ST21'-ST2m'的漏极选择晶体管DST可耦合至第二漏极选择线DSL2。
图7是示出根据本公开一个实施例的存储器***的操作的流程图。下文进一步参考图1至图6描述该方法。
在步骤S710中,控制器1200从主机1400接收与读取命令相对应的主机命令Host_CMD。控制器1200可以从主机1400接收多个主机命令Host_CMD。因此,控制器1200可接收一个或多个读取命令。例如,控制器1200可以从主机1400接收与读取命令相对应的主机命令Host_CMD以及包括将被读取的数据的逻辑地址的地址ADD。在接收到多个读取命令的情况下,还接收与相应读取命令相对应的多个地址ADD。
控制器1200的处理器1220可响应于主机命令Host_CMD生成与读取操作相对应的命令队列,并且将所接收地址ADD的逻辑地址映射到物理地址。闪存控制电路1250可响应于由处理器1220生成的命令队列生成用于控制存储器设备1100的读取操作的内部命令,并将内部命令和地址(包括映射的物理地址)传输至存储器设备1100。
响应于从控制器1200接收的内部命令CMD和地址ADD,存储器设备1100在步骤S720中执行读取操作。例如,存储器设备1100可以对存储器设备1100中包括的多个半导体存储器100中的所选半导体存储器的所选存储器块(例如,存储器块MB1-MBk中的至少一个)的一个或多个所选物理页面PPG执行读取操作,并将读取数据传输至控制器1200。
控制器1200的存储器缓冲电路1230可以在将数据传输至主机1400之前,将从存储器设备1100接收的数据临时存储在读取缓冲器1233中。
处理器1220生成其上已完成读取操作的地址的累计读取计数(步骤S730)。即,每次为相关地址完成读取操作时,处理器1220会增加该地址的计数,从而为该地址生成累计读取计数。这里,地址可以是从主机1400接收的地址,即,逻辑地址。如果从主机1400接收到多个读取命令,则可以生成多个地址的相应累计读取计数,每个地址一个。
将已完成读取操作的地址的累计读取计数与第一设置计数“a”进行比较(步骤S740)。
如果在步骤S740中确定地址的累计读取计数大于或等于第一设置计数“a”(步骤S740中为是),则在步骤S750中,在存储器缓冲电路1230的地址列表存储块1231中存储的地址列表上更新关于对应地址的信息。
如果向地址列表存储块1231中存储的地址列表添加关于至少一个地址的信息,则在步骤S760中,处理器1220控制存储器缓冲电路1230和主机控制电路1210以将地址列表传输至主机1400。
在步骤S770中,主机1400基于所接收地址列表ADD_list中包括的地址信息生成与该地址信息相对应的数据的写入操作对应的新地址ADD和主机命令Host_CMD,并将新地址ADD和主机命令Host_CMD传输至控制器1200。这里,基于地址列表ADD_list中包括的地址信息,地址ADD可被生成以具有新逻辑地址。由于将要执行写入操作的数据是基于主机1400收到地址列表ADD_list的时间的最后请求的读取操作的结果而被接收,因此接收到主机1400的数据可被传输回控制器1200,或者控制器1200可被控制以使用控制器1200的读取缓冲器1233中保留的数据执行写入操作。
控制器1200可接收与数据的写入操作相对应的新地址ADD和主机命令Host_CMD。控制器1200的处理器1220可响应于主机命令Host_CMD生成与写入操作相对应的命令队列,并且将新物理地址映射到新地址ADD。此外,当从主机1400接收数据时,处理器1220可将接收到的数据临时存储在存储器缓冲电路1230的写入缓冲器1232中。
闪存控制电路1250可响应于命令队列生成用于控制存储器设备1100的写入操作的内部命令CMD,并且向存储器设备1100传输内部命令CMD、与物理地址映射的地址ADD以及从主机1400接收并临时存储在存储器缓冲电路1230的写入缓冲器1232中的数据或者在存储器缓冲电路1230的读取缓冲器1233中保留的数据。
存储器设备1100接收内部命令CMD和地址ADD,并将数据DATA存储在新的存储器块中(步骤S780)。
从而,与累计读取计数大于或等于第一设置计数的地址相对应的数据可存储在新存储器块中。因此,即使随后请求对数据执行读取操作,也会阻止执行读取回收操作,因为新存储器块的读取计数增加,而不会增加首次存储数据的存储器块的读取计数。
作为步骤S740的比较操作的结果,如果地址的累计读取计数小于第一设置计数“a”(步骤S740中为否),则处理器1220的读取回收控制块1224可增加并重新更新已在其上执行读取操作的存储器设备1100的存储器块的读取计数,并且检查存储器设备1100中包括的所有存储器块的相应读取计数。
在步骤S800中,读取回收控制块1224确定是否存在读取计数大于或等于第二设置计数“b”的存储器块。
作为步骤S800中的确定操作的结果,如果确定每个存储器块的读取计数小于第二设置计数“b”(步骤S800中为否),则可以终止存储器***100的操作。
如果检测到哪怕只有一个存储器块的读取计数大于或等于第二设置计数“b”(步骤S800中为是),则读取回收控制块1224可生成用于读取回收操作的命令队列,并且闪存控制电路1250可响应于命令队列生成内部命令CMD并将内部命令CMD传输至存储器设备1100。
在步骤S810中,存储器设备1100响应于内部命令CMD对检测到的存储器块执行读取回收操作。读取回收操作可包括将存储在所检测存储器块中的有效数据复制并存储到没有数据的新存储器块的操作以及擦除所检测存储器块的操作。
如上所述,根据本公开的一个实施例,在存储器块的读取计数达到第二设置值之前,使用读取请求地址的累计读取计数,因此与该地址对应的数据被存储在新存储器块中。因此,可防止执行读取回收操作。
图8是示出根据本公开一个实施例的图1的控制器200的示图。
参考图8,控制器1200可包括主机控制电路1210、处理器1220、存储器缓冲电路1230、纠错电路1240、闪存控制电路1250和总线1260。
在根据本实施例的控制器1200的配置中,纠错电路1240、闪存控制电路1250和总线1260可具有与参考图2描述的实施例相同的配置和操作;因此,将省略其进一步的解释。
主机控制电路1210可控制图1的主机1400与存储器缓冲电路1230之间的数据传输。例如,主机控制电路1210可控制将从主机1400输入的数据缓冲到存储器缓冲电路1230的操作。在一个实施例中,主机控制电路1210可控制将存储器缓冲电路1230中缓冲的数据输出至主机1400的操作。
主机控制电路1210可以将从主机1400接收的主机命令和地址传输至处理器1220,或者在处理器1220的控制下将存储在存储器缓冲电路1230中的地址列表传输至主机1400。
主机控制电路1210可包括地址读取计数器1211和地址列表管理块1212。
地址读取计数器1211可计算在读取操作中读取与从主机1400接收的特定地址相关联的数据的次数,并为该地址生成累计计数。换句话说,地址读取计数器1211可以将在读取操作期间从主机1400接收的地址的先前累计读取计数增加1,并更新累计读取计数。累计读取计数可以存储在存储器缓冲电路1230中。
当读取操作期间从主机1400接收的地址的累计读取计数大于或等于第一设置计数时,地址列表管理块1223可更新地址列表上关于地址的信息并将更新后的地址列表存储在存储器缓冲电路1212中。
主机控制电路1210还可以包括主机接口。
处理器1220可控制控制器1200的整体操作并执行逻辑操作。处理器1220可通过主机控制电路1210与图1的主机1400通信,并且通过闪存控制电路1250与图1的存储器设备1100通信。处理器1220可通过将存储器缓冲电路1230用作操作存储器、高速缓存存储器或缓冲存储器来控制存储器***1000的操作。处理器1220可基于优先级重新布置从主机1400接收的多个主机命令并生成命令队列,并且可以基于命令队列控制闪存控制电路1250。此外,处理器1220可生成存储器设备1100中的多个存储器块的相应读取计数,并控制闪存控制电路1250以对读取计数大于或等于第二设置计数的存储器块执行读取回收操作。当从主机1400接收到与在最后的读取操作期间读取并保留在存储器缓冲器1230中的数据的写入操作相对应的主机命令时,处理器1220可控制闪存控制电路1230以将保留在存储器缓冲电路1230的读取缓冲器1233中的数据传输至存储器设备1100,并将数据编程至存储器设备1100。
处理器1220可包括闪存转换层(FTL)1221和读取回收控制块1224。
FTL 1221可驱动固件。固件可存储在直接耦合至缓冲存储器1230或处理器1220的附加存储器(未示出)中,或者可以存储在处理器1220中限定的存储空间中。在写入操作期间,FTL 1221可映射对应于从图1的主机1400输入的地址(例如,逻辑地址)的物理地址。此外,在读取操作期间,FTL 1221可检查映射到从主机1400输入的逻辑地址的物理地址。
FTL 1221可响应于从主机1400接收的主机命令生成用于控制闪存控制电路1250的命令队列。
读取回收控制块1224可以管理包括在图1的存储器设备1100的半导体存储器100中的多个存储器块的相应读取计数,并控制闪存控制电路1250以在多个存储器中的读取计数大于或等于第二设置计数的存储器块上执行读取回收操作。
图9是示出根据本公开的一个实施例的存储器***30000的示图。
参考图9,存储器***30000可在移动电话、智能手机、平板PC、个人数字助理(PDA)或无线通信设备中实施。存储器***30000可包括存储器设备1100和能够控制存储器设备1100的操作的控制器1200。控制器1200可在处理器3100的控制下控制存储器设备1100的数据访问操作,例如编程操作、擦除操作或读取操作。
在控制器1200的控制下,可通过显示器3200输出编程到存储器设备1100的数据。
无线电收发器3300可通过天线ANT发送和接收无线电信号。例如,无线电收发器3300可将通过天线ANT接收的无线电信号转换为能够在处理器3100中处理的信号。因此,处理器3100可处理从无线电收发器3300输出的信号,并将处理后的信号传输至控制器1200或显示器3200。控制器1200可将被处理器3100处理的信号编程到存储器设备1100。此外,无线电收发器3300可将从处理器3100输出的信号转换为无线电信号,并通过天线ANT将改变的无线电信号输出至外部设备。输入设备3400可用于输入用于控制处理器3100的操作的控制信号或者将被处理器3100处理的数据。输入设备3400可以在指向设备(诸如触摸板和计算机鼠标、小键盘或键盘)中实施。处理器3100可控制显示器3200的操作,使得通过显示器3200输出从存储器控制器1200输出的数据、从无线电收发器3300输出的数据或者从输入设备3400输出的数据。
在一个实施例中,能够控制存储器设备1100的操作的控制器1200可实施为处理器3100的一部分或者与处理器3100分开设置的芯片。此外,控制器1200可使用图2或图8所示的控制器的示例来实施。
图10是示出根据本公开的一个实施例的存储器***40000的示图。
参考图10,存储器***40000可以在个人计算机(PC)、平板PC、上网本、电子阅读器、个人数字助理(PDA)、便携式多媒体播放器(PMP)、MP3播放器或MP4播放器中实施。
存储器***40000可包括存储器设备1100以及能够控制存储器设备1100的数据处理操作的控制器1200。
处理器4100可根据从输入设备4200输入的数据,通过显示器4300输出存储在存储器设备1100中的数据。例如,输入设备4200可以在指向设备(诸如触摸板或计算机鼠标、小键盘或键盘)中实施。
处理器4100可控制存储器***40000的整体操作,并控制控制器1200的操作。在一个实施例中,能够控制存储器设备1100的操作的控制器1200可实施为处理器4100的一部分或者与处理器4100分开设置的芯片。此外,控制器1200可使用图2或图8所示的控制器的示例来实施。
图11是示出根据本公开的一个实施例的存储器***50000的示图。
参考图11,存储器***50000可以在图像处理设备(例如,数码相机、设置有数码相机的便携式电话、设置有数码相机的智能手机或设置有数码相机的平板PC)中实施。
存储器***50000可包括存储器设备1100以及能够控制存储器设备1100的数据处理操作(例如,编程操作、擦除操作或读取操作)的控制器1200。
存储器***50000的图像传感器5200可将光学图像转换为数字信号。转换后的数字信号可传输至处理器5100或控制器1200。在处理器5100的控制下,转换后的数字信号可以通过显示器5300输出,或通过控制器1200存储至存储器设备1100。存储在存储器设备1100中的数据可以在处理器5100或控制器1200的控制下通过显示器5300输出。
在一个实施例中,能够控制存储器设备1100的操作的控制器1200可实施为处理器5100的一部分或者与处理器5100分开设置的芯片。此外,控制器1200可使用图2或图8所示的控制器的示例来实施。
图12是示出根据本公开的一个实施例的存储器***70000的示图。
参考图12,存储器***70000可以在存储卡或智能卡中实施。存储器***70000可包括存储器设备1100、控制器1200和卡接口7100。
存储器控制器1200可控制存储器设备1100和卡接口7100之间的数据交换。在一个实施例中,卡接口7100可以是安全数字(SD)卡接口或多媒体卡(MMC)接口,但不限于此。此外,控制器1200可使用图2或图8所示的控制器的示例来实施。
卡接口7100可根据主机60000的协议在主机60000和控制器1200之间进行数据交换。在一个实施例中,卡接口7100可支持通用串行总线(USB)协议和芯片间(IC)-USB协议。这里,卡接口可表示能够支持由主机60000使用的协议的硬件、安装在硬件中的软件或信号传输方案。
当存储器***70000连接至主机60000(诸如PC、平板PC、数码相机、数字音频播放器、移动电话、控制视频游戏硬件或数字机顶盒)的主机接口6200时,主机接口6200可以在微处理器6100的控制下通过卡接口7100和控制器1200执行与存储器设备1100的数据通信。
在本公开的各种实施例中,每次接收读取请求时,可以对接收到该读取请求的数据的地址进行计数以生成累计计数,并且当累计计数大于或等于设置计数时,执行用于读取数据的写入操作。因此,可以防止存储器块的读取计数过度增加,从而可以有效地管理读取回收计数。因此,要求执行读取回收操作的次数可以减少。从而,可以提高存储器***的效率。
尽管已经公开了本公开的实施例,但本领域技术人员将根据本公开了解到各种修改、添加或替换是可能的而在不背离本发明的范围和精神。
因此,本发明的范围由所附权利要求书及其等效物来限定,而不是通过前文的说明书来限定。
在上文讨论的实施例中,步骤可以选择性地执行或跳过。此外,每个实施例中的步骤并不总是按常规顺序执行。此外,本文公开的实施例旨在帮助本领域普通技术人员更清楚地理解本发明,而不是用于限制本发明的界限。
在描述本公开的实施例时,应根据本发明的精神来解释使用的具体术语或词语,而不限制其主题。应当理解,本文描述的基本发明概念的许多变化和修改仍将落入所附权利要求书及其等效物中定义的本发明的精神和范围。
Claims (20)
1.一种存储器***,包括:
主机,被配置为传输读取命令和地址并请求读取操作;
控制器,被配置为响应于所述读取命令和所述地址生成与所述读取操作相对应的内部命令,并且生成其上已经完成所述读取操作的所述地址的累计读取计数;以及
存储器设备,被配置为响应于所述内部命令执行所述读取操作,并且向所述控制器传输通过执行所述读取操作而读取的数据,
其中所述控制器接收来自所述存储器设备的所述读取的数据,临时存储所述读取的数据,然后将所述读取的数据传输至所述主机,并且当所述地址的所述累计读取计数大于或等于设置计数时,生成包括关于所述地址的信息的地址列表。
2.根据权利要求1所述的存储器***,
其中所述控制器向所述主机传输所述地址列表,并且
其中所述主机基于从所述控制器接收的所述地址列表请求针对所述读取的数据的写入操作。
3.根据权利要求2所述的存储器***,其中所述主机基于关于包括在所述地址列表中的所述地址的信息生成不同于所述地址的新地址,并且将所述新地址和写入命令传输至所述控制器。
4.根据权利要求3所述的存储器***,其中所述主机向所述控制器传输参考接收到所述地址列表的时间而最后接收到的所述读取的数据。
5.根据权利要求4所述的存储器***,其中所述控制器响应于从所述主机接收的所述写入命令和所述新地址生成用于所述写入操作的所述内部命令,并且控制所述存储器设备,使得从所述主机接收的所述读取的数据被存储在所述存储器设备中。
6.根据权利要求3所述的存储器***,其中所述控制器响应于从所述主机接收的所述写入命令和所述新地址生成用于所述写入操作的所述内部命令,并且控制所述存储器设备,使得在所述读取操作期间保留在所述控制器中的所述读取的数据被存储在所述存储器设备中。
7.根据权利要求1所述的存储器***,其中所述控制器包括:
处理器;
地址读取计数器,被配置为生成所述地址的所述累计读取计数;以及
地址列表管理块,被配置为将所述地址的所述累计读取计数与所述设置计数进行比较,并且生成所述地址列表。
8.根据权利要求7所述的存储器***,其中所述控制器进一步包括存储器缓冲电路,所述存储器缓冲电路包括:
读取缓冲器,被配置为在所述读取操作期间临时地存储从所述存储器设备接收的所述读取的数据;以及
地址列表存储块,被配置为存储所述地址的所述累计读取计数和所述地址列表。
9.根据权利要求8所述的存储器***,其中当接收到从所述主机接收的所述写入命令时,所述控制器将存储在所述读取缓冲器中的所述读取的数据传输至所述存储器设备。
10.一种存储器***,包括:
控制器,被配置为响应于从主机接收的读取请求和地址生成与读取操作相对应的内部命令,并且生成其上已经完成所述读取操作的所述地址的累计读取计数;以及
存储器设备,被配置为响应于所述内部命令执行所述读取操作,并且向所述控制器传输通过执行所述读取操作而读取的数据,
其中所述控制器控制所述存储器设备,使得当所述地址的所述累计读取计数大于或等于第一设置计数时,从所述存储器设备接收的所述读取的数据被存储在所述存储器设备的新存储器块中。
11.根据权利要求10所述的存储器***,其中当所述累计读取计数大于或等于所述第一设置计数时,所述控制器生成包括关于所述地址的信息的地址列表并将所述地址列表输出至所述主机。
12.根据权利要求10所述的存储器***,其中所述控制器包括:
处理器;
地址读取计数器,被配置为生成所述地址的所述累计读取计数;
地址列表管理块,被配置为将所述地址的所述累计读取计数与所述第一设置计数进行比较,并且生成所述地址列表;以及
读取回收控制块,被配置为生成所述存储器设备中包括的存储器块的相应读取计数并管理所述读取计数,以及基于所述读取计数控制读取回收操作。
13.根据权利要求12所述的存储器***,其中所述读取回收控制块控制所述存储器设备,以对所述读取计数大于或等于第二设置计数的存储器块执行所述读取回收操作。
14.根据权利要求12所述的存储器***,其中所述控制器还包括存储器缓冲电路,所述存储器缓冲电路包括:
读取缓冲器,被配置为在所述读取操作期间临时地存储从所述存储器设备接收的所述读取的数据;以及
地址列表存储块,被配置为存储所述地址的所述累计读取计数和所述地址列表。
15.一种操作存储器***的方法,包括:
从主机接收读取命令和地址;
响应于所述读取命令和所述地址,执行存储器设备的读取操作;
将作为所述读取操作的读取数据临时地存储在控制器中,并将所述读取数据传输至所述主机;
生成所述地址的累计读取计数,并将所述累计读取计数与第一设置计数进行比较;以及
作为比较结果,当所述累计读取计数大于或等于所述第一设置计数时,生成包括关于所述地址的信息的地址列表,并且将所述地址列表传输至所述主机。
16.根据权利要求15所述的方法,还包括:
基于从所述控制器接收的所述地址列表,生成用于所述读取数据的写入命令和新地址;以及
响应于所述写入命令和所述新地址,对所述读取数据执行写入操作。
17.根据权利要求16所述的方法,其中对所述存储器设备的新存储器块执行所述写入操作。
18.根据权利要求16所述的方法,其中所述控制器从所述主机接收所述读取数据以及所述写入命令和所述新地址,将接收到的所述读取数据传输至所述存储器设备,并且执行所述写入操作。
19.根据权利要求16所述的方法,其中当接收到所述写入命令和所述新地址时,所述控制器将存储在所述控制器中的所述读取数据传输至所述存储器设备,并且执行所述写入操作。
20.根据权利要求15所述的方法,还包括:作为比较结果,当所述累计读取计数小于所述第一设置计数时:
将所述存储器设备中包括的所有存储器块的相应读取计数与第二设置计数进行比较;以及
对所述读取计数大于或等于所述第二设置计数的存储器块执行读取回收操作。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR10-2018-0144904 | 2018-11-21 | ||
KR1020180144904A KR20200059774A (ko) | 2018-11-21 | 2018-11-21 | 메모리 시스템 및 그것의 동작 방법 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111209224A true CN111209224A (zh) | 2020-05-29 |
Family
ID=70728095
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910932595.7A Withdrawn CN111209224A (zh) | 2018-11-21 | 2019-09-29 | 存储器***及其操作方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20200160918A1 (zh) |
KR (1) | KR20200059774A (zh) |
CN (1) | CN111209224A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113808649A (zh) * | 2020-06-15 | 2021-12-17 | 爱思开海力士有限公司 | 存储器装置及其操作方法 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20220133693A (ko) | 2021-03-25 | 2022-10-05 | 에스케이하이닉스 주식회사 | 스토리지 장치 및 그 동작 방법 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150220276A1 (en) * | 2014-02-05 | 2015-08-06 | Sang-kwan MOON | Method of controlling a memory system |
CN105468291A (zh) * | 2014-08-21 | 2016-04-06 | 腾讯科技(深圳)有限公司 | 动态及静态磨损均衡控制方法及装置 |
KR20170048805A (ko) * | 2015-10-27 | 2017-05-10 | 엘지전자 주식회사 | 메모리 장치 및 그 동작 방법 |
CN107240418A (zh) * | 2016-03-28 | 2017-10-10 | 爱思开海力士有限公司 | 存储器***及其操作方法 |
US20180150261A1 (en) * | 2016-11-25 | 2018-05-31 | Samsung Electronics Co., Ltd. | Memory controller having reclaim controller and method of controlling operation of the memory controller |
CN108255739A (zh) * | 2016-12-28 | 2018-07-06 | 爱思开海力士有限公司 | 存储器***及其操作方法 |
CN108664408A (zh) * | 2017-03-27 | 2018-10-16 | 爱思开海力士有限公司 | 存储***及其操作方法 |
-
2018
- 2018-11-21 KR KR1020180144904A patent/KR20200059774A/ko unknown
-
2019
- 2019-07-02 US US16/460,310 patent/US20200160918A1/en not_active Abandoned
- 2019-09-29 CN CN201910932595.7A patent/CN111209224A/zh not_active Withdrawn
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150220276A1 (en) * | 2014-02-05 | 2015-08-06 | Sang-kwan MOON | Method of controlling a memory system |
CN105468291A (zh) * | 2014-08-21 | 2016-04-06 | 腾讯科技(深圳)有限公司 | 动态及静态磨损均衡控制方法及装置 |
KR20170048805A (ko) * | 2015-10-27 | 2017-05-10 | 엘지전자 주식회사 | 메모리 장치 및 그 동작 방법 |
CN107240418A (zh) * | 2016-03-28 | 2017-10-10 | 爱思开海力士有限公司 | 存储器***及其操作方法 |
US20180150261A1 (en) * | 2016-11-25 | 2018-05-31 | Samsung Electronics Co., Ltd. | Memory controller having reclaim controller and method of controlling operation of the memory controller |
CN108255739A (zh) * | 2016-12-28 | 2018-07-06 | 爱思开海力士有限公司 | 存储器***及其操作方法 |
CN108664408A (zh) * | 2017-03-27 | 2018-10-16 | 爱思开海力士有限公司 | 存储***及其操作方法 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113808649A (zh) * | 2020-06-15 | 2021-12-17 | 爱思开海力士有限公司 | 存储器装置及其操作方法 |
Also Published As
Publication number | Publication date |
---|---|
KR20200059774A (ko) | 2020-05-29 |
US20200160918A1 (en) | 2020-05-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102503177B1 (ko) | 메모리 시스템 및 그것의 동작 방법 | |
US11210004B2 (en) | Controller memory system to perform a single level cell (SLC), or multi level cell (MLC) or triple level cell (TLC) program operation on a memory block | |
US20200201571A1 (en) | Memory system and operating method thereof | |
CN111324550B (zh) | 存储器***及其操作方法 | |
CN111009277A (zh) | 存储器***及其操作方法 | |
US11163491B2 (en) | Memory system and method of operating the same | |
US11004504B2 (en) | Controller, memory system including the controller, and operating method of the memory system | |
CN111240585B (zh) | 控制器、包括控制器的存储器***及其操作方法 | |
US11113189B2 (en) | Memory system to perform read reclaim and garbage collection, and method of operating the same | |
CN111209224A (zh) | 存储器***及其操作方法 | |
US11269769B2 (en) | Memory system and method of operating the same | |
US20200125281A1 (en) | Memory system and method of operating the same | |
US11841805B2 (en) | Memory system for storing map data in host memory and operating method of the same | |
US11114172B2 (en) | Memory system and method of operating the same | |
CN111755055A (zh) | 控制器、包括控制器的存储器***及其操作方法 | |
CN112017716A (zh) | 存储器装置、包括其的存储器***及存储器***操作方法 | |
CN111681699B (zh) | 存储器装置及操作存储器装置的方法 | |
KR20240085237A (ko) | 메모리 장치, 이를 포함하는 메모리 시스템 및 그것의 동작 방법 | |
CN113470716A (zh) | 半导体存储器设备及其操作方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WW01 | Invention patent application withdrawn after publication | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20200529 |