CN111752768B - 存储器装置及其错误检测方法 - Google Patents
存储器装置及其错误检测方法 Download PDFInfo
- Publication number
- CN111752768B CN111752768B CN201910250297.XA CN201910250297A CN111752768B CN 111752768 B CN111752768 B CN 111752768B CN 201910250297 A CN201910250297 A CN 201910250297A CN 111752768 B CN111752768 B CN 111752768B
- Authority
- CN
- China
- Prior art keywords
- memory
- data
- target
- memory array
- target memory
- 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
- 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/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/2053—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
- G06F11/2056—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring
-
- 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/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/2053—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
- G06F11/2094—Redundant storage or storage space
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Dram (AREA)
Abstract
本发明提供一种存储器装置,包括具有至少一存储器组的存储器阵列,其中至少一存储器组包括目标存储器阵列以及克隆存储器阵列。克隆存储器阵列对应于目标存储器阵列,且用以存储与目标存储器阵列中的数据相同的数据。当应用于目标存储器阵列的命令执行操作时,该命令同样应用于克隆存储器阵列。一种错误检测方法亦被提出,其适用于具有至少一个存储器组的存储器装置,且所述存储器组包括目标存储器阵列和克隆存储器阵列。
Description
技术领域
本发明涉及一种存储器装置及用于检测存储器装置上的错误或故障的错误检测方法。
背景技术
存储器装置,尤其是随机存取存储器(Random Access Memory,RAM)及动态随机存取存储器(Dynamic Random Access Memory,DRAM)的装置应用于广泛的用途,例如:机动车辆、电脑、数码相机、智能手机等。对于高可靠性系统,它需要高度可靠的存储器装置,高度可靠的存储器装置可以检测存储器装置可能发生的错误或故障。一般而言,错误更正码(Error Correction Code,ECC)用于检测错误比特并纠正检测到的错误比特。然而,ECC不能妥善地处理可能由多个故障引起的多错误比特,例如:字线故障(Word Line Failure)、单元到单元故障(Cell-to-cell Failure)、集总颗粒故障(Lumped Particle Failure)、位线到位线短路(Bitline-to-bitline Short)等。在这种情况下,ECC无法更正错误或故障,且系统无法识别故障的存在。结果,降低了存储器装置的可靠性。
随着存储器装置的普及,取得一种具有可靠性的错误检测方案从而提高存储器装置的性能及可靠性有其必要性。
发明内容
本发明介绍了一种存储器装置及用于检测存储器装置上的错误或故障的错误检测方法。
本发明提供一种存储器装置,包括具有至少一存储器组的存储器阵列,其中至少一存储器组包括目标存储器阵列及对应于目标存储器阵列的克隆存储器阵列。目标存储器阵列用以存储数据,且克隆存储器阵列被用以存储与目标存储器阵列的数据相同的数据。应用于目标存储器阵列以执行操作的命令应用于克隆存储器阵列。
本发明提供一种错误检测方法,适用于具有至少一存储器组的存储器装置,其中存储器组包括目标存储器阵列和克隆存储器阵列。读取错误检测包括读取目标存储器阵列的目标存储器单元以获得目标存储器数据的步骤:读取克隆存储器阵列的克隆存储器单元以获得克隆存储器数据,其中克隆存储器阵列的克隆存储器单元对应于目标存储器阵列的目标存储器单元;将目标存储器数据与克隆存储器数据进行比较以输出比较信号;以及依据比较信号判断目标存储器数据是否包括错误。
基于上述,克隆存储器阵列用以存储与目标存储器阵列中的数据相同的数据,故错误检测方法可以比较存储于目标存储器阵列中的数据与存储于克隆存储器阵列中的数据,以检测存储器装置中的错误。通过这种方式,改善了存储于存储器装置中的数据的可靠性。
为让本发明的上述特征和优点能更明显易懂,下文特举实施例,并配合所附附图作详细说明如下。
附图说明
本发明包括附图以提供对本发明的进一步理解,且附图被并入本说明书中并构成本说明书的一部分。附图示出了本发明的实施例,并与本说明书的揭示内容一起用以解释本发明的原理。
图1是示出根据本发明实施例的存储器装置的示意图。
图2A至图3D是示出根据本发明实施例的具有目标存储器阵列及克隆存储器阵列的存储器装置的示意图。
图4A是示出根据本发明实施例的具有目标存储器阵列及位于不同存储器组中的克隆存储器阵列的存储器装置的示意图。
图4B是示出根据本发明实施例的具有位于同一存储器组中的目标存储器阵列及克隆存储器阵列的存储器装置的示意图。
图5A至图5B是示出根据本发明实施例的当禁用数据总线反转算法时存储器装置中的信号的波形图。
图6A至图6B是示出根据本发明实施例的当启用数据总线反转算法时存储器装置中的信号的波形图。
图7是示出根据本发明实施例的错误检测方法的流程图。
【符号说明】
112:存储器组i
1121:克隆存储器阵列
114:存储器组j
116:存储器组k
118:存储器组1
120:比较器
130:周边存储器电路
140:存储器控制器
150:模块寄存器
C、C1、C2、C3、C4:克隆存储器阵列
D1:目标存储器数据
D2:克隆存储器数据
DQ、DQ1:数据输出信号
DM、DM1:数据遮罩信号
210a、210b、210c、310a、310b、310c、310d:存储器阵列
212a~218a、212b~218b、212c~218c、312a~318a、312b~318b、312c~318c、312d~318d、412a、414a、412b:存储器组
420a、420b:比较器
430a、430b:周边存储器电路
CLK:时脉信号
DQS:数据选通信号
P51、P52、P60、P61、P62:脉冲信号
S710~S740:错误检测方法的流程
T、T1、T2、T3、T4:目标存储器阵列
具体实施方式
应当理解,在不脱离本发明的范围的情况下,可以利用其他实施例,并且可以进行结构改变。还有,应该理解,这里使用的措辞及术语是以描述为目的,不应该被认为是限制性的。本文中“包括”、“包含”或“具有”以及其变化的使用旨在涵盖其后列出的项目、其等同物以及其附加项目。除非另有限制,否则本文中术语“连接”、“耦接”、“配置”以及其变化被广泛使用,并且包括直接及间接连接、耦接以及配置。
请参考图1,存储器装置100包括存储器阵列110、比较器120、周边存储器电路130、存储器控制器140以及模块寄存器150。存储器阵列110包括存储器组112、114、116以及118(也分别称为存储器组i、存储器组j、存储器组k以及存储器组1)。存储器组112、114、116以及118中的至少一个包括克隆存储器阵列1121,其对应于位于存储器阵列110中的目标存储器阵列(未示出)。克隆存储器阵列1121存储与存储在目标存储器阵列中的数据相同的数据。如图1所示,克隆存储器阵列1121位于存储器阵列110的存储器组112(存储器组i)中,但本发明并不限于此。克隆存储器阵列1121可以位于存储器阵列110的任何存储器组112、114、116以及118中。
在本发明的实施例中,存储器装置100是动态随机存取存储器(DRAM)装置,且存储器装置100与联合电子装置工程委员会(Joint Electron Device Engineering Council,JEDEC)标准兼容。
比较器120耦接于存储器阵列110,并且用以比较从存储器阵列110读取的数据。举例而言,比较器120可比较目标存储器数据D1及克隆存储器数据D2,其中比较器120从目标存储器阵列读取目标存储器数据D1,并且比较器120从克隆存储器阵列读取克隆存储器数据D2。如图1所示,比较器120是分离电路,但比较器120也可以结合到存储器装置100的其他电路中。比较器120将数据遮罩信号DM1及数据输出信号DQ1输出到周边存储器电路130。
数据遮罩信号DM1可指示目标存储器数据D1是否与克隆存储器数据D2相同,且数据输出信号DQ1可以是目标存储器数据D1,或者可以与目标存储器数据D1相关。目标存储器数据D1及克隆存储器数据D2是N比特的数据,其中N例如是8、16、32、64的整数。数据D1及D2可以是利用错误更正码(ECC)操作执行的数据,或者是直接从存储器阵列110读取的数据。
周边存储器电路130耦接于比较器120,以从比较器120接收数据遮罩信号DM1及数据输出信号DQ1。周边存储器电路130可将数据遮罩信号DM及数据输出信号DQ输出到存储器控制器140。数据遮罩信号DM及数据输出信号DQ分别与数据遮罩信号DM1及数据输出信号DQ1相同或相关。
对于存储器装置100,周边存储器电路130包括其他协同操作所需要的电路。例如:周边存储器电路130可以包括存储器装置100的列与行解码器(Row and Column Decoders)(未示出)、位线预充电电路(Bit-line Pre-charge Circuits)(未示出)、感测放大器(Sense Amplifiers)(未示出)、时序控制器(timing controller)(未示出)以及读写电路(Read-write Circuit)(未示出)。这些电路对于在存储器装置100上执行操作是其必要性,且本领域技术人员可清楚地理解这些电路的功能,故在下文中省略关于这些电路的详细描述。
在本发明的实施例中,数据遮罩信号DM被发送到存储器装置100的数据遮罩脚位(未示出),并且数据输出信号DQ被输出到存储器装置100的数据输出脚位(未示出)。在另一实施例中,数据遮罩信号DM及数据输出信号DQ被传输到附加脚位,而不是被传输到存储器装置100的数据遮罩脚位及数据输出脚位。
存储器控制器140耦接于周边存储器电路130,以从周边存储器电路130接收数据遮罩信号DM及数据输出信号DQ。基于接收的数据遮罩信号DM及数据输出信号DQ,控制器140可以判断存储于存储器阵列110中的目标存储器数据D1是否包含错误。存储器控制器140还用以通过命令控制存储器装置100的操作。
模块寄存器150用以设置存储器装置100中的目标存储器阵列及克隆存储器阵列的位置和大小。目标存储器阵列及克隆存储器阵列位于存储器装置100的同一存储器组或不同存储器组中。此外,目标存储器阵列及克隆存储器阵列的大小是依据设计需要修改的。模块寄存器150也可选择存储器组地址及列地址,以存取目标存储器阵列及克隆存储器阵列中的单元。模块寄存器150也可以禁用(disable)克隆存储器阵列的功能,或者禁用克隆存储器阵列及目标存储器阵列的功能。通过这种方式,存储器阵列110可以用作传统的存储器阵列。除了模块寄存器150之外,例如选项熔丝(Option Fuse)或内部布线(InternalWiring)的选择性电路可以用以选择目标存储器阵列及克隆存储器阵列。
请参考图2A至图2C,其示出了关于包括目标存储器阵列及位于不同存储器组中的克隆存储器阵列的存储器阵列的示范性实施例。请参考图2A,存储器阵列210a包括目标存储器阵列T1、T2及克隆存储器阵列C1、C2,其中目标存储器阵列T1、T2及克隆存储器阵列位于不同的存储器组中。
具体而言,存储器阵列210a包括位于存储器组212a中的第一目标存储器阵列T1、位于存储器组214a中的第一克隆存储器阵列C1、位于存储器组216a中的第二目标存储器阵列T2、以及位于存储器组218a中的第二克隆存储器阵列C2。第一克隆存储器阵列C1具有与第一目标存储器阵列T1相同的大小,并且存储与第一目标存储器阵列T1相同的数据。第二克隆存储器阵列C2具有与第二目标存储器阵列T2相同的大小,并且存储与第二目标存储器阵列T2相同的数据。图1中所示的模块寄存器150控制克隆存储器阵列C1、C2及目标存储器阵列T1、T2的位置、大小及存取地址。在图2A中,克隆存储器阵列C1及C2占有50%的存储器组212a至218a。
请参考图2B,存储器阵列210b包括位于存储器组212b中的目标存储器阵列T1及位于存储器组214b中的克隆存储器阵列C1。克隆存储器阵列C1具有与目标存储器阵列T1相同的大小,并且存储与目标存储器阵列T1相同的数据。图2A中所示的存储器阵列210a与图2B中所示的存储器阵列210b之间的区别在于存储器阵列210b包括存储器组216b及218b,其中存储器组216b及218b为一般存储器组。换言之,一般存储器组216b及218b不包括任何目标存储器阵列或克隆存储器阵列。在图2B中,克隆存储器阵列C1占有25%的存储器组212b至218b。
请参考图2C,存储器阵列210c包括存储器组212c、214c、216c、218c、位于存储器组212c中的目标存储器阵列T1及位于存储器组214c中的克隆存储器阵列C1。图2C中所示的存储器阵列210c与图2B中的存储器阵列210b之间的区别在于,图2B中的克隆存储器阵列及目标存储器阵列的大小与存储器组的大小相同,而图2C中的克隆存储器阵列及目标存储器阵列的大小小于存储器组的大小。存储器组212c包括目标存储器阵列T1及一般存储器阵列,存储器组214c包括克隆存储器阵列C1及一般存储器阵列。克隆存储器阵列C1占有12.55%的存储器组212c至218c。
图2A至图2C示出了克隆存储器阵列具有50%、25%及12.5%的实施例。然而,本发明不限于此,并且可以根据设计需要调整克隆存储器阵列与总存储器阵列的比率。
请参考图3A至图3D,其示出了关于包括目标存储器阵列及位于同一存储器组中的克隆存储器阵列的存储器阵列的示范性实施例。请参考图3A,存储器阵列310a包括存储器组312a、314a、316a以及318a,其中存储器组312a、314a、316a以及318a中的每一个包括目标存储器阵列及对应于目标存储器阵列的克隆存储器阵列。具体而言,存储器组312a包括目标存储器阵列T1及与目标存储器阵列T1对应的克隆存储器阵列C1。存储器组314a包括目标存储器阵列T2及对应于目标存储器阵列T2的克隆存储器阵列C2。存储器组316a包括目标存储器阵列T3及对应于目标存储器阵列T3的克隆存储器阵列C3,以及存储器组318a包括目标存储器阵列T4及对应于目标存储器阵列T4的克隆存储器阵列C4。在图3A所示的实施例中,克隆存储器阵列C1~C4占有50%的存储器组312a至318a。
请参考图3B,存储器阵列310b包括存储器组312b、314b、316b以及318b,其中存储器组312b及316b中的每一个包括目标存储器阵列及对应于目标存储器阵列的克隆存储器阵列。存储器组314b及318b仅包括一般存储器阵列。存储器组312b包括目标存储器阵列T1及与目标存储器阵列T1对应的克隆存储器阵列C1。存储器组316a包括目标存储器阵列T3及与目标存储器阵列T3相对应的克隆存储器阵列C3。在图3B所示的实施例中,克隆存储器阵列C1及C3占有25%的存储器组312b至318b。
请参考图3C,存储器阵列310c包括存储器组312c、314c、316c以及318c,其中存储器组312c包括目标存储器阵列T1及对应于目标存储器阵列T1的克隆存储器阵列C1。存储器组314c、316c以及318c仅包括一般存储器阵列。在图3C所示的实施例中,克隆存储器阵列C1占有12.5%的存储器组312c至318c。
请参考图3D,存储器阵列310d包括存储器组312d、314d、316d以及318d,其中存储器组312d包括目标存储器阵列T1、克隆存储器阵列C1以及一般存储器阵列。存储器组314d、316d以及318d仅包括一般存储器阵列。在图3D所示的实施例中,克隆存储器阵列C1占有8.33%的存储器组312d至318d。
请参考图4A,存储器装置400a包括存储器组412a及存储器组414a,其中存储器组412a包括目标存储器阵列T,存储器组414a包括克隆存储器阵列C。克隆存储器阵列C具有与目标存储器阵列T相同的大小,并且存储与目标存储器阵列T相同的数据。
存储器装置400a还包括比较器420a及周边存储器电路430a。比较器420a用以比较数据D1及D2以输出数据遮罩信号DM1及数据输出信号DQ1。数据D1及D2可以是利用EEC操作执行的数据,或者是直接从目标存储器阵列T及克隆存储器阵列C读取的数据。周边存储器电路430a耦接于比较器420a,并用以依据接收的数据遮罩信号DM1及数据输出信号DQ1输出数据遮罩信号DM及数据输出信号DQ。
在存储器装置400a的操作中,如果命令被施加在存储器组412a中的目标存储器阵列T上,则相同的命令也被应用于存储器组414a的克隆存储器阵列。
例如,当存储器装置400a接收到用于将数据写入目标存储器阵列T的触发命令及写入命令时,两个存储器组412a及414a都被启用(enable)。目标存储器阵列T的所选择的目标单元及克隆存储器阵列C的对应的克隆单元同时被触发,这样,数据同时被写入目标存储器阵列T的目标单元及克隆存储器阵列C的对应的克隆单元。
如果将触发命令及写入命令应用于在与目标存储器阵列T不同的一般存储器阵列上写入数据,则仅仅启用包含所选择的一般存储器阵列的存储器组。因此,存储器数据仅仅被写入一般存储器阵列。
在另一实施例中,当存储器装置400a接收到存储在目标存储器阵列T的目标单元中的读取数据的读取命令时,存储器组412a及414a皆被启用,并且目标存储器阵列T中的所选择的目标单元及克隆存储器阵列C中的对应的克隆单元同时被触发。读取命令被应用于目标单元及对应的克隆单元,以获得数据D1及D2。利用ECC操作,可以执行数据D1及D2。
数据D1及D2(有或没有ECC操作)被输出到比较器420a,且比较器420a比较数据D1及D2,以判断数据D1是否与数据D2相同。如果数据D1及D2相同,则比较器420a将数据遮罩信号DM1设置为预设电压(例如,接地电压),以指示存储在目标存储器阵列T及克隆存储器阵列C中的数据中没有错误。如果数据D1及D2不同,则比较器420a在数据遮罩信号上输出脉冲信号,以指示存储在目标存储器阵列T及克隆存储器阵列C中的数据存在错误。因此,数据遮罩信号可用于确定读取数据中是否存在错误。
表1及表2示出了通过比较从存储器组<i>的目标存储器阵列中读取的目标数据及从存储器组<j>的对应的克隆存储器阵列中读取的克隆数据的错误检测的实施例。目标数据的每个数据比特将与克隆数据的对应的比特进行比较。例如,将目标数据的Data0与对应的克隆数据的Data0进行比较,将目标数据的Data1与对应的克隆数据的Data1进行比较,并依此类推。表1及表2中示出了128比特的目标数据及克隆数据,但本发明不限制数据为任何特定的比特数。
当目标数据与对应的克隆数据相同时,数据遮罩信号DM输出第一逻辑值(例如,0),第一逻辑值用于指示目标数据及克隆数据中没有错误。当目标数据与对应的克隆数据不同时,数据遮罩信号DM输出第二逻辑值(例如,1),用于指示目标数据及克隆数据中存在错误。
【表1】
【表2】
请参考图4B,存储器装置400b包括存储器组412b、比较器420b以及周边存储器电路430b,其中存储器组412b包括目标存储器阵列T及对应于目标存储器阵列T的克隆存储器阵列C。换言之,目标存储器阵列T及克隆存储器阵列C皆位于同一存储器组412b中。图4B中所示的比较器420b及周边存储器电路430b类似于图4A中所示的比较器420a和周边存储器电路430a,因此,在下文中省略关于比较器420b及周边存储器电路430b的详细描述。
在操作中,当触发命令及写入命令被应用于存储器组412b的目标存储器阵列T时,目标存储器阵列T及克隆存储器阵列C皆被启用。目标存储器阵列T的所选择的目标单元及克隆存储器阵列C所对应的克隆单元同时被触发。这样,要写入的数据被写入目标存储器阵列T所选择的目标单元及克隆存储器阵列C的对应的克隆单元。
如果将触发命令及写入命令应用于与目标存储器阵列T不同的一般存储器阵列上的写入数据,则不触发克隆存储器阵列C,并且一般存储器阵列的写入命令不会应用于另一个存储器阵列。
在另一实施例中,当存储器装置400b接收存储在目标存储器阵列T中的所选择的目标单元中的读取数据的读取命令时,目标存储器阵列T中的所选择的目标单元及克隆存储器阵列C中的对应的克隆单元同时被触发。读取命令被应用于目标单元及对应的克隆单元,以获得数据D1和D2。数据D1及D2(有或没有ECC操作)输出到比较器420b,比较器420b比较数据D1及D2,以确定存储在目标存储器阵列T及克隆存储器阵列C中的数据是否存在错误。
在本发明的一些实施例中,可以在存储器装置中启用数据总线反转(DBI)算法,以便降低存储器装置的功耗。DBI算法用以基于来自先前发送的数据字元(Data Word)的当前数据字元的转换次数,来判定当前数据字元是否要被反转。通常地,如果来自先前发送的数据字元的当前数据字元的转换次数大于或等于当前数据的一半的比特数,则当前数据字元被反转。例如,如果数据字元是8比特数据,则当来自先前发送的数据字元的当前数据字元的转换次数大于或等于4时,当前数据字元将被反转。在DRAM存储器装置中,数据遮罩信号用于指示数据字元是否被反转。特别是,当数据遮罩信号具有逻辑值“1”时,则数据字元被反转,而当数据遮罩信号具有逻辑值“0”时,则数据字元不被反转。
图5A及图5B示出了当禁用DBI算法时存储器装置中的信号波形。所示信号包括时脉信号CLK、数据选通信号DQS、数据输出信号DQ以及数据遮罩信号DM。当禁用DBI算法时,仅数据遮罩信号DM可用于确定从目标存储器阵列读取的数据是否存在错误。
如图5A所示,如果存储的数据中没有错误,则数据遮罩信号DM以预设电压(例如,接地电压电平或逻辑值“0”)输出。如图5B所示,当在存储的数据中检测到错误时,在数据遮罩信号DM中产生脉冲信号。在数据遮罩信号DM上产生的脉冲信号P51及P52表示从目标存储器阵列读取的数据是错误的。读取数据的错误数据字元可以根据脉冲信号P51及P52的位置来确定。
图6A至图6B示出了当启用DBI算法时存储器装置中的信号波形。类似于图5A及图5B,所示信号包括时脉信号CLK、数据选通信号DQS、数据输出信号DQ以及数据遮罩信号DM。
由于数据遮罩信号DM还用于通过DRAM装置中的DBI算法指示反转的数据字元,故当启用DBI算法时,仅数据遮罩信号DM是不足以检测存储在目标存储器阵列中的数据的错误。请参考图6A,即使读取数据中没有错误,数据遮罩信号DM中也有两个脉冲信号P60。这些脉冲信号仅仅指示通过DBI算法反转对应于这些脉冲信号的数据字元。
当在存储器装置中启用DBI算法时,数据遮罩信号DM及数据输出信号DQ皆用于检测存储在目标存储器阵列中的数据的错误。当在数据遮罩信号DM中产生脉冲信号时,判断对应于该脉冲信号的当前数据字元,并计算具有当前数据字元的预设逻辑值(例如,逻辑值“1”)的比特数量。然后将具有预设逻辑值的比特数量与阈值(例如,数据总比特数量的一半)进行比较,以确定当前数据字元是否具有错误。例如,如果具有预设逻辑值的比特数量大于或等于阈值,则将当前数据字元被判断为错误数据字元。否则,当前数据字元不是错误的。
请参考图6B,对应于脉冲信号P61及P62的数据字元具有预设逻辑值大于阈值的比特数量(例如,所有高比特),因此,对应于脉冲信号P61及P62的数据字元是错误数据。
请参考图7,示出了依据本发明实施例的错误检测方法。在步骤S710中,读取目标存储器阵列的目标存储器单元以获得目标存储器数据。在步骤S720中,读取克隆存储器阵列的克隆存储器单元以获得克隆存储器数据,其中克隆存储器阵列的克隆存储器单元对应于目标存储器阵列的目标存储器单元。克隆存储器阵列的克隆存储器单元和目标存储器阵列的目标存储器单元可以同时被触发,使得步骤S710和S720可以同时被执行。
在步骤S730中将目标存储器数据与克隆存储器数据进行比较以输出比较信号,并且在步骤S740中依据比较信号判断目标存储器数据是否包括错误。
综上所述,本发明的实施例提供具有目标存储器阵列及克隆存储器阵列的存储器装置,以及其错误检测方法。克隆存储器阵列存储与目标存储器阵列相同的数据,并且克隆存储器阵列及目标存储器阵列可以位于相同的存储器组或不同的存储器组中。应用于目标存储器阵列以执行操作的命令应用于克隆存储器阵列。为了检测目标存储器阵列的数据中的错误,存储在目标存储器阵列中的目标存储器数据及存储在克隆存储器阵列中的克隆存储器数据被读取并比较,以输出比较信号。输出比较信号用于判断是否存在错误。
虽然本发明已以实施例揭示如上,然其并非用以限定本发明,任何所属技术领域中的技术人员,在不脱离本发明的精神和范围内,当可作些许的更改与润饰,故本发明的保护范围当视权利要求所界定的为准。
Claims (18)
1.一种存储器装置,包括:
存储器阵列,包括至少一个存储器组,其中所述至少一个存储器组包括:
目标存储器阵列,用以存储数据;以及
克隆存储器阵列,对应于所述目标存储器阵列,用以克隆存储在所述目标存储器阵列中的数据;
其中,应用于所述目标存储器阵列以执行操作的命令被应用于所述克隆存储器阵列,
其中,通过比较所述目标存储器阵列中的数据以及所述克隆存储器器阵列中的数据以判断所述目标存储器阵列中的数据是否包括错误。
2.根据权利要求1所述的存储器装置,其中,
所述至少一个存储器组包括第一存储器组及第二存储器组,
所述目标存储器阵列位于所述第一存储器组中,以及
所述克隆存储器阵列位于所述第二存储器组中。
3.根据权利要求1所述的存储器装置,还包括:
模块寄存器,耦接于所述存储器阵列,用以设置所述克隆存储器阵列的大小及位置,其中,
所述命令包含触发命令,
当所述触发命令被应用于所述目标存储器阵列时,所述模块寄存器启用所述目标存储器阵列及所述克隆存储器阵列,并同时触发所述目标存储器阵列的所选择的目标单元及所述克隆存储器阵列所对应的克隆单元,
当所述触发命令应用于与所述目标存储器阵列不同的一般存储器阵列上的写入数据,所述模块寄存器不触发所述克隆存储器阵列。
4.根据权利要求1所述的存储器装置,其中所述目标存储器阵列及所述克隆存储器阵列同样位于所述至少一存储器组中的一者。
5.根据权利要求1所述的存储器装置,还包括:
周边存储器电路;以及
存储器控制器,用以生成对所述目标存储器阵列及所述克隆存储器阵列执行操作的命令。
6.根据权利要求5所述的存储器装置,其中,
所述命令包括用于将存储器数据写入所述目标存储器阵列的目标存储器单元的写入命令,
响应于接收到所述写入命令,所述周边存储器电路将所述存储器数据同时写入所述目标存储器阵列的所述目标存储器单元及所述克隆存储器阵列的克隆存储器单元,其中所述克隆存储器单元对应于所述目标存储器单元。
7.根据权利要求5所述的存储器装置,其中,
所述命令包括用于读取所述目标存储器阵列的目标存储器单元的读取命令,
响应于接收到所述读取命令,所述周边存储器电路读取所述目标存储器阵列的所述目标存储器单元及所述克隆存储器阵列的克隆存储器单元以获得目标存储器数据及克隆存储器数据,其中所述克隆存储器阵列的所述克隆存储器单元对应于所述目标存储器阵列的所述目标存储器单元。
8.根据权利要求7所述的存储器装置,还包括:
比较器,耦接于所述存储器阵列及所述周边存储器电路,用以将所述目标存储器数据与所述克隆存储器数据进行比较,以输出比较信号,其中,
当所述目标存储器数据与所述克隆存储器数据相同时,所述比较信号被设置为预设电压,以及
当所述目标存储器数据与所述克隆存储器数据不同时,在所述比较信号上设置脉冲信号。
9.根据权利要求8所述的存储器装置,其中所述预设电压为第一逻辑值,所述第一逻辑值用以指示所述目标存储器数据不包括所述错误,其中所述脉冲信号为第二逻辑值,所述第二逻辑值用以指示所述目标存储器数据包括所述错误。
10.根据权利要求8所述的存储器装置,其中,
当所述比较信号不包括所述脉冲信号时,所述存储器控制器判断所述目标存储器数据不包括所述错误;以及
当所述比较信号包括所述脉冲信号时,所述存储器控制器判断所述目标存储器数据包括所述错误。
11.根据权利要求8所述的存储器装置,其中,
数据总线反转算法被应用以通过所述存储器装置中的总线传送读取数据,以及
所述存储器控制器还用以:
计算具有预设逻辑值的所述目标存储器数据中的比特数量;
判断具有预设逻辑值的所述目标存储器数据中的所述比特数量是否大于阈值,
当具有预设逻辑值的所述目标存储器数据中的所述比特数量大于所述阈值且所述比较信号包括所述脉冲信号时,所述存储器控制器判断所述目标存储器数据包括所述错误;
当具有预设逻辑值的所述目标存储器数据中的所述比特数量不大于所述阈值或者所述比较信号不包括所述脉冲信号时,所述存储器控制器判断所述目标存储器数据不包括所述错误。
12.根据权利要求7所述的存储器装置,其中,
所述周边存储器电路读取所述目标存储器单元以获得第一数据,其中第一错误更正码操作被执行于所述第一数据以获得所述目标存储器数据,以及
所述周边存储器电路读取所述克隆存储器单元以获得第二数据,其中第二错误更正码操作执行于所述第二数据以获得所述克隆存储器数据。
13.一种错误检测方法,适用于具有至少一存储器组的存储器装置,所述存储器装置包括目标存储器阵列及克隆存储器阵列,所述错误检测包括以下步骤:
读取所述目标存储器阵列的目标存储器单元以获得目标存储器数据;
读取所述克隆存储器阵列的克隆存储器单元以获得克隆存储器数据,其中所述克隆存储器阵列的所述克隆存储器单元对应于所述目标存储器阵列的所述目标存储器单元;
将所述目标存储器数据与所述克隆存储器数据进行比较以输出比较信号;以及
依据所述比较信号判断所述目标存储器数据是否包括错误。
14.根据权利要求13所述的错误检测方法,其中将所述目标存储器数据与所述克隆存储器数据进行比较以输出所述比较信号的步骤包括:
判断目标存储器数据是否与所述克隆存储器数据相同;
当所述目标存储器数据与所述克隆存储器数据不同时,在所述比较信号上设置脉冲信号;以及
当所述目标存储器数据与所述克隆存储器数据相同时,将所述比较信号设置为预设电压。
15.根据权利要求14所述的错误检测方法,其中依据所述比较信号判断所述目标存储器数据是否包括所述错误的步骤包括:
当所述比较信号不包括所述脉冲信号时,判断所述目标存储器数据不包括所述错误;以及
当所述比较信号包括所述脉冲信号时,判断所述目标存储器数据包括所述错误。
16.根据权利要求14所述的错误检测方法,其中,
数据总线反转算法被应用以通过所述存储器装置中的总线传送读取数据,以及
依据所述比较信号判断所述目标存储器数据是否包括所述错误的步骤包括:
计算具有预设逻辑值的所述目标存储器数据中的比特数量;
判断具有预设逻辑值的所述目标存储器数据中的所述比特数量是否大于阈值,
当具有预设逻辑值的所述目标存储器数据中的所述比特数量大于所述阈值且所述比较信号包括所述脉冲信号时,判断所述目标存储器数据包括所述错误;
当具有预设逻辑值的所述目标存储器数据中的所述比特数量不大于所述阈值或者所述比较信号不包括所述脉冲信号时,判断所述目标存储器数据不包括所述错误。
17.根据权利要求13所述的错误检测方法,其中,
读取所述目标存储器阵列的所述目标存储器单元以获得所述目标存储器数据以及读取所述克隆存储器阵列的所述克隆存储器单元以获得所述克隆存储器数据包括:
读取所述目标存储器单元以获得第一数据,并对所述第一数据执行第一错误更正码操作,以获得所述目标存储器阵列的所述目标存储器单元;以及
读取所述克隆存储器单元以获得第二数据,并对所述第二数据执行第二错误更正码操作,以获得所述克隆存储器数据。
18.根据权利要求13所述的错误检测方法,其中,
所述存储器装置还包括数据输出脚位及数据遮罩脚位,以及
所述比较信号被传送至所述数据遮罩脚位,而读取数据被传送至所述数据输出脚位。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910250297.XA CN111752768B (zh) | 2019-03-29 | 2019-03-29 | 存储器装置及其错误检测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910250297.XA CN111752768B (zh) | 2019-03-29 | 2019-03-29 | 存储器装置及其错误检测方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111752768A CN111752768A (zh) | 2020-10-09 |
CN111752768B true CN111752768B (zh) | 2024-01-23 |
Family
ID=72672438
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910250297.XA Active CN111752768B (zh) | 2019-03-29 | 2019-03-29 | 存储器装置及其错误检测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111752768B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7343603B1 (en) * | 2003-12-22 | 2008-03-11 | Sun Microsystems, Inc. | System and method for performing incremental initialization of a master runtime system process |
US7421698B2 (en) * | 2003-12-22 | 2008-09-02 | Sun Microsystems, Inc. | System and method for dynamically and persistently tracking incremental profiling data in a process cloning application environment |
EP2447842A1 (en) * | 2010-10-28 | 2012-05-02 | Thomson Licensing | Method and system for error correction in a memory array |
CN106205683A (zh) * | 2015-05-29 | 2016-12-07 | 华邦电子股份有限公司 | 存储器系统以及其错误校正方法 |
CN109427408A (zh) * | 2017-08-25 | 2019-03-05 | 美商新思科技有限公司 | 用于物理不可克隆功能安全的otp存储器单元 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140052906A1 (en) * | 2012-08-17 | 2014-02-20 | Rambus Inc. | Memory controller responsive to latency-sensitive applications and mixed-granularity access requests |
WO2016182771A1 (en) * | 2015-05-11 | 2016-11-17 | One Factor Holdings Llc | Integrated activity management system and method of using same |
JP6545631B2 (ja) * | 2016-03-02 | 2019-07-17 | 東芝メモリ株式会社 | 不揮発性半導体記憶装置 |
-
2019
- 2019-03-29 CN CN201910250297.XA patent/CN111752768B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7343603B1 (en) * | 2003-12-22 | 2008-03-11 | Sun Microsystems, Inc. | System and method for performing incremental initialization of a master runtime system process |
US7421698B2 (en) * | 2003-12-22 | 2008-09-02 | Sun Microsystems, Inc. | System and method for dynamically and persistently tracking incremental profiling data in a process cloning application environment |
EP2447842A1 (en) * | 2010-10-28 | 2012-05-02 | Thomson Licensing | Method and system for error correction in a memory array |
CN106205683A (zh) * | 2015-05-29 | 2016-12-07 | 华邦电子股份有限公司 | 存储器系统以及其错误校正方法 |
CN109427408A (zh) * | 2017-08-25 | 2019-03-05 | 美商新思科技有限公司 | 用于物理不可克隆功能安全的otp存储器单元 |
Non-Patent Citations (3)
Title |
---|
1G比特内嵌自检自修复DDR3 DRAM存储器芯片设计;谈杰;王嵩;李进;龙晓东;王小光;;中国集成电路(09);47-52 * |
A fast and scalable FPGA damage diagnostic service for R3TOS using BIST cloning technique;Ali Ebrahim 等;《2014 24th International Conference on Field Programmable Logic and Applications (FPL)》;1-4 * |
高速大容量存储阵列控制器的设计与实现;方火能;《CNKI优秀硕士学位论文全文库》;I137-40 * |
Also Published As
Publication number | Publication date |
---|---|
CN111752768A (zh) | 2020-10-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11557332B2 (en) | Semiconductor memory devices, memory systems and methods of operating semiconductor memory devices | |
US11385960B2 (en) | Semiconductor memory devices, memory systems and methods of operating semiconductor memory devices | |
US11194657B2 (en) | Semiconductor memory devices, memory systems, and methods of operating the semiconductor memory devices | |
US10445177B2 (en) | Controller-based memory scrub for DRAMs with internal error-correcting code (ECC) bits contemporaneously during auto refresh or by using masked write commands | |
US10503589B2 (en) | Semiconductor memory devices, memory systems and methods of operating semiconductor memory devices | |
US20210081278A1 (en) | Semiconductor memory devices, memory systems and methods of operating semiconductor memory devices | |
US9886340B2 (en) | Memory system and method for error correction of memory | |
US9823964B2 (en) | Method for memory scrub of DRAM with internal error correcting code (ECC) bits during either memory activate and/or precharge operation | |
US9880900B2 (en) | Method for scrubbing and correcting DRAM memory data with internal error-correcting code (ECC) bits contemporaneously during self-refresh state | |
KR20170034401A (ko) | 메모리 데이터에 기초하여 비교 정보를 결정하기 위한 장치, 시스템 및 방법 | |
US9589676B2 (en) | Semiconductor device and operating method thereof | |
CN107919160A (zh) | 测试单元阵列的方法及执行其的半导体器件 | |
US20180018219A1 (en) | Semiconductor devices and semiconductor systems | |
US11669393B2 (en) | Memory device for swapping data and operating method thereof | |
US11556440B2 (en) | Memory module, memory system including the same and operation method thereof | |
CN111752768B (zh) | 存储器装置及其错误检测方法 | |
EP4312219A2 (en) | Memory system, operating method of the same, and controller of memory device | |
TWI695384B (zh) | 記憶體裝置及其錯誤檢測方法 | |
US10460826B2 (en) | Test methods of semiconductor devices and semiconductor systems used therein | |
US11010234B2 (en) | Memory device and error detection method thereof | |
US11841764B2 (en) | Circuit and method for reading ECC from memory | |
US12135659B2 (en) | Communication in accordance with multiple interface protocols in semiconductor storage device | |
US10621039B2 (en) | Electronic devices |
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 |