CN106325765A - 用于通过多个通道来控制半导体存储器件的存储系统 - Google Patents
用于通过多个通道来控制半导体存储器件的存储系统 Download PDFInfo
- Publication number
- CN106325765A CN106325765A CN201510993931.0A CN201510993931A CN106325765A CN 106325765 A CN106325765 A CN 106325765A CN 201510993931 A CN201510993931 A CN 201510993931A CN 106325765 A CN106325765 A CN 106325765A
- Authority
- CN
- China
- Prior art keywords
- channel
- data
- semiconductor storage
- storage unit
- passage
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 239000004065 semiconductor Substances 0.000 title claims abstract description 196
- 239000000872 buffer Substances 0.000 claims abstract description 99
- 238000004891 communication Methods 0.000 claims description 6
- 230000003139 buffering effect Effects 0.000 claims description 4
- 239000004020 conductor Substances 0.000 claims description 4
- 230000006870 function Effects 0.000 claims description 3
- 230000003111 delayed effect Effects 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 7
- 239000008186 active pharmaceutical agent Substances 0.000 description 6
- 230000005540 biological transmission Effects 0.000 description 5
- 230000005611 electricity Effects 0.000 description 5
- 101100481702 Arabidopsis thaliana TMK1 gene Proteins 0.000 description 4
- 230000004044 response Effects 0.000 description 4
- 238000001514 detection method Methods 0.000 description 3
- 230000006872 improvement Effects 0.000 description 3
- 238000000034 method Methods 0.000 description 3
- 230000000717 retained effect Effects 0.000 description 3
- 229910001218 Gallium arsenide Inorganic materials 0.000 description 2
- 230000008878 coupling Effects 0.000 description 2
- 238000010168 coupling process Methods 0.000 description 2
- 238000005859 coupling reaction Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000001052 transient effect Effects 0.000 description 2
- 241000208340 Araliaceae Species 0.000 description 1
- GPXJNWSHGFTCBW-UHFFFAOYSA-N Indium phosphide Chemical compound [In]#P GPXJNWSHGFTCBW-UHFFFAOYSA-N 0.000 description 1
- 235000005035 Panax pseudoginseng ssp. pseudoginseng Nutrition 0.000 description 1
- 235000003140 Panax quinquefolius Nutrition 0.000 description 1
- 235000014676 Phragmites communis Nutrition 0.000 description 1
- XUIMIQQOPSSXEZ-UHFFFAOYSA-N Silicon Chemical compound [Si] XUIMIQQOPSSXEZ-UHFFFAOYSA-N 0.000 description 1
- 238000005299 abrasion Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 235000013399 edible fruits Nutrition 0.000 description 1
- 230000005621 ferroelectricity Effects 0.000 description 1
- 229910052732 germanium Inorganic materials 0.000 description 1
- GNPVGFCGXDBREM-UHFFFAOYSA-N germanium atom Chemical compound [Ge] GNPVGFCGXDBREM-UHFFFAOYSA-N 0.000 description 1
- 235000008434 ginseng Nutrition 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 229910052710 silicon Inorganic materials 0.000 description 1
- 239000010703 silicon Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Classifications
-
- 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/0638—Organizing or formatting or addressing of data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
-
- 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/1605—Handling requests for interconnection or transfer for access to memory bus based on arbitration
- G06F13/1652—Handling requests for interconnection or transfer for access to memory bus based on arbitration in a multiprocessor architecture
- G06F13/1663—Access to shared 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/0604—Improving or facilitating administration, e.g. storage management
-
- 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/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/08—Address circuits; Decoders; Word-line control 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/10—Programming or data input circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/10—Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
- G11C7/1006—Data managing, e.g. manipulating data before writing or reading out, data bus switches or control circuits therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/20—Employing a main memory using a specific memory technology
- G06F2212/202—Non-volatile memory
- G06F2212/2022—Flash memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/60—Details of cache memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/72—Details relating to flash memory management
- G06F2212/7203—Temporary buffering, e.g. using volatile buffer or dedicated buffer blocks
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C2216/00—Indexing scheme relating to G11C16/00 and subgroups, for features not directly covered by these groups
- G11C2216/12—Reading and writing aspects of erasable programmable read-only memories
- G11C2216/14—Circuits or methods to write a page or sector of information simultaneously into a nonvolatile memory, typically a complete row or word line in flash memory
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)
- Techniques For Improving Reliability Of Storages (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Read Only Memory (AREA)
Abstract
一种存储系统,包括:多个通道;多个半导体存储器件,连接到通道;以及控制器,经由通道来控制半导体存储器件,其中,该控制器将程序数据写入到所述多个半导体存储器件的第一半导体存储器件中,以及其中,在所述程序数据的写入失败时,程序数据被暂时储存在所述多个半导体存储器件的第二半导体存储器件的页缓冲单元中,第二半导体存储器件连接到除与第一半导体存储器件相对应的通道之外的通道。
Description
相关申请的交叉引用
本申请要求2015年6月30日提交的申请号为10-2015-0092972的韩国专利申请的优先权,其全部公开通过引用整体合并于此。
技术领域
本公开的各种实施例涉及一种电子设备,更具体地说,涉及一种用于通过多个通道来控制半导体存储器件的存储系统。
背景技术
半导体存储器件通过使用诸如硅(Si)、锗(Ge)、砷化镓(GaAs)、磷化铟(InP)的半导体来实现。半导体存储器件通常分为易失性存储器件和非易失性存储器件。
在易失性存储器件中,当电力被阻断时,所存储的数据消失。易失性存储器件包括静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)等。另一方面,非易失性存储器件即使在未通电时仍保留所存储的数据。非易失性存储器件包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)、快闪存储器、相变RAM(PRAM)、磁性RAM(MRAM)、电阻式RAM(RRAM)、铁电RAM(FRAM)等。快闪存储器通常划分为NOR型和NAND型。
多个半导体存储器件可以包括在存储系统中。半导体存储器件通过多个通道来控制以便由控制器高效地操作。
发明内容
本发明的各个实施例涉及一种具有改善的操作速度的存储器件。本公开的实施例可以包括存储系统,该存储系统包括:多个通道;连接到通道的多个半导体存储器件;以及控制器,其通过通道来控制半导体存储器件,其中,控制器将程序数据写入到多个半导体存储器件的第一半导体存储器件中,以及其中,当程序数据的写入失败时,程序数据被暂时储存在多个半导体存储器件的第二半导体存储器件的页缓冲单元中,第二半导体存储器件连接到除与第一半导体存储器件相对应的通道以外的通道。
本公开的实施例可包括存储系统,该存储系统包括:多个通道;多个半导体存储器件,连接到通道;以及控制器,其通过通道来控制半导体存储器件并且通过使原始数据随机化来生成随机数据,其中,控制器将随机数据写入到多个半导体存储器件的第一半导体存储器件中,以及其中,当随机数据的写入失败时,随机数据被去随机化,并且被去随机化了的数据被暂时储存在多个半导体存储器件的第二半导体存储器件的页缓冲单元中,第二半导体存储器件连接到除与第一半导体存储器件相对应的通道以外的通道。
本公开的实施例可包括存储系统,该存储系统包括:多个通道;多个半导体存储器件,连接到通道;以及控制器,其通过通道来控制半导体存储器件,其中控制器包括分别连接到通道的通道控制器和将通道控制器彼此连接的直接总线,以及通道控制器中的每个通道控制器命令将数据写入至连接到对应通道的半导体存储器件中,并且在数据的写入失败时通过与该数据相关的直接总线来与另一通道控制器通信。
前面的概述仅仅是说明性的并且无意以任何方式进行限制。除以上描述的说明性方面、实施例和特征之外,通过参考附图和下面的详细描述,进一步的方面、实施例和特征将变得明显。
附图说明
通过参考附图详细描述其实施例,对于本领域的普通技术人员而言,本公开的以上的和其它的特征和优点将变得更加明显,在附图中:
图1是示出了根据本公开的实施例的存储系统的框图;
图2是图1中所示的半导体存储器件的详细示图;
图3是图1中所示的存储器控制器的详细示图;
图4是图3中所示的通道控制器的详细示图;
图5是图1所示的控制器的操作的流程图;
图6、图7和图8是描述图1中所示的控制器的操作的示图;
图9是通道控制器和直接总线的示图;
图10是示出图1中所示的控制器的操作的流程图;以及
图11、图12和图13是描述图1中所示的控制器的操作的示图。
具体实施方式
在下文中,将参考附图来详细描述本发明的实施例。在下面的描述中,应当注意的是,将仅仅对理解本公开的操作所必需的部分进行说明,而将省略对其他部分的说明以便不使本发明的要点模糊。然而,本公开不限于本文中描述的示例性实施例,并且可以以其他形式来指定。然而,当前示例性实施例被提供以用于详细描述本公开,使得本领域的技术人员可以容易地领会本发明的技术精神。
贯穿本说明书和所附权利要求书中,当描述一个元件“耦接”到另一元件时,该元件可以“直接耦接”到另一元件或通过第三元件“电耦接”到另一元件。贯穿说明书和权利要求书中,除非明确说明与此相反,否则词语“包括”和其变型(诸如“包含”或“包含有”)将被理解为暗示包括所陈述的元件但不排除任何其他元件。
图1是示出根据本公开的实施例的存储系统的框图。
参考图1,存储系统可以包括多个半导体存储器件SMD11至SMDk4以及控制器1000。
该半导体存储器件SMD11至SMDk4被划分为第一存储器组至第k存储器组。例如,第一存储器组包括半导体存储器件SMD11至SMD14。此外,第k存储器组包括半导体存储器件SMDk1至SMDk4。
包括在单个存储器组中的半导体存储器件通过对应的通道与控制器1000连接。例如,包括在第一存储器组中的半导体存储器件SMD11至SMD14通过第一通道CH1与控制器1000相连。此外,包括在第k存储器组中的半导体存储器件SMDk1至SMDk4通过第k通道CHk与控制器1000连接。
半导体存储器件SMD11至SMDk4中的每个包括页缓冲单元。例如,连接到第一通道CH1的第一半导体存储器件SMD11至第四半导体存储器件SMD14分别包括第一页缓冲单元PB11至第四页缓冲单元PB14。此外,连接到第k通道CHk的第一半导体存储器件SMDk1至第四半导体存储器件SMDk4分别包括第一页缓冲单元PBk11至第四页缓冲单元PBk14。
图2是示出图1中所示的半导体存储器件的详细示图。
参考图2,半导体存储器件50可以包括存储单元阵列100和包含页缓冲单元140的外围电路110。
存储单元阵列100包括多个存储块BLK1至BLKz。存储块BLK1至BLKz通过字线WL连接到地址解码器120,并通过位线BL1至BLm连接到页缓冲单元140。存储块BLK1至BLKz中的每个包括多个页。页分别连接到字线WL。每个页包括多个存储单元。存储单元可以是非易失性存储单元。
半导体存储器件50的编程操作和读取操作以页为单位来执行。半导体存储器件50的擦除操作以存储块为单位来执行。
外围电路110可包括地址解码器120、电压发生器130、页缓冲单元140、数据输入/输出电路150、控制逻辑160以及检测器170。
地址解码器120通过字线WL连接到存储单元阵列110。地址解码器120可以在控制逻辑160的控制下操作。
地址解码器120通过控制逻辑160接收地址ADDR。半导体存储器件50的编程操作以字线为单位来执行。在编程操作期间,地址ADDR可以包括块地址和行地址。
地址解码器120可对接收到的地址ADDR中的块地址进行解码。地址解码器120根据所解码的块地址选择存储块BLK1至BLKz之中的一个存储块。
地址解码器120可对接收到的地址ADDR中的行地址进行解码。地址解码器120根据所解码的行地址来选择被选中的存储块中的一个字线。从而,一个页被选中。
地址解码器120可以包括地址缓冲器、块解码器以及行解码器。
电压发生器130可以通过使用提供给半导体存储器件50的外部电源电压来产生多个电压。电压发生器130可以在控制逻辑160的控制下操作。
电压发生器130可以通过调节外部电源电压来产生内部电源电压。由电压发生器130所产生的内部电源电压被用作半导体存储器件50的工作电压。
页缓冲单元140包括第一页缓冲电路PC1至第m页缓冲电路PCm。第一页缓冲电路PC1至第m页缓冲电路PCm分别通过第一位线BL1至第m位线BLm连接到存储单元阵列110。第一页缓冲电路PC1至第m页缓冲电路PCm通过数据线DL连接到数据输入/输出电路150。第一页缓冲电路PC1至第m页缓冲电路PCm响应于控制逻辑160的控制而操作。
在编程操作期间,第一页缓冲电路PC1至第m页缓冲电路PCm通过数据输入/输出电路150来接收程序数据。第一页缓冲电路PC1至第m页缓冲电路PCm可以通过位线BL1至BLm将程序数据DATA传输到选中页。连接到被施加了编程允许电压(例如,接地电压)的位线的存储单元可以具有增大的阈值电压。连接到被施加了编程禁止电压(例如,电源电压)的位线的存储单元的阈值电压可以被保持。在编程操作的验证期间,第一页缓冲电路PC1至第m页缓冲电路PCm通过位线BL1至BLm来从选中页读取页数据。
控制逻辑160连接到地址解码器120、电压发生器130、页缓冲单元140、数据输入/输出电路150以及检测器170。控制逻辑160从控制器1000接收命令CMD和地址ADDR。控制逻辑160可以响应于命令CMD来控制地址解码器120、电压发生器130、页缓冲单元140、数据输入/输出电路150以及检测器170。控制逻辑160将地址ADDR传输到地址解码器120。
检测器170连接到页缓冲单元140和控制逻辑160。检测器170在控制逻辑160的控制下操作。
在编程操作的验证期间,从选中存储单元读取的页数据可以暂时储存在第一页缓冲电路PC1至第m页缓冲电路PCm中。第一页缓冲电路PC1至第m页缓冲电路PCm可以在控制逻辑160的控制下生成通过/失败位(pass/fail bit),通过/失败位指示该页数据的数据位是否分别对应于程序数据DATA的数据位,通过/失败位可以指示选中存储单元是否达到期望的电压的状态以及编程操作是否完成。所生成的通过/失败位被发送到检测器170。
当通过/失败位之中的与编程通过相对应的数据位的数目大于预定数时,检测器170使能检测信号DS。当通过/失败位之中的与编程通过相对应的数据位的数目小于或等于该预定数时,检测器170禁止检测信号DS。
当检测信号DS被禁止时,控制逻辑160控制外围电路110使得编程操作被重新执行。可以重复地执行编程操作和编程验证直到检测信号DS被使能。当编程操作和编程验证构成一个编程循环(program loop)时,多个编程循环可以被执行。检测信号DS的使能表示编程操作完成。控制逻辑160可以输出指示编程操作通过的状态信号SF。当即使编程循环被执行该预定数目的次数检测信号DS仍被禁用时,控制逻辑160可以输出指示编程操作失败的状态信号SF。状态信号SF可以通过对应的通道而被提供给控制器1000。
作为示例性实施例,半导体存储器件50可以是快闪存储器件。
回到图1,控制器1000控制半导体存储器件SMD11至SMD14和SMDk1至SMDk4。当控制器1000命令读取数据时,被选中的半导体存储器件执行读取操作。当控制器1000命令写入操作时,被选中的半导体存储器件执行编程操作。当控制器1000命令擦除操作时,被选中的半导体存储器件执行擦除操作。
控制器1000可以包括处理器1100、缓冲存储器1200、主机接口(I/F)1300以及存储器控制器1400。
处理器1100连接到主总线1500。处理器1100可以控制控制器1000的常规操作。处理器1100执行快闪转换层(flash translation layer,FTL)的功能。当处理器1100通过主机接口1300接收到来自主机的请求(未示出)时,处理器1100可以生成与对应请求相对应的物理块地址。
处理器1100可将包含在该请求中的逻辑块地址转换为物理块地址。当来自主机的请求是编程请求,可以另外从主机接收程序数据。处理器1100可以将与编程请求相对应的物理块地址、程序数据以及写入命令储存在缓冲存储器1200中。储存在缓冲存储器1200中的写入命令、物理块地址以及程序数据可以通过存储器控制器1400而被传输到半导体存储器件SMD11至SMD14和SMDk1至SMDk4之中的选中的半导体存储器件。所选中的半导体存储器件可通过物理块地址来指定。写入命令被提供作为图2中的命令CMD。物理块地址被提供作为图2中的地址ADDR。程序数据被提供作为图2中的程序数据DATA。
处理器1100可以在没有来自主机的请求的情况下自主地生成写入命令、物理块地址以及程序数据,并将所生成的写入命令、物理块地址以及程序数据传输到半导体存储器件SMD11至SMD14和SMDk1至SMDk4之中的所选中的半导体存储器件。例如,处理器1100可以生成用于后台操作(例如用于磨损均衡的程序操作和用于垃圾收集的程序操作)的写入命令、物理块地址以及程序数据,并且命令写入该程序数据。
缓冲存储器1200连接到主总线1500。缓冲存储器1200响应于处理器1100的控制来操作。缓冲存储器1200可以被用作处理器1100的操作存储器,半导体存储器件SMD11至SMD14和SMDk1至SMDk4与主机之间的高速缓冲存储器和/或半导体存储器件SMD11至SMD14和SMDk1至SMDk4与主机之间的数据缓冲器。
主机接口1300包括用于执行主机与控制器1000之间的通信的协议。主机接口1300可通过诸如通用串行总线(USB)协议、多媒体卡(MMC)协议,外围组件互连(PCI)协议、PCI-Express(PCI-E)协议、高级技术附件(ATA)协议、串行ATA协议、并行ATA协议、小型计算机小接口(SCSI)协议、增强型小型磁盘接口(ESDI)协议以及集成驱动电路(IDE)协议和/或私人协议的各种接口协议中的至少一种来与主机通信。
存储器控制器1400连接到主总线1500。存储器控制器1400在处理器1100的控制下操作。存储器控制器1400可以通过第一通道CH1至第k通道CHk来控制半导体存储器件。存储器控制器1400在处理器1100的控制下将储存在缓冲存储器1200中的写入命令、物理块地址以及程序数据传输到半导体存储器件SMD11至SMDk4之中的选中的存储器件以命令写入该程序数据。
当程序数据至对应的半导体存储器件中的写入失败时,存储器控制器1400可以将程序数据暂时储存在连接到另一通道(即,除与该半导体存储器件相对应的通道之外的通道)的半导体存储器件的页缓冲单元中。然后,当物理块地址由处理器1100重新生成时,存储器控制器1400收集暂时存储的程序数据,并且将所收集到的程序数据写入到与重新生成的物理块地址相对应的半导体存储器件中。
图3是图1中示出的存储器控制器1400的详细示图。为了说明起见,半导体存储器件SMD11至SMDk4与存储控制器1400一起被示出。
参考图3,存储器控制器1400可以包括第一通道控制器211至第k通道控制器21k和失败控制器230。
第一通道控制器211至第k通道控制器21k分别连接到第一通道CH1至第k通道CHk。第一通道控制器211至第k通道控制器21k可以通过主总线1500与缓冲存储器1200(参见图1)通信。第一通道控制器211至第k通道控制器21k中的每个通道控制器响应于处理器1100的控制而通过对应的通道将储存在缓冲存储器1200中的写入命令、物理块地址以及程序数据传输到所选中的半导体存储器件。此外,每个通道控制器通过对应的通道向失败控制器230和处理器1100(参见图1)通知根据状态信号SF的程序数据的写入被接收。
根据实施例,直接总线220被设置。直接总线220可以将第一通道控制器211至第k通道控制器21k彼此连接。例如,直接总线220可以用将第一通道控制器211至第k通道控制器21k彼此连接的多个线路来限定。
第一通道控制器211至第k通道控制器21k可以在失败控制器230的控制下通过直接总线220来传送程序数据。
失败控制器230可以控制第一通道控制器211至第k通道控制器21k。失败控制器230控制第一通道控制器211至第k通道控制器21k,使得第一通道控制器211至第k通道控制器21k在程序数据的写入失败时通过直接总线220来传送程序数据。
失败控制器230通过每个通道控制器来识别出程序数据的写入失败。当在该半导体存储器件中程序数据的写入失败时,失败控制器230可以控制对应的通道控制器以便传输取回命令以取回保留在对应的半导体存储器件的页缓冲单元中的程序数据。
然后,失败控制器230选择连接到另一通道(例如,除与包括程序数据的失败写入的该半导体存储器件相对应的通道之外的通道),并控制通道控制器211至21k使得程序数据暂时存储在所选中的半导体存储器件中。失败控制器230可以控制通道控制器211至21k使得该半导体存储器件(在其中程序数据的写入失败)的通道控制器将程序数据传输到所选中的半导体存储器件的通道控制器。此外,失败控制器230可以控制所选中的半导体存储器件的通道控制器以便传输高速缓冲命令和程序数据,以将程序数据暂时储存在所选中的半导体存储器件的页缓冲单元中。此外,失败控制器230可以存储关于所选中的存储器件的信息。
图4是图3中示出的通道控制器211至21k的详细示图。图4示出了第一通道控制器211的详细配置作为示例。本领域技术人员将理解的是,其余通道控制器212至21k中的每个可以与第一通道控制器211的配置相同的方式来配置。
参考图4,第一通道控制器211可以包括读取直接存储器存取(direct memory access,DMA)311,使用错误校正码(ECC)的ECC编码模块312、输入/输出接口313、使用ECC的ECC解码模块314以及写入DMA 315。
读取DMA 311可以读取储存在缓冲存储器1200(参见图1)中的程序数据。读取DMA311将读取的程序数据传输到ECC编码模块312。
ECC编码模块312可以通过根据ECC对程序数据进行编码来生成奇偶校验位(paritybit),并且通过将所生成的奇偶校验位增加到程序数据来生成处理过的程序数据。ECC编码模块312将处理过的程序数据传输到输入/输出接口313。
可以使用各种方案的ECC来作为ECC。例如,如本领域技术人员从本文中的公开将理解的,可以使用诸如Bose-Chaudhri-Hocquenghem(BCH)码、reed solomon码、汉明码、低密度奇偶校验(LDPC)码的各种方案的ECC。
输入/输出接口313将从ECC编码模块312接收到的程序数据通过第一通道CH1传输到所选中的半导体存储器件。在这种情况下,还可以传输对应的写入命令和物理块地址。
输入/输出接口313包括用于与连接到第一通道CH1的半导体存储器件SMD11至SMD14通信的协议。例如,输入/输出接口313包括NAND接口或NOR接口。
此外,输入/输出接口313通过第一通道CH1接收从半导体存储器件SMD11至SMD14读取的数据。
当该数据通过输入/输出接口313而被接收时,ECC解码模块通过根据ECC对对应的数据进行解码来检测和校正包括在数据中的错误。
写入DMA 315可以将来自ECC解码模块314的该数据写入到缓冲存储器1200。
输入/输出接口313通过直接总线220来与其他通道控制器212至21k的输入/输出接口连接。也就是说,通道控制器211至21k可以通过直接总线220相互通信。
图5是用于描述图1中示出的控制器1000的操作的流程图。
参考图1至图5,在步骤S110处,控制器1000将程序数据写入到被选中通道的所选中的存储器件中。
在步骤S120处,控制器1000判断程序数据的写入是否失败。可以从在其中程序数据的写入失败的半导体存储器件接收状态信号SF。状态信号SF可以指示程序数据的写入通过还是失败。
在步骤S130处,控制器1000将程序数据暂时储存到连接至另一通道的半导体存储器件的页缓冲单元中。假设程序数据至连接到第一通道CH1的第一半导体存储器件SMD11中的写入失败。控制器1000可以将程序数据暂时储存到连接至另一通道(例如通道CHk)的半导体存储器件(例如半导体存储器件SMDk1)的页缓冲单元PBk1中。连接到第一通道CH1的输入/输出接口313可以通过直接总线220将程序数据传输到另一通道的输入/输出接口。另一通道的输入/输出接口可以将程序数据暂时储存到对应的半导体存储器件的页缓冲单元中。
在步骤S140处,控制器1000从对应的半导体存储器件取回暂时储存的程序数据并且再次写入所取回的程序数据。
假设当程序数据的写入失败时未提供将程序数据暂时储存在连接到另一通道的半导体存储器件的页缓冲单元中的功能。为了再次写入对应的程序数据,该程序数据需要被再次储存在缓冲存储器1200中。保留在对应的半导体存储器件的页缓冲单元中的程序数据可以通过对应的通道CH1、输入/输出接口313以及ECC解码模块314而被传输到写入DMA 315。写入DMA可以向处理器1100询问程序数据在缓冲存储器1200中的写入,并且根据询问的结果来将程序数据写入到缓冲存储器1200中。解码模块对程序数据执行使用ECC的解码。通过写入DMA将程序数据写入到缓冲存储器1200中表示处理器1100需要中断由处理器1100当前执行的操作。
然后,对应的程序数据可以从缓冲存储器1200传输到读取DMA 311(参见图4)、ECC编码模块312(参见图4)以及输入/输出接口313(参见图4)并且被写入。经过编码模块表示对程序数据的使用ECC的解码被执行。
该系列操作需要较长长度的时间而且增大功耗和控制器1000的负载。处理器1100的操作的中断次数的增加导致处理器1100的吞吐量的增加。
当程序数据的写入失败时,控制器1000将程序数据暂时储存在连接到另一通道的半导体存储器件的页缓冲单元中。由用于将程序数据传输到缓冲存储器1200的负载引起的时间和功耗可以减少。处理器1100的处理量可以减少。因此,提供了具有改进的操作速度的控制器和包括其的存储系统。
图6至图8是用于描述图1中示出的控制器的操作的示图。
图6示出了当程序数据的写入失败时程序数据被暂时储存的情况。在图6中,示出了第一通道控制器211至第三通道控制器213,而省略其余的通道控制器214至21k。在图6中,假设程序数据至连接到第一通道CH1的第一半导体存储器件SMD11中的写入失败。
参考图6,第一输入/输出接口313在失败控制器230(参见图3)的控制下通过第一通道CH1从第一半导体存储器件SMD11取回该程序数据。例如,第一输入/输出接口313可以通过将取回命令传输到第一半导体存储器件SMD11来获得保留在第一半导体存储器件SMD11的页缓冲单元PB11中的程序数据。
失败控制器230选择连接到除第一通道CH1以外的剩余通道CH2至CHk中的一个通道的半导体存储器件。假设选中连接到第二通道CH2的第一半导体存储器件SMD21。第一输入/输出接口313可以在失败控制器230的控制下通过直接总线220将程序数据传输到第二输入/输出接口323。第二输入/输出接口323可以在失败控制器230的控制下将该程序数据暂时储存在连接到第二通道CH2的第一半导体存储器件SMD21的页缓冲单元PB21中。
也就是说,当程序数据的写入失败时,从第一半导体存储器件SMD11取回到第一输入/输出接口313中的程序数据通过直接总线220、第二输入/输出接口323以及第二通道CH2(参见FL1)而被暂时储存在第一半导体存储器件SMD21的页缓冲单元PB21中。
图7示出了暂时储存的程序数据被重新写入的情况。
参考图7,可以选中连接到另一通道(例如,除与暂时储存用于重新写入的程序数据的半导体存储器件SMD21相对应的第二通道CH2之外的通道)的半导体存储器件。在对于图7的说明中,假设选中连接到第三通道CH3的第一半导体存储器件SMD31。处理器1100可以在程序数据的写入失败时生成指示连接到第三通道CH3的第一半导体存储器件SMD31的物理块地址。失败控制器230(参见图3)可以基于物理块地址控制第二输入/输出接口323和第三输入/输出接口333使得程序数据被写入至连接到第三通道CH3的第一半导体存储器件SMD31中。
第二输入/输出接口323在失败控制器230的控制下通过第二通道CH2从第一半导体存储器件SMD21取回该程序数据。此外,第二输入/输出接口323可以通过直接总线220将该程序数据传输到第三输入/输出接口333。第三输入/输出接口333可以通过将该程序数据传输至连接到第三通道CH3的第一半导体存储器件SMD31来命令写入该程序数据。
也就是说,第二输入/输出接口323中的从连接到第二通道CH2的第一半导体存储器件SMD21取回的程序数据通过直接总线220、第三输入/输出接口333以及第三通道CH3(参见FL2)而被传输到第一半导体存储器件SMD31。
图8示出了暂时储存的程序数据被重新写入的情况。
参考图8,可以选中连接到与暂时储存用于重新写入的程序数据的半导体存储器件SMD21的通道相同的通道的半导体存储器件。在关于图8的描述中,假设选中连接到第二通道CH2的第四半导体存储器件SMD24。处理器1100可以在程序数据写入失败时生成指示连接到第二通道CH2的第四半导体存储器件SMD24的物理块地址。失败控制器230(参见图3)可以控制第二输入/输出接口323,使得程序数据基于物理块地址而被写入到连接至第二通道CH2的第四半导体存储器件SMD24中。
第四半导体存储器件SMD24连接到与第一半导体存储器件SMD21的通道相同的通道CH2。需要用于在其中程序数据通过第二通道CH2而被取回的数据流和在其中程序数据通过第二通道CH2而被提供到第四半导体存储器件SMD24的数据流的数据缓冲器。输入/输出接口313至333分别包括数据缓冲器301至303。数据缓冲器301至303中的每个可以包括移位寄存器。
第二输入/输出接口323在失败控制器230的控制下通过第二通道CH2而从第一半导体存储器件SMD21取回程序数据。所取回的程序数据被缓存在数据缓冲器302中。此外,第二输入/输出接口323可以通过经由第二通道CH2将所缓存的程序数据传输到第四半导体存储器件SMD24来命令写入该程序数据(参见FL3)。
图9示出了通道控制器420至4k0和直接总线520的详细配置的另一示例。图9仅示出了第一通道控制器410的详细配置。要理解的是,剩余通道控制器420至4k0中的每个以与第一通道控制器410的配置相同的方式来配置。
参考图9,设置了两个子直接总线521和522。子直接总线521和522构成直接总线520。子直接总线521和522将第一通道控制器410至第k通道控制器4k0彼此连接。
第一通道控制器410可以包括读取DMA 411、ECC编码模块412、输入/输出接口(I/F)413、ECC解码模块414、写入DMA 415、随机性发生器416和去随机性发生器417。
输入/输出接口413经由输入线INL1连接到第一子直接总线521。输入/输出接口413经由输出线ONL1连接到第二子直接总线522。
随机性发生器416连接在ECC编码模块412与输入/输出接口413之间。随机性发生器416从ECC编码模块412接收数据。随机性发生器416使接收到的数据随机化。输入到随机性发生器416中的数据可以被定义为原始数据。被随机化了的数据可以被定义为随机数据。输入/输出接口413可以接收该随机数据。输入/输出接口413可以利用通道CH1来传送随机数据。
众所周知的是,半导体存储器件储存该随机数据,使得改善包括在半导体存储器件中的存储单元的阈值电压分布从而提高半导体存储器件的可靠性。
随机性发生器416可以通过计算随机种子和原始数据来生成随机数据。随机种子可以对于每个半导体存储器件是不同的。随机种子可以对于每个存储块是不同的。随机种子可以对于每个页是不同的。
随机性发生器416连接到第二子直接总线522。随机性发生器416经由第二子直接总线522连接到通道控制器410至4k0的输入/输出接口。随机性发生器416可以从读取DMA 411接收原始数据,并且可以经由第二子直接总线522接收原始数据。
去随机性发生器417连接在输入/输出接口413与ECC解码模块414之间。去随机性发生器417经由输入/输出接口413接收随机数据。去随机性发生器417可以通过使随机数据去随机化来生成原始数据。所生成的原始数据被传输到写入DMA 415。传输到写入DMA 415的原始数据可以被提供到缓冲存储器1200(参见图1)。
去随机性发生器417可以与同一通道控制器410的随机性发生器416共享随机种子。由第一通道控制器410的随机性发生器416所生成的随机数据可以通过第一通道控制器410的去随机性发生器417而被去随机化。
随机性发生器416连接到第一子直接总线521。随机性发生器416经由第一子直接总线521连接到通道控制器410至4k0的输入/输出接口。从去随机性发生器417输出的原始数据可以被传输到ECC解码模块414,且也可以经由第一子直接总线521来传输。
作为与图9的实施例不同的实施例,随机性发生器416可以连接在读取DMA 411与ECC编码模块412之间,而去随机性发生器417可以连接在ECC解码模块414与写入DMA 415之间。
图10是用于描述图1中示出的控制器1000的操作的流程图。
参考图1和图10,在步骤S210处,控制器1000通过使原始数据随机化来生成第一随机数据。在步骤S220处,控制器1000将第一随机数据写入到选中通道的所选中的半导体存储器件中。
在步骤S230处,控制器1000判断第一随机数据的写入是否失败。如果否,则控制器1000可以在处步骤S240处使第一随机数据去随机化。被去随机化了的数据可以对应于原始数据。接下来,在步骤S250处,控制器1000将原始数据暂时储存在连接到另一通道的半导体存储器件的页缓冲单元中。也就是说,原始数据未被再次加载到缓冲存储器1200,而被暂时储存在连接到另一通道的半导体存储器件的页缓冲单元中。
在步骤S260处,控制器1000通过使暂时储存的原始数据再次随机化来生成第二随机数据。原始数据的随机化可以通过与在其中原始数据的写入被命令了的半导体存储器件相对应的通道控制器来执行。然后,在步骤S270处,控制器1000再次写入第二随机数据。
图11至图13是用于描述图1中示出的控制器的操作的示图。
图11示出了原始数据在程序数据写入失败时被暂时储存的情况。在图11中,示出了第一通道控制器410至第三通道控制器430,而省略剩余通道控制器440至4k0。在图11中,假设随机数据至连接到第一通道CH1的第一半导体存储器件SMD11中的写入失败。
参考图11,第一输入/输出接口413经由第一通道CH1从第一半导体存储器件SMD11取回该随机数据,并且将所取回的随机数据传输到第一去随机性发生器417。第一去随机性发生器417通过使随机数据去随机化来生成原始数据,并且通过第一子直接总线521来传输所生成的原始数据。
第二输入/输出接口423可以经由第一子直接总线521和第二输入线INL2来获取原始数据,并且通过第二通道CH2将原始数据暂时储存到第一半导体存储器件SMD21的页缓冲单元PB21中。
也就是说,从第一半导体存储器件SMD11取回到第一输入/输出接口413中的随机数据被传输到第一去随机性发生器417,而通过第一去随机性发生器417而生成的原始数据经由第一子直接总线521、第二输入/输出接口423以及第二通道CH2而被传输到第一半导体存储器件SMD21的页缓冲单元PB21(参见FL5)。
图12示出了暂时储存的原始数据被重新写入的情况。
参考图12,可以选中连接到另一通道(即,除与在重新写入期间暂时储存原始数据的半导体存储器件SMD21相对应的第二通道CH2之外的通道)的半导体存储器件。在关于图12的描述中,假设选中连接到第三通道CH3的第一半导体存储器件SMD31。
第二输入/输出接口423经由第二通道CH2而从第一半导体存储器件SMD21的页缓冲单元PB21取回原始数据,并且经由第二输出线ONL2将所取回的原始数据传输到第二子直接总线522。第三随机性发生器436经由第二子直接总线522获取原始数据,并且通过使原始数据随机化来生成随机数据。第三输入/输出接口433可以通过将随机数据传输至连接到第三通道CH3的第一半导体存储器件SMD31来命令写入随机数据。
也就是说,第二输入/输出接口423中的从第一半导体存储器件SMD21取回的原始数据经由第二输出线ONL2和第二子直接总线522而被传输到第三随机性发生器436,并且通过第三随机性发生器436生成的随机数据经由第三输入/输出接口433和第三通道CH3而被传输到第一半导体存储器件SMD31(参见FL6)。
图13示出了暂时储存的程序数据被重新写入的情况。
参考图13,可以选中连接到与暂时储存用于重新写入的原始数据的半导体存储器件SMD21的通道相同的通道的半导体存储器件。在关于图13的描述中,假设选中连接到第二通道CH2的第四半导体存储器件SMD24。
第四半导体存储器件SMD24与第一半导体存储器件SMD21共享同一通道CH2。可以需要用于在其中程序数据通过第二通道CH2而被取回的数据流和在其中程序数据通过第二通道CH2而被提供到第四半导体存储器件SMD24的数据流的数据缓冲器。输入/输出缓冲器413至433分别包括数据缓冲器401至403。数据缓冲器401至403中的每个可以包括连接在对应的输入/输出接口与对应的随机性发生器之间的移位寄存器。
第二输入/输出接口423经由第二通道CH2从第一半导体存储器件SMD21的页缓冲单元PB21取回原始数据,并且将所取回的原始数据缓存在数据缓冲器402中。第二随机性发生器426可以通过获取并随机化所缓存的原始数据来生成随机数据。第二输入/输出接口423可以通过将随机数据传输至连接到第二通道CH2的第四半导体存储器件SMD31来命令写入随机数据。
第二输入/输出接口423可以经由第二通道CH2来从第一半导体存储器件SMD21的页缓冲单元PB21取回原始数据,并且第二随机性发生器426可以通过使所取回的原始数据随机化来生成随机数据。所生成的随机数据被缓存在数据缓冲器402中。第二输入/输出接口423可以通过将缓存的随机数据传输至连接到第二通道CH2的第四半导体存储器件SMD24来命令写入随机数据。
根据本公开的实施例,对应的数据被暂时储存在连接到另一通道(即,除与包含失败的数据写入的半导体存储器件相对应的通道之外的通道)的半导体存储器件的页缓冲单元中。在数据写入失败时,可以降低由将对应的数据传输到缓冲存储器的负载而引起的时间消耗和功耗。因此,提供了具有改进的操作速度的控制器和包含其的存储系统。
如上所述,已经在附图和说明书中公开了该实施例。在本文中所使用的特定名词是为了说明起见,并不限制在权利要求中所限定的本公开的范围。因此,本领域技术人员将理解的是,在不脱离本公开的范围和精神的情况下可以作出各种修改和其他等效示例。因此,本公开的唯一技术保护范围将由所附权利要求的技术精神来限定。
Claims (20)
1.一种存储系统,包括:
多个通道;
连接到通道的多个半导体存储器件;以及
控制器,经由所述通道来控制半导体存储器件,
其中,控制器将程序数据写入到所述多个半导体存储器件的第一半导体存储器件中,以及
其中,在所述程序数据的写入失败时,所述程序数据被暂时储存在所述多个半导体存储器件的第二半导体存储器件的页缓冲单元中,第二半导体存储器件连接到除与第一半导体存储器件相对应的通道之外的通道。
2.如权利要求1所述的存储系统,其中,控制器从第二半导体存储器件的页缓冲单元取回所述程序数据,并且将所述程序数据重新写入到所述半导体存储器件中的一个半导体存储器件中。
3.如权利要求1所述的存储系统,其中,第一半导体存储器件连接到所述通道之中的第一通道,
第二半导体存储器件连接到所述通道之中的第二通道,以及
在所述程序数据的写入失败时,控制器经由第一通道从第一半导体存储器件取回所述程序数据,并且经由第二通道将所述程序数据暂时储存在第二半导体存储器件的页缓冲单元中。
4.如权利要求1所述的存储系统,其中,控制器包括:
通道控制器,分别连接到所述通道;以及
直接总线,连接到通道控制器,其中
通道控制器经由直接总线彼此通信。
5.如权利要求4所述的存储系统,其中,第一半导体存储器件连接到所述通道之中的第一通道,
第二半导体存储器件连接到所述通道之中的第二通道,
在所述程序数据的写入失败时,第一通道的通道控制器经由第一通道而从第一半导体存储器件取回所述程序数据,并且经由直接总线而将所述程序数据提供给第二通道的通道控制器,以及
第二通道的通道控制器经由第二通道将所述程序数据暂时储存在第二半导体存储器件的页缓冲单元中。
6.如权利要求5所述的存储系统,其中,第二通道的通道控制器经由第二通道而从第二半导体存储器件的页缓冲单元取回所述程序数据,并且经由直接总线而将所述程序数据提供给除第二通道之外的剩余通道之中的选中通道的通道控制器,以及
所述选中通道的通道控制器将所述程序数据写入至连接到对应的通道的半导体存储器件之中的选中的半导体存储器件中。
7.如权利要求5所述的存储系统,其中,所述通道控制器中的每个通道控制器包括数据缓冲器,
第二通道的通道控制器经由第二通道从第二半导体存储器件的页缓冲单元取回所述程序数据,并且将所述程序数据缓存到对应的数据缓冲器中,以及
第二通道的通道控制器将所述程序数据写入至连接到第二通道的半导体存储器件之中的选中的半导体存储器件中。
8.一种存储系统,包括:
多个通道;
连接到通道的多个半导体存储器件;以及
控制器,经由通道控制所述半导体存储器件,并且通过使原始数据随机化来生成随机数据,
其中,控制器将所述随机数据写入到所述多个半导体存储器件的第一半导体存储器件中,以及
其中,在所述随机数据的写入失败时,所述随机数据被去随机化,且被去随机化了的数据被暂时储存在所述多个半导体存储器件的第二半导体存储器件的页缓冲单元中,第二半导体存储器件连接到除与第一半导体存储器件相对应的通道之外的通道。
9.如权利要求8所述的存储系统,其中,控制器从第二半导体存储器件的页缓冲单元取回所述被去随机化了的数据,通过使所述被去随机化了的数据随机化来产生第二随机数据,并且将第二随机数据重新写入到所述半导体存储器件的一个半导体存储器件中。
10.如权利要求8所述的存储系统,其中,第一半导体存储器件连接到所述通道之中的第一通道,
第二半导体存储器件连接到所述通道之中的第二通道,以及
在所述随机数据的写入失败时,所述控制器经由第一通道从第一半导体存储器件取回所述随机数据并且使所述随机数据去随机化,并且经由第二通道将被去随机化了的数据暂时储存到第二半导体存储器件的页缓冲单元中。
11.如权利要求8所述的存储系统,其中,控制器包括:
通道控制器,分别连接到所述通道;以及
第一子直接总线和第二子直接总线,连接所述通道控制器,
其中,所述通道控制器中的每个通道控制器包括连接到对应通道的输入/输出接口、连接到所述输入/输出接口的随机性发生器和去随机性发生器,以及
其中,所述通道控制器的去随机性发生器经由第一子直接总线连接到所述通道控制器的输入/输出接口,而所述通道控制器的随机性发生器经由第二子直接总线连接到所述输入/输出接口。
12.如权利要求11所述的存储系统,其中,第一半导体存储器件连接到所述通道之中的第一通道,
第二半导体存储器件连接到所述通道之中的第二通道,以及
第一通道的输入/输出接口在所述随机数据的写入失败时经由第一通道从第一半导体存储器件取回所述随机数据,以及第一通道的去随机性发生器通过使取回的随机数据去随机化来经由第一子直接总线将被去随机化了的数据提供给第二通道的输入/输出接口,以及
第二通道的输入/输出接口经由第二通道将所述被去随机化了的数据暂时储存在第二半导体存储器件的页缓冲单元中。
13.如权利要求12所述的存储系统,其中,第二通道的输入/输出接口经由第二通道从第二半导体存储器件的页缓冲单元取回所述被去随机化了的数据,并且经由第二子直接总线将所述被去随机化了的数据提供给除第二通道之外的剩余通道之中的选中通道的随机性发生器,以及
所述选中通道的随机性发生器通过使所述被去随机化了的数据随机化来生成第二随机数据,以及所述选中通道的输入/输出接口将第二随机数据写入至连接到对应通道的半导体存储器件之中的选中的半导体存储器件中。
14.如权利要求12所述的存储系统,其中,第二通道的输入/输出接口包括数据缓冲器,
第二通道的输入/输出接口经由第二通道从第二半导体存储器件的页缓冲单元取回所述被去随机化了的数据,
第二通道的随机性发生器通过使所述被去随机化了的数据随机化来生成第二随机数据,
第二通道的输入/输出接口将第二随机数据写入至连接到第二通道的半导体存储器件之中的选中的半导体存储器件中,以及
数据缓冲器缓冲经由第二通道传送的数据。
15.一种存储系统,包括:
多个通道;
连接到通道的多个半导体存储器件;以及
控制器,经由所述通道控制半导体存储器件,
其中,控制器包括分别连接到所述通道的通道控制器和将所述通道控制器彼此连接的直接总线,以及
所述通道控制器中的每个通道控制器命令将数据写入至连接到对应通道的半导体存储器件中,并在所述数据的写入失败时经由与所述数据相关的直接总线来与另一通道控制器通信。
16.如权利要求15所述的存储系统,其中,所述通道控制器中的每个通道控制器在所述写入失败时使所述数据去随机化,并且经由直接总线将被去随机化了的数据传输到另一通道控制器。
17.如权利要求16所述的存储系统,其中,另一通道控制器将所述被去随机化了的数据暂时储存至连接到对应通道的半导体存储器件的一个半导体存储器件的页缓冲单元中。
18.如权利要求15所述的存储系统,其中,所述通道控制器中的每个通道控制器在所述写入失败时经由直接总线将所述数据传输到另一通道控制器。
19.如权利要求18所述的存储系统,其中,另一通道控制器将所述被去随机化了的数据暂时储存至连接到对应通道的半导体存储器件的一个半导体存储器件的页缓冲单元中。
20.如权利要求15所述的存储系统,其中,所述控制器包括:
处理器,执行快闪转换层FTL的功能;以及
失败控制器,在所述数据的写入失败时在所述处理器的控制下控制所述通道控制器。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR10-2015-0092972 | 2015-06-30 | ||
KR1020150092972A KR102319402B1 (ko) | 2015-06-30 | 2015-06-30 | 복수의 채널들을 통해 반도체 메모리 장치들을 제어하는 메모리 시스템 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106325765A true CN106325765A (zh) | 2017-01-11 |
CN106325765B CN106325765B (zh) | 2020-04-21 |
Family
ID=57683090
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510993931.0A Active CN106325765B (zh) | 2015-06-30 | 2015-12-25 | 用于通过多个通道来控制半导体存储器件的存储系统 |
Country Status (3)
Country | Link |
---|---|
US (1) | US9841916B2 (zh) |
KR (1) | KR102319402B1 (zh) |
CN (1) | CN106325765B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109471819A (zh) * | 2017-09-08 | 2019-03-15 | 三星电子株式会社 | 为来自主机的读取请求提供短的读取响应时间的存储设备 |
CN113204309A (zh) * | 2020-02-03 | 2021-08-03 | 慧荣科技股份有限公司 | 数据储存装置以及非挥发式存储器控制方法 |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10235242B2 (en) | 2015-09-28 | 2019-03-19 | Rambus Inc. | Fault tolerant memory systems and components with interconnected and redundant data interfaces |
US10546625B2 (en) | 2016-09-27 | 2020-01-28 | Spin Memory, Inc. | Method of optimizing write voltage based on error buffer occupancy |
US10460781B2 (en) * | 2016-09-27 | 2019-10-29 | Spin Memory, Inc. | Memory device with a dual Y-multiplexer structure for performing two simultaneous operations on the same row of a memory bank |
KR102398186B1 (ko) | 2017-07-03 | 2022-05-17 | 삼성전자주식회사 | 메모리 컨트롤러의 동작 방법 및 사용자 장치의 동작 방법 |
KR102536637B1 (ko) * | 2018-03-29 | 2023-05-26 | 에스케이하이닉스 주식회사 | 메모리 컨트롤러 및 그 동작 방법 |
KR102560251B1 (ko) * | 2018-06-20 | 2023-07-26 | 삼성전자주식회사 | 반도체 장치 및 반도체 시스템 |
CN113035263B (zh) * | 2021-04-14 | 2022-05-31 | 长鑫存储技术有限公司 | 含通道ecc的信号处理电路和存储器 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080209110A1 (en) * | 2007-02-22 | 2008-08-28 | Mosaid Technologies Incorporated | Apparatus and method of page program operation for memory devices with mirror back-up of data |
US20100161849A1 (en) * | 2008-12-22 | 2010-06-24 | Suk Jung-Hee | Multi channel data transfer device |
US20100287333A1 (en) * | 2009-05-06 | 2010-11-11 | Samsung Electronics Co., Ltd. | Data storage device and related method of operation |
CN102479544A (zh) * | 2010-11-30 | 2012-05-30 | 海力士半导体有限公司 | 半导体存储器件和包括它的半导体存储系统 |
CN102568575A (zh) * | 2010-12-23 | 2012-07-11 | 三星电子株式会社 | 闪速存储器件以及包括其的存储系统 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7433141B2 (en) * | 2005-03-09 | 2008-10-07 | Tandberg Data Corporation | Data randomization for rewriting in recording/reproduction apparatus |
KR100799688B1 (ko) * | 2007-01-03 | 2008-02-01 | 삼성전자주식회사 | 백업 회로를 갖는 메모리 시스템 및 그것의 프로그램 방법 |
US7873803B2 (en) | 2007-09-25 | 2011-01-18 | Sandisk Corporation | Nonvolatile memory with self recovery |
KR101717081B1 (ko) * | 2011-03-23 | 2017-03-28 | 삼성전자주식회사 | 비휘발성 램과 휘발성 램을 버퍼 메모리로 사용하는 저장 장치 |
JP2012226822A (ja) * | 2011-04-15 | 2012-11-15 | Samsung Electronics Co Ltd | 不揮発性メモリ装置 |
KR20130060795A (ko) | 2011-11-30 | 2013-06-10 | 삼성전자주식회사 | 불휘발성 메모리 장치 및 그것의 동작 방법 |
-
2015
- 2015-06-30 KR KR1020150092972A patent/KR102319402B1/ko active IP Right Grant
- 2015-12-02 US US14/957,411 patent/US9841916B2/en active Active
- 2015-12-25 CN CN201510993931.0A patent/CN106325765B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080209110A1 (en) * | 2007-02-22 | 2008-08-28 | Mosaid Technologies Incorporated | Apparatus and method of page program operation for memory devices with mirror back-up of data |
CN101632128A (zh) * | 2007-02-22 | 2010-01-20 | 莫塞德技术公司 | 具有数据镜像备份的存储器装置的页面编程操作的设备和方法 |
US20100161849A1 (en) * | 2008-12-22 | 2010-06-24 | Suk Jung-Hee | Multi channel data transfer device |
US20100287333A1 (en) * | 2009-05-06 | 2010-11-11 | Samsung Electronics Co., Ltd. | Data storage device and related method of operation |
CN102479544A (zh) * | 2010-11-30 | 2012-05-30 | 海力士半导体有限公司 | 半导体存储器件和包括它的半导体存储系统 |
CN102568575A (zh) * | 2010-12-23 | 2012-07-11 | 三星电子株式会社 | 闪速存储器件以及包括其的存储系统 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109471819A (zh) * | 2017-09-08 | 2019-03-15 | 三星电子株式会社 | 为来自主机的读取请求提供短的读取响应时间的存储设备 |
CN109471819B (zh) * | 2017-09-08 | 2024-04-02 | 三星电子株式会社 | 为来自主机的读取请求提供短的读取响应时间的存储设备 |
CN113204309A (zh) * | 2020-02-03 | 2021-08-03 | 慧荣科技股份有限公司 | 数据储存装置以及非挥发式存储器控制方法 |
Also Published As
Publication number | Publication date |
---|---|
KR20170002966A (ko) | 2017-01-09 |
US9841916B2 (en) | 2017-12-12 |
US20170003909A1 (en) | 2017-01-05 |
KR102319402B1 (ko) | 2021-11-01 |
CN106325765B (zh) | 2020-04-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106325765A (zh) | 用于通过多个通道来控制半导体存储器件的存储系统 | |
CN107589905B (zh) | 存储器系统及其操作方法 | |
US8606988B2 (en) | Flash memory control circuit for interleavingly transmitting data into flash memories, flash memory storage system thereof, and data transfer method thereof | |
CN103137203B (zh) | 非易失性存储装置、存储系统和控制器操作方法 | |
CN110097913A (zh) | 存储器控制器及其操作方法 | |
US11204721B2 (en) | Input/output size control between a host system and a memory sub-system | |
CN106326028A (zh) | 具有不同奇偶校验区的存储器件 | |
CN107919157A (zh) | 存储器装置及存储器装置的操作方法 | |
CN106062882B (zh) | 用于数据储存装置的功率降保护 | |
KR102496988B1 (ko) | 반도체 메모리 장치의 컨트롤러 및 이의 동작 방법 | |
WO2020227293A1 (en) | Dynamic data placement for collision avoidance among concurrent write streams | |
CN106297865A (zh) | 控制半导体存储器件的控制器及其操作方法 | |
CN106663463A (zh) | 存储器裸芯的NAND闪存存储器与ReRAM之间的数据的芯片上复制 | |
US20160077911A1 (en) | Methods, systems, and computer readable media for address and data integrity checking in flash memory operations | |
CN106920575B (zh) | 数据存储装置及其操作方法 | |
KR20180071675A (ko) | 메모리 시스템 및 그것의 동작 방법 | |
US20200402605A1 (en) | Two-Layer Code with Low Parity Cost for Memory Sub-Systems | |
CN108091367A (zh) | 失败位计数器和具有其的半导体存储器装置 | |
CN110058799A (zh) | 存储器装置及操作存储器装置的方法 | |
CN109390019A (zh) | 存储系统及其操作方法 | |
KR20130052811A (ko) | 불휘발성 메모리 장치, 그것의 동작 방법 및 그것을 포함하는 데이터 저장 장치 | |
CN109697995A (zh) | 半导体存储器装置及其操作方法 | |
CN110286847A (zh) | 数据存储装置及其操作方法 | |
US20150234741A1 (en) | Command Execution Using Existing Address Information | |
CN114078515A (zh) | 使用内部数据签名验证dram内容 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right |
Effective date of registration: 20240613 Address after: American Texas Patentee after: Mimi IP Co.,Ltd. Country or region after: U.S.A. Address before: Gyeonggi Do, South Korea Patentee before: Sk Hynix Inc. Country or region before: Republic of Korea |
|
TR01 | Transfer of patent right |