CN105810248B - 使用包电平状态值和包状态电路的存储器 - Google Patents
使用包电平状态值和包状态电路的存储器 Download PDFInfo
- Publication number
- CN105810248B CN105810248B CN201410840590.9A CN201410840590A CN105810248B CN 105810248 B CN105810248 B CN 105810248B CN 201410840590 A CN201410840590 A CN 201410840590A CN 105810248 B CN105810248 B CN 105810248B
- Authority
- CN
- China
- Prior art keywords
- packet
- state
- packet status
- status circuit
- circuit
- 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.)
- Active
Links
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/08—Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
- G11C29/12—Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
- G11C29/38—Response verification devices
- G11C29/42—Response verification devices using error correcting codes [ECC] or parity check
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/08—Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
- G11C29/12—Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
- G11C29/44—Indication or identification of errors, e.g. for repair
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/52—Protection of memory contents; Detection of errors in memory contents
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C2029/0411—Online error correction
Landscapes
- Read Only Memory (AREA)
- Logic Circuits (AREA)
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
Abstract
本发明提供了一种使用包电平状态值和包状态电路的存储器。其中,一种集成电路存储器包含存储器阵列,包含多条数据线。缓冲器结构耦接到多条数据线,包含多个存储元件用以对数据线存储多个位电平状态值。存储器包含逻辑,用以根据缓冲器结构中的存储元件的对应包的多个位的位电平状态值指示对应包的多个包电平状态值。多个包状态电路被设置在菊链中,并耦接到缓冲结构中的对应包,用以产生菊链的输出以指示侦测到具有第一状态的包。控制电路用以执行决定菊链的输出的多个周期,在每一周期中若在周期中的输出指示侦测到具有第一状态的包,则清除指示第一状态的包状态电路。
Description
技术领域
本发明是有关于一种存储器装置,特别是有关于存储器装置中的验证电路。
背景技术
随着集成电路存储器装置工艺的缩小以及存储器装置中堆积的存储器单元愈来愈多层,存储器单元中的缺陷也随着增加。举例来说,这种缺陷可包含与非门闪存阵列中的开路位线接触点。这种缺陷可被冗余单元修复,或者如果在编程或者抹除操作中缺陷的数量是限制的情况下,这种缺陷可被容忍。如果缺陷被容忍,则在编程或者抹除操作中一页的缺陷的总数应小于每一页的错误检查码(ECC)数量的要求,以使在读取操作中的错误检查校正可修正缺陷的错误。
存储器中的侦测电路被描述在我们共同正在审理的美国专利申请:申请号14/055656,申请日为2013年10月16日,标题为MEMORY PAGE BUFFER,此美国专利通过引用的方式在此作完整的说明。侦测电路使用一错误位侦测单元(Fail Bit Detection Unit,FBDU)以存储耦接到页缓冲器的每个位线的错误位信息,并提供页缓冲器中每个位线的错误位信息的精确的计数。对应至相对应的位线的多个错误位侦测单元串联连接。侦测电路的一个问题是处理对应到位线的错误位侦测单元的时间是很重要的。侦测电路的另一个问题是不能知道缺陷的位置。例如,侦测电路可侦测有在1024位的数据中有3个错误位,但侦测电路不能提供这3个错误位的位置。
因此,有必要提供一种侦测电路可降低操作时间以及提供缺陷的位置。
发明内容
一种集成电路存储器包含存储器阵列,包含多条数据线。缓冲器结构耦接到多条数据线,包含多个存储元件用以对数据线存储多个位电平状态值。存储器包含逻辑,用以根据缓冲器结构中的存储元件的对应包(bundle)的多个位的位电平状态值指示对应包的多个包电平状态值。
逻辑包含多个包状态电路被设置在菊链中,包状态电路耦接到缓冲结构中的对应包,用以产生菊链的输出以指示侦测到具有第一状态的包。逻辑包含控制电路用以执行决定菊链的输出的多个周期,在每一周期中若在周期中的输出指示侦测到具有第一状态的包,则清除指示第一状态的包状态电路。控制电路更用以重复该些周期直到该输出指示没有具有该第一状态的该包状态电路为止。在此周期中逻辑更包含持续计算具有第一状态的包状态电路。
举例来说,可使用集成电路存储器中的存储器阵列的冗余分析(redundancyanalysis)来计算具有第一状态的包状态电路。存储器阵列可包含多个存储器单元方块,且指示第一状态的包状态电路的计数可被维持在每一个方块且与一标准比较以决定一个方块是否被标记为坏的方块。
本说明书使用的一包(bundle)是包含两个或多个位的一多位数据单元。存储元件的一包包含两个或多个存储元件。一位电平状态值指示在至少一数据线上是否有一错误被侦测到。位电平状态值和包电平状态值包含指示例如在编程操作期间侦测到一错误的一错误状态的一第一状态,也包含指示为一没有侦测到错误的通过状态的一第二状态。
存储器更包含一逻辑,用以响应于侦测到至少一位的具有该第一状态的包以计算缓冲器结构中的存储元件内具有第一状态的包,并辨识缓冲器结构中的存储元件内具有第一状态的包。
存储器更包含一控制逻辑,用以执行一编程操作,此编程操作包含一包含一编程脉冲和一编程验证的一编程周期,且如果缓冲器结构中具有第一状态的存储元件的一数目超过一重试临界值,控制逻辑执行一另一编程操作。重试临界值可以是对应存储器中使用的错误校正逻辑的值。举例来说,如果错误检查逻辑可校正4个位错误,则重试临界值可以是5。在每一周期中如果在此周期中菊链的输出指示侦测到具有第一状态的包且在清除掉指示该第一状态的该包状态电路之前,则控制逻辑可包含搜寻指示第一状态的包状态电路。在每一周期的搜寻中,菊链中的一部分的包状态电路被设定响应于存储在此部分的包状态电路的包电平状态值而传送多个输入信号电平。而菊链中其他部分的包状态电路被设定无关于存储在其他包状态电路的包电平状态值而传送输入信号电平,并且在此部分的包状态电路可执行搜寻具有第一状态的包状态电路。
当侦测到具有第一状态的一包,缓冲器结构的存储元件内具有第一状态的包可被辨识,以使对应具有第一状态的存储元件的全局位线可被例如冗余位线定位及被修复。
多个包状态电路中的一包状态电路可包含一第一闩锁器、一通道闸及一第二闩锁器。第一闩锁器用以根据存储在缓冲器结构中的存储元件的对应包的位电平状态值存储对应包的包电平状态值。通道闸连接到包状态电路的一输入端及一输出端,并响应于存储在包状态电路的第一闩锁器的包电平状态值及包状态电路的一选择输入端而传送包状态电路的输入端的一输入信号电平到包状态电路的该输出端。第二闩锁器耦接到该第一闩锁器,第二闩锁器在存储第一状态的第一闩锁器保持第一状态时具有第一状态,及在存储第一状态的第一闩锁器被清除时具有第二状态,其中第一状态及第二状态响应于包状态电路的输入端的输入信号电平而设。
多个包状态电路中的一包状态电路更包含一电路,用以设定使选择输入端是一第一信号电平时,通道闸回应于存储在包状态电路中的包电平状态值而传送输入信号电平到输出端,并在选择输入端是一第二信号电平时,通道闸无关于存储在包状态电路中的包电平状态值而传送输入信号电平到输出端。
多个包状态电路中的一包状态电路包含一电路,用以响应于侦测到至少一位具有第一状态的包复制存储在缓冲器结构中的包的位电平状态值到一位电平状态线组。
存储器包含一电路,用以初始化对应包的包状态电路,并在存储在对应包的至少一存储元件的位电平状态值为第一状态时,存储第一状态到包状态电路,否则存储不同于第一状态的第二状态到包状态电路。
因为多个包状态电路中的每一个包状态电路耦接到缓冲器结构相对应的包,所以本发明描述的一菊链包含多个包状态电路与我们正在审理的美国专利申请相比可减少操作时间。举例来说,如果一包包含8位,假设在抹除或编程操作之中存储器阵列中相当小部分的数据错误,则传送侦测信号到菊链的时间约被减少8倍。
当真到具有第一状态(错误)的一包,缓冲器结构中的存储元件内具有第一状态的包可被辨识且被计算。之后控制电路可决定错误位的数目是否小于每一页的ECC数量的要求,以使在读取操作中的ECC可修正错误位。
本发明提供一种操作存储器的方法。
本发明的其他方面和优点可参照下面的详细描述、附图及权利要求。
附图说明
图1绘示说明包含多个包状态电路的一集成电路存储器的方块图。
图2绘示说明如图1所示的一个包状态电路的一例的示意图。
图2A绘示说明用以初始化对应包的一包状态电路的示范电路的示意图。
图3绘示包含两个包状态电路的菊链的一例。
图4绘示持续计算指示第一状态的包状态电路的一流程图。
图5绘示辨识具有第一状态的一包内的缓冲器结构中的存储元件的一流程图。
图6绘示对应于图4和图5的流程图的表示决定菊链输出的执行周期的一示意图。
图7绘示搜寻指示第一状态的包状态电路的一流程图。
图8绘示对应于图7的流程图的表示搜寻指示第一状态的包状态电路的执行周期的一示意图。
图9绘示使用图3所示的菊链持续计算具有第一状态的包状态电路的时序图。
图10绘示辨识缓冲器结构中的存储元件的一时序图。
图11绘示使用如图3所示的菊链搜寻指示第一状态的包状态电路的一流程图
图12绘示一实施例的集成电路存储器的简化方块图。
【符号说明】
100:存储器
110:存储器阵列
111:数据
112:错误检查码
121:数据线
122:ECC线
130:缓冲器结构
140-147:存储元件
150:错误检查码逻辑
155:输入/输出电路
160-169:电路
170-179:包状态电路
190:编码器
195:地址
200:包状态电路
210:第一闩锁器
212、214、216、237、242、244、248、248_1、248_2:晶体管
220:偏压设置供应电压
232:输入端
234:输出端
240:第二闩锁器
250:电路
291:第一元件
292:输出端
295:第二元件
310、320:包状态电路
1200:集成电路
1205、1215、1235、1245、1255、1265、1275:线
1210:用以执行决定菊链输出的周期的控制逻辑
1220:偏压设置供应电压
1230:ECC逻辑
1240:列译码器
1250:具有错误检查码的存储器阵列
1260:缓冲器结构
1270:包状态电路的菊链
1280:行译码器
1290:输入/输出电路
DetI、Det1-DetN、DetO、YA0~YAN、RESET、FBIT_EN、SEL、EN、TRC、TRC_2、FBYTE_LAT、FBYTE_LAT1、FBYTE_LAT2、LOAD、Rst_b、PASS1、PASS2:信号
FBIT[7:0]:位电平状态线组
LAL、LAL1、LAL2、LAR、LAR1、LAR2、SEL1、SEL2:端点
DBUS[7:0]:数据总线线
410-470、550、750:步骤流程
具体实施方式
参照附图提供本发明实施例的详细描述。下列描述通常参考具体结构的实施例和方法。但是应当理解的是这些特定揭露的实施例和方法并非用以限定本发明,本发明也可使用其他特征、元件、方法及实施来实施。较佳实施例被描述以说明本发明,而非用以限制本发明的范围,本发明的范围以权利要求定义的为准。本领域普通技术人员可辨别以下描述的多种等效的变型。不同实施例中的相似的元件通常以相似的参考符号表示。
图1绘示说明一集成电路存储器的方块图。存储器100包含一存储器阵列110及多条数据线121。存储器100包含耦接到该些数据线的一页缓冲器结构130。页缓冲器结构包含多个存储元件140-147以存储多个数据线中的位电平状态值。多条数据线中的位电平状态值由一验证电路在编程或抹除操作中决定(未绘示)。此存储器包含一逻辑,用以根据页缓冲器结构中的存储元件的对应包(bundle)中位的位电平状态值指示对应包的包电平状态值。
此逻辑包含多个包状态电路170-179以菊链排列,此包状态电路耦接到页缓冲器结构中相对应的包,并产生此菊链的输出DetO以指示侦测到一第一状态的包。此菊链从一第一包状态电路170开始,到一最后包状态电路179结束。此菊链中除了第一状态包电路之外的每一包状态电路接收此菊链中前一级的另一包状态电路的一输出。举例来说,包状态电路171经由一信号Det1接收包状态电路170产生的输出,包状态电路172经由一信号Det2接收包状态电路171产生的输出,以此类推。
此逻辑包含控制电路用以执行决定菊链输出的周期,每一周期中若在此周期的输出指示侦测到第一状态的包,则清除指示第一状态的一包状态电路。控制电路重复这些周期直到输出指示没有具有第一状态的包状态电路为止。此逻辑可包含在周期中持续计算指示第一状态的包状态电路。
电路160用以初始化相对应包的一包状态电路(例如170),并在存储在对应包的至少一存储元件140-147的位电平状态值为第一状态时,存储第一状态到包状态电路,否则存储一第二状态到包状态电路。电路160在图2更进一步描述。
电路180耦接到菊链中的结束包状态电路179的输出以持续计算指示第一状态的包状态电路。若一致能输入EN被施加一第一信号电平(例如EN=0)则电路180被禁能,若致能输入EN被施加不同于第一信号电平的一第二信号电平(例如EN=1)则电路180被致能。
存储器包含选择信号YA0,YA1,YA2,......YAn用以选择包状态电路以搜寻指示第一状态的包状态电路。这些选择信号可由一编码器190从地址195产生,且这些选择信号耦接到多个包状态电路的选择输入端SEL。举例来说,编码器可编码log2N个地址以产生对应N个包状态电路的N个选择信号。
控制信号RESET、控制信号FBIT_EN以及一位电平状态线组FBIT[7:0]耦接到多个包状态电路中的每一包状态电路,在图2更进一步描述。
存储器阵列110可存储数据111及对应数据的错误检查码ECCs 112。数据111可从存储器阵列中经由多条数据线121被读取到缓冲器结构130,而对应的错误检查码112可从存储器阵列中经由多个ECC线122被读取到缓冲器结构130。存储器包含耦接到缓冲器结构的输入/输出电路155和错误检查码逻辑150。
图2绘示说明如图1所示的多个包状态电路中的一个包状态电路的一例的示意图。包状态电路包含一第一闩锁器210、一通道闸230以及一第二闩锁器240。第一闩锁器210从缓冲器结构中的存储元件的对应的包存储一包电平状态值。通道闸230连接到一输入端232及包状态电路的一输出端234,用以回应于存储在第一闩锁器的包电平状态值及包状态电路的选择输入端SEL传送在输入端的一输入信号电平到包状态电路的输出端。
第二闩锁器240耦接到第一闩锁器,第二闩锁器在存储第一状态的第一闩锁器保持第一状态时具有一第一状态,及在存储第一状态的第一闩锁器被清除时具有第二状态,其中第一状态及第二状态根据输入信号电平而设。
包状态电路包含电路220,电路220用以选择回应于存储在第一闩锁器的包电平状态值而产生一输出,或无关于存储在第一闩锁器的包电平状态值而传送在输入端的一输入信号电平到输出端。在一实施例中,如果选择输入端是位于一第一信号电平(例如SEL=1),则通道闸响应于存储在包状态电路的包电平状态值传送输入信号电平到输出端,如果选择输入端是位于一第二信号电平(例如SEL=0),则通道无关于存储在包状态电路的包电平状态值而传送输入信号电平到输出端。当选择输入是位于一第一信号电平(例如SEL=1)时,如果第一闩锁器存储一第二状态(例如通过)则通道闸传送输入信号电平到输出端,如果第一闩锁器存储第一状态(例如错误)则挡住输入信号电平而不传送到输出端。当输入信号电平被挡住时,晶体管237被导通以提供低逻辑到输出234。
包状态电路包含电路250,电路250响应于侦测到至少一位的具有第一状态的一包经由一数据总线线DBUS[7:0]复制存储在缓冲器结构中的包的位电平状态值到一位电平状态线组FBIT[7:0]。若包状态电路的一致能输入端FBIT_EN被施加一第一信号电平(例如FBIT_EN=0)则电路250被禁能,若包状态电路的致能输入端FBIT_EN被施加不同于第一信号电平的一第二信号电平(例如FBIT_EN=1)则电路250被致能。下面的真值表描述包状态电路中的电路250,其中DETI对应包状态电路的输入232,DETO对应包状态电路的输出234。如下表所示,在第1列当FBIT_EN=0时,不论DETI和DETO的值是多少,位电平状态线组FBIT[7:0]是0。在第2列和第3列当菊链中的包状态电路的FBIT_EN=1且DETI=0时,不论DETO的值是多少,包状态电路并未侦测到任何错误位,因此位电平状态线组FBIT[7:0]是0。在第4列当FBIT_EN=1、DETI=1且DETO=0时,包状态电路侦测到一或多个错误位,且错误位被加载到位电平状态线组FBIT[7:0]。在第5列当FBIT_EN=1、DETI=1且DETO=1时,包状态电路并未侦测到任何错误位,因此位电平状态线组FBIT[7:0]是0。
这些包状态电路的流程由如图1所示的一信号REST重设多个包状态电路中的每一个包状态电路中的第一闩锁器和第二闩锁器开始,信号REST耦接到如图2所示的重设信号RST_b。信号RST_b施加到晶体管212,晶体管212耦接到第一闩锁器210。信号RST_b施加到晶体管248,晶体管248耦接到第二闩锁器240。菊链中的包状态电路接着以包电平状态值被初始化。
当一侦测信号被施加到开始菊链的包状态电路的输入端时开始一周期,而当在结束菊链的包状态电路的输出端产生一输出信号时结束一周期。如果菊链中的多个包状态电路指示第一状态,则需要多个周期以侦测指示第一状态的多个包状态电路。在第一个周期开始之前,多个包状态电路中的每一个包状态电路的第二闩锁器例如被信号RST_b上的一高脉冲重设为第一状态,以在第二闩锁器的一输出端LAR提供低逻辑。在一周期间,响应于侦测到至少一位具有第一状态的一包,包状态电路的第二闩锁器转换为第二状态以在第二闩锁器的一输出端LAR提供高逻辑。若在一周期中侦测到指示第一状态的一特定包状态电路,指示第一状态的包状态电路的计数据以增加。在增加计数之后,控制电路施加第一清除信号TRC及第二清除信号TRC2以改变特定包状态电路中的第一闩锁电路以存储第二状态(通过),并改变特定包状态电路中的第二闩锁电路以存储第二状态,以使后续周期不会重复计算特定包状态电路,而可以计算其他指示第一状态而还未被计算的包状态电路。第一清除信号TRC及第二清除信号TRC2为两个不重叠的脉冲。
第二清除信号TRC2接续第一清除信号TRC。第二闩锁器240侦测通道闸230之前的输入信号232。晶体管242与晶体管244串联在第二闩锁器和接地之间。晶体管242具有一耦接到第一清除信号TRC的栅极,晶体管244具有一耦接到输入端232的栅极。如果输入端232的信号电平是高电平,则当第一清除信号TRC到达时,第二闩锁器240改变到第二状态以提供高逻辑到第二闩锁器的输出端LAR。
晶体管216与晶体管214串联在第一闩锁器210和接地之间。晶体管216具有一耦接到第二清除信号TRC2的栅极,晶体管214具有一耦接到第二闩锁器240的栅极。接着,当第二清除信号TRC2到达时,第一闩锁器210可根据存储在第二闩锁器240的信息改变第一闩锁器的输出端FBYTE_LAT为第二状态(通过)。
如果在一周期中没有侦测到指示第一状态(错误)的一特定包状态电路,则已经侦测到在特定包状态电路之前的另一个指示第一状态的包状态电路,且因此低逻辑被传送到特定包状态电路的输出端。当特定包状态电路的输入信号位于一低电平时,特定包状态电路中的第二闩锁器240保持在第一周期开始时的第一状态以在第二闩锁器的输出端LAR提供低逻辑以使第一闩锁器210不改变其状态值。因此,第二闩锁器240可确保在一周期中侦测到第一状态之后第一闩锁器从第一状态改变到第二状态。
高逻辑和低逻辑在本说明书中被用以指示为一个信号具有的两种逻辑电平。高逻辑和低逻辑分别对应2进位的1和0。逻辑电平以信号和接地电压之间的电压差表示。举例来说,高逻辑可被表示为供应电压或接近供应电压的一电压,而低逻辑可被表示为一接地电压或接近接地电压的一电压。
图2A绘示说明用以初始化对应包的一包状态电路的示范电路160的示意图。在图2A的例子中,存储元件140~147的一包参考图1描述,且包状态电路200中的一第一闩锁器210具有一端点连接到的信号FBYTE_LAT参考图2描述。
电路160包含第一元件291,如果存储在至少一存储元件中的包的一状态值是第一状态,则第一元件291在输出端292产生存储元件140~147的包的第一状态,否则产生第二状态。举例来说,第一状态可以是一错误状态,而第一状态可以是一通过状态。
电路160包含一第二元件295,第二元件295可以是一通道闸。通道闸具有一第一端、一第二端及一栅极端,第一端连接到第一元件291的输出端292,第二端连接到信号FBYTE_LAT,栅极端连接到栅极信号LOAD。在一实施例中,回应于施加到栅极信号LOAD的一高脉冲,通道闸传送信号电平到第一元件的输出端292以初始化包状态电路200中的第一闩锁器210。
图3绘示包含两个包状态电路310和320的菊链的一例。包状态电路310具有一输入端L1及一输出端R1,而包状态电路320具有一输入端L2及一输出端R2。菊链中前一级的输出端耦接到下一级的输入端。举例来说,包状态电路310的输出端R1耦接到下一级的输入端L2。菊链中对于不同的包状态电路,经由数据总线DBUS1[7:0]及DBUS2[7:0]存储在存储元件的包的位电平状态值是不同的。对于不同的包状态电路,选择输入SEL1及SEL2是不同的。对于不同的包状态电路,控制信号RST_b及FBIT_EN、清除信号TRC及TRC_2、以及位电平状态线组FBIT[7:0]是共同的。
图4绘示持续计算如图1所描述的集成电路存储器中具有第一状态的包状态电路的一流程图。缓冲器结构130包含多个存储元件140~147以存储存储器阵列中的多个数据线的位电平状态值。多个包状态电路170-179中的每一个包状态电路存储缓冲器结构中一包的一包电平状态值。举例来说,一包可包含8个存储元件以存储多条数据线中的8个对应的数据线的状态值。如果一包中的至少一存储元件存储第一状态,则包状态电路指示包为一第一状态。
在步骤410中,菊链中的包状态电路被初始化为缓冲器结构中的一层(tier)中的对应包的包电平状态值。在本申请案中,使用一层表示缓冲器结构中多个存储元件的一部分或者全部。如果菊链中具有至少相同于缓冲器结构中的存储元件的包数目的包状态电路,则缓冲器结构中存储元件的一包可以只有一层。如果菊链中具有少于缓冲器结构中的存储元件的包的数目的包状态电路,则菊链需要轮流被多层存储元件的包初始化。举例来说,如果缓冲器结构可存储分为16层的2048字节,且每一个包包含8个存储元件以存储一字节的状态值,则菊链对每一层128字节需要包含2048/16=128个的包状态电路。一菊链包含N个包状态电路,N个包状态电路可被寻址为一log2N位的地址总线线。例如,一菊链包含128个包状态电路可被寻址为log2128=7位的包地址总线线。
在步骤420中,菊链中的包状态电路可经由选择信号YA0,YA1,YA2,......YAn被选择,以使存储在包状态电路中的第一闩锁器包电平状态值可决定包状态电路中的通道闸是否可传送一输入信号电平到包状态电路的输出。在步骤430中,一例如为高逻辑的侦测信号DetI被施加到菊链开始的包状态电路170的输入端。在步骤440中,可决定是否菊链的输出端指示侦测到至少一位具有第一状态的一包。
如果输出并未指示侦测到且现在的层是最后一层,则这个流程终止(从步骤470到结束)。如果输出并未指示侦测到现在的层不是最后一层,则菊链以缓冲器结构下一层中的对应包的一包电平状态值被初始化(从步骤470到步骤410)。
如果在步骤440中输出指示有侦测到,则在步骤450中,指示第一状态(错误状态)的包状态电路的一计数增加。在步骤460中,在一周期的结束,由于菊链的输出指示侦测到在此周期中是第一状态的一包指示包状态电路已经被处理,所以清除指示具有第一状态的包状态电路。在步骤430中,同一层中的另一周期开始。
图5绘示辨识在具有第一状态的一包内的如图1所描述的集成电路存储器中缓冲器结构中的存储元件的一流程图。图4和图5的相似元件通常以相似的参考符号表示。图5的元件包括步骤410~440及步骤460~470被描述在图4中,在图5中相似的元件不再重复描述。
在步骤440中,可决定是否菊链的输出端指示侦测到至少一位具有第一状态的一包。如果输出并未指示侦测到且现在的层是最后一层,则这个流程终止(从步骤470到结束)。如果输出并未指示侦测到现在的层不是最后一层,则菊链以缓冲器结构下一层中的对应包的包电平状态值被初始化(从步骤470到步骤410)。
如果在步骤440中输出指示有侦测到,则在步骤550中,至少一位具有第一状态的一包的位电平状态值经由一数据总线线DBUS[7:0]被复制到位电平状态线组FBIT[7:0]。因此,在具有第一状态的包的缓冲器结构中的存储元件可经由位电平状态线组被辨识及被计算。
在步骤460中,在一周期的结束,由于菊链的输出指示侦测到在此周期中是第一状态的一包指示包状态电路已经被处理,所以清除指示具有第一状态的包状态电路。在步骤430中,同一层中的另一周期开始。
图6绘示对应于图4和图5的流程图的表示决定菊链输出的执行周期的一示意图。如图6所示,行670~677代表多个包状态电路,例如图1的包状态电路170~179,被设置为一菊链。此菊链从行670的包状态电路开始到行677的包状态电路结束。菊链中的包状态电路经由选择信号YA0,YA1,YA2,......YAn而被选择以使存储在包状态电路的第一闩锁的位电平状态值可决定包状态电路的通道闸是否可传送一输入信号到包状态电路的输出。
在步骤610中,包状态电路响应于信号LOAD上的高脉冲被初始化为缓冲器结构中多个存储元件的一层存储元件的包的的状态值。在此例中,行670和行675的包状态电路被初始化为第一状态(错误状态),如实心粗黑圆圈所示。其他行的包状态电路被初始化为第二状态(通过状态),如单一圆圈所示。
在步骤620中,一高逻辑的侦测信号DetI被施加到行670的包状态电路。由于行670的包状态电路被初始化为错误状态,行670的包状态电路中的通道闸230被关闭且晶体管237被导通,以提供低逻辑到行670的包状态电路的输出。由于行671~674的包状态电路被初始化为通过状态,通道闸230被导通,以提供行670的包状态电路的输出的低信号电平到行674的包状态电路的输出。
由于行675的包状态电路被初始化为错误状态,行675的包状态电路中的通道闸230被关闭且晶体管237被导通,以提供低逻辑到行675的包状态电路的输出。由于行676~677的包状态电路被初始化为通过状态,通道闸230被导通,以提供行675的包状态电路的输出的低逻辑到行677的包状态电路的输出。低逻辑(例如DetO=0)在行677的包状态电路的输出被侦测到,低逻辑用以指示行670~677的包状态电路中至少一电路指示为错误状态。
根据图4的步骤450,回应于侦测到行677的包状态电路的输出的低逻辑,指示第一状态(错误状态)的包状态电路的一计数增加。
根据图5的步骤550,回应于侦测到行677的包状态电路的输出的低逻辑,一致能信号FBIT_EN被施加到菊链中的包状态电路的致能输入端。因此,行670的包状态电路中的电路250存储在缓冲器结构中对应包的位电平状态值经由一数据总线线DBUS[7:0]被复制到位电平状态线组FBIT[7:0]。
在步骤630中,第一清除信号TRC及第二清除信号TRC2被施加以清除行670的包状态电路中的第一闩锁器的错误状态,并在行670的包状态电路中存储第二状态,借此指示行670的包状态电路初始化的错误状态已经被处理,如双圆圈所示。因此,后续的周期将不会重新处理行670的包状态电路初始化的错误状态。
在步骤640中,一高逻辑(例如DetI=1)的侦测信号DetI被施加到行670的包状态电路的输入。由于行675的包状态电路被初始化为错误状态,行675的包状态电路中的通道闸230被关闭且晶体管237被导通,以提供低逻辑到行675的包状态电路的输出。由于行676~677的包状态电路被初始化为通过状态,通道闸230被导通,以传送行675的包状态电路的输出的低逻辑到行677的包状态电路的输出。
低逻辑(例如DetO=0)在行677的包状态电路的输出被侦测到,低逻辑用以指示行670~677的包状态电路中至少一电路指示为错误状态。
根据图4的步骤450,回应于侦测到行677的包状态电路的输出的低逻辑,指示第一状态(错误状态)的包状态电路的一计数增加。
根据图5的步骤550,回应于侦测到行677的包状态电路的输出的低逻辑,一致能信号FBIT_EN被施加到菊链中的包状态电路的致能输入端。因此,行675的包状态电路中的电路250存储在缓冲器结构中对应包的位电平状态值经由一数据总线线DBUS[7:0]被复制到位电平状态线组FBIT[7:0]。
在步骤650中,第一清除信号TRC及第二清除信号TRC2被施加以清除指示第一状态的行675的包状态电路中的第一闩锁器的错误状态,并在行675的包状态电路中存储第二状态,借此指示行670的包状态电路初始化的错误状态已经被处理,如双圆圈所示。因此,后续的周期将不会重新处理行675的包状态电路初始化的错误状态。
在步骤660中,一高逻辑(例如DetI=1)的侦测信号DetI被施加到行670的包状态电路的输入。由于行670和行675的包状态电路已经从初始化的错误状态被清除为通过状态,行670和行675的包状态电路中的通道闸230被导通,以传送行670的包状态电路的输出的高逻辑(例如DetI=1)到行677的包状态电路的输出,并结束菊链中的包状态电路的处理流程。
图7绘示在如图1所描述的集成电路存储器中搜寻指示第一状态的包状态电路的一流程图。图4和图7的相似元件通常以相似的参考符号表示。图7的元件包括步骤410-450及步骤470-480被描述在图4中,在图7中相似的元件不再重复描述。
在步骤440中,可决定是否菊链的输出端指示侦测到至少一位具有第一状态的一包。如果输出并未指示侦测到且现在的层是最后一层,则这个流程终止(从步骤470到结束)。如果输出并未指示侦测到现在的层不是最后一层,则菊链以缓冲器结构下一层中的对应包的包电平状态值被初始化(从步骤470到步骤410)。
如果在步骤440中输出指示有侦测到,则在步骤750中,执行一指示第一状态的包状态电路的搜寻。此搜云可使用选择信号YA0,YA1,YA2,......YAn用以成功地限缩搜寻范围直到指示第一状态的一包状态电路被找到。搜寻更进一步的描述在图8。
在步骤460中,在一周期的结束,由于菊链的输出指示侦测到在此周期中是第一状态的一包指示包状态电路已经被处理,所以清除指示具有第一状态的包状态电路。在步骤430中,同一层中的另一周期开始。
图8绘示对应于图7的流程图的表示搜寻指示第一状态的包状态电路的执行周期的一示意图。多个包状态电路被设置为一菊链。如图8所示,菊链包含在地址195的00、01、10、11的4个包状态电路,从地址00的包状态电路开始到地址11的包状态电路结束。在一实施方式中使用一二元搜寻(binary search)。在二元搜寻中,指示第一状态的包状态电路可在第Log2N步被找到,其中N是菊链中被初始化为包电平状态值的包状态电路的数目。虽然在图8的例子中,N=4,但是N可以大于4,例如64、128、256等等。
在步骤810中,地址00和地址11的包状态电路被初始化为错误状态,而其他的包状态电路被初始化为通过状态。在搜寻操作的每一周期可找到被初始化为错误状态的一个包状态电路,而因此需要两个周期Cycle 1和Cycle 2以找到初始化为错误状态的两个包状态电路。
对于周期Cycle 1,在步骤810中,所有包状态电路都被选择如Address=XX所示,其中X代表0或1,所以XX代表4个地址00、01、10和11。因此,初始化为错误状态的地址=00和地址=11的包状态电路挡住相对应的输入信号被传送到包状态电路相对应的输出。当一高逻辑的侦测信号DetI被施加到地址=00的包状态电路的输入,侦测信号被挡住而不被传送到菊链中的包状态电路。因此,在地址=11的包状态电路的输出侦测到低逻辑(例如DetO=0)以指示4个包状态电路中至少一个被初始化为错误状态。
在步骤820中,为了限缩4个包状态电路的搜寻范围,选择两个包状态电路如Address=0X所示,其中0X代表地址01和11。未被选择的包状态电路无关于存储在未被选择的包状态电路的状态值传送对应的输入信号到包状态电路相对应的输出。当一高逻辑的侦测信号DetI被施加到地址=00的包状态电路的输入,侦测信号被挡住而不被传送到菊链中的包状态电路。因此,在地址=11的包状态电路的输出侦测到低逻辑(例如DetI=0)以指示两个包状态电路中至少一个被初始化为错误状态。
在步骤830中,为了进一步限缩2个包状态电路的搜寻范围,选择一个包状态电路如Address=00所示。未被选择的包状态电路无关于存储在未被选择的包状态电路的状态值传送对应的输入信号到包状态电路相对应的输出。当一高逻辑的侦测信号DetI被施加到地址=00的包状态电路的输入,侦测信号被挡住而不被传送到菊链中的包状态电路。因此,地址=00的包状态电路的输出产生的低逻辑(例如DetO=0)被传送到菊链中其他的包状态电路,且在地址=11的包状态电路的输出侦测到低逻辑以指示地址=00的包状态电路被初始化为错误状态。
在步骤840中,第一清除信号TRC及第二清除信号TRC2被施加以清除地址=00的包状态电路,并在地址=00的包状态电路中存储第二状态,借此指示地址=00的包状态电路初始化的错误状态已经被处理,如双圆圈所示。因此,后续的周期将不会重新处理地址=00的包状态电路初始化的错误状态。
对于周期Cycle 2,在步骤850中,所有包状态电路都被选择。因此,初始化为错误状态的地址=11的包状态电路挡住相对应的输入信号被传送到地址=11的包状态电路相对应的输出。当一高逻辑的侦测信号DetI被施加到地址=00的包状态电路的输入,侦测信号被传送到地址=11的包状态电路的输入。由于地址=11的包状态电路被初始化为错误状态,所以侦测信号被挡住而不被传送到输出。因此,在地址=11的包状态电路的输出侦测到低逻辑(例如DetO=0)以指示4个包状态电路中至少一个被初始化为错误状态。
在步骤860中,为了限缩4个包状态电路的搜寻范围,选择两个包状态电路如Address=0X所示,其中0X代表地址01和11。未被选择的包状态电路无关于存储在未被选择的包状态电路的状态值传送对应的输入信号到包状态电路相对应的输出。当一高逻辑的侦测信号DetI被施加到地址=00的包状态电路的输入(例如DetO=1),侦测信号被传送到地址=11的包状态电路的输入,以指示地址=0X的两个包状态电路都没有被初始化为错误状态,且因此指示其他两个地址=1X的至少一个包状态电路被初始化为错误状态。
在步骤870中,选择地址=10的一个包状态电路。当一高逻辑的侦测信号DetI被施加到地址=00的包状态电路的输入,侦测信号被传送到地址=11的包状态电路的输出(例如DetO=1),以指示地址=10的包状态电路未被初始化为错误状态,且因此指示地址=11的包状态电路可能被初始化为错误状态。
在步骤880中,选择地址=11的一个包状态电路。当一高逻辑的侦测信号DetI被施加到地址=00的包状态电路的输入,侦测信号被地址=11的包状态电路挡住,以指示地址=11的包状态电路被初始化为错误状态。
在步骤890中,第一清除信号TRC及第二清除信号TRC2被施加以清除地址=11的包状态电路,并在地址=11的包状态电路中存储第二状态,借此指示地址=11的包状态电路初始化的错误状态已经被处理,如双圆圈所示。因此,后续的周期将不会重新处理地址=11的包状态电路初始化的错误状态。
图9绘示使用图3所示的菊链持续计算具有第一状态的包状态电路数目的时序图。菊链包含两个串联的包状态电路310和320。包状态电路310具有一输入端L1及一输出端R1。侦测信号DET_IN施加到包状态电路310的输入端L1。包状态电路320具有一输入端L2及一输出端R2,包状态电路320的输入端L2经由一信号INTER耦接到包状态电路310的输出端R1,包状态电路320的输出端R2耦接到一输出侦测信号DET_OUT。
此时序图显示了在菊链中信号的高逻辑和低逻辑之间的信号过渡。图9的例子假设包状态电路310耦接到缓冲器结构中的一第一包,在第一包的至少一存储元件存储第一状态。并且包状态电路320耦接到缓冲器结构中的一第二包,第二包中的存储元件都没有存储第一状态。
高逻辑的信号被施加到选择输入端SEL1和SEL2以选择包状态电路310和320以使存储在包状态电路中第一闩锁器的包电平状态值可决定包状态电路中的通道闸是否可传送一输入信号到包状态电路的输出。在图9的例子中致能输入端FBIT_EN保持低逻辑。
如图9所示,时段901~904被一频率信号CLK的频率周期定义。举例来说,时段901和时段902在一第一频率周期内,时段901从第一频率周期的上升边缘开始到在第一频率周期内的下降边缘结束,而时段902从第一频率周期的下降边缘开始到第一频率周期的结束而结束。时段903延伸到第一频率周期之后的第二频率周期,而时段904延伸到第二频率周期之后的第三频率周期。
在时段901时,一高脉冲910被施加到重设信号RST_b,以重设包状态电路310和320中的第一闩锁器和第二闩锁器。因此,在时段901时,包状态电路310的第一闩锁器的输出端的信号FBYTE_LAT和第二闩锁器的输出端的信号LAR1为低逻辑。同样的,在时段901时,包状态电路320的第一闩锁器的输出端的信号FBYTE_LAT2和第二闩锁器的输出端的信号LAR2为低逻辑。
在时段902时,一高脉冲920被施加到信号LOAD导致包状态电路310初始化为错误状态,如信号FBYTE_LAT1的低逻辑所示。高脉冲920在低逻辑到高逻辑的过渡921之后也导致包状态电路320初始化为通过状态,如信号FBYTE_LAT2的低逻辑所示。由于高逻辑的选择输入SEL 2且包状态电路320中的第一闩锁器被初始化为高逻辑,所以信号PASS2从低逻辑到高逻辑的过渡922导通包状态电路320中的通道闸。
在时段903时,侦测信号DET_IN从低逻辑过渡到高逻辑930。由于包状态电路310被初始化为低逻辑的错误状态,包状态电路310中的通道闸被关闭且侦测信号不被传送到包状态电路320。因此,信号INTER(R1,L2)和DET_OUT(R2)保持在低逻辑以指示侦测到指示错误状态的包状态电路。
在时段904时,由于侦测信号DET_IN位于高逻辑且输出侦测信号DET_OUT位于低逻辑,所以指示第一状态包状态电路的计数FBCOUNT从0增加到1,如所示从十六进制数字00H到01H的过渡941。
在时段904时,由于输入端L1位于高逻辑如所示的信号LAR1的过渡943,一高脉冲942被施加到第一清除信号TRC以改变包状态电路310中的第二闩锁器的状态,并且由于输入端L2位于低逻辑如所示的信号LAR2没有改变而保持包状态电路320中的第二闩锁器的状态。
在时段904时,接续高脉冲942的一高脉冲944被施加到第二清除信号TRC_2,清除包状态电路310中的第一闩锁器的错误状态通过存储对应高逻辑的通过状态,如所示的信号FBYTE_LAT1过渡945。因此,信号PASS1从低逻辑到高逻辑的过渡946导通包状态电路310中的通道闸,并导致高逻辑的侦测信号947被传送到包状态电路310的输出端R1,再传送到包状态电路320的输出(948)。由于输出侦测信号DET_OUT位于高逻辑以指示菊链中所有初始化的错误状态的包状态电路都已经被处理,所以此流程结束。
图10绘示辨识在具有第一状态的一包内的如图1所描述的集成电路存储器中缓冲器结构中的存储元件一时序图。菊链包含两个串联的包状态电路310和320。包状态电路310具有一输入端L1及一输出端R1。侦测信号DET_IN施加到包状态电路310的输入端L1。包状态电路320具有一输入端L2及一输出端R2,包状态电路320的输入端L2经由一信号INTER耦接到包状态电路310的输出端R1,包状态电路320的输出端R2耦接到一输出侦测信号DET_OUT。
此时序图显示了在菊链中信号的高逻辑和低逻辑之间的信号过渡。图10的例子假设包状态电路310耦接到缓冲器结构中的一第一包,在第一包的三个存储元件的其中一个存储第一状态。并且包状态电路320耦接到缓冲器结构中的一第二包,在第二包中的四个存储元件的其中一个存储第一状态。
高逻辑的信号被施加到选择输入端SEL1和SEL2以选择包状态电路310和320以使存储在包状态电路中第一闩锁器的包电平状态值可决定包状态电路中的通道闸是否可传送一输入信号电平到包状态电路的输出。
在图10的例子中说明时段1001~1008。在时段1001时,菊链中的闩锁器被重设。在时段1002时,包状态电路310和320根据存储在存储元件的第一包和第二包的位电平状态值被初始化。在包含时段1003-1005的第一周期中处理包状态电路310。周期如第一周期和第二周期可一直重复直到菊链中所有被初始化为错误状态的包状态电路都已经被处理。
在时段1001时,一高脉冲1010被施加到重设信号RST_b,以重设包状态电路310和320中的第一闩锁器和第二闩锁器。因此,在时段1001时,包状态电路310的第一闩锁器的输出端的信号FBYTE_LAT和第二闩锁器的输出端的信号LAR1为低逻辑。同样的,在时段1001时,包状态电路320的第一闩锁器的输出端的信号FBYTE_LAT2和第二闩锁器的输出端的信号LAR2为低逻辑。
在时段1002时,一高脉冲1020被施加到信号LOAD导致包状态电路310和320初始化为错误状态,如信号FBYTE_LAT1和FBYTE_LAT2的低逻辑所示。因此信号PASS1和PASS2保持低逻辑,包状态电路310和320中的通道闸被关闭,且输出端R1和R2保持低逻辑。
在时段1003时,侦测信号DET_IN从低逻辑过渡到高逻辑1030。由于包状态电路310被初始化为低逻辑的错误状态,包状态电路310中的通道闸被关闭并挡住侦测信号,且包状态电路310中的晶体管248_1被导通以提供低逻辑到包状态电路310的输出端INTER(R1,L2)。由于包状态电路320被初始化为低逻辑的错误状态,包状态电路320中的通道闸被关闭并挡住包状态电路310的输出不管包状态电路310的输出是低逻辑或高逻辑,且包状态电路320中的晶体管248_2被导通以提供低逻辑到包状态电路320的输出端DET_OUT(R2)。因此,包状态电路320的输出端的信号DET_OUT(R2)保持在低逻辑以指示侦测到指示错误状态的包状态电路。
在时段1004时,由于侦测信号DET_IN位于高逻辑且输出侦测信号DET_OUT位于低逻辑,所以一高脉冲1041被施加到致能输入端FBIT_EN,且因此存储在存储元件包括指示第一状态的三个存储元件的第一包的位电平状态值经由一数据总线线DBUS[7:0]被复制到位电平状态线组FBIT[7:0],如所示从十六进制数字0H到3H的过渡1049。
在时段1005时,由于输入端L1位于高逻辑如所示的信号LAR1从低逻辑到高逻辑的过渡1053,一高脉冲1052被施加到第一清除信号TRC以改变包状态电路310中的第二闩锁器的状态,并且由于输入端L2位于低逻辑如所示的信号LAR2没有改变而保持包状态电路320中的第二闩锁器的状态。被施加到致能输入端FBIT_EN的高脉冲1041结束在时段1005的开始,且因此位电平状态线组FBIT[7:0]上的数据值被改变为低逻辑,如所示从十六进制数字3H到0H的过渡1059。
在时段1005时,接续高脉冲1052的一高脉冲1054被施加到第二清除信号TRC_2,清除包状态电路310中的第一闩锁器的错误状态,并通过被初始化的包状态电路310的错误状态已经被处理而存储包状态电路310的第二状态,如所示的信号FBYTE_LAT1过渡1055。因此,信号PASS1从低逻辑到高逻辑的过渡1056导通包状态电路310中的通道闸,并导致高逻辑的侦测信号1057被传送到包状态电路310的输出端R1。由于信号PASS2位于低逻辑电平,包状态电路320中的通道闸被关闭,且包状态电路320中的输出端R2保持低逻辑。
在时段1006时,高逻辑的侦测信号DET_TN被传送到包状态电路320中的输入端L2。由于包状态电路320被初始化为低逻辑的错误状态,包状态电路320中的通道闸被关闭且高逻辑的侦测信号不被传送到包状态电路320的输出。因此,包状态电路320的输出的信号DET_OUT(R2)保持在低逻辑以指示侦测到指示错误状态的包状态电路。
在时段1007时,由于侦测信号DET_IN位于高逻辑且输出侦测信号DET_OUT位于低逻辑,所以一高脉冲1071被施加到致能输入端FBIT_EN,且因此存储在存储元件包括存储第一状态的四个存储元件的第二包的位电平状态值经由一数据总线线DBUS2[7:0]被复制到位电平状态线组FBIT[7:0],如所示从十六进制数字0H到4H的过渡1079。
在时段1008时,由于输入端L2位于高逻辑如所示的信号LAR2从低逻辑到高逻辑的过渡1083,一高脉冲1082被施加到第一清除信号TRC以改变包状态电路320中的第二闩锁器的状态。被施加到致能输入端FBIT_EN的高脉冲1071结束在时段1008的开始,且因此位电平状态线组FBIT[7:0]上的数据值被改变为低逻辑,如所示从十六进制数字4H到0H的过渡1089。
在时段1008时,接续高脉冲1082的一高脉冲1084被施加到第二清除信号TRC_2,清除包状态电路320中的第一闩锁器的错误状态,并通过被初始化的包状态电路320的错误状态已经被处理而存储包状态电路310的第二状态,如所示的信号FBYTE_LAT2过渡1085。因此,信号PASS2从低逻辑到高逻辑的过渡1086导通包状态电路320中的通道闸,并导致高逻辑的侦测信号1088被传送到包状态电路320的输出端R2。由于输出侦测信号DET_OUT位于高逻辑以指示菊链中多个包状态路之中所有初始化为错误状态的包状态电路都已经被处理,所以此流程结束。
图11绘示使用如图3所示的菊链搜寻指示第一状态的包状态电路的一流程图。此时序图显示了在菊链中信号的在时段1101~1106之间高逻辑和低逻辑之间的信号过渡。图11的例子假设包状态电路310和320分别对应到通过状态和错误状态。且在图11的例子中致能输入FBIT_EN保持低逻辑。
在图11的例子中使用一二元搜寻。在二元搜寻中,指示第一状态的包状态电路可在第Log2N步被找到,其中N是菊链中的包状态电路的数目。虽然在图11的例子中,N=2,但是N可以大于2,例如32、64、128、256等等。
在时段1101、1102和1103时,一高逻辑的信号被施加到选择输入SEL1和SEL2以设定包状态电路310和320,以使存储在包状态电路中的第一闩锁器的包电平状态值可决定包状态电路中的通道闸是否可传送一输入信号电平到包状态电路的输出。
在后续时段中,选择输入SEL1和SEL2的信号电平在高逻辑和低罗之间改变,以使多个包状态电路中的一部分包状态电路被设定为响应于存储在部分包状态电路的状态值传送输入信号电平,而其他部分的包状态电路被设定为无关于存储在部分包状态电路的状态值通过其他部分的包状态电路传送信号电平。在这些部分执行搜寻指示第一状态的包状态电路。
在时段1101时,一高脉冲1110被施加到重设信号RST_b,以重设包状态电路310和320中的第一闩锁器和第二闩锁器。因此,在时段1101时,包状态电路310的第一闩锁器的输出端的信号FBYTE_LAT和第二闩锁器的输出端的信号LAR1为低逻辑。同样的,在时段1101时,包状态电路320的第一闩锁器的输出端的信号FBYTE_LAT2和第二闩锁器的输出端的信号LAR2为低逻辑。
在时段1002时,一高脉冲1120被施加到信号LOAD导致包状态电路310初始化为通过状态,如所示的信号FBYTE_LAT1从低逻辑到高逻辑的过渡1121。因此信号PASS1从低逻辑过渡到高逻辑1122。高脉冲1120导致包状态电路320初始化为错误状态,如所示的信号FBYTE_LAT2的低逻辑。因此,信号PASS2保持低逻辑。
在时段1103时,侦测信号DET_IN从低逻辑过渡到高逻辑1130。由于包状态电路310被初始化为高逻辑的通过状态,包状态电路310中的通道闸被倒通且侦测信号被传送到包状态电路310的输出。因此,包状态电路310的输出端的信号INTER(R1,L2)从低逻辑过渡到高逻辑1131。由于包状态电路320被初始化为低逻辑的错误状态,高逻辑的信号INTER(R1,L2)并未传送到输出侦测信号DET_OUT以指示至少一包状态电路存储一错误状态。
在时段1104时,开始搜寻指示错误状态的包状态电路。选择输入端SEL1保持高逻辑,而选择输入端SEL2的信号从高逻辑过渡到低逻辑1142选择地址=0H的包状态电路310。由于选择输入端SEL1位于高逻辑,所以信号PASS1响应于存储在包状态电路310的状态值过渡到高逻辑或低逻辑。因此包状态电路310中的通道闸可回应于存储在包状态电路的状态值传送一输入信号电平到包状态电路310的输出。
由于选择输入端SEL2位于低逻辑,所以信号PASS2从低逻辑过渡到高逻辑1143无关于存储在包状态电路320的状态值而包状态电路320中的通道闸。因此包状态电路320中的通道闸可无关于存储在包状态电路320的状态值传送一输入信号电平到包状态电路320的输出。包状态电路320的输入的INTER(R1,L2)的高逻辑1144被传送到包状态电路320的输出DET_OUT(R2)。信号DET_OUT(R2)的低逻辑指示地址0H的包状态电路310并未存储错误状态。
在时段1105时,继续搜寻指示错误状态的包状态电路。选择输入端SEL1的信号从高逻辑过渡到低逻辑1151,而选择输入端SEL2从高逻辑过渡到低逻辑1152以选择地址=1H的包状态电路320。由于选择输入端SEL1位于低逻辑,所以信号PASS1保持低逻辑,且包状态电路310的输出和包状态电路320的输入的信号INTER(R1,L2)保持高逻辑。
由于选择输入端SEL2位于高逻辑,所以信号PASS2响应于存储在包状态电路320的错误状态从高逻辑过渡到低逻辑1153。因此包状态电路320中的通道闸被挡住而不传送信号INTER(R1,L2)的高逻辑到包状态电路320的输出。信号DET_OUT(R2)从低逻辑过渡到高逻辑1154以指示地址1H的包状态电路320存储错误状态。
在时段1106时,由于输入端L1和L2为高逻辑一高脉冲1162被施加到第一清除信号TRC以改变包状态电路310和320中的第二闩锁器的状态,如所示的信号LAR1和LAR2从低逻辑到高逻辑的过渡1183a和1183b。
接续高脉冲1162的一高脉冲1164被施加到第二清除信号TRC_2以清除包状态电路320中的第一闩锁器,并通过被初始化的包状态电路320的错误状态已经被处理而存储包状态电路320的第二状态,如所示的信号FBYTE_LAT2过渡1185。因此,信号PASS2从低逻辑到高逻辑的过渡1186导通包状态电路320中的通道闸,并导致高逻辑的侦测信号1188被传送到包状态电路320的输出。由于输出侦测信号DET_OUT位于高逻辑以指示菊链中多个包状态路之中所有初始化为错误状态的包状态电路都已经被处理,所以此流程结束。
图12绘示一实施例的集成电路存储器的简化方块图。集成电路1200在基底电路基板上包含一存储器阵列1250以存储错误检查码的数据。
一列译码器1240耦接到多条字线,并沿着存储器阵列1250的列而设置。一缓冲器结构1260经由沿着存储器阵列1250的行设置的多条位线1255耦接到具有错误检查码的存储器阵列1250,用以从存储器阵列1250读取数据或写入数据。包状态电路1270的一菊链经由多条数据线1265耦接到缓冲器结构1260。一行译码器1280经由一总线线1275耦接到包状态电路的菊链1270。输入/输出电路1290经由一总线线1285耦接到行译码器1280。地址从控制逻辑1210提供到总线线1215上到行译码器1280和列译码器1240。输入/输出电路1290耦接到输入/输出数据路径。
缓冲器结构1260包含多个存储元件140-147以存储多个数据线的位电平状态值。存储器包含根据对应包的位电平状态值指示缓冲器结构中的存储元件的对应包的包电平状态值的逻辑。此逻辑包含多个包状态电路被设置在一菊链之中。包状态电路耦接到缓冲器结构中的对应包,并产生菊链的输出以指示侦测到第一状态的一包。在操作过程中,缓冲器结构1260从有错误检查码的存储器阵列1250读取数据,且包状态电路1270的菊链加载关于缓冲器结构中的错误位的信息。行译码器至少被用于输入/输出操作及搜寻指示一或多个错误位的一包状态电路。
存储器包含控制电路1210,用以执行决定菊链输出的周期,每一周期中若在此周期菊链输出指示侦测到具有第一状态的一包,则清除指示第一状态的包状态电路。控制电路重复这些周期直到输出指示没具有第一状态的包状态电路为止。在周期中控制电路持续计算指示第一状态的包状态电路。
输入/输出电路1290驱动数据到集成电路1200外部的目的地。输入/输出数据和控制信号经由数据总线线1205在输入/输出电路1290、控制电路1210和集成电路1200的输入/输出埠或者集成电路1200的内部或外部的其他数据源之间移动。例如一通用处理器、专用处理应用电路或者存储器阵列1250支持的提供系统上芯片功能的模块的组合。
在图12的例子中,控制电路1210使用一偏压设置状态机控制由偏压设置供应电压方块1220产生或提供的供应电压,例如读取或编程电压。控制电路1210耦接到缓冲器结构1260。缓冲器结构1260经由一数据总线线1235耦接到ECC逻辑1230,又耦接到具有错误检查码的存储器阵列1250。控制电路1210包含执行在数据页上的存储器阵列经由缓冲器结构到输入/输出路径之间的移动期间的至少一页的读取和写入操作的逻辑处理。
控制电路1210可使用现有的一专用逻辑电路来实施。在另一实施立中,控制逻辑包含在同一集成电路上实施用以执行一编程操作的以控制装置的操作的一通用处理器。在又一实施例中,此控制逻辑可以使用专用逻辑电路和通用处理器的组合来实施。
虽然本发明参照较佳实施例和例子揭露如上,然应当理解的是这些例子是用来说明而非用以限定本发明。本领域普通技术人员容易想到可以预期的变型和组合,这些变型和组合是在不脱离本发明和以下权利要求的精神和范围内。
Claims (8)
1.一种集成电路存储器,其特征在于,包含:
一存储器阵列,包含多条数据线;
一缓冲器结构,耦接到该些数据线,该缓冲器结构包含多个存储元件用以对该些数据线存储多个位电平状态值;以及
一逻辑,用以根据该缓冲器结构中的该些存储元件的对应的多个包的多个位的该些位电平状态值指示对应的该些包的多个包电平状态值;
其中该些位电平状态值和该些包位状态值包含一第一状态;
其中该逻辑包含:多个包状态电路,被设置在一菊链中,用以产生该菊链的一输出以指示侦测到具有该第一状态的一包,该多个包状态电路中的该包状态电路包含:
一第一闩锁器,用以根据存储在该缓冲器结构中的该些存储元件的该包的该位电平状态值存储该包的该包电平状态值;
一通道闸,连接到该包状态电路的一输入端及一输出端,并响应于存储在该包状态电路的该第一闩锁器的该包电平状态值及该包状态电路的一选择输入端而传送该包状态电路的该输入端的一输入信号电平到该包状态电路的该输出端;以及
一第二闩锁器,耦接到该第一闩锁器,该第二闩锁器在存储该第一状态的该第一闩锁器保持该第一状态时具有该第一状态,及在存储该第一状态的该第一闩锁器被清除时具有第二状态,其中该第一状态及该第二状态响应于该包状态电路的该输入端的该输入信号电平而设;
一电路,用以设定使该选择输入端是一第一信号电平时,该通道闸回应于存储在该包状态电路中的该包电平状态值而传送该输入信号电平到该输出端,并在该选择输入端是一第二信号电平时,该通道闸无关于存储在该包状态电路中的该包电平状态值而传送该输入信号电平到该输出端;以及
一电路,用以响应于侦测到至少一位具有该第一状态的包复制存储在该缓冲器结构中的该包的该位电平状态值到一位电平状态线组。
2.根据权利要求1所述的集成电路存储器,
其中该逻辑还包含:
一控制电路,用以执行决定该菊链的该输出的多个周期,在每一周期中若在该周期的该输出指示侦测到具有该第一状态的该包,则清除指示该第一状态的该包状态电路,该控制电路还用以重复该些周期直到该输出指示没有具有该第一状态的该包状态电路为止;
其中每一周期还包含:
如果在该周期中该菊链的该输出指示侦测到具有该第一状态的该包且在清除掉指示该第一状态的该包状态电路之前,则搜寻具有该第一状态的该包状态电路;
设定该菊链中的一部分的该些包状态电路响应于存储在该部分的该包状态电路的该些包电平状态值而传送多个输入信号电平;
设定该菊链中的其他部分的该些包状态电路无关于存储在该菊链中该其他部分的该包状态电路的该些包电平状态值而传送该信号电平;
在该部分的该些包状态电路内搜寻具有该第一状态的该些包状态电路;以及
持续计算具有该第一状态的该包状态电路。
3.根据权利要求1所述的集成电路存储器,其中该逻辑还响应于侦测到该至少一位的具有该第一状态的该包以计算该缓冲器结构中的该存储元件内具有该第一状态的该包,其中该逻辑更响应于侦测到该至少一位的具有该第一状态的该包以辨识该缓冲器结构中的该存储元件内具有该第一状态的该包。
4.根据权利要求1所述的集成电路存储器,其中该逻辑执行一编程操作,该编程操作包含一编程脉冲和一编程验证的一编程周期,且如果该缓冲器结构中具有该第一状态的该存储元件的一数目超过一重试临界值,该逻辑更执行另一编程操作。
5.根据权利要求1所述的集成电路存储器,其特征在于,还包含:
一电路,用以初始化对应的该包的该包状态电路,并在存储在对应的该包的该至少一存储元件的该位电平状态值为该第一状态时,存储该第一状态到该包状态电路,否则存储不同于该第一状态的该第二状态到该包状态电路。
6.一种操作一集成电路存储器的方法,其特征在于,该集成电路存储包含设置在一菊链中的多个包状态电路,该些包状态电路耦接到一缓冲器结构中的多个存储元件的对应的多个包,该方法包含:
初始化该包对应的该包状态电路,并在存储在对应的该包的至少一存储元件的位电平状态值为第一状态时,存储该第一状态到该包状态电路,否则存储不同于该第一状态的第二状态到该包状态电路;
执行决定该菊链的一输出的多个周期,在每一周期中若在该周期的该输出指示侦测到具有一第一状态的该包,则清除指示该第一状态的该包状态电路;
重复该些周期直到该输出指示没有具有该第一状态的该包状态电路为止;以及
在该周期中持续计算指示该第一状态的该包状态电路。
7.根据权利要求6所述的操作一集成电路存储器的方法,其特征在于,还包含:
响应于侦测到至少一位的具有该第一状态的该包而计算该缓冲器结构中的该存储元件内具有该第一状态的该包;以及响应于侦测到该至少一位的具有该第一状态的该包而辨识该缓冲器结构中的该存储元件内具有该第一状态的该包。
8.根据权利要求6所述的操作一集成电路存储器的方法,其特征在于,还包含:
执行一编程操作,该编程操作包含一编程脉冲和一编程验证的一编程周期,且如果该缓冲器结构中具有该第一状态的该存储元件的一数目超过一重试临界值,还执行一另一编程操作;
其中每一周期还包含:
如果在该周期中该菊链的该输出指示侦测到具有该第一状态的该包且在清除掉指示该第一状态的该包状态电路之前,则搜寻具有该第一状态的该包状态电路;
设定该菊链中的一部分的该些包状态电路响应于存储在该部分的该包状态电路的该些包电平状态值而传送多个输入信号电平;
设定该菊链中的其他部分的该些包状态电路无关于存储在该菊链中该其他部分的该包状态电路的该些包电平状态值而传送该信号电平;以及
在该部分的该些包状态电路内搜寻具有该第一状态的该些包状态电路。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/486,963 US9478314B2 (en) | 2014-09-15 | 2014-09-15 | Memory utilizing bundle-level status values and bundle status circuits |
US14/486,963 | 2014-09-15 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105810248A CN105810248A (zh) | 2016-07-27 |
CN105810248B true CN105810248B (zh) | 2019-11-05 |
Family
ID=55454532
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410840590.9A Active CN105810248B (zh) | 2014-09-15 | 2014-12-30 | 使用包电平状态值和包状态电路的存储器 |
Country Status (3)
Country | Link |
---|---|
US (1) | US9478314B2 (zh) |
CN (1) | CN105810248B (zh) |
TW (1) | TWI555027B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102634421B1 (ko) * | 2016-11-21 | 2024-02-06 | 에스케이하이닉스 주식회사 | 페일 비트 카운터 및 이를 포함하는 반도체 메모리 장치 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6701480B1 (en) * | 2000-03-08 | 2004-03-02 | Rockwell Automation Technologies, Inc. | System and method for providing error check and correction in memory systems |
US7257763B1 (en) * | 2001-08-03 | 2007-08-14 | Netlogic Microsystems, Inc. | Content addressable memory with error signaling |
KR100543447B1 (ko) * | 2003-04-03 | 2006-01-23 | 삼성전자주식회사 | 에러정정기능을 가진 플래쉬메모리장치 |
KR100562134B1 (ko) | 2004-01-09 | 2006-03-21 | 주식회사 하이닉스반도체 | 플래시 메모리 소자의 페이지 버퍼 |
KR100923820B1 (ko) | 2007-10-12 | 2009-10-27 | 주식회사 하이닉스반도체 | 페이지 버퍼, 이를 구비하는 메모리 소자 및 그 동작 방법 |
TWI404071B (zh) * | 2009-06-23 | 2013-08-01 | Phison Electronics Corp | 能識別快閃記憶體中錯誤資料的控制電路及儲存系統與方法 |
US8438344B2 (en) * | 2010-03-12 | 2013-05-07 | Texas Instruments Incorporated | Low overhead and timing improved architecture for performing error checking and correction for memories and buses in system-on-chips, and other circuits, systems and processes |
JP5542746B2 (ja) * | 2011-06-08 | 2014-07-09 | 株式会社東芝 | 半導体記憶装置 |
US9548135B2 (en) | 2013-03-11 | 2017-01-17 | Macronix International Co., Ltd. | Method and apparatus for determining status element total with sequentially coupled counting status circuits |
-
2014
- 2014-09-15 US US14/486,963 patent/US9478314B2/en active Active
- 2014-12-22 TW TW103144714A patent/TWI555027B/zh active
- 2014-12-30 CN CN201410840590.9A patent/CN105810248B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
TWI555027B (zh) | 2016-10-21 |
US9478314B2 (en) | 2016-10-25 |
TW201611019A (zh) | 2016-03-16 |
US20160077153A1 (en) | 2016-03-17 |
CN105810248A (zh) | 2016-07-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100399365B1 (ko) | 페일 비트 검출 스킴을 구비한 불휘발성 반도체 메모리장치 및 그것의 페일 비트 카운트 방법 | |
CN100474452C (zh) | 用于非易失存储器的高效数据验证操作的方法和结构 | |
US7428180B2 (en) | Semiconductor memory devices and methods of testing for failed bits of semiconductor memory devices | |
KR20190029056A (ko) | 불휘발성 메모리 장치의 동작 방법 및 메모리 컨트롤러의 동작 방법 | |
US9691485B1 (en) | Storage system and method for marginal write-abort detection using a memory parameter change | |
US7406576B2 (en) | Semiconductor memory device | |
US9330783B1 (en) | Identifying word-line-to-substrate and word-line-to-word-line short-circuit events in a memory block | |
CN109427396A (zh) | 在非易失性存储器中确定快速编程字线 | |
US11113129B2 (en) | Real time block failure analysis for a memory sub-system | |
CN101763904A (zh) | 非易失性存储装置及其操作方法 | |
WO2003100791A1 (en) | Increasing the effectiveness of error correction codes and operating multi-level memory systems by using information about the quality of the stored data | |
JP6190462B2 (ja) | 半導体記憶装置 | |
US6981188B2 (en) | Non-volatile memory device with self test | |
US9342401B2 (en) | Selective in-situ retouching of data in nonvolatile memory | |
CN113448765A (zh) | 具有对存储元件的写入故障保护的非易失性存储器阵列 | |
US20130159798A1 (en) | Non-volatile memory device and operating method thereof | |
KR20180061383A (ko) | 기록 카운트에 기초하여 기록 파라미터를 조정하기 위한 장치 및 방법 | |
CN110517714A (zh) | 存储装置和存储装置的操作方法 | |
US20220122677A1 (en) | Programming A Memory Device | |
US8611165B2 (en) | Non-volatile memory device and electronic apparatus | |
CN109716439A (zh) | 用于以电流积分感测产生概率信息的设备及方法 | |
CN105810248B (zh) | 使用包电平状态值和包状态电路的存储器 | |
CN103593252B (zh) | 具有动态错误侦测及更正的存储器 | |
CN110389716A (zh) | 数据存储装置及应用其的预防数据错误方法 | |
CN109493911A (zh) | 存储器控制器的操作方法、以及存储器件及其操作方法 |
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 |