CN109753455A - 存储器控制器及其操作方法 - Google Patents

存储器控制器及其操作方法 Download PDF

Info

Publication number
CN109753455A
CN109753455A CN201810844392.8A CN201810844392A CN109753455A CN 109753455 A CN109753455 A CN 109753455A CN 201810844392 A CN201810844392 A CN 201810844392A CN 109753455 A CN109753455 A CN 109753455A
Authority
CN
China
Prior art keywords
order
physical address
memory
address
caching
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
Application number
CN201810844392.8A
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.)
SK Hynix Inc
Original Assignee
Hynix Semiconductor Inc
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 Hynix Semiconductor Inc filed Critical Hynix Semiconductor Inc
Publication of CN109753455A publication Critical patent/CN109753455A/zh
Withdrawn legal-status Critical Current

Links

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/10Address translation
    • G06F12/1009Address translation using page tables, e.g. page table structures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1668Details of memory controller
    • G06F13/1673Details of memory controller using buffers
    • 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
    • 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/0292User address space allocation, e.g. contiguous or non contiguous base addressing using tables or multilevel address translation means
    • 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/06Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/064Management of blocks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0656Data buffering arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0659Command handling arrangements, e.g. command buffers, queues, command scheduling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1016Performance improvement
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/60Details of cache memory
    • G06F2212/608Details relating to cache mapping
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/72Details relating to flash memory management
    • G06F2212/7201Logical to physical mapping or translation of blocks or pages
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/72Details relating to flash memory management
    • G06F2212/7203Temporary buffering, e.g. using volatile buffer or dedicated buffer blocks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/72Details relating to flash memory management
    • G06F2212/7207Details relating to flash memory management management of metadata or control data
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/04Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS
    • G11C16/0483Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS comprising cells having several storage transistors connected in series

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

存储器控制器及其操作方法
相关申请的交叉引用
本申请要求于2017年11月8日提交的申请号为10-2017-0148125的韩国专利申请的优先权,其通过引用整体并入本文。
技术领域
本公开的各个实施例总体涉及一种电子装置。特别地,实施例涉及一种存储器控制器以及存操作储器控制器的方法。
背景技术
存储器装置可以具有二维(2D)结构,其中串水平地布置在半导体衬底上。可选地,存储器装置可以具有三维(3D)结构,其中串垂直地堆叠在半导体衬底上。随着2D结构正在达到其集成极限,半导体制造商正在生产包括垂直堆叠在半导体衬底上的多个存储器单元的3D存储器装置。
发明内容
本公开的各个实施例涉及一种具有改进的可靠性的存储器控制器。
本公开的各个实施例涉及一种具有改进的可靠性的存储器控制器的操作方法。
本公开的实施例可以提供一种存储器控制器。根据本公开的实施例的存储器控制器可以控制包括多个页面的半导体存储器装置。存储器控制器可以包括处理单元和命令控制单元。处理单元可以从主机接收命令和对应于命令的逻辑地址,并且可以通过转换逻辑地址来生成命令物理地址。命令控制单元可以临时存储缓存物理地址,该缓存物理地址对应于缓存在半导体存储器装置的页面缓冲器中的缓存数据,并且可以通过将缓存物理地址与命令物理地址进行比较来转换命令。
在实施例中,命令控制单元可以包括命令队列、页面缓冲器记录单元和命令转换单元。命令队列可以临时存储命令和命令物理地址。页面缓冲器记录单元可以临时存储缓存物理地址。命令转换单元可以从页面缓冲器记录单元接收缓存物理地址,将缓存物理地址与命令物理地址进行比较,并且基于比较的结果转换命令。
在实施例中,命令可以包括数据读取命令和数据输出命令。进一步地,当缓存物理地址与命令物理地址相同时,命令转换单元可以通过从命令删除数据读取命令来转换命令。
本公开的实施例可以提供一种存储器系统。根据本公开的实施例的存储器控制器可以控制包括多个页面的半导体存储器装置。存储器控制器可以包括处理单元、页面缓冲器记录单元和命令控制单元。处理单元可以从主机接收命令和对应于命令的逻辑地址,并且可以通过转换逻辑地址来生成命令物理地址。页面缓冲器记录单元可以临时存储缓存物理地址,该缓存物理地址对应于缓存在半导体存储器装置的页面缓冲器中的缓存数据。命令控制单元可以通过将缓存物理地址与命令物理地址进行比较来转换命令。
在实施例中,命令控制单元可以包括命令队列和命令转换单元。命令队列可以临时存储命令和命令物理地址。命令转换单元可以从页面缓冲器记录单元接收缓存物理地址,将缓存物理地址与命令物理地址进行比较,并且基于比较的结果转换命令。
本公开的实施例可以提供一种操作存储器控制器的方法。通过根据本公开的实施例的存储器控制器的操作方法,可以控制半导体存储器装置。存储器控制器的操作方法可以包括:从主机接收命令和对应于命令的逻辑地址;接收缓存物理地址,该缓存物理地址对应于缓存在半导体存储器装置的页面缓冲器中的缓存数据;将对应于逻辑地址的命令物理地址与缓存物理地址进行比较;以及基于比较的结果转换命令。
附图说明
图1是示出根据本公开的实施例的存储装置的框图。
图2是示出图1的半导体存储器装置的框图。
图3是示出图2的存储器单元阵列的实施例的示图。
图4是示出图3的存储块BLK1至BLKz中的任意一个存储块BLKa的示例的电路图。
图5是示出图3的存储块BLK1至BLKz中的任意一个存储块BLKb的示例的电路图。
图6是示出包括在图2的存储器单元阵列110中的存储块BLK1至BLKz中的任意一个存储块BLKc的示例的电路图。
图7是示出图2的读取和写入电路的操作的框图。
图8是示出读取和写入电路的编程操作的示图。
图9是示出读取和写入电路的读取操作的示图。
图10是示出读取和写入电路的数据输出操作的示图。
图11是示出根据本公开的实施例的存储器控制器的框图。
图12是示出图11中所示的命令控制单元的示例性实施例的框图。
图13是详细示出命令控制单元的操作的示图。
图14是说明命令转换操作的示图。
图15是示出存储在页面缓冲器记录单元中的数据的示例的示图。
图16是示出包括四个平面的半导体存储器装置的框图。
图17是示出存储在页面缓冲器记录单元中的数据的示例的示图。
图18是示出根据本公开的实施例的存储器控制器的框图。
图19是示出图18中所示的命令控制单元的示例性实施例的框图。
图20是说明根据本公开的实施例的存储器控制器的操作方法的流程图。
图21是详细说明图18的接收命令转换步骤的流程图。
图22是示出包括根据本公开的控制器的存储装置的实施例的框图。
图23是示出包括根据本公开的控制器的存储装置的实施例的框图。
图24是示出图22或图23的存储装置的应用示例的框图。
图25是示出包括以上参照图22或图23描述的存储装置的计算机系统的框图。
具体实施方式
以下参照附图更详细地描述本发明的各个实施例。然而,应注意的是,本发明可以以不同的其它形式和变化实施,并且不应被解释为限于本文阐述的实施例。相反,提供这些实施例使得本公开将是彻底且完整的,并且将向本发明所属领域的技术人员完全传达本发明。在整个公开中,相同的附图标记在整个本发明的各个附图和实施例中表示相同的部件。此外,对“实施例”的参考不一定意味着仅仅一个实施例,并且对“实施例”的不同参考不一定针对相同的实施例。
将理解的是,虽然术语“第一”、“第二”、“第三”等可在本文使用以描述各种元件,但是这些元件不受这些术语限制。这些术语被用于区分一个元件与另一元件。因此,在不脱离本发明的精神和范围的情况下,以下描述的第一元件也可被称为第二元件或第三元件。
当短语“......和......中的至少一个”在本文中与项目列表一起使用时,是指列表中的单个项目或列表中项目的任何组合。例如,“A、B和C中的至少一个”是指只有A、或只有B、或只有C、或A、B和C的任何组合。
附图不一定按比例绘制,在一些情况下,为了清楚地示出实施例的特征,可能已经夸大了比例。
将进一步理解的是,当一个元件被称为“连接至”或“联接至”另一元件时,它可以直接在其它元件上、连接至或联接至其它元件,或可存在一个或多个中间元件。另外,也将理解的是,当元件被称为在两个元件“之间”时,两个元件之间可以仅有一个元件或也可存在一个或多个中间元件。
本文使用的术语的目的仅是描述特定实施例而不旨在限制本发明。
如本文使用的,单数形式可以包括复数形式并且反之亦然,除非上下文另有清楚地说明。
也注意的是,在一些情况下,对相关领域的技术人员显而易见的是,结合一个实施例描述的也可被称为特征的元件可单独使用或与另一实施例的其它元件结合使用,除非另有明确说明。
将进一步理解的是,当在该说明书中使用术语“包括”、“包括有”、“包含”和“包含有”时,它们指定阐述的元件的存在而不排除一个或多个其它元件的存在或增加。如本文使用的,术语“和/或”可以包括一个或多个相关的所列项目的任何一个和所有组合。
在以下描述中,为了提供本发明的彻底理解,阐述了许多具体细节。本发明可在没有一些或全部这些具体细节的情况下被实施。在其它情况下,为了不使本发明不必要模糊,未详细地描述公知的进程结构和/或进程。
在下文中,将参照附图详细地描述本发明的各个实施例。
图1是示出根据本公开的实施例的存储装置10的框图。
参照图1,存储装置10可以包括半导体存储器装置100和存储器控制器200。进一步地,存储装置10与主机300通信。半导体存储器装置100可以包括存储器单元阵列110,其可以包括多个存储块BLK1、BLK2、...、BLKz(在下文中,被称为‘BLK1至BLKz’)。存储器控制器200控制半导体存储器装置100的整体操作。进一步地,存储器控制器200响应于从主机300接收的命令控制半导体存储器装置100的操作。
图2是示出图1的半导体存储器装置100的框图。
参照图2,半导体存储器装置100可以包括存储器单元阵列110、地址解码器120、读取和写入电路130、控制逻辑140、电压发生器150和输入/输出缓冲器160。
存储器单元阵列110可以包括多个存储块BLK1至BLKz。存储块BLK1至BLKz可以通过字线WL联接到地址解码器120。存储块BLK1至BLKz可以通过位线BL1至BLm联接到读取和写入电路130。存储块BLK1至BLKz中的每一个可以包括多个存储器单元。在实施例中,多个存储器单元可以是非易失性存储器单元,并且可以被实施为具有垂直通道结构的非易失性存储器单元。存储器单元阵列110可以被实施为具有二维(2D)结构的存储器单元阵列。在实施例中,存储器单元阵列110可以被实施为具有三维(3D)结构的存储器单元阵列。包括在存储器单元阵列中的存储器单元中的每一个可以存储至少一位的数据。在各个实施例中,包括在存储器单元阵列110中的存储器单元中的每一个可以是存储1位数据的单层单元(SLC)、存储2位数据的多层单元(MLC)、存储3位数据的三层单元、或存储4位数据的四层单元。在各个实施例中,存储器单元阵列110可以包括多个存储器单元,存储器单元中的每一个存储5位或更多位的数据。
地址解码器120、读取和写入电路130、控制逻辑140和电压发生器150可以用作用于驱动存储器单元阵列110的外围电路。地址解码器120通过字线WL联接到存储器单元阵列110。地址解码器120可以在控制逻辑140的控制下操作。地址解码器120可以通过设置在半导体存储器装置100中的输入/输出缓冲器160来接收地址。
地址解码器120可以解码接收的地址中的块地址。地址解码器120基于解码的块地址来选择至少一个存储块。当在读取操作期间执行读取电压施加操作时,地址解码器120可以将通过电压发生器150生成的读取电压Vread施加到选择的存储块的选择的字线,并且可以将通过电压Vpass施加到剩余的未选择的字线。在编程验证操作期间,地址解码器120可以将通过电压发生器150生成的验证电压施加到选择的存储块的选择的字线,并且可以将通过电压Vpass施加到剩余的未选择的字线。
地址解码器120可以对接收的地址中的列地址解码。地址解码器120可以将解码的列地址传输到读取和写入电路130。
半导体存储器装置100的读取操作和编程操作均逐页地执行。在读取操作和编程操作的请求下接收的地址可以包括块地址、行地址和列地址。地址解码器120可以根据块地址和行地址来选择一个存储块和一个字线。列地址可以由地址解码器120解码,并且可以然后被提供给读取和写入电路130。
地址解码器120可以包括块解码器、行解码器、列解码器、地址缓冲器等。
读取和写入电路130可以包括多个页面缓冲器PB1至PBm(未示出)。读取和写入电路130可以在存储器单元阵列110的读取操作期间用作“读取电路”,并且在其写入操作期间用作“写入电路”。多个页面缓冲器PB1至PBm通过位线BL1至BLm联接到存储器单元阵列110。为了在读取操作或编程验证操作期间感测存储器单元的阈值电压,页面缓冲器PB1至PBm可以向联接到存储器单元的位线连续地提供感测电流,同时页面缓冲器PB1至PBm中的每一个通过感测节点根据相应的存储器单元的编程状态感测流动电流量的变化并且将其锁存为感测数据。读取和写入电路130可以响应于从控制逻辑140输出的页面缓冲器控制信号来操作。
在读取操作期间,读取和写入电路130可以感测存储在存储器单元中的数据并且临时存储读取数据,并且然后可以将数据DATA输出到半导体存储器装置100的输入/输出缓冲器160。在实施例中,除了页面缓冲器(或页面电阻器)之外,读取和写入电路130可以进一步包括列选择电路等(未示出)。
控制逻辑140联接到地址解码器120、读取和写入电路130以及电压发生器150。控制逻辑140可以通过半导体存储器装置100的输入/输出缓冲器160接收命令CMD和控制信号CTRL。控制逻辑140可以响应于控制信号CTRL来控制半导体存储器装置100的全部操作。控制逻辑140可以输出控制信号以用于控制多个页面缓冲器PB1至PBm中的感测节点的预充电电位水平。控制逻辑140可以控制读取和写入电路130执行存储器单元阵列110的读取操作。
电压发生器150可以响应于从控制逻辑140输出的控制信号来生成读取操作所需的读取电压Vread和通过电压Vpass。电压发生器150可以包括接收内部电源电压以生成具有各种电压水平的多个电压的多个泵送电容器(pumping capacitors),并且可以在控制逻辑140的控制下通过选择性地使能多个泵送电容器来生成多个电压。
地址解码器120、读取和写入电路130以及电压发生器150可以用作对存储器单元阵列110执行读取操作、写入操作和擦除操作的外围电路。外围电路可以在控制逻辑140的控制下对存储器单元阵列110执行读取操作、写入操作和擦除操作。
图3是示出图2的存储器单元阵列110的实施例的示图。
参照图3,存储器单元阵列110可以包括多个存储块BLK1至BLKz。每个存储块可以具有三维(3D)结构。每个存储块可以包括堆叠在衬底上的多个存储器单元。这样的存储器单元沿正X(+X)方向、正Y(+Y)方向和正Z(+Z)方向排列。下面将参照图4和图5详细地描述每个存储块的结构。
图4是示出图3的存储块BLK1至BLKz中的任意一个存储块BLKa的示例的电路图。
参照图4,存储块BLKa可以包括多个单元串CS11至CS1m和CS21至CS2m。在实施例中,单元串CS11至CS1m和CS21至CS2m中的每一个可以形成为‘U’形。在存储块BLKa中,m个单元串被布置在行方向(即,正(+)X方向)上。在图4中,两个单元串示出为被布置在列方向(即,正(+)Y方向)上。然而,这仅仅是说明性的,并且本公开不限于此。即,三个或更多个单元串可以被布置在列方向上。
多个单元串CS11至CS1m和CS21至CS2m中的每一个可以包括至少一个源极选择晶体管SST、第一存储器单元MC1至第n存储器单元MCn、管道晶体管PT以及至少一个漏极选择晶体管DST。
选择晶体管SST和DST以及存储器单元MC1至MCn可以分别具有相似的结构。在实施例中,选择晶体管SST和DST以及存储器单元MC1至MCn中的每一个可以包括沟道层、隧穿绝缘层、电荷存储层和阻挡绝缘层。在实施例中,用于提供沟道层的柱(pillar)可以被提供给每个单元串。在实施例中,用于提供沟道层、隧穿绝缘层、电荷存储层和阻挡绝缘层中的至少一个的柱可以被提供给每个单元串。
每个单元串的源极选择晶体管SST连接在共源线CSL与存储器单元MC1至MCp之间。
在实施例中,布置在相同行中的单元串的源极选择晶体管联接到在行方向上延伸的源极选择线,并且布置在不同行中的单元串的源极选择晶体管联接到不同的源极选择线。例如,在图4中,第一行中的单元串CS11至CS1m的源极选择晶体管联接到第一源极选择线SSL1。第二行中的单元串CS21至CS2m的源极选择晶体管联接到第二源极选择线SSL2。
在实施例中,单元串CS11至CS1m和CS21至CS2m的源极选择晶体管可以共同地联接到单个源极选择线。
在每个单元串中的第一存储器单元MC1至第n存储器单元MCn均联接在源极选择晶体管SST和漏极选择晶体管DST之间。
第一存储器单元MC1至第n存储器单元MCn可以被划分成第一存储器单元MC1至第p存储器单元MCp以及第p+1存储器单元MCp+1至第n存储器单元MCn。第一存储器单元MC1至第p存储器单元MCp可以顺序地被布置在与正(+)Z方向相反的方向上并且串联地连接在源极选择晶体管SST与管道晶体管PT之间。第p+1存储器单元MCp+1至第n存储器单元MCn顺序地被布置在+Z方向上并且串联地联接在管道晶体管PT和漏极选择晶体管DST之间。第一存储器单元MC1至第p存储器单元MCp以及第p+1存储器单元MCp+1至第n存储器单元MCn通过管道晶体管PT彼此联接。每个单元串的第一存储器单元MC1至第n存储器单元MCn的栅极分别联接到第一字线WL1至第n字线WLn。
每个单元串的管道晶体管PT的栅极联接到管线PL。
每个单元串的漏极选择晶体管DST连接在相应的位线和存储器单元MCp+1至MCn之间。在行方向上的单元串联接到在行方向上延伸的漏极选择线。第一行中的单元串CS11至CS1m的漏极选择晶体管联接到第一漏极选择线DSL1。第二行中的单元串CS21至CS2m的漏极选择晶体管联接到第二漏极选择线DSL2。
在列方向上布置的单元串联接到在列方向上延伸的位线。例如,在图4中,第一列中的单元串CS11和CS21联接到第一位线BL1。第m列中的单元串CS1m和CS2m联接到第m位线BLm。
在行方向上布置的单元串中的联接到相同字线的存储器单元构成单个页面。例如,第一行中的单元串CS11至CS1m中的联接到第一字线WL1的存储器单元构成单个页面。第二行中的单元串CS21到CS2m中的联接到第一字线WL1的存储器单元构成单个另外的页面。可以通过选择漏极选择线DSL1和DSL2中的任何一个来选择布置在单个行方向上的单元串。可以通过选择字线WL1至WLn中的任何一个而从选择的单元串中选择单个页面。
在实施例中,可以提供偶数位线和奇数位线来代替除第一位线BL1至第m位线BLm之外。在该情况下,在行方向上布置的单元串CS11至CS1m或CS21至CS2m的列为偶数的单元串可以分别联接到偶数位线,并且在行方向上布置的单元串CS11至CS1m或CS21至CS2m的列为奇数的单元串可以分别联接到奇数位线。
在实施例中,第一储器单元MC1至第n存储器单元MCn中的一个或多个可以用作虚拟存储器单元。例如,可以提供一个或多个虚拟存储器单元以减少源极选择晶体管SST与存储器单元MC1至MCp之间的电场。可选地,可以提供一个或多个虚拟存储器单元以减少漏极选择晶体管DST与存储单元MCp+1至MCn之间的电场。当提供较多的虚拟存储器单元时,存储块BLKa的操作的可靠性提高,但是存储块BLKa的大小增加。当提供较少的存储器单元时,存储块BLKa的大小减小,但是存储块BLKa的操作的可靠性可能劣化。
为了有效地控制一个或多个虚拟存储器单元,虚拟存储器单元中的每一个可以具有所需的阈值电压。在执行存储块BLKa的擦除操作之前或之后,可以对虚拟存储器单元中的全部或一些执行编程操作。在已经执行编程操作之后,当执行擦除操作时,虚拟存储器单元的阈值电压控制被施加到联接到各个虚拟存储器单元的虚拟字线的电压,并且因此虚拟存储器单元可以具有所需的阈值电压。
图5是示出图3的存储块BLK1至BLKz中的任意一个存储块BLKb的示例的电路图。
参照图5,存储块BLKb可以包括多个单元串CS11'至CS1m'和CS21'至CS2m'。多个单元串CS11'至CS1m'和CS21'至CS2m'中的每一个沿着正Z(+Z)方向延伸。单元串CS11'至CS1m'和CS21'至CS2m'中的每一个可以包括在存储块BLKb下方在衬底(未示出)上方堆叠的至少一个源极选择晶体管SST、第一存储器单元MC1至第n存储器单元MCn以及至少一个漏极选择晶体管DST。
每个单元串的源极选择晶体管SST连接在共源线CSL与存储器单元MC1至MCn之间。在相同行中布置的单元串的源极选择晶体管联接到相同的源极选择线。例如,在图5中,第一行中的单元串CS11'至CS1m'的源极选择晶体管联接到第一源极选择线SSL1。在第二行中布置单元串CS21'至CS2m'的源极选择晶体管联接到第二源极选择线SSL2。在实施例中,单元串CS11'至CS1m'和CS21'至CS2m'的源极选择晶体管可以共同地联接到单个源极选择线。
在每个单元串中的第一存储器单元MC1至第n存储器单元MCn串联地连接在源极选择晶体管SST和漏极选择晶体管DST之间。第一存储器单元MC1至第n存储器单元MCn的栅极分别联接到第一字线WL1至第n字线WLn。
每个单元串的漏极选择晶体管DST连接在相应的位线和存储器单元MC1至MCn之间。在行方向上布置的单元串的漏极选择晶体管联接到在行方向上延伸的漏极选择线。第一行中的单元串CS11'至CS1m'的漏极选择晶体管联接到第一漏极选择线DSL1。第二行中的单元串CS21'至CS2m'的漏极选择晶体管联接到第二漏极选择线DSL2。
因此,除了管道晶体管PT从每个单元串被取消之外,图5的存储块BLKb具有与图4的存储块BLKa的电路类似的等效电路。
在实施例中,可以提供偶数位线和奇数位线来代替第一位线BL1至第m位线BLm。在该情况下,在行方向上布置的单元串CS11'至CS1m'或CS21'至CS2m'的列为偶数的单元串可以分别联接到偶数位线,并且在行方向上布置的单元串CS11'至CS1m'或CS21'至CS2m'的列为奇数的单元串可以分别联接到奇数位线。
在实施例中,第一储器单元MC1至第n存储器单元MCn中的一个或多个可以用作虚拟存储器单元。例如,可以提供一个或多个虚拟存储器单元以减少源极选择晶体管SST与存储器单元MC1至MCn之间的电场。可选地,可以提供一个或多个虚拟存储器单元以减少漏极选择晶体管DST与存储单元MC1至MCn之间的电场。当提供较多的虚拟存储器单元时,存储块BLKb的操作的可靠性提高,但是存储块BLKb的大小增加。当提供较少的存储器单元时,存储块BLKb的大小减小,但是存储块BLKb的操作的可靠性可能劣化。
为了有效地控制一个或多个虚拟存储器单元,虚拟存储器单元中的每一个可以具有所需的阈值电压。在执行存储块BLKb的擦除操作之前或之后,可以对虚拟存储器单元中的全部或一些执行编程操作。在已经执行编程操作之后,当执行擦除操作时,虚拟存储器单元的阈值电压控制被施加到联接到各个虚拟存储器单元的虚拟字线的电压,并且因此虚拟存储器单元可以具有所需的阈值电压。
图6是示出包括在图2的存储器单元阵列110中的存储块BLK1至BLKz中的任意一个存储块BLKc的示例的电路图。
参照图6,存储块BLKc可以包括多个单元串CS1至CSm。多个单元串CS1至CSm可以分别联接到多个位线BL1到BLm。单元串CS1至CSm中的每一个可以包括至少一个源极选择晶体管SST、第一存储器单元MC1至第n存储器单元MCn以及至少一个漏极选择晶体管DST。
选择晶体管SST和DST以及存储器单元MC1至MCn可以具有相似的结构。在实施例中,选择晶体管SST和DST以及存储器单元MC1至MCn中的每一个可以包括沟道层、隧穿绝缘层、电荷存储层和阻挡绝缘层。在实施例中,用于提供沟道层的柱(pillar)可以被设置在每个单元串中。在实施例中,用于提供沟道层、隧穿绝缘层、电荷存储层和阻挡绝缘层中的至少一个的柱可以被设置在每个单元串中。
每个单元串的源极选择晶体管SST联接在共源线CSL与存储器单元MC1至MCn之间。
在每个单元串中的第一存储器单元MC1至第n存储器单元MCn联接在源极选择晶体管SST和漏极选择晶体管DST之间。
每个单元串的漏极选择晶体管DST联接在相应的位线和存储器单元MC1至MCn之间。
联接到相同字线的存储器单元可以构成单个页面。可以通过选择漏极选择线DSL来选择单元串CS1至CSm。可以通过选择字线WL1至WLn中的任意一个而从选择的单元串中选择一个页面。
在其它实施例中,可以提供偶数位线和奇数位线来代替第一位线BL1至第m位线BLm。在该情况下,例如,在单元串CS1至CSm中,偶数编号的单元串可以分别联接到偶数位线,并且奇数编号的单元串可以分别联接到奇数位线。
图7是示出图2的读取和写入电路130的操作的框图。
参照图7,存储器单元阵列110可以包括多个存储器单元,并且可以由字线WL和位线BL访问。联接到相同字线的存储器单元可以形成页面111。
存储器控制器200可以从主机接收命令,并且然后传送命令CMD和地址ADDR以控制半导体存储器装置100。例如,当从主机接收到读取命令和对应于页面111的逻辑地址时,存储器控制器200可以将读取命令CMD和对应的物理地址ADDR传送到半导体存储器装置100。通过使用存储器控制器200转换从主机接收的逻辑地址来生成物理地址ADDR。
控制逻辑140控制外围电路(未示出),使得响应于接收的命令CMD和地址,将存储在页面111的各个存储器单元中的数据的片段传送到读取和写入电路130的页面缓冲器。传送到读取和写入电路130的页面缓冲器的数据DATA被传递到存储器控制器200。存储器控制器200将从半导体存储器装置100接收的数据DATA传送到主机。
图8是示出读取和写入电路130的编程操作的示图。在描述图8时,将参考图7。
参照图8,当执行编程操作时,存储器控制器200可以将数据输入命令DIN、物理地址ADDR和数据DATA传输到半导体存储器装置100。作为用于请求半导体存储器装置100的编程操作的命令中的一个的数据输入命令DIN可以是用于请求将数据DATA缓冲在读取和写入电路130的页面缓冲器中的命令。
包括在读取和写入电路130中的页面缓冲器可以接收对应于一个页面的数据,并且在时间段t1期间缓冲接收的数据。
当接收到对应于一个页面的数据时,存储器控制器200可以将数据写入命令DWrite传输到半导体存储器装置100。数据写入命令DWrite可以是用于请求将待被临时存储在读取和写入电路130的页面缓冲器中的数据DATA编程到对应于存储器单元阵列110的物理地址ADDR的页面111的命令。
响应于数据写入命令DWrite,临时存储在读取和写入电路130的页面缓冲器中的数据的片段可以被编程到存储器单元阵列110。在编程完成之前,读取和写入电路130的页面缓冲器可以在时间段tW期间保留数据DATA。
时间段t1和时间段tW形成整个编程时间tPGM。
图9是示出读取和写入电路130的读取操作的示图。在描述图9时,将参考图7。
参照图9,当执行读取操作时,存储器控制器200可以将数据读取命令DRead和物理地址ADDR传输到半导体存储器装置100。作为用于请求半导体存储器装置100的读取操作的命令中的一个,数据读取命令Dread可以是用于请求被存储在存储器单元阵列110中的数据DATA被感测并加载到读取和写入电路130的页面缓冲器中的命令。
在时间段tR期间,可以感测存储器单元阵列110,并且可以将存储在存储器单元阵列110中的数据加载到读取和写入电路130的页面缓冲器中。读取和写入电路130的页面缓冲器可以缓冲加载的数据。
当对应于一个页面的数据的感测完成时,存储器控制器200可以将数据输出命令DOUT传输到半导体存储器装置100。响应于数据输出命令DOUT,读取和写入电路130的页面缓冲器可以将数据DATA传输到存储器控制器200。读取和写入电路130的页面缓冲器可以在时间段tO期间将临时存储的数据传输到存储器控制器200。
时间段tR和时间段tO形成整个读取时间tREAD。
此处,各个时间段t1、tW、tR和tO的相对比率不受图8和图9的限制。
即使在数据DATA已经被传送到存储器控制器200之后,读取和写入电路130的页面缓冲器也可以保留加载的数据。
当存储器控制器200在将页面111的数据被加载到读取和写入电路130的页面缓冲器中的状态下从主机接收读取对应于相同物理地址ADDR的数据的请求时,读取和写入电路130的页面缓冲器不需要再次感测存储在页面111的存储器单元中的数据。相反,已经加载到读取和写入电路130的页面缓冲器中的数据被立即传送到存储器控制器200。
在该情况下,存储器控制器200可以仅将数据输出命令DOUT传送到半导体存储器装置100而不传送数据读取命令DRead,从而使得加载到读写电路130的页面缓冲器中的数据DATA能够被传输到存储器控制器200。
图10是示出读取和写入电路130的数据输出操作的示图。
如上所述,当存储器控制器200在页面111的数据被加载到读取和写入电路130的页面缓冲器中的状态下,从主机接收到读取与先前的数据输入命令DIN的相同物理地址ADDR对应的数据的请求时,存储器控制器200可以仅将数据输出命令DOUT传送到半导体存储器装置100而不传输数据读取命令DRead。
因此,数据感测不需要时间段tR,并且因此时间段tO形成整个读取时间tREAD。
为了执行以上操作,存储器控制器200需要关于存储数据DATA的页面111的信息。读取和写入电路130的页面缓冲器上的当前加载的数据DATA是响应于来自主机的先前的编程操作请求而与先前的数据输入命令DIN一起提供的数据DATA。即,应当知道对应于存储在读取和写入电路130的页面缓冲器中的数据DATA的页面111的物理地址ADDR。进一步地,控制器200可以将对应于从主机接收的命令的逻辑地址转换为物理地址,并且可以将物理地址与对应于加载到读取和写入电路130的页面缓冲器中的数据DATA的物理地址ADDR进行比较。
如图10所示,当作为比较的结果两个物理地址彼此相同时,存储器控制器200可以仅将数据输出命令DOUT传送到半导体存储器装置100。如图9所示,当作为比较的结果两个物理地址彼此不同时,存储器控制器200可以将数据读取命令DRead和数据输出命令DOUT顺序地传送到半导体存储器装置100。
图11是示出根据本公开的实施例的图1的存储器控制器200的框图。
参照图11,根据本公开的实施例的存储器控制器200可以包括处理单元210、命令控制单元220、主机接口(I/F)230、随机存取存储器(RAM)240和存储器接口(I/F)250。
下面将参考图22详细描述处理单元210、主机接口230,RAM 240和存储器接口250的各个操作。
处理单元210控制存储器控制器200的全部操作。同时,处理单元将从主机接收的命令传送到命令控制单元220。进一步地,处理单元将对应于命令的逻辑地址转换为物理地址,并且将该物理地址传送到命令控制单元220。
命令控制单元220可以临时存储物理地址,该物理地址对应于当前加载到半导体存储器装置100的读取和写入电路130中的数据DATA。
当前加载到读取和写入电路130中的数据DATA被称为“缓存数据”,并且对应于缓存数据的物理地址ADDR被称为“缓存物理地址”。同时,当前由命令控制单元220从处理单元210接收的物理地址,即对应于从主机接收的当前命令的物理地址,也称为“命令物理地址”。当前命令可以是读取命令。
当命令物理地址与缓存物理地址相同时,命令控制单元220可以转换命令。相反地,当命令物理地址与缓存物理地址不同时,命令控制单元220不转换命令。下面将参照图12至图14描述与命令的转换相关的命令控制单元220的详细操作。
图12是示出图11的命令控制单元220的示例性实施例的框图。
参照图12,命令控制单元可以包括命令队列221、页面缓冲器记录单元223和命令转换单元225。
命令队列221可以排队从处理单元210接收的命令和对应的命令物理地址。因此,通过命令控制单元220接收的命令和命令物理地址可以被顺序存储在命令队列221中。
页面缓冲器记录单元223可以临时存储包括缓存物理地址的页面缓冲器记录数据。在实施例中,对应于当前加载在如图7所示的读取和写入电路130的页面缓冲器上的缓存数据的页面111的物理地址可以作为缓存物理地址被存储在页面缓冲器记录单元223中。
命令转换单元225从页面缓冲器记录单元223接收缓存物理地址。进一步地,命令转换单元225将缓存物理地址与命令物理地址进行比较。命令转换单元225可以基于比较的结果转换存储在命令队列221中的命令。
下面将参照图13描述命令控制单元220的各个元件的详细操作。
图13是详细示出命令控制单元220的操作的示图。
参照图13,接收的命令CMD1、CMD2、...、CMD7根据先进先出(FIFO)方案顺序地入队到命令队列221。详细地,命令入队到命令队列221的后部,并且命令从命令队列221的前部出队。在图13中,首先入队的命令CMD1当前被存储在命令队列221的前部,并且最后入队的命令CMD7被存储在命令队列221的后部。在命令队列221的前部中排队的命令CMD1被传送到半导体存储器装置100。同时,虽然未在图13中示出,但是可以看出,对应于命令CMD1、...、CMD7的命令物理地址与命令队列221中的相应命令一起排队。
命令转换单元225从页面缓冲器记录单元223接收缓存物理地址PLI。如图7所示,缓存物理地址PLI可以是对应于当前加载在读取和写入电路130的页面缓冲器上的缓存数据的页面111的物理地址。
命令转换单元225可以将从页面缓冲器记录单元223接收的缓存物理地址PLI与对应于存储在命令队列221中的命令CMD1的命令物理地址进行比较。即,命令转换单元225将在命令队列221的前部排队的命令物理地址与缓存物理地址PLI进行比较。
当命令物理地址与缓存物理地址PLI相同时,命令转换单元225转换命令CMD1。相对地,当命令物理地址与缓存物理地址PLI不同时,命令转换单元225不转换命令CMD1。下面将参照图14详细描述命令的转换。
图14是说明命令转换单元225的命令转换操作的示图。
参照图14,示出了当命令物理地址与缓存物理地址PLI相同时由命令转换单元225执行的命令转换操作。
当命令物理地址与缓存物理地址PLI相同时,待读取的由主机请求的数据可以是数据DATA或当前加载到读取和写入电路130的页面缓冲器中的缓存数据。因此,为了减少读取时间tREAD,不需要传输数据读取命令DRead。
因此,命令转换单元225可以从存储在命令队列221的前部的命令CMD1中删除数据读取命令DRead,然后可以生成转换的命令CMD1'。生成的转换的命令CMD1'可以仅包括数据输出命令DOUT。转换的命令CMD1'可以被传送到半导体存储器装置100,并且加载到读取和写入电路130的页面缓冲器中的数据DATA或缓存数据被立即传递到存储器控制器200。
当命令物理地址与缓存物理地址PLI不同时,待读取的由主机请求的数据可以不同于数据DATA或当前加载到读取和写入电路130的页面缓冲器中的缓存数据。因此,不转换命令CMD1,并且将包括数据读取命令DRead和数据输出命令DOUT的命令CMD1传送到半导体存储器装置100。读取和写入电路130的页面缓冲器可以响应于数据读取命令DRead来感测对应于新地址的页面数据。并且,页面缓冲器可以响应于数据输出命令DOUT将感测的页面数据传送到存储器控制器200。
如以上参照图11至图14所述,根据本公开的实施例的存储器控制器200可以包括与处理单元210分离且独立的命令控制单元220。处理单元210可以仅将对应于命令的逻辑地址转换为物理地址,并且可以将该物理地址传送到命令控制单元220。命令控制单元220可以将接收的命令物理地址排队在命令队列中,并且可以通过将在命令队列的前部排队的命令物理地址与缓存物理地址进行比较来转换命令。因此,可以减少施加在处理单元210的固件上的负载。因此,存储器控制器的操作可靠性可以提高。同时,命令控制单元220可以被实施为与处理单元210分开提供的物理硬件。
图15是示出存储在页面缓冲器记录单元223中的页面缓冲器记录数据的示例的示图。参照图15,存储在页面缓冲器记录单元223中的页面缓冲器记录数据可以包括两个字段。在第一字段Field1中,可以存储指示刚刚对页面缓冲器执行的操作类型的信息。例如,在图15中,可以存储读取操作READ的信息指示。在第二字段Field2中,可以存储缓存物理地址。在图15中,行地址被示为存储在第二字段中。在实施例中,块地址也可以被存储在第二字段中。应当注意的是,存储在页面缓冲器记录单元223中的页面缓冲器记录数据不受图15所示的示例的限制。即,各种其它类型的数据可以被存储在页面缓冲器记录单元223中。
图16是示出包括四个平面的半导体存储器装置101的框图。参照图16,半导体存储器装置101可以包括第一平面PLANE1至第四平面PLANE4。同时,相应的页面缓冲器PB1至PB4可以联接到各个平面。如图16所示,当半导体存储器装置101包括四个页面PB1至PB4时,页面缓冲器记录单元223可以存储关于各个页面缓冲器的页面缓冲器记录数据的片段。
图17是示出存储在页面缓冲器记录单元223中的页面缓冲器记录数据的示例的示图。如图16所示,当半导体存储器装置101包括四个页面PB1至PB4时,页面缓冲器记录单元223可以存储包括分别对应于页面缓冲器PB1至PB4的缓存物理地址的四个页面缓冲器记录数据。参照图17,页面缓冲器记录数据的每个片段可以包括三个字段。在第零字段Field0中,可以存储平面信息,并且在第一字段Field1中,可以存储指示刚刚对页面缓冲器执行的操作类型的信息。同时,在第二字段Field2中,可以存储行地址。第零字段中的平面信息和第二字段中的行地址可以构成单个缓存物理地址。
图18是示出根据本公开的另一实施例的图1的存储器控制器200的框图。
参照图18,根据本公开的实施例的存储器控制器200可以包括处理单元210、命令缓冲器记录单元222、命令控制单元224、主机接口(I/F)230、RAM 240和存储器接口(I/F)250。
下面将参考图23详细描述如图18所示的处理单元210、主机接口230,RAM 240和存储器接口250的各个操作。
处理单元210控制存储器控制器200的全部操作。同时,处理单元210将从主机接收的命令传送到命令控制单元224。进一步地,处理单元210可以将对应于命令的逻辑地址转换为物理地址,并且可以将该物理地址传送到命令控制单元224。
页面缓冲器记录单元222可以临时存储对应于当前加载到半导体存储器装置100的页面缓冲器中的数据的物理地址。即,页面缓冲器日志记录单元222可以临时存储对应于加载到页面缓冲器中的“缓存数据”的“缓存物理地址”。在实施例中,对应于当前加载在如图7所示的读取和写入电路130的页面缓冲器上的缓存数据的页面111的物理地址可以作为缓存物理地址被存储在页面缓冲器记录单元222中。
当命令物理地址与缓存物理地址相同时,命令控制单元224可以转换命令。当命令物理地址与缓存物理地址不同时,命令控制单元224不转换命令。
在图18中可以看出,页面缓冲器记录单元222被设置为与命令控制单元224分离的部件。同时,参照图11和图12,页面缓冲器记录单元223被设置为包括在命令控制单元220中的部件。图18的页面缓冲器记录单元222和图12的页面缓冲器记录单元223可以执行基本相同的操作。
图19是示出图18的命令控制单元224的示例性实施例的框图。参照图19,命令控制单元224可以包括命令队列226和命令转换单元228。
命令队列226可以排队从处理单元210接收的命令和对应于其的命令物理地址。因此,通过命令控制单元224接收的命令和命令物理地址可以被顺序存储在命令队列226中。
命令转换单元228可以从图18所示的页面缓冲器记录单元222接收缓存物理地址。进一步地,命令转换单元228可以将缓存物理地址与命令物理地址进行比较。命令转换单元228可以基于比较的结果转换存储在命令队列226中的命令。
即,图19所示的命令队列226和命令转换单元228可以执行与图12所示的命令队列221和命令转换单元225基本相同的操作。
图20是示出根据本公开的实施例的操作存储器控制器200的方法的流程图。
参照图20,根据本公开的实施例的存储器控制器200的操作方法可以包括:从主机接收命令的步骤S110、搜索对应于接收的命令的页面缓冲器记录数据的步骤S130、以及通过将页面缓冲器记录数据与接收的命令进行比较来转换接收的命令的步骤S150。
在步骤S110处,存储器控制器200可以从主机接收读取命令。同时,存储器控制器200可以接收相应的逻辑地址并且将逻辑地址转换为命令物理地址。
在步骤S130处,页面缓冲器记录数据可以具有缓存物理地址,并且可以被存储在页面缓冲器记录单元223或222中,如图12或18所示。在步骤S130处,可以搜索存储在页面缓冲器记录单元223或222中的页面缓冲器记录数据。
在步骤S150处,将包括在搜索的页面缓冲器记录数据中的缓存物理地址与当前接收的命令的物理地址进行比较,然后基于比较的结果转换当前接收的命令。下面将参照图21详细描述步骤S150。
图21是详细示出转换图20所示的当前接收的命令的步骤S150的流程图。
参照图21,转换接收的命令的步骤S150可以包括从作为步骤S130的搜索结果找到的页面缓冲器记录数据中提取缓存物理地址的步骤S210、确定缓存物理地址是否与接收的命令的物理地址相同的步骤S230以及转换接收的命令的步骤S250。
在步骤S210处,从作为步骤S130的搜索结果找到的页面缓冲器记录数据中提取缓存物理地址。
在步骤S230处,将命令物理地址与缓存物理地址进行比较,以确定两个地址是否彼此相同。
如果两个地址彼此相同,则在步骤S250通过从命令中删除数据读取命令来转换接收的命令,而如果两个地址彼此不同,则在不转换接收的命令的情况下终止步骤S150。
可以看出,图20和图21中所示的方法基本上与以上参照图7至图19描述的存储器控制器200的操作方法相同。
图22是示出包括根据本公开的存储器控制器1200的存储装置1000的实施例的框图。
参照图22,存储装置1000可以包括半导体存储器装置1300和控制器1200。
半导体存储器装置1300可以具有与以上参照图2描述的半导体存储器装置100的配置和操作相同的配置和操作。控制器1200可以具有与以上参照图11描述的存储器控制器200相同的配置和操作。在下文中,将省略重复的解释。
控制器1200联接到主机(Host)和半导体存储器装置1300。控制器1200响应于来自主机Host的请求来访问半导体存储器装置1300。例如,控制器1200控制半导体存储器装置1300的读取操作、写入操作、擦除操作和后台操作。控制器1200在主机Host和半导体存储器装置1300之间提供接口。控制器1200运行用于控制半导体存储器装置1300的固件。
控制器1200可以包括RAM 1210、处理单元1220、命令控制单元1225、主机接口1230、存储器接口1240和错误校正块1250。
RAM 1210被用作处理单元1220的工作存储器、半导体存储器装置1300和主机Host之间的高速缓冲存储器以及半导体存储器装置1300和主机Host之间的缓冲存储器中的任何一个。
处理单元1220控制控制器1200的全部操作。处理单元1200控制半导体存储器装置1300的读取操作、编程操作、擦除操作和后台操作。存储器控制单元1220运行用于控制半导体存储器装置1300的固件。处理单元1220可以执行闪存转换层(FTL)的功能。处理单元1220可以通过FTL将由主机提供的逻辑块地址(LBA)转换成物理块地址(PBA)。FTL可以使用映射表来接收LBA并且可以将LBA转换成PBA。通过FTL执行的地址映射方法包括根据映射单元的各种方法。代表性的地址映射方法包括页面映射方法、块映射方法和混合映射方法。
命令控制单元1225可以具有与图12中所示的命令控制单元220相同的配置。命令控制单元1225可以在对应于接收的命令的物理地址处搜索页面缓冲器记录数据,并且然后可以通过将找到的页面缓冲器记录数据与接收的命令进行比较来转换接收的命令。
主机接口1230可以包括用于在主机Host和控制器1200之间执行数据交换的协议。在示例性实施例中,控制器1200通过诸如以下的各种接口协议中的至少一种与主机Host通信:通用串行总线(USB)协议、多媒体卡(MMC)协议、外围组件互连(PCI)协议、高速PCI(PCI-E)协议、高级技术附件(ATA)协议、串行ATA协议、并行ATA协议、小型计算机小型接口(SCSI)协议、强型小型磁盘接口(ESDI)协议、电子集成驱动器(IDE)协议以及专用协议。
存储器接口1240与半导体存储器装置1300接口连接。例如,存储器接口1240可以包括NAND接口或NOR接口。
错误校正块1250使用错误校正码(ECC)来检测和校正从半导体存储器装置1300接收的数据中的错误。错误校正块1250可以使用ECC来校正来自读取页面数据的错误。错误校正块1250可以通过使用低密度奇偶校验(LDPC)码、博斯-查德胡里霍昆格姆(Bose,Chaudhuri,Hocquenghem,BCH)码、涡轮(Turbo)码、里德-所罗门(Reed-Solomon,RS)码、卷积码、递归系统码(RSC)、诸如网格编码调制(TCM)、分组编码调制(BCM)或汉明(hamming)码的编码调制来校正错误。
控制器1200和半导体存储器装置1300可以被集成到单个半导体装置中。在示例性实施例中,控制器1200和半导体存储器装置1300可以被集成到单个半导体装置中以形成存储卡。例如,控制器1200和半导体存储器装置1300可以集成到单个半导体器装置中并形成诸如以下的存储卡:个人计算机存储卡国际协会(PCMCIA)、标准闪存卡(CF),智能媒体卡(SM或SMC),记忆棒、多媒体卡(MMC、RS-MMC或微型MMC)、SD卡(SD、迷你SD、微型SD或SDHC)、通用闪速存储器(UFS)。
控制器1200和半导体存储器装置1300可以被集成到单个半导体装置中以形成固态驱动器(SSD)。固态驱动器(SSD)可以包括将数据存储在半导体存储器装置1300中的存储装置1000。当存储装置1000被用作SSD时,联接到存储装置1000的主机Host的操作速度可以被显著提高。
在实施例中,存储装置1000可以被设置为电子装置的诸如以下的各种元件中的一个:计算机、超移动PC(UMPC)、工作站、上网本、个人数字助理(PDA)、便携式计算机、网络平板、无线电话、移动电话、智能电话、电子书、便携式多媒体播放器(PMP)、游戏机、导航系统、黑匣子、数码相机、三维电视、数字音频记录器、数字音频播放器、数字图片记录器、数字图片播放器、数字视频记录器、数字视频播放器、能够在无线环境下传输/接收信息的装置、形成家庭网络的各种电子装置中的一个、形成计算机网络的各种电子装置中的一个、形成远程信息处理的各种电子装置中的一个、RFID装置、形成计算系统的各种元件中的一个等。
在示例性实施例中,半导体存储器装置1300或存储装置1000可以被嵌入在各种类型的封装中。例如,半导体存储器装置1300或存储装置1000可以被封装成诸如以下类型:堆叠封装(PoP)、球栅阵列(BGA)、芯片级封装(CSP)、塑料引线芯片载体(PLCC)、塑料双列直插封装(PDIP)、芯片封装、芯片晶片、片上芯片(COB)、陶瓷双列直插封装(CERDIP)、塑料公制四方扁平封装(MQFP)、薄四方扁平封装(TQFP)、小外形集成电路(SOIC)、收缩小外形封装(SSOP)、薄型小外形封装(TSOP)、薄四方扁平封装(TQFP)、系统级封装(SIP)、多芯片封装(MCP)、晶圆级制造封装(WFP)、晶圆级处理堆叠封装(WSP)等。
图23是示出包括根据本公开的存储器控制器1200的存储装置1000的实施例的框图。
参照图23,存储装置1000可以包括半导体存储器装置1300和存储器控制器1200。
半导体存储器装置1300可以具有与以上参照图2描述的半导体存储器装置100的配置和操作相同的配置和操作。控制器1200可以具有与以上参照图18描述的存储器控制器200相同的配置和操作。在下文中,将省略重复的解释。
控制器1200可以包括RAM 1210、处理单元1220、页面缓冲器记录单元1224、命令控制单元1226、主机接口1230、存储器接口1240和错误校正块1250。
页面缓冲器记录单元1224可以被设置为与命令控制单元1226分离的部件,并且可以临时存储对应于加载到页面缓冲器中的“缓存数据”的“缓存物理地址”。
命令控制单元1226可以具有与图19中所示的命令控制单元224相同的配置。命令控制单元1226可以在对应于接收的命令的物理地址处搜索页面缓冲器记录数据,并且可以通过将找到的页面缓冲器记录数据与接收的命令进行比较来转换接收的命令。
图24是示出图22或图23的存储装置2000的应用示例的框图。
参照图24,存储装置2000可以包括半导体存储器装置2100和控制器2200。半导体存储器装置2100可以包括多个半导体存储器芯片。半导体存储器芯片被划分成多个组。
在图24中,示出的是,多个组中的每一个通过第一通道CH1至第k个通道CHk与控制器2200通信。每个半导体存储器芯片可以具有与以上参照图2描述的半导体存储器装置100的配置和操作相同的配置和操作。
每个组通过一个公共通道与控制器2200通信。控制器2200具有与以上参照图22描述的控制器1200相同的配置,并且通过多个通道CH1至CHK来控制半导体存储器装置2100的多个存储器芯片。
在图24中,已经进行了描述,使得多个半导体存储器芯片联接到单个通道。然而,将理解的是,存储装置2000可以被修改,使得单个半导体存储器芯片联接到单个通道。
图25是示出包括参照图22或图23描述的存储装置2000的计算系统300的框图。
参照图25,计算系统3000可以包括中央处理单元(CPU)3100、RAM3200、用户接口3300、电源3400、系统总线3500和存储装置2000。
存储装置2000通过系统总线3500电联接到CPU 3100、RAM 3200、用户接口3300和电源3400。通过用户接口3300提供或由CPU 3100处理的数据被存储在存储装置2000中。
在图25中,半导体存储器装置2100被示为通过控制器2200联接到系统总线3500。然而,半导体存储器装置2100可以直接联接到系统总线3500。控制器2200的功能可以由CPU3100和RAM 3200执行。
在图25中,参照图24描述的存储装置2000被示出为被提供。然而,存储装置2000可以用参照图22或图23描述的存储装置1000代替。在实施例中,计算系统3000可以包括参照图22、图23和图24描述的存储装置1000和2000中的所有。
根据本公开的实施例,可以提供一种具有改进的可靠性的存储器控制器。
根据本公开的实施例,可以提供一种具有改进的可靠性的存储器控制器的操作方法。
虽然为了说明的目的已经公开本公开的示例性实施例,但是本领域技术人员将理解,各种变型、添加和替换是可能的。因此,本公开的范围必须由所附权利要求和权利要求的等同物限定,而不是由前面的描述限定。
虽然已经公开本公开的实施例,但是本领域技术人员将理解,在不脱离本公开的范围和精神的情况下,各种变型、添加和替换是可能的。
因此,本公开的范围必须由所附权利要求和权利要求的等同物限定,而不是由前面的描述限定。
在以上讨论的实施例中,可以选择性地执行或跳过所有步骤。另外,每个实施例中的步骤可以不总是按规则顺序地执行,并且可以以另一顺序执行。此外,在本说明书和附图中公开的实施例旨在帮助本领域普通技术人员更清楚地理解本公开,而不是旨在限制本公开的范围。换言之,本公开所属领域的普通技术人员将能够容易地理解,基于本公开的技术范围,各种变型是可能的。
已经参照附图描述本公开的实施例,并且在说明书中使用的特定术语或词语应当根据本公开的精神来解释,而不限制其主题。应当理解的是,本文所述的基本发明构思的许多变化和变型将仍然落入如所附权利要求及其等同物所限定的本公开的精神和范围内。

Claims (19)

1.一种存储器控制器,用于控制包括多个页面的半导体存储器装置,所述存储器控制器包括:
处理单元,从主机接收命令和对应于所述命令的逻辑地址,并且通过转换所述逻辑地址来生成命令物理地址;以及
命令控制单元,临时存储缓存物理地址,所述缓存物理地址对应于缓存在所述半导体存储器装置的页面缓冲器中的缓存数据,并且通过将所述缓存物理地址与所述命令物理地址进行比较来转换所述命令。
2.根据权利要求1所述的存储器控制器,其中所述命令是读取命令。
3.根据权利要求2所述的存储器控制器,其中所述命令控制单元包括:
命令队列,临时存储所述命令和所述命令物理地址;
页面缓冲器记录单元,临时存储所述缓存物理地址;以及
命令转换单元,从所述页面缓冲器记录单元接收所述缓存物理地址,将所述缓存物理地址与所述命令物理地址进行比较,并且基于比较的结果转换所述命令。
4.根据权利要求3所述的存储器控制器,其中:
所述命令包括数据读取命令和数据输出命令,以及
当所述缓存物理地址与所述命令物理地址相同时,所述命令转换单元通过从所述命令删除所述数据读取命令来转换所述命令。
5.根据权利要求4所述的存储器控制器,其中所述命令转换单元将位于所述命令队列的前部的命令物理地址与所述缓存物理地址进行比较。
6.根据权利要求3所述的存储器控制器,其中所述页面缓冲器记录单元在所述半导体存储器装置的读取操作完成时更新所述缓存物理地址。
7.根据权利要求3所述的存储器控制器,其中所述命令物理地址是加载到所述页面缓冲器中的数据的行地址。
8.根据权利要求6所述的存储器控制器,其中所述页面缓冲器记录单元包括:
第一字段,存储指示最近对所述页面缓冲器执行的操作的类型的信息;以及
第二字段,存储行地址或块地址。
9.一种存储器控制器,用于控制包括多个页面的半导体存储器装置,所述存储器控制器包括:
处理单元,从主机接收命令和对应于所述命令的逻辑地址,并且通过转换所述逻辑地址来生成命令物理地址;
页面缓冲器记录单元,临时存储缓存物理地址,所述缓存物理地址对应于缓存在所述半导体存储器装置的页面缓冲器中的缓存数据;以及
命令控制单元,通过将所述缓存物理地址与所述命令物理地址进行比较来转换所述命令。
10.根据权利要求9所述的存储器控制器,其中所述命令是读取命令。
11.根据权利要求10所述的存储器控制器,其中所述命令控制单元包括:
命令队列,临时存储所述命令和所述命令物理地址;以及
命令转换单元,从所述页面缓冲器记录单元接收所述缓存物理地址,将所述缓存物理地址与所述命令物理地址进行比较,并且基于比较的结果转换所述命令。
12.根据权利要求11所述的存储器控制器,其中:
所述命令包括数据读取命令和数据输出命令,以及
当所述缓存物理地址与所述命令物理地址相同时,所述命令转换单元通过从所述命令删除所述数据读取命令来转换所述命令。
13.根据权利要求12所述的存储器控制器,其中所述命令转换单元将位于所述命令队列的前部的命令物理地址与所述缓存物理地址进行比较。
14.根据权利要求11所述的存储器控制器,其中所述页面缓冲器记录单元在所述半导体存储器装置的读取操作完成时更新所述缓存物理地址。
15.根据权利要求11所述的存储器控制器,其中所述命令物理地址是加载到所述页面缓冲器中的数据的行地址。
16.一种操作存储器控制器的方法,所述存储器控制器用于控制半导体存储器装置,所述方法包括:
从主机接收命令和对应于所述命令的逻辑地址;
接收缓存物理地址,所述缓存物理地址对应于缓存在所述半导体存储器装置的页面缓冲器中的缓存数据;
将对应于所述逻辑地址的命令物理地址与所述缓存物理地址进行比较;以及
基于所述比较的结果转换所述命令。
17.根据权利要求16所述的方法,其中所述命令是读取命令。
18.根据权利要求17所述的方法,其中:
所述命令包括数据读取命令和数据输出命令,以及
转换所述命令包括当所述缓存物理地址与所述命令物理地址相同时,通过从所述命令中删除所述数据读取命令来转换所述命令。
19.根据权利要求16所述的方法,进一步包括当对应于所述命令的所述半导体存储器装置的操作完成时,更新所述缓存物理地址。
CN201810844392.8A 2017-11-08 2018-07-27 存储器控制器及其操作方法 Withdrawn CN109753455A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020170148125A KR20190052441A (ko) 2017-11-08 2017-11-08 메모리 컨트롤러 및 그 동작 방법
KR10-2017-0148125 2017-11-08

Publications (1)

Publication Number Publication Date
CN109753455A true CN109753455A (zh) 2019-05-14

Family

ID=66327154

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810844392.8A Withdrawn CN109753455A (zh) 2017-11-08 2018-07-27 存储器控制器及其操作方法

Country Status (3)

Country Link
US (1) US20190138455A1 (zh)
KR (1) KR20190052441A (zh)
CN (1) CN109753455A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112988052A (zh) * 2019-12-17 2021-06-18 爱思开海力士有限公司 存储器装置及其操作方法
CN113687767A (zh) * 2020-05-19 2021-11-23 爱思开海力士有限公司 存储控制器、存储器装置和存储装置
CN114594902A (zh) * 2020-12-03 2022-06-07 西部数据技术公司 Nand存储器的数据转移协议的开销减小

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190074890A (ko) * 2017-12-20 2019-06-28 에스케이하이닉스 주식회사 메모리 컨트롤러 및 그 동작 방법
KR20210066551A (ko) * 2019-11-28 2021-06-07 에스케이하이닉스 주식회사 반도체 메모리 장치 및 그 동작 방법

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1841297A (zh) * 2005-04-01 2006-10-04 三星电子株式会社 闪存及包含闪存的处理系统
US20120159072A1 (en) * 2010-12-17 2012-06-21 Kabushiki Kaisha Toshiba Memory system
CN104143357A (zh) * 2013-05-07 2014-11-12 爱思开海力士有限公司 存储系统、半导体存储器件及其操作方法
US20160034221A1 (en) * 2014-07-31 2016-02-04 Kabushiki Kaisha Toshiba Memory system and control method thereof
US20160291872A1 (en) * 2015-04-03 2016-10-06 Kabushiki Kaisha Toshiba Storage device writing data on the basis of stream
CN106297865A (zh) * 2015-06-29 2017-01-04 爱思开海力士有限公司 控制半导体存储器件的控制器及其操作方法

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040158694A1 (en) * 2003-02-10 2004-08-12 Tomazin Thomas J. Method and apparatus for hazard detection and management in a pipelined digital processor
US7243216B1 (en) * 2003-04-25 2007-07-10 Advanced Micro Devices, Inc. Apparatus and method for updating a status register in an out of order execution pipeline based on most recently issued instruction information
WO2008101316A1 (en) * 2007-02-22 2008-08-28 Mosaid Technologies Incorporated Apparatus and method for using a page buffer of a memory device as a temporary cache
JP5296041B2 (ja) * 2010-12-15 2013-09-25 株式会社東芝 メモリシステムおよびメモリシステムの制御方法
KR20140064434A (ko) * 2012-11-20 2014-05-28 에스케이하이닉스 주식회사 반도체 메모리 장치, 그것을 포함하는 메모리 시스템 및 그것의 동작 방법
KR20150015764A (ko) * 2013-08-01 2015-02-11 삼성전자주식회사 스토리지 디바이스 및 이를 포함하는 스토리지 시스템
US9753653B2 (en) * 2015-04-14 2017-09-05 Sandisk Technologies Llc High-priority NAND operations management

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1841297A (zh) * 2005-04-01 2006-10-04 三星电子株式会社 闪存及包含闪存的处理系统
US20120159072A1 (en) * 2010-12-17 2012-06-21 Kabushiki Kaisha Toshiba Memory system
CN104143357A (zh) * 2013-05-07 2014-11-12 爱思开海力士有限公司 存储系统、半导体存储器件及其操作方法
US20160034221A1 (en) * 2014-07-31 2016-02-04 Kabushiki Kaisha Toshiba Memory system and control method thereof
US20160291872A1 (en) * 2015-04-03 2016-10-06 Kabushiki Kaisha Toshiba Storage device writing data on the basis of stream
CN106297865A (zh) * 2015-06-29 2017-01-04 爱思开海力士有限公司 控制半导体存储器件的控制器及其操作方法

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112988052A (zh) * 2019-12-17 2021-06-18 爱思开海力士有限公司 存储器装置及其操作方法
CN112988052B (zh) * 2019-12-17 2024-03-08 爱思开海力士有限公司 存储器装置及其操作方法
CN113687767A (zh) * 2020-05-19 2021-11-23 爱思开海力士有限公司 存储控制器、存储器装置和存储装置
CN114594902A (zh) * 2020-12-03 2022-06-07 西部数据技术公司 Nand存储器的数据转移协议的开销减小
CN114594902B (zh) * 2020-12-03 2024-05-31 西部数据技术公司 Nand存储器的数据转移协议的开销减小

Also Published As

Publication number Publication date
KR20190052441A (ko) 2019-05-16
US20190138455A1 (en) 2019-05-09

Similar Documents

Publication Publication Date Title
CN109213705A (zh) 存储装置及其操作方法
CN109753455A (zh) 存储器控制器及其操作方法
CN109427400B (zh) 存储器装置及其操作方法
KR20190019427A (ko) 메모리 장치 및 그 동작 방법
CN101833996A (zh) 非易失性存储设备及其读取方法
CN110119244A (zh) 存储器控制器及其操作方法
CN109542394A (zh) 控制器、半导体存储器装置及具有它们的存储器系统
US11531615B2 (en) Controller and memory system for performing garbage collection operation, and operating method thereof
CN111798904A (zh) 非易失性存储器装置、其操作方法和存储器系统
CN109493895A (zh) 半导体存储器装置及其操作方法
CN109949839A (zh) 存储器控制器及存储器控制器的操作方法
CN110175133A (zh) 存储装置及其操作方法
CN109697995A (zh) 半导体存储器装置及其操作方法
CN107170485A (zh) 半导体存储设备及其操作方法
CN110534148A (zh) 半导体存储器装置及操作该半导体存储器装置的方法
CN109147852A (zh) 控制器及其操作方法
US11237961B2 (en) Storage device and host device performing garbage collection operation
US10990541B2 (en) Controller using cache eviction policy based on read data size
US11636017B2 (en) Controller and method of operating the same
US11113203B2 (en) Controller and method of operating the same
US11056204B2 (en) Memory device and method of operating the same
US20210042221A1 (en) Controller for semiconductor memory device and method of operating the same
US20150178153A1 (en) Memory system
CN111933204B (zh) 半导体存储器装置及其操作方法
CN110299175A (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: 20190514