CN106409339A - 具有均匀译码器的存储器系统及其操作方法 - Google Patents
具有均匀译码器的存储器系统及其操作方法 Download PDFInfo
- Publication number
- CN106409339A CN106409339A CN201510717129.9A CN201510717129A CN106409339A CN 106409339 A CN106409339 A CN 106409339A CN 201510717129 A CN201510717129 A CN 201510717129A CN 106409339 A CN106409339 A CN 106409339A
- Authority
- CN
- China
- Prior art keywords
- data
- sensing
- memory
- uniform
- memory element
- 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
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/06—Sense amplifiers; Associated circuits, e.g. timing or triggering circuits
- G11C7/062—Differential amplifiers of non-latching type, e.g. comparators, long-tailed pairs
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/26—Sensing or reading circuits; Data output circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- 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
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C2207/00—Indexing scheme relating to arrangements for writing information into, or reading information out from, a digital store
- G11C2207/06—Sense amplifier related aspects
- G11C2207/063—Current sense amplifiers
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C2207/00—Indexing scheme relating to arrangements for writing information into, or reading information out from, a digital store
- G11C2207/06—Sense amplifier related aspects
- G11C2207/068—Integrator type sense amplifier
-
- 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
Landscapes
- Read Only Memory (AREA)
Abstract
本发明公开了一种具有均匀译码器的存储器系统及其操作方法,存储器系统包括一存储器阵列,该存储器阵列包括多个存储单元,以及一编码器,该编码器操作性地耦接该存储器阵列,编码被编程至这些存储单元中的一原始数据元件为一均匀数据元件,在该均匀数据元件中,「0」的数量大约等于「1」的数量。
Description
技术领域
本发明是有关于一存储器系统及其操作方法,且特别是有关于一种有一均匀译码器的一存储器系统及其操作方法。
背景技术
一存储器系统包括用于储存数据的多个存储单元(memory cell)。储存在一存储单元中的数据由此存储单元的一阈值电压(threshold voltage)决定,此阈值电压是此存储单元开始导通电流的电压。然而,一存储单元的阈值电压可能因为多种原因漂移(drift),例如编程干扰(program disturb)、读取干扰(read disturb)、温度变异(temperature variation)及数据保留(dataretention)。此漂移可能造成储存在此存储单元中的数据的错误读取(falsereading)。
发明内容
根据本发明的一实施例,一存储器系统包括一存储器阵列,该存储器阵列包括多个存储单元,以及一编码器,操作性地耦接该存储器阵列,编码被编程至这些存储单元中的一原始数据元件(original data element)为一均匀数据元件(uniform data element),该均匀数据元件中,「0」的数量大约等于「1」的数量。
根据本发明的另一实施例,提供用以操作一存储器系统的一方法。该方法包括接收被编程至存储器阵列中的一原始数据元件,该存储器阵列包括多个存储单元、编码该原始数据元件为一均匀数据元件,该均匀数据元件中「0」的数量等于或大约等于「1」的数量,以及编程该均匀数据元件至这些存储单元中。
根据本发明的又另一实施例,提供用以操作一存储器系统的一方法。该存储器系统包括一存储器阵列,该存储器阵列包括以均匀数据被编程的多个存储单元,该均匀数据中「0」的数量等于或大约等于「1」的数量。该方法包括感测被编程在该存储器阵列中的一存储单元子集合中的数据,该存储单元子集合对应一选定字线(word line),以及基于该感测数据中该「0」的数量及该「1」的数量之间的一比较(comparison),调整该选定字线的一字线电平。
包含在说明书中且构成本说明书一部份的所附图式,绘示本发明的几个实施例,并且可参照说明书用以解释本发明的实施例。
附图说明
图1是示意性地绘示多个存储单元的一阈值电压分布。
图2是示意性地绘示阈值电压漂移后,多个存储单元的一阈值电压分布。
图3是依据一实施例绘示一存储器系统的方块图。
图4是依据一实施例绘示编码4位的原始数据单元为6位的均匀数据单元的一例示性编码架构。
图5是依据一实施例绘示在一读取操作期间,用以追踪一理想读取字线电压的一读取电路的一配置。
图6是依据一实施例绘示在一读取操作期间,执行在图5的读取电路中的程序的一流程图。
图7是依据一实施例绘示在一读取操作期间,用以追踪一理想读取字线电压的一读取电路的一配置。
图8是依据一实施例绘示在一读取操作期间,执行在图7的读取电路中的程序的一流程图。
图9是依据一实施例绘示一读取电路的一配置。
图10是依据一比较的实施例示意性地绘示读取数据的一方法。
图11是依据一实施例示意性地绘示在图9的读取电路中的读取数据的一方法。
【符号说明】
110、120、220:分布曲线
300:存储器系统
302:存储器阵列
304:字线驱动器与X译码器区块
306:Y译码器区块
308:感测放大器与闩锁缓存器与计数器区块
310:字线电平产生器区块
312:均匀编码器
314:均匀译码器
316:高电压产生器区块
318:输入输出缓冲器与驱动器区块
320:控制逻辑
500、700、900:读取电路
510、710、910:存储器阵列
520、521、720、721、930、931:WL驱动器
530-533、730-733、950-957:感测放大器
540:位累加器
550:数字-模拟转换转换器与闩锁控制器
600、800:程序
602、604、606、608、610、612、614:步骤
740-743:比流器
750:电流累加器
760:电流/电压转换器与闩锁控制器
802、804、806、808、810、812、814:步骤
920、921:存储器区段
940:WL电平控制器
960、961:位累加器
970、971:SA闩锁控制器
BL0-BL7:位线
D0-D7:感测数据
Din:原始数据元件
Dout:输出数据
Ic0-Ic3:电流
PWR:电源或参考电源
SA:感测放大器
t1、tsense、tsense-1、tsense-2:时间
Vth:阈值电压
Vsense:期望电压电平
VWL、VWL0、VWL0e:电压
WL0、WL1:字线
WL0e、WL1e:字线的远程
X0、X1:WL驱动器控制信号
具体实施方式
参照图式描述本发明的实施例。尽可能地,图式中相同的参考符号用来表示相同或相似的元件。
图1示意性地绘示多个存储单元的一阈值电压(Vth)分布。曲线110代表有着不同Vth的对应于数据「1」的存储单元的数量;以及曲线120代表有不同的Vth的对应于数据「0」的存储单元的数量。一般来说,储存在一存储单元中的数据由其Vth决定,Vth是在此存储单元开始传导电流(conduct current)的电压。存储单元的Vth可由一编程操作(programoperation)或一擦除操作(erase operation)更改(modify)。一读取字线(word-line,WL)电压可施加(apply)至存储单元的栅极(gate)以读取储存于存储单元中的数据。若存储单元的Vth低于WL电压,一电流流经存储单元,以及由感测放大器感测此电流。在这种情况下,储存在存储单元中的数据为「1」。否则,若存储单元的Vth高于WL电压,没有电流流经此存储单元。在这种情况下,储存在存储单元中的数据为「0」。
存储单元的Vth可能因为编程干扰、读取干扰、温度变异或数据保留而漂移。Vth的漂移可能横越发生在多个存储单元。此漂移致使(result in)此些存储单元的Vth分布的漂移,以及可能导致(lead to)储存在此些存储单元的数据的错误读取。
图2是示意性地绘示Vth漂移后,多个存储单元的一Vth分布。如图2所示,曲线120向左漂移并成为曲线220。若图1中绘示的WL电压在读取操作期间被施加于存储单元上,若干原被编程以储存「0」但Vth低于WL电压的存储单元被错误地读成「1」。避免错误地读取储存于存储单元中的数据的一方法是施加一理想WL电压以正确地读取数据,此理想WL电压位于曲线110及曲线220之间。
图3是依据一实施例绘示一存储器系统300的方块图。如图3所示,存储器系统300包括一存储器阵列302、操作性地耦接存储器阵列302的一字线(word line,WL)驱动器(driver)与X译码器(X-decoder)区块304、操作性地耦接存储器阵列302的一Y译码器(Y-decoder)区块306、操作性地耦接Y译码器区块306的一感测放大器(sense amplifier)与闩锁缓存器(latch register)与计数器(counter)区块308、操作性地耦接感测放大器与闩锁缓存器与计数器区块308的一WL电平产生器(WL levelgenerator)区块310、操作性地耦接感测放大器及闩锁缓存器及计数器区块308的一均匀编码器(uniform encoder)312、操作性地耦接感测放大器与闩锁缓存器与计数器区块308的一均匀译码器(uniform decoder)314、一高电压产生器区块316、操作性地耦接均匀编码器及均匀译码器的一输入输出缓冲器(I/O buffer)与驱动器区块318,以及一控制逻辑(control logic)区块320。
依据一实施例,在一编程操作中,一原始数据元件(Din)以及对应于存储器阵列302中的一位置的一数据地址(data address)输入至输入输出缓冲器与驱动器区块318作为暂时储存(temporary storage)。本文中所使用的「原始数据元件(original data element)」指(refer to)由一用户或一主机系统(host system)输入的数据,以被编程/储存于存储器阵列302中。原始数据元件由n位的数据构成(make up)。均匀编码器(uniformencoder)312编码原始数据元件为均匀数据元件(uniform data element),在均匀数据元件中,「0」的数量等于或大约等于「1」的数量。本文中所使用的「大约等于」指「0」的数量及「1」的数量之间的差值在存储器系统300可忍受的一预定误差范围内。下文提供了关于均匀编码器312的操作的详细叙述。均匀编码器312传递(transfer)均匀数据元件至感测放大器与闩锁缓存器与计数器区块308,感测放大器与闩锁缓存器与计数器区块308基于均匀数据元件决定字线(bit-line,BL)电压电平,以及传送决定的BL电平至Y译码器区块306。WL电平产生器区块310产生WL电压电平,以及经由WL驱动器与X译码器区块304至存储器阵列302,传递生成的WL电压电平至选定WL。Y译码器区块306译码选定BL以及基于译码的地址施加决定的BL电压电平至存储器阵列302。因此,均匀数据元件储存于存储器阵列302的一存储单元子集合中。
依据一实施例,在一读取操作中,WL电平产生器区块310首先产生一决定的WL电平。感测放大器与闩锁缓存器与计数器区块308感测储存在存储器阵列302中的数据、统计(count)感测数据中「0」及「1」的数量,以及若感测数据是均匀数据,传递感测数据至均匀译码器314,在均匀数据中,「0」的数量等于或大约等于「1」的数量。均匀译码器314译码数据,以及传递译码的数据至输入输出缓冲器与驱动器区块318,然后,输入输出缓冲器与驱动器区块318输出译码的数据作为输出数据(Dout)。若感测数据非均匀数据,WL电平产生器区块310基于感测放大器与闩锁缓存器与计数器区块308产生的计数器结果更改决定的WL电平,以及重复感测数据及统计感测数据中「0」及「1」的数量。高电压产生器区块316启动用以高电压操作,例如在一编程操作下的WL电平及BL电平的电源(power source)。控制逻辑区块320控制存储器系统300中电路区块的操作。
各种编码技术可应用于均匀编码器312以编码原始数据元件为均匀数据元件,在均匀数据元件中「0」的数量等于「1」的数量。在一实施例中,均匀译码器312分割(divide)原始数据元件为多个原始数据单元(originaldata unit),以及实施(apply)一编码算法以编码每一原始数据单元为均匀数据单元(uniform data unit),在均匀数据单元中「0」的数量等于「1」的数量。本文中所使用的「数据单元(data unit)」是有多个位的一数据单元,以及数据元件包括一或多个数据单元。一数据单元包括k位的数据,其中k=m/l,m是数据元件中的位数量,及l是数据元件中数据单元的数量。原始数据元件包括多个原始数据单元,以及均匀数据元件包括多个均匀数据单元。
图4是依据一实施例绘示编码4位的原始数据单元为6位的均匀数据单元的一示例性编码架构。在此例中,除下文所述外,基于4位的原始数据单元中的「0」及「1」的数量,均匀编码器312加入一2位的编码负担(coding overhead)至4位的原始数据单元的末端以产生6位的均匀数据单元。特别地,首先,均匀编码器312统计4位的原始数据单元中的「0」及「1」的数量。当4位的原始数据单元包含一或两个「0」或「1」,均匀编码器312由「00」、「01」及「11」中选择,加入一2位的编码负担至此4位的原始数据单元以产生6位的均匀数据单元,如此在6位的均匀数据单元中的「0」的数量等于「1」的数量。举例来说,当一4位的原始数据单元是「0001」,其包含一个「1」及三个「0」,均匀编码器312加入「11」至「0001」以产生「000111」,其包含三个「1」及三个「0」。再举另一例,当一4位的原始数据单元是「1010」,其包含两个「1」及两个「0」,均匀编码器312加入「01」至「1010」以产生「101001」,其包含三个「1」及三个「0」。另一方面,当一4位的原始数据单元包含四个「0」或四个「1」,均匀编码器312执行反转(invert)此4位的原始数据单元的最后两个位的一额外操作,以产生一4位的反转数据单元(inverted data unit)。举例来说,当一4位的原始数据单元是「0000」,其包含四个「0」,均匀编码器312反转「0000」的最后两个位以产生「0011」,以及随后加入「10」至「0011」以产生「001110」。再举另一例,当一4位的原始数据单元是「1111」,其包含四个「1」,均匀编码器312反转「1111」的最后两个位以产生「1100」,以及随后加入「10」至「1100」以产生「110010」。
在另一实施例中,均匀编码器312实施一随机化操作(randomizeoperation)以编码原始数据元件为均匀数据元件。举例来说,均匀编码器312首先产生一随机种子(random seed),随机种子可包括4个位。均匀编码器312随后分割原始数据元件为多个4位的原始数据单元,以及利用此随机种子实施随机化操作在每一原始数据单元上,以产生一4位的随机化数据单元(randomized data unit)。然后,均匀编码器312加入一更正项(correction item)至此4位的随机化数据单元以平衡「0」及「1」的数量,此更正项例如为一2位的编码负担。
在又一实施例中,均匀编码器312根据一查找表(lookup table)编码每一原始数据单元为均匀数据单元。举例来说,查找表包括多个4位的原始数据单元及多个6位的均匀数据单元之间的对应关系(mappingrelationship)。图4绘示一示例性的查找表。查找表可由使用者预先定义,以及可储存于均匀编码器312可存取的非易失性存储器(non-volatilememory)中。查找表可由硬件或软件实现。
在上述实施例中,原始数据单元包括4个位,均匀数据单元包括6个位,以及编码负担包括2个位。然而,本实施例不限于此,原始数据单元可包括k个位,均匀数据单元可包括n个位,以及编码负担可包括(n-k)个位,k及n皆是正偶数,及n>k。举例来说,均匀编码器312可通过加入2位的编码负担至4位原始数据单元,编码每一4位的原始数据单元为一6位的均匀数据单元。再举另一例,均匀编码器312可通过加入一4位的编码负担至8位的原始数据单元,编码每一8位的原始数据单元为一12位的均匀数据单元。基于存储器系统300的结构(structure)及功能(function),以及被编程至存储器阵列302中的原始数据元件的本质(nature)(例如「0」及「1」的数量、大小等),n及k的数量可由使用者预定。
在某些实施例中,当均匀数据元件被编程至存储器阵列中,即使当存储单元的Vth已漂移,均匀数据元件可被使用来追踪(即寻找)理想WL电压。图5是依据如此一实施例绘示在一读取操作期间,用以追踪理想WL电压的读取电路500的配置。读取电路500是一以数字电路方式来统计存储器阵列中的数据的「0」及「1」数量。
如图5所示,电路500包括一存储器阵列510、WL驱动器520及521、感测放大器(SA)530-533、一位累加器540,以及一数字-模拟转换(digital-to-analog,D/A)转换器(converter)与闩锁控制器(latch controller)550。存储器阵列510包括以行及列排列的多个存储单元。字线WL0及WL1沿着存储单元的列方向排列。位线BL0-BL3沿着存储单元的行方向排列。每一列的存储单元的栅极连接至对应的WL0及WL1之一。每一行的存储单元的漏极电极连接至对应的BL0-BL3之一。每一存储单元的源极电极耦接一参考电压电平(reference voltage level),例如接地电平(ground level)。WL驱动器520及521操作性地耦接WL0及WL1,以分别地供给WL电压至WL0及WL1与分别地接收WL驱动器控制信号X0及X1,并接受电源PWR。感测放大器530-533分别操作性地耦接BL0-BL3以及位累加器540。感测放大器503-533分别地感测被编程在对应于一选定字线(亦即选定以读取的字线)的存储单元中的数据,以及传递感测数据D0-D3至位累加器540。举例来说,当WL0是要读取的选定字线,感测放大器530-533感测被编程在对应于WL0的存储单元中的数据。位累加器540累加感测放大器503-533感测的数据D0-D3,以及传递累加的数据至D/A转换器与闩锁控制器550。D/A转换器与闩锁控制器550操作性地耦接位累加器540、感测放大器530-533,以及WL驱动器520及521。D/A转换器与闩锁控制器550接收位累加器540传递的数据、生成指出(indicate)选定字线的字线(WL)电平的一模拟讯号,以及传递此模拟讯号至对应于选定字线的WL驱动器520或521。基于由位累加器540传递的累加数据,D/A转换器与闩锁控制器550调整(adjust)选定字线(例如WL0)的WL电平。举例来说,若感测数据中「1」的数量少于「0」的数量,D/A转换器与闩锁控制器550提升WL电平,以及若感测数据中「1」的数量多于「0」的数量,D/A转换器与闩锁控制器550降低WL电平。接收来自D/A转换器与闩锁控制器550代表调整的WL电平的模拟讯号后,WL驱动器520或521供给(supply)有调整的WL电平的一WL电压至选定字线。举例来说,当WL0为选定字线,D/A转换器与闩锁控制器550传递调整的WL电平至WL驱动器520,WL驱动器520随后供给有调整的WL电平的一WL电压至WL0。虽然未绘示于图5中,感测放大器530-533操作性地连接至均匀译码器314,均匀译码器314操作性地耦接输入输出缓冲器318。当D/A转换器与闩锁控制器550基于位累加器540传递的累加数据决定感测数据中的「1」的数量等于或大约等于「0」的数量,D/A转换器与闩锁控制器550控制感测放大器530-533以闩锁(latch)感测数据。本文中所使用的「大约等于」指「0」及「1」的数量之间的差值在存储器系统300可忍受的一预定误差范围之间。感测放大器530-533随后传递数据至均匀译码器,均匀译码器译码数据以及传递译码的数据至输入输出缓冲器。
图6是依据一实施例绘示在一读取操作期间,读取电路500执行的程序600的一流程图。读取操作读取被编程在对应于选定字线(例如WL0)的存储单元中的数据。如图6所示,当读取电路500接收一读取指令(readinstruction),读取电路500开始设定被施加至BL0-BL3的初始位线(BL)电平,以及设定被施加至WL0及WL1的初始字线(WL)电平,其中WL0是选定字线及WL1是非选定字线(步骤602)。读取电路500随后施加有初始BL电平的BL电压至BL0-BL3,以及WL驱动器520及521分别地施加有初始WL电平的WL电压至WL0及WL1(步骤602)。在步骤604中,感测放大器530-533感测被编程在耦接WL0的存储单元中的数据,以及位累加器540累加感测放大器530-533感测的数据,及统计感测数据中的「0」及「1」的数量。随后,D/A转换器与闩锁控制器550决定「0」的数量是否等于或大约等于(亦即「0」的数量及「1」的数量之间的差值在一预定误差范围之间)「1」的数量(步骤606)。举例来说,D/A转换器与闩锁控制器550可决定感测数据中的「1」的数量等于一「1」的预定数量,其表示当「0」的数量等于「1」的数量时的「1」的数量。当感测数据中的「1」的数量等于或具有可接受误差的大约等于「1」的预定数量,D/A转换器与闩锁控制器550决定「0」的数量等于或大约等于「1」的数量。若「0」的数量不等于或不大约等于「1」的数量(步骤606:否),D/A转换器与闩锁控制器550基于「1」的数量及「0」的数量之间的差值调整WL0的WL电平。特别地,D/A转换器与闩锁控制器550决定「1」的数量少于「0」的数量,以及「0」的数量及「1」的数量之间的差值超出预定误差范围(步骤608)。若「1」的数量少于「0」的数量以及「0」的数量及「1」的数量之间的差值超出预定误差范围(步骤608:是),D/A转换器与闩锁控制器550提升WL0的WL电平值,基于「1」的数量及「0」的数量之间的差值决定此值(步骤610)。否则,若「1」的数量不少于(亦即多于)「0」的数量以及「0」的数量及「1」的数量之间的差值超出预定误差范围(步骤608:否),D/A转换器与闩锁控制器550降低WL0的WL电平值,基于「1」的数量及「0」的数量之间的差值决定此值(步骤612)。在步骤610或步骤612任一之后,程序600返回至步骤604,其中WL驱动器520施加有调整的(亦即提升或降低)WL电平的WL电压至WL0,以感测被编程在对应于WL0的存储单元中的数据,以及位累加器540累加感测放大器530-533感测的数据,及统计感测数据中「0」及「1」的数量。若「0」的数量等于或大约等于「1」的数量(步骤606:是),感测放大器530-533闩锁由多个存储单元读取的数据、均匀译码器314译码此闩锁数据,以及随后输出数据(步骤614)。在步骤614后,程序600结束。在程序600后,一相似程序可被执行以读取被编程在对应于WL1的存储单元中的数据。
图7是依据一实施例绘示在一读取操作期间,用以追踪理想WL电压的读取电路700的一配置。读取电路700是一以模拟(analog)电路方式感测存储器阵列输出的电流。
如图7所示,电路700包括一存储器阵列710、WL驱动器720及721、感测放大器(SA)730-733、比流器(current transformer)740-743、一电流累加器(current accumulator)750,以及一电流/电压(current/voltage,I/V)转换器与闩锁控制器760。存储器阵列710包括以行及列排列的多个存储单元。字线WL0及WL1沿着存储单元的列方向排列。位线BL0-BL3沿着存储单元的行方向排列。WL驱动器720及721操作性地耦接存储器阵列710的WL0及WL1,以分别供给WL电压至WL0及WL1与分别地接收WL驱动器控制信号X0及X1,并接受电源PWR。感测放大器730-733分别地且操作地耦接至存储器阵列710的BL0-BL3,以分别感测在BL0-BL3中流动的电流。比流器740-743操作性地耦接存储器阵列710的BL0-Bl3,以提供电流Ic0-Ic3,其分别代表在BL0-BL3中流动的电流,以及传递代表电流Ic0-Ic3至电流累加器750。每一比流器740-743可由电流镜(current mirror)实行。电流累加器750操作性地耦接比流器740-743及电流/电压转换器与闩锁控制器760,以累加比流器740-743提供的电流Ic0-Ic3,以及传递累加电流至电流/电压转换器与闩锁控制器760。电流/电压转换器与闩锁控制器760操作性地耦接电流累加器750、感测放大器730-733,以及WL驱动器720及721。电流/电压转换器与闩锁控制器760基于累加电流调整选定字线(例如WL0)的字线(WL)电平。举例来说,若累加电流低于一预定电流,此预定电流代表当「1」的数量等于「0」的数量时的累加电流,电流/电压转换器与闩锁控制器760提升WL电平;以及若累加电流高于此预定电流,电流/电压转换器与闩锁控制器760降低WL电平。电流/电压转换器与闩锁控制器760传递代表调整的WL电平的一电压讯号至WL驱动器720或721,WL驱动器720或721随后供给有调整的WL电平的WL电压至选定字线。举例来说,当WL0是选定字线,电流/电压转换器与闩锁控制器760传递调整的WL电平至WL驱动器720,WL驱动器720随后供给有调整的WL电平的WL电压至WL0。虽然未绘示于图7中,感测放大器730-733操作性地耦接均匀译码器314,均匀译码器314操作性地耦接输入输出缓冲器318。当累加电流等于或大约等于预定电流,电流/电压转换器与闩锁控制器760控制感测放大器730-733以闩锁感测电流、转换感测电流为数据,以及传递数据至均匀译码器314,均匀译码器314译码数据及传递译码的数据至输入输出缓冲器318。
图8是依据一实施例绘示在一读取操作期间,执行在读取电路700中的程序800的一流程图。如图8所示,当读取电路700接收一读取指示,读取电路700开始设定被施加至BL0-BL3的初始位线(BL)电平,以及设定被施加至WL0及WL1的初始字线(WL)电平,其中WL0是选定字线(步骤802)。读取电路700随后施加有初始BL电平的BL电压至BL0-BL3,以及WL驱动器720及721分别施加有初始WL电平的WL电压至WL0及WL1(步骤802)。并且,在步骤804,感测放大器730-733分别感测在BL0-BL3中流动的电流。比流器740-743分别提供代表在BL0-BL3中流动的电流Ic0-Ic3,以及提供代表电流至电流累加器750。电流累加器750累加比流器740-743提供的电流Ic0-Ic3。随后,电流/电压转换器与闩锁控制器760决定是否累加电流等于或大约等于一预定电流(亦即累加电流及预定电流之间的差值在一预定误差范围之间)(步骤806)。如前述所讨论,预定电流代表当被编程在对应于选定字线的存储单元中的数据中的「1」的数量等于「0」的数量时的累加电流。若累加电流不等于或不大约等于预定电流(步骤806:否),电流/电压转换器与闩锁控制器760基于累加电流及预订电流之间的差值调整WL0的WL电平。特别地,电流/电压转换器与闩锁控制器760决定是否累加电流低于预定电流以及累加电流及预定电流之间的差值超出预定误差范围(步骤808)。若累加电流低于预定电流以及累加电流及预定电流之间的差值超出预定误差范围(步骤808:是),电流/电压转换器与闩锁控制器760基于累加电流及预定电流之间的差值提升WL0的WL电平值。(步骤810)否则,若累加电流不低于(亦即高于)预定电流以及累加电流及预定电流之间的差值超出预定误差范围(步骤808:否),电流/电压转换器与闩锁控制器760基于累加电流及预订电流之间的差值降低WL0的WL电平值(步骤812)。之后,程序800返回步骤804,其中WL驱动器720施加有调整的(亦即提升或降低)WL电平的WL电压至WL0,以及电流累加器750累加BL0-BL3中的电流。若累加电流等于或大约等于预定电流(步骤806:是),感测放大器730-733分别闩锁BL0-BL3中流动的感测电流,以及转换感测电流为数据。均匀译码器314译码数据,以及随后输出数据(步骤814)。在步骤814之后,程序800结束。在程序800后,一相似程序可被执行以读取被编程在耦接WL1的存储单元中的数据。
在某些实施例中,在一读取操作期间,当字线电压斜向上升(ramp up),均匀数据元件可被用以读取被编程在复数存储器区段中的存储单元中的数据。图9是依据一实施例绘示读取电路900的一配置。电路900包括一存储器阵列910,其包括以列及行排列的多个存储单元。字线WL0及WL1沿着存储单元的列方向排列。位线BL0-BL7沿着存储单元的行方向排列。每一列的存储单元的栅极连接至对应的字线WL0及WL1之一。每一列的存储单元的漏极电极连接至对应的位线BL0-BL7之一。每一存储单元的源极电极耦接一参考电压电平,例如接地电平。存储器阵列910分割为多个存储器区段(memory section),包括存储器区段920及921。每一存储器区段920或921包括固定行数个存储单元。此固定数量基于构成均匀数据元件的每一均匀数据单元中包括的位数量决定。当均匀数据元件包括n个位,即固定数量,亦即每一存储器区段920或921中行数可为n、2n或3n等。图9绘示的实施例中,固定数量为4。
电路900亦包括WL驱动器930及931、WL电平控制器(WL levelcontroller)940、感测放大器(SA)950-957、分别对应于存储器区段920及921的位累加器960及961,以及分别对应于存储器区段920及921的SA闩锁控制器970及971。WL驱动器930及931操作性地耦接存储器阵列的WL0及WL1,以分别供给WL电压至WL0及WL1与分别地接收WL驱动器控制信号X0及X1,并接受电源PWR。WL电平控制器940操作性地耦接WL驱动器930及931以提供供给至WL0及WL1的WL电压的WL电平。在本实施例中,供给至WL0及WL1的WL电压由0V斜向上升至微高于(slightly higher than)用以读取数据的WL电压一预定电压。感测放大器950-957操作性地耦接存储器区段920及921的BL0-BL7,以分别感测被编程在存储单元中的数据。每一位累加器960及961累加对应于存储器区段920及921中的存储单元的感测数据。亦即,位累加器960操作性地耦接感测放大器950-953以累加存储器区段920中的存储单元的感测数据D0-D3。位累加器961操作性地耦接感测放大器954-957以累加存储器区段921中的存储单元的感测数据D4-D7。SA闩锁控制器970操作性地耦接位累加器960以接收来自位累加器960传递的数据,以及当感测数据中「0」的数量等于或大约等于「1」的数量时,以控制感测放大器950-953的感测数据的闩锁。SA闩锁控制器971操作性地耦接位累加器961以接收来自位累加器961传递的数据,以及当感测数据中「0」的数量等于或大约等于「1」的数量时,以控制感测放大器954-957的感测数据的闩锁。
图10是依据一比较的实施例示意性地绘示一读取数据的方法。当一字线连接至许多存储单元的栅极,字线的电容(capacitance)及电阻(resistance)是非常大。因此,提升全部字线的字线电压至一期望电压电平(desired voltage level)Vsense通常花费相对较长的时间。举例来说,如图10所示,当WL0接近WL驱动器的末端的电压VWL0在时间t1达到Vsense,WL0的远程的电压VWL0e尚未达到Vsense。WL0的远程的电压VWL0e在时间tsense达到Vsense,时间tsense大于时间t1。若全部WL0上的存储单元在时间tsense同时地被读取,需要额外的时间让WL0的远程的电压VWL0e到达Vsense。此额外时间可能增加存储单元的访问时间。
相对地,在本实施例中,存储器阵列910分割为多个存储器区段920、921,以及基于每一存储器区段920或921中的数据,被编程在每一存储器区段920或921中的存储单元中的数据被个别地读取。图11是依据一实施例示意性地绘示在读取电路900中的读取数据的方法。如图11所示,WL驱动器930供给的字线电压由0斜向上升至些微高于期望电压电平Vsense的VWL。在字线的斜向上升期间,对应于存储器区段920的WL0的近端上的VWL0提升快于WL0的远程上的VWL0e。因此,VWL0在时间tsense-1达到期望电压电平Vsense,然而VWL0e在时间tsense-2到达Vsense,tsense-2大于tsense-1。SA闩锁控制器970及971个别地决定是否对应的字线电压达到Vsense,以及响应(in response to)决定结果(determination result)以闩锁感测放大器950-953及954-957的数据。如图1所示,期望电压电平Vsense是位于数据「1」的曲线110及数据「0」的曲线120之间的理想WL电压。由于均匀数据元件被编程在存储器阵列910中,仅当VWL0或VWL0e达到Vsense时,SA闩锁控制器970或971感测「0」及「1」的一相等数量(equal number)。在VWL0或VWL0e达到Vsense前,例如图1所示的曲线110中间的一电平,SA闩锁控制器970或971感测「0」多于「1」。亦即,当对应于存储器区段920的SA闩锁控制器970在tsense-1决定包括于存储器区段920的存储单元中的数据中的「0」的数量等于或大约等于「1」的数量,SA闩锁控制器970决定电压VWL0达到Vsense,以及因此闩锁感测放大器950-953的数据。相似地,当对应于存储器区段921的SA闩锁控制器971在tsense-2决定包括于存储器区段921的存储单元中的数据中的「0」的数量等于或大约等于「1」的数量,SA闩锁控制器971决定电压VWL0e达到Vsense,以及因此闩锁感测放大器954-957的数据。在感测放大器950-957的所有数据被闩锁后,感测放大器950-957传递闩锁的数据至均匀译码器314,均匀译码器314译码数据以及输出数据至输入输出缓冲器。
在上述的实施例中。存储单元是储存1位数据的单阶储存单元(single-level cell,SLC),例如「0」或「1」。然而,本发明可应用于任何型式的存储单元,例如储存2位数据的多阶储存单元(multi-level cell,MLC),或储存3位数据的三阶储存单元(triple-level cell,TLC)。
存储器阵列510、710及910分别地绘示于上述实施例的图5、图7及图9中,是NOR型存储器阵列。然而,本发明亦可实施在NAND型存储器阵列。
本领域具有通常知识者依据本说明书和本发明揭露的实施方式容易想到其他实例。应当理解的是本说明书和实施例仅是示例性的而非用以限定本发明。本发明真正的保护范围和精神如随附权利要求范围所示。
Claims (14)
1.一种存储器系统,包括:
一存储器阵列,包括多个存储单元;以及
一编码器,操作性地耦接该存储器阵列,编码被编程至这些存储单元中的一原始数据元件为一均匀数据元件,在该均匀数据元件中,「0」的数量等于或约等于「1」的数量。
2.根据权利要求1所述的存储器系统,其中该编码器分割该原始数据元件为多个原始数据单元,以及编码各该原始数据单元为一均匀数据单元。
3.根据权利要求2所述的存储器系统,其中基于原始数据单元中「0」及「1」的数量,该编码器加入一编码负担至各该原始数据单元以产生该均匀数据单元。
4.根据权利要求2所述的存储器系统,其中该编码器基于一查找表编码这些原始数据单元为多个均匀数据单元,该查找表包括这些原始数据单元及这些均匀数据单元之间的多个对应关系。
5.根据权利要求1所述的存储器系统,更包括:
一感测放大器,在使用一预定字线电压的读取操作期间,感测被编程在一存储单元子集合中的数据,该存储单元子集合对应于一选定字线;以及
一控制器,基于该感测数据中「0」与「1」的数量,调整该预定字线电压。
6.根据权利要求1所述的存储器系统,更包括:
一感测放大器,在使用一预定字线电压的读取操作期间,感测分别流经该存储器阵列中的多条位线的电流;以及
一控制器,基于这些感测电流,调整该预定字线电压
7.根据权利要求1所述的存储器系统,其中该存储器阵列包括多个存储器区段,各该存储器区段包括固定行数个存储单元,
该存储器系统更包括:
多个感测放大器,分别感测这些存储单元中被编程的数据;
多个位累加器,分别对应至这些存储器区段,各该位累加器累加对应该存储器区段中的存储单元的一感测数据;以及
多个感测放大器控制器,分别对应至这些存储器区段,各该感测放大器控制器由一对应的位累加器接收该累加数据,当该累加数据中「0」的数量大约等于「1」的数量,闩锁对应这些感测放大器的一子集合的数据。
8.一种操作一存储器系统的方法,包括:
接收被编程至一存储器阵列中的一原始数据元件,该存储器阵列包括多个存储单元;
编码该原始数据元件为一均匀数据元件,该均匀数据元件中,「0」的数量等于或大约等于「1」的数量;以及
编程该均匀数据元件至这些存储单元中。
9.根据权利要求8所述的方法,其中编码该原始数据元件为该均匀数据元件的步骤,更包括:
分割该原始数据元件为多个原始数据单元;以及
编码各该原始数据单元为一均匀数据单元。
10.根据权利要求9所述的方法,其中编码各该原始数据单元为该均匀数据单元的步骤,更包括:
基于该原始数据单元中「0」的数量及「1」的数量,加入一编码负担至该原始数据单元以产生该均匀数据单元。
11.根据权利要求9所述的方法,更包括:
基于一查找表编码各该原始数据单元为该均匀数据单元,该查找表包括这些原始数据单元及这些均匀数据单元之间的对应关系。
12.根据权利要求8所述的方法,更包括:
在一读取操作期间,由一感测放大器感测被编程在一存储单元子集合中的数据,该存储单元子集合对应一选定字线;
若该感测数据中「0」的数量等于「1」的数量,或该「0」的数量及该「1」的数量之间的一差值在一预定误差范围之间,闩锁该感测放大器的该感测数据;
若该「1」的数量小于该「0」的数量以及该「0」的数量及「1」的数量之间的该差值超出该预定误差范围,基于该「1」的数量及该「0」的数量之间的该差值,提升该选定字线的一字线电平值;以及
若该「1」的数量大于该「0」的数量以及该「0」的数量及「1」的数量之间的该差值超出该预定误差范围,基于该「1」的数量及该「0」的数量之间的该差值,降低该选定字线的该字线电平值。
13.根据权利要求8所述的方法,更包括:
在一读取操作期间,通过一感测放大器感测分别流经该存储器阵列中多条位线的电流;
若这些感测电流的一总和等于一预定电流,或这些感测电流的该总和与该预定电流之间的一差值在一预定误差范围之间,闩锁该感测放大器的该感测数据,其中该预定电流代表当「0」的数量等于「1」的数量时的一电流;
若这些感测电流的该总和低于该预定电流,或这些感测电流的该总和与该预定电流之间的该差值超出该预定误差范围,基于这些感测电流的该总和与该预定电流之间的该差值,提升该存储器阵列的一选定字线的一字线电平值;以及
若这些感测电流的该总和高于该预定电流,以及这些感测电流的该总和与该预定电流之间的该差值超出该预定误差范围,基于这些感测电流的该总和与该预定电流之间的该差值,降低该选定字线的该字线电平值。
14.根据权利要求8所述的方法,其中该存储器阵列包括多个存储器区段,各该存储器区段包括固定行数个存储单元,
该方法更包括:
由一固定数量的感测放大器分别感测被编程在至少一存储器区段的这些存储单元中的数据;
累加该至少一存储器区段中的这些存储单元的该感测数据;以及
当该累加数据中「1」的数量等于「0」的数量,或该「0」的数量与「1」的数量之间的一差值小于一预定误差范围,闩锁该感测放大器的该感测数据。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/813,759 US9633702B2 (en) | 2015-07-30 | 2015-07-30 | Memory system with uniform decoder and operating method of same |
US14/813,759 | 2015-07-30 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106409339A true CN106409339A (zh) | 2017-02-15 |
CN106409339B CN106409339B (zh) | 2019-09-24 |
Family
ID=57886072
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510717129.9A Active CN106409339B (zh) | 2015-07-30 | 2015-10-29 | 具有均匀译码器的存储器系统及其操作方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US9633702B2 (zh) |
CN (1) | CN106409339B (zh) |
TW (1) | TWI594263B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109215717A (zh) * | 2017-07-05 | 2019-01-15 | 北京兆易创新科技股份有限公司 | Nand型浮栅存储器的读取方法及装置 |
CN110968451A (zh) * | 2018-09-30 | 2020-04-07 | 华为技术有限公司 | 内存访问技术及计算机系统 |
CN115917494A (zh) * | 2020-05-01 | 2023-04-04 | 美光科技公司 | 平衡数据以供存储于存储器装置中 |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10360947B2 (en) | 2017-08-31 | 2019-07-23 | Micron Technology, Inc. | NAND cell encoding to improve data integrity |
US11511840B1 (en) | 2019-07-17 | 2022-11-29 | Brunswick Corporation | Marine engines having a supercharger |
US10981636B1 (en) | 2019-07-17 | 2021-04-20 | Brunswick Corporation | Marine engines having a supercharger |
US10934928B1 (en) | 2019-07-17 | 2021-03-02 | Brunswick Corporation | Lubrication apapratus configurations for marine engines having a supercharger |
US11073116B1 (en) | 2019-09-25 | 2021-07-27 | Brunswick Corporation | Cooling systems for marine engines having a supercharger |
US10975762B1 (en) | 2019-10-23 | 2021-04-13 | Brunswick Corporation | Marine engines having a supercharger and charge air coolers |
US11459943B1 (en) | 2019-12-20 | 2022-10-04 | Brunswick Corporation | Sealing configurations for marine engines having a supercharger and charge air cooler |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW201112251A (en) * | 2009-09-21 | 2011-04-01 | Skymedi Corp | Uniform coding system for a flash memory |
US20130077404A1 (en) * | 2011-09-26 | 2013-03-28 | Kabushiki Kaisha Toshiba | Nonvolatile semiconductor memory device |
TWI458319B (zh) * | 2011-11-29 | 2014-10-21 | Novatek Microelectronics Corp | 時脈嵌入的資料傳輸方法以及資料編碼 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130343131A1 (en) * | 2012-06-26 | 2013-12-26 | Lsi Corporation | Fast tracking for flash channels |
-
2015
- 2015-07-30 US US14/813,759 patent/US9633702B2/en active Active
- 2015-10-29 CN CN201510717129.9A patent/CN106409339B/zh active Active
- 2015-10-30 TW TW104135935A patent/TWI594263B/zh active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW201112251A (en) * | 2009-09-21 | 2011-04-01 | Skymedi Corp | Uniform coding system for a flash memory |
US20130077404A1 (en) * | 2011-09-26 | 2013-03-28 | Kabushiki Kaisha Toshiba | Nonvolatile semiconductor memory device |
TWI458319B (zh) * | 2011-11-29 | 2014-10-21 | Novatek Microelectronics Corp | 時脈嵌入的資料傳輸方法以及資料編碼 |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109215717A (zh) * | 2017-07-05 | 2019-01-15 | 北京兆易创新科技股份有限公司 | Nand型浮栅存储器的读取方法及装置 |
CN109215717B (zh) * | 2017-07-05 | 2020-12-04 | 北京兆易创新科技股份有限公司 | Nand型浮栅存储器的读取方法及装置 |
CN110968451A (zh) * | 2018-09-30 | 2020-04-07 | 华为技术有限公司 | 内存访问技术及计算机系统 |
CN110968451B (zh) * | 2018-09-30 | 2021-09-21 | 华为技术有限公司 | 内存访问技术及计算机系统 |
US11521674B2 (en) | 2018-09-30 | 2022-12-06 | Huawei Technologies Co., Ltd. | Memory access technology and computer system for reducing data error probability |
CN115917494A (zh) * | 2020-05-01 | 2023-04-04 | 美光科技公司 | 平衡数据以供存储于存储器装置中 |
CN115917494B (zh) * | 2020-05-01 | 2023-12-05 | 美光科技公司 | 平衡数据以供存储于存储器装置中 |
Also Published As
Publication number | Publication date |
---|---|
TW201705132A (zh) | 2017-02-01 |
TWI594263B (zh) | 2017-08-01 |
US9633702B2 (en) | 2017-04-25 |
CN106409339B (zh) | 2019-09-24 |
US20170032826A1 (en) | 2017-02-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106409339A (zh) | 具有均匀译码器的存储器系统及其操作方法 | |
US8824213B2 (en) | Method of using memory instruction including parameter to affect operating condition of memory | |
US7827347B2 (en) | Memory system, multi-bit flash memory device, and associated methods | |
CN102985976B (zh) | 包括减小其他存储单元的影响的对非易失性存储器的编程 | |
US7826277B2 (en) | Non-volatile memory device and method of operating the same | |
US9281068B2 (en) | Nonvolatile memory and related reprogramming method | |
US20180286495A1 (en) | Nonvolatile memory storage system | |
US9355715B1 (en) | Memory system and method of operating the same | |
US20100097861A1 (en) | Multi-Pass Programming For Memory Using Word Line Coupling | |
CN101833996A (zh) | 非易失性存储设备及其读取方法 | |
US10706944B2 (en) | Memory controller for controlling memory device based on erase state information and method of operating the memory controller | |
US9543000B2 (en) | Determining soft data for combinations of memory cells | |
KR20090119042A (ko) | 플래시 메모리 장치, 그것의 프로그램 방법, 그리고 그것을포함하는 메모리 시스템 | |
CN108694097A (zh) | 存储设备的不同存储器区域中编程数据的多码本的使用 | |
CN109215712A (zh) | 存储器装置及其编程方法 | |
CN103177765A (zh) | 半导体存储器件及其操作方法 | |
CN105976864A (zh) | 非易失性存储装置与用于其的写入电路及方法 | |
US9697892B1 (en) | Generation and application of gray codes | |
CN107305788A (zh) | 存储器以及执行经错误订正编码处理的存储器的读取方法 | |
US8654590B2 (en) | Nonvolatile memory device performing a program verification with sense signals based on program data of adjacent memory cells and program method thereof | |
US8711620B2 (en) | Memory device having collaborative filtering to reduce noise | |
KR20100005585A (ko) | 적응적 제어 스킴을 가지는 메모리 장치 및 그 동작 방법 | |
KR20230147525A (ko) | 머신 러닝을 이용한 비휘발성 메모리의 경판정 디코딩 | |
KR20070109251A (ko) | 멀티레벨 셀 메모리 장치 및 그 데이터 저장 방법 | |
KR20100089507A (ko) | 플래시 메모리 소자의 프로그램 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |