CN103946798A - 使用概率解码的存储器系统中的位流混淆 - Google Patents
使用概率解码的存储器系统中的位流混淆 Download PDFInfo
- Publication number
- CN103946798A CN103946798A CN201280057814.8A CN201280057814A CN103946798A CN 103946798 A CN103946798 A CN 103946798A CN 201280057814 A CN201280057814 A CN 201280057814A CN 103946798 A CN103946798 A CN 103946798A
- Authority
- CN
- China
- Prior art keywords
- bit stream
- data
- module
- obscure
- peripheral control
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
- G06F11/1048—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using arrangements adapted for a specific error detection or correction feature
-
- 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0056—Systems characterized by the type of code used
- H04L1/0061—Error detection codes
Abstract
混淆模块,其被定义和连接以接收通过数据总线从存储器向存储器的外部控制器传送的第一位流。所述混淆模块被定义和连接以将第一位流混淆为第二位流,并且代替第一位流通过数据总线传送第二位流。去混淆模块,其被定义和连接以在外部控制器从数据总线接收第二位流。所述去混淆模块被定义和连接以将接收到的第二位流去混淆回第一位流,并且向外部控制器提供第一位流用于处理。
Description
背景技术
在传统存储器设备中,错误校正码(ECC)解码器假设在读取操作期间从存储器到达ECC解码器的位流的传输期间不发生传输错误。然而,随着技术进步,从存储器延伸到ECC解码器的数据传输信道可以变得更快、更小和/或更长,从而增大通过数据传输信道传送读取数据的位流期间的数据错误的可能性。如果在从存储器向ECC解码器传送读取数据的位流期间引入错误,则ECC解码器可能不经意地生成不正确的最终读取数据输出,其可能引起主机计算机系统上的操作故障。本发明起因于该环境。
发明内容
在一个实施例中,公开一种用于在存储器系统中位流混淆(aliasing)的系统。所述系统包括混淆模块,其被定义和连接以接收通过数据总线从存储器向存储器的外部控制器传送的第一位流。所述混淆模块被定义和连接以将第一位流混淆为第二位流,并且代替第一位流通过数据总线传送第二位流。所述系统还包括去混淆模块,其被定义和连接以在外部控制器从数据总线接收第二位流。所述去混淆模块被定义和连接以将接收到的第二位流去混淆回第一位流,并且向外部控制器提供第一位流用于处理。
在一个实施例中,公开一种存储器系统。所述存储器系统包括存储器阵列和数据寄存器,所述数据寄存器被定义和连接以从存储器阵列接收和存储第一位流。所述存储器系统还包括混淆模块,其被定义和连接以从数据寄存器接收第一位流,并且将第一位流混淆为第二位流。所述混淆模块被定义和连接以代替第一位流传送第二位流。所述存储器系统还包括数据总线,其被连接以接收从混淆模块传送的第二位流。所述存储器系统还包括去混淆模块,其被连接以接收通过数据总线从混淆模块传送的第二位流,并且将第二位流去混淆回第一位流。所述存储器系统还包括外部控制器,所述外部控制器包括被连接以从去混淆模块接收第一位流的错误校正码解码器。
在一个实施例中,公开一种用于操作存储器系统的方法。所述方法包括从存储器阵列中的储存元件读取第一位流。所述方法还包括将第一位流混淆为第二位流,并且代替第一位流通过数据总线向外部存储器控制器传送第二位流。所述方法还包括在第二位流到达外部存储器控制器时将第二位流去混淆回第一位流。所述方法还包括向外部存储器控制器处的错误校正码解码器提供第一位流。
根据结合附图通过示例示出本发明的下列详细描述本发明的其他方面和优点将变得更显而易见。
附图说明
图1是根据本发明的一个实施例的其中闪速存储器由外部控制器控制的闪速存储器设备的高层级示意性框图。
图2示出根据本发明的一个实施例的闪速存储器的示例性内部架构。
图3示出根据本发明的一个实施例的存储器控制电路的简化框图。
图4A示出根据本发明的一个实施例的存储一位数据并对每一初级电压格(bin)实现两个电压子格的存储器阵列内的储存元件的示例硬位(hard bit)(HB)和软位(soft bit)感测图表。
图4B示出根据本发明的一个实施例的从根据图4A的感测图表操作的储存元件的读取操作的传送位流对接收位流的概率图。
图5A示出根据本发明的一个实施例的其中在存储器和外部控制器之间实现混淆模块和去混淆模块的闪速存储器设备的高层级示意性框图。
图5B示出根据本发明的一个实施例的其中混淆模块被定义在存储器内部,并且其中去混淆模块被定义在外部控制器内部的闪速存储器设备的高层级示意性框图。
图6A示出根据本发明的一个实施例的存储一位数据并对每一初级电压格实现四个电压子格的存储器阵列内的储存元件的示例硬位(HB)和软位(SB)感测图表。
图6B示出根据本发明的一个实施例的从根据图6A的感测图表操作的储存元件的读取操作的传送位流对接收位流的概率图。
图7A示出根据本发明的一个实施例的存储八位数据的存储器阵列内的储存元件的示例硬位(HB)和软位(SB)感测图表。
图7B示出根据本发明的一个实施例的从根据图7A的感测图表操作的储存元件的读取操作的传送位流对接收位流的概率图。
图7C示出根据本发明的一个实施例的对于每一传送位流,即对于每一行,具有单个硬位错误并且没有软位错误的总概率(P{1HB,0SB})的图。
图8示出根据本发明的一个实施例的用于操作存储器系统的方法。
具体实施方式
在下列描述中,阐述许多具体细节以提供本发明的深入理解。然而,对本领域技术人员显而易见的是在没有一些或全部这些具体细节的情况下也可以实现本发明。在其他实例中,未详细描述公知的处理操作以便使本发明不会不必要的晦涩。
图1是根据本发明的一个实施例的其中闪速存储器100由外部控制器302控制的闪速存储器设备300的高层级示意性框图。外部控制器302被定义为电连接到主机计算机系统303,诸如个人计算机、数字相机、个人数字助理或包括数字处理器的基本上任何其他类型的计算机设备。主机计算机系统303向外部控制器302传送命令,诸如向闪速存储器100写入数据或从闪速存储器100读取数据的命令。主机计算机系统303还向外部控制器302提供要写入、即存储于存储器100的数据。外部控制器302被定义为生成并向闪速存储器100传送命令信号104,使得命令信号104可以由闪速存储器100解释和执行。外部控制器302还被定义为通过I/O(输入/输出)总线102向闪速存储器传送数据,用于在闪速存储器100内存储,并且通过I/O总线102从闪速存储器100接收读取的数据。外部控制器302可以包括用于临时储存正在写入闪速存储器100或正在从闪速存储器100读取的数据的缓冲器存储器。
在一个实施例中,存储器设备300包括包含外部控制器302的一个集成电路芯片304,和包含闪速存储器100的一个或多个集成电路芯片306。在一个实施例中,闪速存储器100被定义在单个集成电路芯片上。然而,应理解,在其他实施例中,闪速存储器100可以被定义在多个集成电路芯片上,其每一个被连接以与外部控制器302电通信。此外,应理解,存储器设备300可以被嵌入为主机计算机系统303的部分,或者可以被包括在可移除地插入在主机计算机系统303的配合卡槽中的存储器卡中。这种存储器卡可以包括整个存储器设备300,或者存储器设备300的部分,其中存储器设备300的剩余部分被定义在与主机计算机系统和/或存储器卡交互的其他组件上。
图2示出根据本发明的一个实施例的闪速存储器100的示例性内部架构。闪速存储器100包括存储器控制电路106,其被定义为控制内部存储器操作。存储器控制电路106包括用于命令、地址和状态信号的寄存器。存储器控制电路106被连接以接收在输入/输出(I/O)总线102上的信号,以及从外部控制器302接收控制信号104。闪速存储器100包括储存元件的一个或多个阵列108。在一个实施例中,阵列108内的储存元件被定义为闪速EEPROM单元。每一个阵列108储存元件具有相关联的行解码器(XDEC)110、相关联的列解码器(YDEC)112、相关联的一组感测放大器和编程控制电路(SA/PROG)114、和相关联的数据寄存器116。
在一个实施例中,储存元件的阵列108包括一个或多个导电浮动栅极作为储存元件。然而,在其他实施例中,储存元件的阵列108包括其他类型的长期电子充电储存元件。在一个实施例中,储存元件的阵列108可以使用对于每一个储存元件定义的两种充电水平而被操作,以便使用每一个储存元件存储一位数据。在其他实施例中,对于阵列108中的每一个储存元件可以定义多于两个储存状态,使得在每一个储存元件中可以存储多于一位数据。
在一个实施例中,控制信号104包括:
●CS:芯片选择信号:CS信号用于激活闪速存储器100接口。如果不将CS信号置位,则闪速存储器100将保持在待机(standby)模式中,并且将不响应于其他控制信号。
●CLE:命令锁存使能信号:CLE信号控制向存储器控制电路106的命令寄存器发送的命令的激活路径。当将CLE信号置位(asserted)时,将命令锁存到存储器控制电路106的命令寄存器中。
●ALE:地址锁存使能信号:ALE信号控制向存储器控制电路106的地址寄存器发送的地址的激活路径。当将ALE信号置位时,将地址锁存到存储器控制电路106的地址寄存器中。
●RE:读取使能信号:RE信号使能数据输出缓冲器。当将RE信号置位时,将读取数据驱动到I/O总线102上。
●WE:写入使能信号:WE信号控制向I/O端口写入数据。将WE信号置位向闪速存储器100提供数据、地址和/或命令的时钟。
●AD[7:0]:I/O总线102上的数据:I/O总线102用于在数据总线控制器和闪速存储器100的存储器控制电路106的命令、地址和数据寄存器之间传递数据。
除了上面提及的控制信号104,存储器100还包括储存子系统控制器可以确定存储器100正在忙于执行一些任务的方式。这种方式可以包括专用信号或在存储器100忙碌时可以访问的内部存储器寄存器中的状态位。应理解,通过示例提供由上面提及的控制信号104定义的控制接口。在其他实施例中,控制接口可以包括除了上面讨论的信号之外的信号以提供存储器100的等效或扩展控制。此外,应理解,虽然图2的示例实施例示出一个闪速存储器阵列108及其相关联的组件,但是其他实施例可以包括多个阵列108作为给定闪速存储器100的部分,其中多个阵列108共享共同接口104和存储器控制电路106,而具有单独的相应的XDEC110,YDEC112,SA/PROG14和数据寄存器116电路,以便允许并行读取和编程、即写入操作。
在读取操作期间,经由I/O总线102从存储器阵列108通过数据寄存器116向外部控制器传递数据。数据寄存器116还电连接到SA/PROG(感测放大器/编程)电路114。连接到每一个SA/PROG电路114元件的数据寄存器116的储存元件的数量可以取决于在阵列108的每一个储存元件中存储的位的数量。SA/PROG电路114连接到当激活时使得SA/PROG电路114在感测模式中操作的感测使能线122。此外,SA/PROG电路114连接到当激活时使得SA/PROG电路114在编程/验证模式中操作的编程使能线123。
阵列108的每一个储存元件可以具有一个或多个浮动栅极。在一个实施例中,通过示例,阵列108的储存元件是多级储存元件,其中每一个储存元件能够存储多位二进制数据,诸如两位或四位。在另一实施例中,阵列108的储存元件是单级储存元件,其中每一个储存元件能够存储一位二进制数据。
阵列108的行124对应于字线。阵列108的列126对应于位线。为了避免使图2的阵列108不必要的晦涩,仅明确地示出开始的和最后的四行124(字线),以及开始的和最后的四列126(位线)。然而,应理解,阵列108中行124(字线)和列126(位线)的实际数量取决于阵列108中的储存元件的数量,其中每一个储存元件具有一行124(字线)和两列126(位线)。
行解码器XDEC110被定义为解码阵列108的行地址,以便选择要访问的物理页。行解码器XDEC110经由内部行地址线118从存储器控制电路106接收行地址。列解码器YDEC112经由内部列地址线120从存储器控制电路106接收列地址。储存元件位于阵列108中行124(字线)和列126(位线)的每一个交点处。
图3示出根据本发明的一个实施例的存储器控制电路106的简化框图。存储器控制电路106包括具有分别耦接到地址寄存器206、命令寄存器202和锁存使能电路210的输出的寄存器使能电路204。在从外部控制器接收到指示后续是地址描述符的ALE控制信号104时,寄存器使能电路204激活使能线PADR(物理地址寄存器),其使得通过I/O总线102从外部控制器接收的后续组块地址描述符被锁存到地址寄存器206中。连接到地址寄存器206的锁存使能电路210随后激活锁存使能线X和Y以将存储在地址寄存器206中的组块地址锁存到地址锁存器212的适当行和列锁存器中。存储在地址锁存器212中的组块(chunk)地址随后通过内部行地址线118的适当的线提供给行解码器XDEC110,和通过内部列地址线120的适当的线提供给列解码器YDEC112。
在从外部控制器接收到指示后续是数据的控制信号104时,即要将数据写入到存储器阵列108中,寄存器使能电路204激活使能线PDAT(编程数据信号),其使得通过I/O总线102接收的数据组块被锁存到数据寄存器116中。在从外部控制器接收到指示后续是命令的CLE控制信号104时,寄存器使能电路204激活使能线PCMD(编程命令),其使得通过I/O总线102从外部控制器接收的后续读取或写入命令被锁存到命令寄存器202中。
命令解码器208随后读取存储在命令寄存器202中的命令。如果命令是写入命令,则命令解码器208解码所述命令以激活连接到编程使能电路216的编程线PGM。编程使能电路216接收编程线PGM上的激活信号和来自存储在地址寄存器206中的组块地址的最高有效位(most significant bit)。然后,编程使能电路216通过编程使能线123向SA/PROG电路114传送信号,指导SA/PROG电路114选择性地激活其操作的编程/验证模式,以将数据寄存器116中的数据编程到存储器阵列108中。
如果命令是读取命令,则命令解码器208解码所述命令以激活连接到感测使能电路214的感测线SNS,感测使能电路214转而通过感测使能线122传送信号以指导SA/PROG电路114选择性地激活其操作的感测模式,以感测存储在存储器阵列108的锁存行124(字线)和锁存列126(位线)的交点处的储存元件中的阈值电压。感测的结果被载入数据寄存器116,用于外部控制器的后续读取。
在读取操作期间,外部控制器302向存储器控制电路106传送控制信号104以指导对应于存储器阵列108中的具体地址、即对应于具体储存元件或一组储存元件的硬位和软位由SA/PROG电路114感测,并且被存储在数据寄存器116中。然后,存储在数据寄存器116中的硬位和软位作为位流通过I/O总线102传送到外部控制器302。在一个实施例中,外部控制器被定义为对来自数据寄存器116的位流中接收到的硬位和软位执行错误校正解码和/或其他功能。
在读取操作期间,通过感测阵列108内选定的储存元件而生成硬位和软位。这些硬位和软位作为位流从数据寄存器116向外部控制器302内的错误校正解码(ECC)解码器传送。ECC解码器被定义为检测和校正硬位和软位的位流中的错误,并且生成校正后的最终读取数据输出。
每一储存元件存储一位数据的闪速存储器被称为单级单元(SLC)存储器。每一储存元件存储多于一位数据的闪速存储器被称为多级单元(MLC)存储器。在闪速存储器100中,阵列108内的每一个储存元件包括具有控制栅极和浮动栅极两者的晶体管。当向储存元件写入数据时,电子被注入储存元件的晶体管的浮动栅极。注入的电子对抗(oppose)施加于控制栅极的参考电压。储存元件的晶体管不会接通,即导电,除非施加于其控制栅极的参考电压足够高以克服在其浮动栅极上存在的电荷。可以施加于控制栅极以克服浮动栅极上的电荷的最低电压被称为储存元件的晶体管的阈值电压。
储存元件的阈值电压存在于从最小电压(Vmin)延伸到最大电压(Vmax)的电压范围内。储存元件的阈值电压范围被划分为许多电压格,其中每一个电压格与存储在储存元件中的特定位模式对应。在特定电压格内设置的阈值电压表示与特定电压格唯一对应的位模式的存储。因此,可以由给定储存元件存储的位的数量取决于阈值电压范围被划分的电压格的数量。更具体地,存储n位的储存元件的阈值电压范围被划分为2n个电压格。
在写入操作期间,将电压脉冲施加于储存元件的晶体管以将电子注入晶体管的储存元件的浮动栅极,直到在储存元件的晶体管内建立超过与要存储在储存元件内的特定位模式相关联的验证电压电平的阈值电压。在读取操作期间,感测到的储存元件的阈值电压与定义阈值电压范围被划分的电压格的边界的参考电压电平相比较,以便识别感测到的阈值电压存在的电压格,其转而识别存储在储存元件中的位模式。
在一个实施例中,储存元件的阈值电压范围,即从Vmin到Vmax的电压范围,根据初级参考电压的数量(x-1)被划分为某一数量(x)的初级电压格。应理解,电压Vmin和Vmax不表示初级参考电压。为了容易描述,电压Vmin和Vmax可以被认为分别表示-无穷和+无穷。唯一分配给每一个初级电压格的每一个数据位或位模式(patten)被称为硬位或HB模式。在一些实施例中,根据初级参考电压划定的每一个初级电压格可以根据次级参考电压的数量(y-1)被进一步划分为某一数量(y)的电压子格。根据唯一识别与给定初级电压格对应的每一个电压子格所需的软位的数量,向给定初级电压值内的每一个电压子格分配唯一软位(SB)或SB模式。在该方式中,软位(SB)可以提供关于感测到的储存元件的阈值电压存在于给定初级电压格内的何处的信息。可以由外部控制器302内的ECC解码器使用软位(SB)以实现解码算法,并且帮助识别通过I/O总线102接收的哪一个硬位(HB)需要校正,以及应何如校正它们。
图4A示出根据本发明的一个实施例的存储一位数据并对每一初级电压格实现两个电压子格的存储器阵列108内的储存元件的示例硬位(HB)和软位(SB)感测图表400。由感测图表400表示的储存元件的阈值电压范围根据单个初级参考电压(V0)被划分为两个初级电压格。第一初级电压格对应于硬位值0(HB=0)。第二初级电压格对应于硬位值1(HB=1)。第一初级电压格(HB=0)根据次级参考电压(V0-1)被划分为两个电压子格1和2,其中分别向电压子格1和2分配软位1和0。第二初级电压格(HB=1)根据次级参考电压(V0+1)被划分为两个电压子格3和4,其中分别向电压子格3和4分配软位0和1。电压子格1-4对应于增大的阈值电压电平。
在由感测图表400表示的储存元件的读取操作期间,感测到储存元件的阈值电压,并且识别阈值电压存在的电压子格。参考图1,与感测到的阈值电压存在的电压子格对应的硬位和软位从存储器100的数据寄存器116向外部控制器302的ECC解码器传送。例如,如果感测到的阈值电压存在于电压子格1内,则位流01(对应于HB=0,SB=1)从存储器100的数据寄存器116向外部控制器302的ECC解码器传送。ECC解码器随后使用接收到的HB/SB位以确定哪一个初级电压格包括感测到的储存元件的阈值电压,从而在储存元件中存储什么数据。
在传统存储器设备中,ECC解码器假设在从数据寄存器116向外部控制器302内的ECC解码器传送硬位和软位的位流期间不发生传输错误。然而,随着技术进步,从存储器100内的数据寄存器116延伸到外部控制器302内的ECC解码器的数据传输信道、例如I/O总线102可以变得更快、更小和/或更长,从而增大通过数据传输信道传送硬位和软位的位流期间的数据错误的可能性。应理解,如果在从存储器100向ECC解码器传送硬位和软位期间引入错误,则ECC解码器可能不经意地生成不正确的最终读取数据输出,其可能引起主机计算机系统303上的操作故障。
图4B示出根据本发明的一个实施例的从根据图4A的感测图表400操作的储存元件的读取操作的传送位流对接收位流的概率图401。在概率图表401中,图表401从上到下排列的传送位流的序列匹配图表401从左到右排列的接收位流的序列,其根据增大的感测到的阈值电压电平而对应于可能的传送位流。因此,从图的左上向右下延伸的对角线上的一系列单元与从存储器100的数据寄存器116至外部控制器302的ECC解码器的位流的无错误传输对应。图表401内的每一个单元示出从对应的传送位流获得对应的接收位流的概率。
在从存储器100的数据寄存器116向外部控制器302的ECC解码器传送位流期间具有单个错误位的概率,即位错误概率,由p表示。例如,对于从数据寄存器116传送位流01,在ECC解码器处接收位流00的概率对应于p,因为一位,即第二位,错误。此外,给定接收位流的错误的总概率等于给定接收位流的位错误概率的乘积。例如,对于从数据寄存器116传送位流01,在ECC解码器处接收位流10的概率对应于p2,因为两个位、即两位错误。因此,接收不正确位流的概率等于pz,其中z是接收位流中错误位的数量。此外,具有正确接收位流的概率为1减去全部不正确接收位流的发生概率的总和。例如,在图表401中,与位流无错误传输对应的在对角线上的一系列单元中的每一个单元示出1-2p-p2的发生概率。
一些传送位流比其他传送位流具有被ECC解码器接收并成功解码的更高的可靠性。例如,在一个实施例中,概率图表401内给定传送位流的接收位流错误概率中的单调行为将与ECC解码器更可靠地解码传送位流对应。例如,概率图表401中传送位流00的接收位流错误概率展现关于正确接收位流00的单调行为。具体地,接收位流11的概率为p2,其小于接收位流10的概率。因此,对于ECC解码功能,这是有利接收位流错误行为。
相反,概率图表401中传送位流01的接收位流错误概率展现关于正确接收位流01的非单调行为。具体地,接收位流11的概率为p,其大于接收位流10的概率p2,而接收位流10的概率p2小于接收位流00的概率p。因为与接收位模式11相关联的电压子格对应的电压大于与接收位模式10相关联的电压子格对应的电压,所以接收位流错误行为相对于感测到的阈值电压电平不是单调的,其对于ECC解码功能是不利的。
一般来说,不可能将硬位和软位分别分配给各种初级电压格和电压子格,以获得对于全部传送位流对接收位流行为完全良好的概率图。也就是说,总是存在相对于它们对应的接收位流发生概率具有更不理想行为的一些传送位流。这些位流在下文中被称为更不可靠地解码的位流。并且,以互补方式存在相对于它们对应的接收位流发生概率具有更优选行为的一些传送位流。这些位流在下文中被称为更可靠地解码的位流。
在一个实施例中,在存储器100读取操作期间可能存在通过I/O总线102比其他位流更频繁传送的一个或多个位流。在该实施例中,希望那些更频繁传送的位流是更可靠地解码的位流。为此,根据本发明的一个实施例,在通过I/O总线102传送之前,在存储器100的输出处将更不可靠地解码的更频繁传送的位流混淆为更可靠地解码的另一传送位流。然后,在到达外部控制器302时,将混淆的传送位流去混淆为其原始位流表示。
例如,关于图4B,考虑传送位流01比位流00更频繁地传送。此外,注意更频繁传送的位流01由于作为感测到的阈值电压电平的函数的其接收位流的非单调行为而更不可靠地解码。此外,注意传送位流00由于作为感测到的阈值电压电平的函数的其接收位流的单调行为而更可靠地解码。在该情况下,传送位流01可以在通过I/O总线102传送之前在存储器100的输出处被混淆为位流00。对应地,传送位流00将被混淆为位流01。以该方式,更重要的位流01通过I/O总线102以位流00的混淆形式传送。然后,在外部控制器302处接收时,接收位流00在由ECC解码器处理之前被去混淆回位流01。因此,更重要的位流01将在更可靠地解码的位流的混淆之下传送。此外,关于图4B,如果传送位流11比位流10更重要,例如更频繁传送,则反过来,位流11可以在更可靠地传送的位流10的混淆之下传送。
图5A示出根据本发明的一个实施例的其中在存储器100和外部控制器302之间实现混淆模块501和去混淆模块503的闪速存储器设备500的高层级示意性框图。混淆模块501被定义和连接以在通过I/O总线102传送之前将从存储器100内的数据寄存器116发出的更重要和更不可靠地解码的位流混淆为更可靠地解码的位流。以互补方式,去混淆模块503被定义和连接以在向外部控制器302内的ECC解码器提交之前将通过I/O总线102接收的位流去混淆回其原始形式。混淆模块501和去混淆模块503被定义为根据共同混淆/去混淆算法操作,使得去混淆模块503被预定义/预编程以复原由混淆模块501执行的混淆。
在一个实施例中,混淆模块501被定为在存储器100外部在数据寄存器116和I/O总线102之间。在另一实施例中,混淆模块501被定义为在数据寄存器116和至I/O总线102的连接之间的存储器100内部。此外,在一个实施例中,去混淆模块503被定位为在ECC解码器和I/O总线102之间的外部控制器302外部。在另一实施例中,去混淆模块503被定位为在ECC解码器和至I/O总线102的连接之间外部控制器302内部。此外,在一个实施例中,混淆模块501被定义为在数据寄存器116和I/O总线102之间存储器100外部,并且去混淆模块503被定位为在ECC解码器和至I/O总线102的连接之间外部控制器302内部,。在再一实施例中,混淆模块501被定义为在数据寄存器116和至I/O总线102的连接之间存储器100内部,并且去混淆模块503被定位为在ECC解码器和I/O总线102之间外部控制器302外部。图5B示出根据本发明的一个实施例的其中混淆模块被定义在存储器100内部,并且其中去混淆模块503被定义在外部控制器302内部的闪速存储器设备500A的高层级示意性框图。
在一个实施例中,混淆模块501被定义为以硬接线方式实现规定的位流混淆规则,使得对于从存储器100的数据寄存器116传送到I/O总线102上的每一个位流自动执行规定的位流混淆规则。在另一实施例中,混淆模块501被定义为其中可以按需编程和重新编程规定的位流混淆规则的可编程模块。在该实施例中,混淆模块501可以被定义为包括用于保留已编程的位流混淆规则的持久性储存器。应理解,在上面提及的实施例中,规定的位流混淆规则指示将哪一个位流混淆以用于传送以及如何将那些位流混淆。
在一个实施例中,去混淆模块503被定义为以硬接线方式实现规定的位流去混淆规则,使得对于在外部控制器302处从I/O总线102接收到的每一个位流自动执行规定的位流去混淆规则。在另一实施例中,去混淆模块503被定义为其中可以按需编程和重新编程规定的位流去混淆规则的可编程模块。在该实施例中,去混淆模块503可以被定义为包括用于保留已编程的位流去混淆规则的持久性储存器。应理解,在上面提及的实施例中,规定的位流去混淆规则指示在从I/O总线102接收时将哪一个位流去混淆以及如何将那些位流去混淆。此外,应理解,不论如何实现混淆模块501和去混淆模块503,即以硬接线方式或可编程方式,混淆模块501和去混淆模块503每一个被定义为实现互补的规定的位流取/去混淆规则,使得由混淆模块501混淆的任何位流将由去混淆模块503正确去混淆。
在一个实施例中,混淆模块501和去混淆模块503两者被定义为其中可以分别按需编程和重新编程规定的位流混淆和去混淆规则的可编程模块。在该实施例中,混淆模块501和去混淆模块503可以在两种模式中的任一种中操作,其中第一模式为没有应用混淆/去混淆,而第二模式应用规定的位流混淆/去混淆规则。
应理解,上面描述的位流混淆和去混淆方法可以使用更先进的储存元件操作实现。例如,图6A示出根据本发明的一个实施例的存储一位数据并对每一初级电压格实现四个电压子格的存储器阵列108内的储存元件的示例硬位(HB)和软位(SB)感测图表600。由感测图表600表示的储存元件的阈值电压范围根据单个初级参考电压(V0)被划分为两个初级电压格。第一初级电压格对应于硬位值0(HB=0)。第二初级电压格对应于硬位值1(HB=1)。第一初级电压格(HB=0)根据次级参考电压(V0-1、V0-2、V0-3)被划分为四个电压子格1、2、3、4。分别向电压子格1、2、3和4分配软位11、10、01和00。第二初级电压格(HB=1)根据次级参考电压(V0+1、V0+2、V0+3)被划分为四个电压子格5、6、7、8。分别向电压子格5、6、7和8分配软位00、01、10和11。电压子格1-8对应于增大的阈值电压电平。
在由感测图表600表示的储存元件的读取操作期间,感测到储存元件的阈值电压,并且识别阈值电压存在的电压子格。与感测到的阈值电压存在的电压子格对应的硬位和软位从存储器100的数据寄存器116向外部控制器302的ECC解码器传送。例如,如果感测到的阈值电压存在于电压子格3内,则位流001(对应于HB=0,SB=01)从存储器100的数据寄存器116向外部控制器302的ECC解码器传送。ECC解码器随后使用接收到的HB/SB位以确定哪一个初级电压格包括感测到的储存元件的阈值电压,从而在储存元件中存储什么数据。
图6B示出根据本发明的一个实施例的从根据图6A的感测图表600操作的储存元件的读取操作的传送位流对接收位流的概率图表601。在概率图表601中,图表601从上到下排列的传送位流的序列匹配图表601从左到右排列的接收位流的序列,其根据增大的感测到的阈值电压电平而对应于可能的传送位流。因此,从图的左上向右下延伸的对角线上的一系列单元与从存储器100的数据寄存器116至外部控制器302的ECC解码器的位流的无错误传输对应。图表601内的每一个单元示出从对应的传送位流获得对应的接收位流的概率。
与图4B的概率图表401相同,在概率图表601中位错误概率也由p表示。此外,接收不正确位流的概率等于pz,其中z是接收位流中错误位的数量。此外,具有正确接收位流的概率为1减去全部不正确接收位流的发生概率的总和。在图表601中,与位流无错误传输对应的在对角线上的一系列单元中的每一个单元示出1-3p-3p2-p3的发生概率。
概率图表601示出传送位流000和100中的每一个的接收位流错误概率分别展现关于其正确接收位流000和100的单调行为。相反,概率图表601中其他传送位流中的每一个的接收位流错误概率展现关于正确接收位流的非单调行为。因此,传送位流000和100相对于它们的对应接收位流发生概率具有更优选的行为,并且被称为更可靠地解码的位流。在图6A-6B的实施例中,混淆模块501可以被定义为将更不可靠地解码的更频繁传送的位流混淆为位流000或100,位流000或100中的每一个被更可靠地解码。对应地,去混淆模块503可以被定义为在位流到达外部控制器302时去混淆位流。
在一些实施例中,如这里关于图4A-4B和6A-6B讨论的,更可靠地解码的位流可以展现单调行为。在其他实施例中,更可靠地解码的位流可以满足除了接收位流错误概率的单调行为之外的标准。例如,在一个实施例中,更可靠地解码的位流可以与映射为其中硬位错误概率等于主导概率项(dominant probability term)的更少数量的接收位流的传送位流对应。此外,在一个实施例中,可以根据要通过I/O总线102传送的位流的复杂性确定哪一个传送位流被更可靠地解码。
图7A示出根据本发明的一个实施例的存储八位数据的存储器阵列108内的储存元件的示例硬位(HB)和软位(SB)感测图表700。由图7A的感测图表700表示的储存元件对外部初级电压格(HB=000和HB=101)实现三个电压子格,并且对内部初级电压格(HB=001,HB=010,HB=011,HB=111,HB=110,HB=100)实现五个电压子格。由感测图表700表示的储存元件的阈值电压范围根据七个初级参考电压(V01,V02,V03,V04,V05,V06,V07)被划分为八个初级电压格。八个初级电压格分别对应于硬位值HB=000、HB=001,HB=010,HB=011,HB=111,HB=110,HB=100和HB=101。
第一初级电压格(HB=000)根据次级参考电压(V01-1和V01-2)被划分为三个电压子格1、2和3。分别向电压子格1、2和3分配软位111、101、001。
第二初级电压格(HB=001)根据次级参考电压(V01+1、V01+2、V02-1和V02-2)被划分为五个电压子格4、5、6、7和8。分别向电压子格4、5、6、7和8分配软位001、101、111、110和010。
第三初级电压格(HB=010)根据次级参考电压(V02+1、V02+2、V03-1和V03-2)被划分为五个电压子格9、10、11、12和13。分别向电压子格9、10、11、12和13分配软位010、110、111、101和001。
第四初级电压格(HB=011)根据次级参考电压(V03+1、V03+2、V04-1和V04-2)被划分为五个电压子格14、15、15、17和18。分别向电压子格14、15、15、17和18分配软位001、101、100、110和111。
第五初级电压格(HB=111)根据次级参考电压(V04+1、V04+2、V05-1和V05-2)被划分为五个电压子格19、20、21、22和23。分别向电压子格19、20、21、22和23分配软位111、110、100、101和001。
第六初级电压格(HB=110)根据次级参考电压(V05+1、V05+2、V06-1和V06-2)被划分为五个电压子格24、25、26、27和28。分别向电压子格24、25、26、27和28分配软位001、101、100、110和111。
第七初级电压格(HB=100)根据次级参考电压(V06+1、V06+2、V07-1和V07-2)被划分为五个电压子格29、30、31、32和33。分别向电压子格29、30、31、32和33分配软位111、110、100、101和001。
第八初级电压格(HB=101)根据次级参考电压(V07+1和V07+2)被划分为三个电压子格34、35和36。分别向电压子格34、35和36分配软位001、101和100。电压子格1-36对应于增大的阈值电压电平。
在由感测图表700表示的储存元件的读取操作期间,感测到储存元件的阈值电压,并且识别阈值电压存在的电压子格。与感测到的阈值电压存在的电压子格对应的硬位和软位从存储器100的数据寄存器116向外部控制器302的ECC解码器传送。例如,如果感测到的阈值电压存在于电压子格21内,则位流111100(对应于HB=111,SB=100)从存储器100的数据寄存器116向外部控制器302的ECC解码器传送。ECC解码器随后使用接收到的HB/SB位以确定哪一个初级电压格包括感测到的储存元件的阈值电压,从而在储存元件中存储什么数据。
图7B示出根据本发明的一个实施例的从根据图7A的感测图表700操作的储存元件的读取操作的传送位流对接收位流的概率图701。在概率图表701中,图表701从上到下排列的传送位流的序列匹配图表701从左到右排列的接收位流的序列,其根据增大的感测到的阈值电压电平而对应于可能的传送位流。因此,从图的左上向右下延伸的对角线上的一系列单元与从存储器100的数据寄存器116至外部控制器302的ECC解码器的位流的无错误传输对应。
图表701内的每一个单元示出从对应的传送位流获得对应的接收位流的概率。在概率图表701中,位错误概率由p表示。此外,接收不正确位流的概率等于pz,其中z是接收位流中错误位的数量。此外,具有正确接收位流的概率、由EQ表示,为1减去发生全部不正确接收位流的概率的总和。
概率图表701示出在远离正确接收位流概率(EQ)的每一个方向上传送位流没有一个具有单调变化的接收位流错误概率。因此,在具有图7A-7B中表示的储存元件操作的复杂性和要通过I/O总线102传送对应地复杂位流的情况下,图7A-7B表示如下示例实施例,其中更可靠地解码的位流可以基于映射为更少数量的接收位流的传送位流而确定的,在该更少数量的接收位流中,与接收位流错误概率中的单纯单调行为相比硬位错误概率等于主导概率项。更具体地,在一个实施例中,具有单个硬位错误并且没有软位错误的最低总概率的传送位流可以被指定为更可靠地解码的位流。
图7C示出根据本发明的一个实施例的其中对于每一传送位流、即对于每一行,硬位错误概率为(p)、即主导错误概率项的情况的数量(Np)的图表703。关于图7C,情况的数量(Np)表示对于给定传送位流接收位流的数量。如图表703中所示,与行8和9对应的传送位流[001010]和[010010]具有其中硬位错误概率为(p)的最少数量的情况,从而被指定为更可靠地解码的位流。在图7A-7C的实施例中,混淆模块501可以被定义为将更不可靠地解码的更频繁传送的位流混淆为任一位流[001010]和[010010],位流[001010]和[010010]中的每一个被更可靠地解码。对应地,去混淆模块503可以被定义为在位流到达外部控制器302时将位流去混淆。
鉴于上文,应理解,根据本发明的一个实施例,混淆模块501和去混淆模块503一起形成用于在存储器系统中为位流混淆的系统。混淆模块501被定义和连接以接收要通过数据总线102从存储器100向存储器100的外部控制器302传送的第一位流。在一个实施例中,混淆模块501被定义和连接以从存储器100的数据寄存器116接收第一位流。混淆模块501被定义和连接以将第一位流混淆为第二位流,并且代替第一位流通过数据总线102传送第二位流。去混淆模块503被定义和连接以在外部控制器302从数据总线102接收第二位流。去混淆模块503被定义和连接以将接收到的第二位流去混淆回第一位流,并且向外部控制器302提供第一位流用于处理。在一个实施例中,去混淆模块503被定义和连接以向存储器100的外部控制器302内的错误校正码解码器提供第一位流。
在一个实施例中,如关于图5A讨论的,混淆模块501被定义为存储器100外部的单独的电路。在另一实施例中,如关于图5B讨论的,混淆模块501被定义为存储器100内部的电路。在一个实施例中,如关于图5A讨论的,去混淆模块503被定义为外部控制器302外部的单独的电路。在另一实施例中,如关于图5B讨论的,去混淆模块503被定义为外部控制器302内部的电路。
在一个实施例中,混淆模块501被定义为使用规定第一位流的标识的数据、使用规定第二位流的标识的数据以及使用规定混淆使能条件、即混淆使能或混淆禁止的数据来编程。在另一实施例中,每次第一位流要通过数据总线102从存储器100向外部控制器302传送时,混淆模块501被硬接线以将第一位流混淆为第二位流。
在一个实施例中,去混淆模块503被定义为使用规定第一位流的标识的数据、使用规定第二位流的标识的数据以及使用规定去混淆使能条件的数据,即去混淆使能或混淆禁止,编程。在另一实施例中,每次第二位流在外部控制器302处从数据总线102接收到时,去混淆模块503被硬接线(hard-wired)以将第二位流去混淆回第一位流。
在一个实施例中,第一位流是从存储器100向外部控制器302更频繁传送的位流,并且第二位流与第一位流相比由外部控制器302处的错误校正码解码器更可靠地解码。在该实施例的一个版本中,第一位流与作为储存元件阈值电压电平的函数的非单调变化的接收位流错误发生概率相关联。此外,在该实施例中,第二位流与作为储存元件阈值电压电平的函数的单调变化的接收位流错误发生概率相关联。在另一实施例中,第二位流与映射为更少数量的接收位流的传送位流对应,在该更少数量的接收位流中,硬位错误概率等于主导概率项。
此外,鉴于上文,应理解本发明可以实施为存储器系统500/500A。在一个实施例中,存储器系统500/500A是闪速存储器系统。存储器系统500/500A包括存储器阵列108、数据寄存器116、混淆模块501、数据总线102、去混淆模块503和外部控制器302,以及这里讨论的其他存储器系统500/500A组件。数据寄存器116被定义和连接以从存储器阵列108接收和存储第一位流。混淆模块501被定义和连接以从数据寄存器116接收第一位流,并且将第一位流混淆为第二位流。混淆模块501还被定义和连接以代替第一位流通过数据总线102传送第二位流。
数据总线102被连接以接收从混淆模块501传送的第二位流。去混淆模块503被连接以接收通过数据总线102从混淆模块501传送的第二位流,并且将第二位流去混淆回第一位流。外部控制器302包括被连接以从去混淆模块503接收第一位流的错误校正码解码器。在一个实施例中,第一位流是从存储器100向外部控制器302更频繁传送的位流,并且第二位流与第一位流相比由外部控制器302处的错误校正码解码器更可靠地解码。
在一个实施例中,每次第一位流要通过数据总线102传送时,混淆模块501被硬接线以将第一位流混淆为第二位流。此外,在一个实施例中,每次第二位流从数据总线102接收到时,去混淆模块503被硬接线以将第二位流去混淆回第一位流。在再一实施例中,混淆和去混淆模块501/503中的每一个被定义为使用规定第一位流的标识的数据、使用规定第二位流的标识的数据以及使用规定混淆和去混淆使能条件的数据编程。
图8示出根据本发明的一个实施例的用于操作存储器系统的方法。所述方法包括用于从存储器阵列中的储存元件读取第一位流的操作801。所述方法还包括用于将第一位流混淆为第二位流的操作803。所述方法还包括用于代替第一位流通过数据总线向外部存储器控制器传送第二位流的操作805。所述方法还包括用于在第二位流到达外部存储器控制器时将第二位流去混淆回第一位流的操作807。此外,所述方法还包括用于向外部存储器控制器处的错误校正码解码器提供第一位流的操作809。
在一个实施例中,第一位流是从存储器向外部控制器更频繁传送的位流,并且第二位流与第一位流相比由外部控制器处的错误校正码解码器更可靠地解码。在该实施例的一个版本中,第一位流与作为储存元件阈值电压电平的函数的非单调变化的接收位流错误发生概率相关联,此外,第二位流与作为储存元件阈值电压电平的函数的单调变化的接收位流错误发生概率相关联。在另一实施例中,第二位流与映射为更少数量的接收位流的传送位流对应,在更少数量的接收位流中,硬位错误概率等于主导概率项。
在一个实施例中,所述方法还可以包括用于使用规定第一位流的标识的数据、使用规定第二位流的标识的数据以及使用规定混淆使能条件的数据而编程混淆模块的操作。此外,在一个实施例中,所述方法可以包括用于使用规定第一位流的标识的数据、使用规定第二位流的标识的数据以及使用规定混淆使能条件的数据而编程去混淆模块的操作。
这里描述的本发明可以被实现为计算机可读介质上的计算机可读代码。例如,计算机可读代码可以包括其中存储与混淆模块501和/或去混淆模块503对应的一个或多个布局的一个或多个布局数据文件。这里提及的计算机可读介质是可以存储其后可以由计算机系统读取的数据的任何数据储存介质。计算机可读介质的示例包括硬盘驱动器、网络附加储存器(NAS)、只读存储器、随机存取存储器、CD-ROM、CD-R、CS-RW、固态数字数据储存设备、磁带和其他光学和非光学数据储存设备。计算机可读介质还可以分布在耦接的计算机系统的网络上,使得以分布式方式存储和执行计算机可读代码。
这里描述的形成本发明的部分的任何操作是有用的机器操作。本发明还涉及用于执行这些操作的设备或装置。所述装置可以为了所需的目的专门构造,诸如专用计算机。当定义为专用计算机时,所述计算机还可以执行不是专用目的的部分的其他处理、程序执行或例程,而仍然能够为了专用目的而操作。可替换地,所述操作可以由通过存储在计算机存储器、高速缓冲存储器中或通过网络获得的一个或多个计算机程序选择性地激活或配置的通用计算机处理。当通过网络获得数据时,所述数据可以由网络上的其他计算机、例如云计算资源处理。
本发明的实施例还可以被定义为将数据从一个状态转换为另一状态的机器。所述数据可以表示可以被表示为电子信号和电子操纵数据的物品。在一些情况下,可以在显示器上可视地描绘转换后的数据,表示从数据转换产生的物理对象。转换后的数据通常可以保存到储存器,或者可以是使能物理和有形对象的构造或描绘的特定形式。在一些实施例中,可以由处理器执行操纵。在这种示例中,处理器从而将数据从一种事物转换为另一种事物。更进一步地,所述方法可以由可以通过网络连接的一个或多个机器或处理器执行。每一个机器可以将数据从一个状态或事物转换为另一状态或事物,并且还可以处理数据、将数据保存到储存器、通过网络传送数据、显示结果或向另一机器传送结果。
进一步地,应理解,如这里讨论的混淆模块501和/或去混淆模块503可以被制造为半导体或芯片的部分。在诸如集成电路和存储器单元等的半导体设备的制造中,执行一系列制造操作以定义半导体晶片上的功能。晶片包括在硅衬底上定义的多级结构形式的集成电路设备。在衬底级,形成具有扩散区的晶体管器件。在后续级中,互连金属线被图案化并且电连接到晶体管器件以定义希望的集成电路器件。此外,图案化的导电层通过电介质材料与其他导电层绝缘。
虽然根据若干实施例描述了本发明,将理解本领域技术人员在阅读上述说明书和研究附图时将实现各种改变、增添、置换及其等效物。因此,本发明意图包括落入本发明的真正精神和范围内的全部这种改变、增添、置换及其等效物。
Claims (25)
1.一种用于在存储器系统中的位流混淆的系统,包括:
混淆模块,其被定义和连接以接收通过数据总线从存储器向存储器的外部控制器传送的第一位流,所述混淆模块被定义和连接以将第一位流混淆为第二位流,并且代替第一位流通过数据总线传送第二位流;以及
去混淆模块,其被定义和连接以在外部控制器从数据总线接收第二位流,所述去混淆模块被定义和连接以将接收到的第二位流去混淆回第一位流,并且向外部控制器提供第一位流用于处理。
2.如权利要求1所述的系统,其中所述混淆模块被定义和连接以从存储器的数据寄存器接收第一位流。
3.如权利要求1所述的系统,其中所述混淆模块被定义为存储器外部的单独的电路。
4.如权利要求1所述的系统,其中所述混淆模块被定义为存储器内部的电路。
5.如权利要求1所述的系统,其中所述去混淆模块被定义和连接以向存储器的外部控制器内的错误校正码解码器提供第一位流。
6.如权利要求1所述的系统,其中所述去混淆模块被定义为外部控制器外部的单独的电路。
7.如权利要求1所述的系统,其中所述去混淆模块被定义为外部控制器内部的电路。
8.如权利要求1所述的系统,其中所述混淆模块被定义为使用规定第一位流的标识的数据、使用规定第二位流的标识的数据以及使用规定混淆使能条件的数据编程。
9.如权利要求1所述的系统,其中每次第一位流要通过数据总线从存储器向外部控制器传送时,混淆模块被硬接线以将第一位流混淆为第二位流。
10.如权利要求1所述的系统,其中所述去混淆模块被定义为使用规定第一位流的标识的数据、使用规定第二位流的标识的数据以及使用规定去混淆使能条件的数据的编程。
11.如权利要求1所述的系统,其中每次第二位流在外部控制器处从数据总线接收到时,去混淆模块被硬接线以将第二位流去混淆回第一位流。
12.如权利要求1所述的系统,其中第一位流是从存储器向外部控制器更频繁传送的位流,并且其中第二位流与第一位流相比由外部控制器处的错误校正码解码器更可靠地解码。
13.如权利要求12所述的系统,其中第一位流与作为储存元件阈值电压电平的函数的非单调变化的接收位流错误发生概率相关联,并且其中第二位流与作为储存元件阈值电压电平的函数的单调变化的接收位流错误发生概率相关联。
14.如权利要求12所述的系统,其中第二位流与映射为其中硬位错误概率等于主导概率项的更少数量的接收位流的传送位流对应。
15.一种存储器系统,包括:
存储器阵列;
数据寄存器,其被定义和连接以从存储器阵列接收和存储第一位流;
混淆模块,其被定义和连接以从数据寄存器接收第一位流,并且将第一位流混淆为第二位流,所述混淆模块被定义和连接以代替第一位流传送第二位流;
数据总线,其被连接以接收从混淆模块传送的第二位流;
去混淆模块,其被连接以接收通过数据总线从混淆模块传送的第二位流,并且将第二位流去混淆回第一位流;以及
外部控制器,其包括被连接以从去混淆模块接收第一位流的错误校正码解码器。
16.如权利要求15所述的存储器系统,其中所述存储器系统是闪速存储器系统。
17.如权利要求15所述的存储器系统,其中每次第一位流要通过数据总线传送时,混淆模块被硬接线以将第一位流混淆为第二位流,并且其中每次第二位流从数据总线接收到时,去混淆模块被硬接线以将第二位流去混淆回第一位流。
18.如权利要求15所述的存储器系统,其中所述混淆和去混淆模块中的每一个被定义为使用规定第一位流的标识的数据、使用规定第二位流的标识的数据以及使用规定混淆和去混淆使能条件的数据的编程。
19.如权利要求15所述的存储器系统,其中第一位流是从存储器向外部控制器更频繁传送的位流,并且其中第二位流与第一位流相比由外部控制器处的错误校正码解码器更可靠地解码。
20.一种用于操作存储器系统的方法,包括:
从存储器阵列中的储存元件读取第一位流;
将第一位流混淆为第二位流;
代替第一位流通过数据总线向外部存储器控制器传送第二位流;
在第二位流到达外部存储器控制器时将第二位流去混淆回第一位流;以及
向外部存储器控制器处的错误校正码解码器提供第一位流。
21.如权利要求20所述的方法,其中第一位流是从存储器向外部控制器更频繁传送的位流,并且其中第二位流与第一位流相比由外部控制器处的错误校正码解码器更可靠地解码。
22.如权利要求21所述的方法,其中第一位流与作为储存元件阈值电压电平的函数的非单调变化的接收位流错误发生概率相关联,并且其中第二位流与作为储存元件阈值电压电平的函数的单调变化的接收位流错误发生概率相关联。
23.如权利要求21所述的方法,其中第二位流与映射为其中硬位错误概率等于主导概率项的更少数量的接收位流的传送位流对应。
24.如权利要求20所述的方法,还包括:
使用规定第一位流的标识的数据、使用规定第二位流的标识的数据以及使用规定混淆使能条件的数据编程混淆模块。
25.如权利要求20所述的方法,还包括:
使用规定第一位流的标识的数据、使用规定第二位流的标识的数据以及使用规定去混淆使能条件的数据编程去混淆模块。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/304,272 | 2011-11-23 | ||
US13/304,272 US8788889B2 (en) | 2011-11-23 | 2011-11-23 | Bit stream aliasing in memory system with probabilistic decoding |
PCT/US2012/066452 WO2013078453A1 (en) | 2011-11-23 | 2012-11-23 | Bit stream aliasing in memory system with probabilistic decoding |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103946798A true CN103946798A (zh) | 2014-07-23 |
Family
ID=48428130
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201280057814.8A Pending CN103946798A (zh) | 2011-11-23 | 2012-11-23 | 使用概率解码的存储器系统中的位流混淆 |
Country Status (4)
Country | Link |
---|---|
US (1) | US8788889B2 (zh) |
KR (1) | KR101838776B1 (zh) |
CN (1) | CN103946798A (zh) |
WO (1) | WO2013078453A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112650049A (zh) * | 2019-10-11 | 2021-04-13 | 博世华域转向系统有限公司 | 电动助力转向电机的信号采集和控制输出的系统及方法 |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101990971B1 (ko) * | 2012-01-30 | 2019-06-19 | 삼성전자 주식회사 | 메모리, 메모리 시스템, 및 메모리에 대한 에러 검출/정정 방법 |
US8977929B2 (en) * | 2013-02-27 | 2015-03-10 | Micron Technology, Inc. | Rearranging write data to avoid hard errors |
WO2015187877A1 (en) | 2014-06-06 | 2015-12-10 | Crocus Technology Inc. | Serial magnetic logic unit architecture |
US20220375479A1 (en) * | 2021-05-04 | 2022-11-24 | Cypress Semiconductor Corporation | Retransmission Softbit Decoding |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6792523B1 (en) | 1995-12-19 | 2004-09-14 | Intel Corporation | Processor with instructions that operate on different data types stored in the same single logical register file |
US6097320A (en) | 1998-01-20 | 2000-08-01 | Silicon Systems, Inc. | Encoder/decoder system with suppressed error propagation |
US7506105B2 (en) | 2005-05-02 | 2009-03-17 | Freescale Semiconductor, Inc. | Prefetching using hashed program counter |
US7673222B2 (en) | 2005-07-15 | 2010-03-02 | Mediatek Incorporation | Error-correcting apparatus including multiple error-correcting modules functioning in parallel and related method |
US8151163B2 (en) * | 2006-12-03 | 2012-04-03 | Anobit Technologies Ltd. | Automatic defect management in memory devices |
US7814401B2 (en) | 2006-12-21 | 2010-10-12 | Ramot At Tel Aviv University Ltd. | Soft decoding of hard and soft bits read from a flash memory |
US7633798B2 (en) | 2007-11-21 | 2009-12-15 | Micron Technology, Inc. | M+N bit programming and M+L bit read for M bit memory cells |
US8301979B2 (en) | 2008-10-07 | 2012-10-30 | Sandisk Il Ltd. | Low density parity code (LDPC) decoding for memory with multiple log likelihood ratio (LLR) decoders |
US8181101B2 (en) | 2009-01-30 | 2012-05-15 | International Business Machines Corporation | Data bus system, its encoder/decoder and encoding/decoding method |
US8914697B2 (en) * | 2009-08-26 | 2014-12-16 | Seagate Technology Llc | Data corruption detection |
US8700970B2 (en) * | 2010-02-28 | 2014-04-15 | Densbits Technologies Ltd. | System and method for multi-dimensional decoding |
-
2011
- 2011-11-23 US US13/304,272 patent/US8788889B2/en active Active
-
2012
- 2012-11-23 WO PCT/US2012/066452 patent/WO2013078453A1/en active Application Filing
- 2012-11-23 CN CN201280057814.8A patent/CN103946798A/zh active Pending
- 2012-11-23 KR KR1020147017279A patent/KR101838776B1/ko active IP Right Grant
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112650049A (zh) * | 2019-10-11 | 2021-04-13 | 博世华域转向系统有限公司 | 电动助力转向电机的信号采集和控制输出的系统及方法 |
CN112650049B (zh) * | 2019-10-11 | 2023-01-20 | 博世华域转向系统有限公司 | 电动助力转向电机的信号采集和控制输出的系统及方法 |
Also Published As
Publication number | Publication date |
---|---|
WO2013078453A1 (en) | 2013-05-30 |
KR20140098188A (ko) | 2014-08-07 |
US20130132798A1 (en) | 2013-05-23 |
US8788889B2 (en) | 2014-07-22 |
KR101838776B1 (ko) | 2018-03-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10540115B2 (en) | Controller adaptation to memory program suspend-resume | |
CN107589905B (zh) | 存储器系统及其操作方法 | |
CN105321569B (zh) | 半导体存储器件及其操作方法 | |
CN102157199B (zh) | 非易失性数据存储设备及其编程方法和存储系统 | |
US9177660B2 (en) | Method of operating memory device | |
US8432735B2 (en) | Memory system and related method of programming | |
CN106128505B (zh) | 包括半导体存储器件的存储系统以及其编程方法 | |
US9342447B2 (en) | Data storage system and method of operating data storage system | |
KR20150091893A (ko) | 반도체 메모리 장치 및 그것을 포함하는 시스템 | |
CN106373609B (zh) | 包括半导体存储装置的存储系统及其操作方法 | |
US9343118B2 (en) | Voltage regulator and apparatus for controlling bias current | |
US20150046638A1 (en) | Multi-bit memory device and on-chip buffered program method thereof | |
CN108511023A (zh) | 半导体存储器装置及其操作方法 | |
US9836216B2 (en) | Semiconductor memory device and operating method thereof | |
CN103946798A (zh) | 使用概率解码的存储器系统中的位流混淆 | |
US10147491B2 (en) | Semiconductor memory device and programming method thereof | |
CN106373610A (zh) | 半导体存储器件及其操作方法 | |
CN107170485B (zh) | 半导体存储设备及其操作方法 | |
CN107958687B (zh) | 存储器编程方法、存储器控制电路单元及其存储装置 | |
CN106205712A (zh) | 半导体存储器件及其操作方法 | |
KR20200120159A (ko) | 데이터 저장 장치 및 이의 동작 방법 | |
KR20150063850A (ko) | 반도체 메모리 장치, 그것을 포함하는 메모리 시스템 및 그것의 동작 방법 | |
CN106504788B (zh) | 具有空闲存储器件的存储系统及其操作方法 | |
US10998078B2 (en) | Memory system and method of operating the same | |
US20180018128A1 (en) | Memory system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20140723 |