CN210984286U - 错误校正码存储器和电子电路 - Google Patents
错误校正码存储器和电子电路 Download PDFInfo
- Publication number
- CN210984286U CN210984286U CN201921470130.6U CN201921470130U CN210984286U CN 210984286 U CN210984286 U CN 210984286U CN 201921470130 U CN201921470130 U CN 201921470130U CN 210984286 U CN210984286 U CN 210984286U
- Authority
- CN
- China
- Prior art keywords
- word
- invalid
- error correction
- correction code
- data
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/2205—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested
- G06F11/2215—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested to test error correction or detection circuits
-
- 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/1068—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 in sector programmable memories, e.g. flash disk
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C17/00—Read-only memories programmable only once; Semi-permanent stores, e.g. manually-replaceable information cards
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Detection And Correction Of Errors (AREA)
Abstract
本公开涉及一种错误校正码存储器和电子电路。错误校正码存储器包括一个或多个有意无效字。电子电路被配置为将一个或多个有意无效字写入错误校正码存储器。
Description
相关申请的交叉引用
本申请要求于2018年9月6日提交的法国专利申请号18/57993的优先权,其内容在法律允许的最大程度通过引用整体并入本文。
技术领域
本公开总体上涉及电子设备,并且更具体地涉及错误校正码存储器。
背景技术
在错误校正码存储器中,错误校正码使得能够检测和/或校正所存储的数据中的一个或多个错误。这种存储器通常被包括在集成电路芯片中。
实用新型内容
实施例克服了已知错误校正码存储器的全部或部分缺点。
实施例提供了一种方法,其包括将一个或多个有意无效字写入错误校正码存储器。
根据实施例,该方法包括:在上述写入之前,生成无效字。
根据实施例,该方法包括:在上述写入之前,在存储器中为上述字选择连续位置。
根据实施例,上述字或上述字之一包括单个无效位。
根据实施例,上述字或上述字之一恰好包括两个无效位。
根据实施例,该方法包括:在上述写入之后,锁定上述字的只读模式。
实施例提供了一种错误校正码存储器,其包括一个或多个有意无效字。
根据实施例,所述字位于连续位置。
根据实施例,所述字是以只读模式可访问的。
根据实施例,所述字或所述字之一包括单个无效位。
根据实施例,所述字或所述字之一恰好包括两个无效位。
实施例提供了一种诸如上文中定义的存储器用于测试错误校正电路的用途。
实施例提供了一种电子电路,其被配置为将一个或多个有意无效字写入错误校正码存储器。
根据实施例,该电路被配置为使得在工厂中执行有意无效字的写入。
根据实施例,该电路包括诸如上文中定义的存储器。
在以下结合附图对特定实施例的非限制性描述中,将详细讨论前述和其他特征和优点。
附图说明
图1示出了包括错误校正码存储器的电路的实施例。
具体实施方式
在不同附图中,相同的元素用相同的附图标记表示。特别地,不同实施例共有的结构和/或功能元件可以用相同的附图标记表示,并且可以具有相同的结构、尺寸和材料特性。
为清楚起见,仅示出了并且详细描述了对理解所描述的实施例有用的那些步骤和元件。特别地,没有详细描述错误校正码,其中所描述的实施例与当前错误校正码兼容。
在整个本公开中,术语“连接”用于表示电路元件之间的直接电连接而没有除了导体之外的中间元件,而术语“耦合”用于表示在电路元件之间的电连接,该电连接可以是直接的,也可以是经由一个或多个中间元件的。
在以下描述中,除非另有说明,否则当提及限定绝对位置的术语(诸如术语“前面”、“后面”、“顶部”、“底部”、“左侧”、“右侧”等)或限定相对位置的术语(诸如术语“上方”、“下方”、“上面”、“下面”等)或限定方向的术语(诸如术语“水平”、“竖直”等)时,均参考图纸的方向。
本文中使用术语“约”、“基本上”和“大约”来表示所讨论的值的正或负10%、优选地为正或负5%的公差。
图1示出了包括错误校正码存储器102的电子电路100(例如,集成电路)的实施例。
存储器102包括存储器位置104。位置104优选地全部具有相同数目M个位。优选地,位置104在存储器中彼此跟随。存储器102优选地耦合到错误校正电路(ECC)106。电路106将存储器102耦合到例如数据传输总线108。
在操作中,电路106接收要写入存储器102的数据片。该数据片例如源自总线108。该数据片具有N个位,例如,等于32或64位,优选地等于128位。电路106通过应用错误校正码来对该数据片进行编码,即,基于信息冗余的数据片编码技术。编码的结果是与未编码的数据片相比具有更大的位数M的字。
优选地,编码包括将签名(CHK)与数据片(DATA)相关联。每个数据片的签名包括K位。优选地,在128位数据片的情况下,签名的位数K等于9。然后,由编码产生的字包括数据和签名的集合。该字的位数M等于数据和签名的位数之和N+K,优选地等于137。例如,签名的位是该字的最低有效位。作为变型,在由编码产生的字中,签名的位连续或不连续地插入在数据的位之间。
由编码产生的字被写入位置104之一。为了实现这一点,位置104具有与该字相同的位数M。在写入期间或在写入之后,可能发生一个或多个错误。错误对应于所考虑的位置中的内容与由数据的编码产生的字之间的一个位的差异。
为了读取数据,读取位于相应位置104的字。电路106通过使用错误校正码来找到数据。作为示例,为了实现这一点,电路106验证签名并且从读取的字中提取数据。由此获取的数据片例如通过总线108发送。当读取的字表现出一个或多个错误时,使用错误校正码来校正或检测错误。优选地,错误校正码能够校正字中的单个错误(SEC,“单一错误校正”)并且检测同一字中的两个错误(DED,“双错误检测”)。可以使用任何错误校正码,例如仅能够检测一个错误的错误校正码,或者能够校正和/或检测多于一个和两个错误的错误校正码。这取决于数据编码结果的大小等。
由于信息的冗余,该信息的冗余具有基于其的错误校正码,仅某些字是有效的,即,可以由代码的应用产生。例如,签名与编码的数据片明确地相关联。因此,尽管数据可以取任何值,但数据编码的结果不能是任何字。在该示例中,有效字是那些并且只有那些签名对应于数据的字。
该组有效字对应于所有数据片的编码的所有结果,即,分别与N个位的所有组合相对应的2^N个数据片的结果(“^”表示幂函数)。对于2^N个组合中的每个,数据编码的结果是不同的有效字。因此,在2^M个字中有2^N个有效字分别对应于M个位的所有组合。
在图1的实施例中,存储器102的位置104之一的内容是有意无效字。
当字不属于有效字集合时,也就是说,当字与错误校正码应用于任何数据片的结果不同时,这个字在这里被称为无效。无效字包含至少一个无效位,即该字与任何有效字相差至少一位。例如,无效字包括不匹配的数据片和签名。根据另一示例,无效字包括单个无效位,即该字与至少一个有效字相差单个位。根据又一示例,无效字恰好包括两个无效位,即该字与至少一个有效字恰好相差两位。
当字由生成无效字然后将无效字写入位置104之一的步骤产生时,该字被称为有意无效。可以使用在该步骤的每个实现处提供无效字的任何生成步骤。优选地,在写入之前,该生成步骤包括计算步骤,例如,数据片的编码和由编码产生的字中的至少一个位的无效。例如,字中的位的无效对应于字的位之一的修改。优选地,位于位置104的多个字有意无效。优选地,位于至少一个位置(104A)的字包括单个无效位。优选地,位于至少一个位置(104B)的字恰好包括两个无效位。
存储在存储器102中的有意无效字的提供使得能够测试电路106,特别是电路106的错误校正和/或检测。
为了校正从存储器读取的错误字中的一个或多个错误,电路106优选地确定被认为是经校正的有效字。优选地,该经校正的有效字是最接近错误字的有效字,即,有效字中具有与错误字的位数不同的最小位数的有效字。电路106从经校正的有效字中找到数据片。因此,优选地,找到的数据片是编码结果最接近错误字的数据片。
为了测试电路106的错误校正操作,验证电路106从无效字提供数据片,并且该数据片是预期用于正确操作的数据片。无效字对应于由一个或多个错误导致错误的预期数据片的编码结果。因此,预期数据片因此优选地是编码结果最接近无效字的数据片。该预期数据片优选地是唯一的。用于测试的无效字优选地包括单个错误位(位置104A)。
因此,当电路传送预期数据片时,可以推断出电路已经将无效字视为错误的字并且已经有效地校正了错误。错误的数目优选地等于无效位的数目。优选地,预期数据片是用于生成无效字的数据。对于单个无效位,预期数据片优选地是无效字对应于由单个错误修改的编码结果的单个数据片。因此验证了电路106校正该单个错误(SEC)。
举一个具体示例,其中数据具有四个位并且签名例如具有四个奇偶校验位,每个奇偶校验位对应于位于数据片中的三个位的总和,这三个位在数据片中的位置不同于该奇偶校验位在签名中的位置。该编码能够校正错误并且检测两个错误。数据'1011'的编码产生包括该数据片和签名'0100'的有效字'10110100'。假定位置104A包含通过有意修改有效字的第二位(从最低有效位开始)而获取的无效字'10110110',最接近该无效字的有效字是'10110100',并且预期数据片是'1011'。因此,当电路106从位于位置104A的无效字传送预期数据'1011'时,这表示错误校正已经正确地发生。
为了测试电路106的错误检测操作,验证电路106将无效字视为错误字。然后期望该电路检测一个或多个错误的存在。用于测试的无效字优选地恰好包括两个无效位(位置104B)。因此,无效字对应于由两个错误修改的编码结果。因此验证了电路106检测到这两个错误的存在(DED)。
采用以上数字示例,假定位置104B包含通过有意修改有效字'10110100'的第二位和第五位(从最低有效位开始)而获取的无效字'10100110'。除了有效字'10110100'之外,其他有效字也与无效字相差两位,并且也最接近无效字。例如,对于由数据'1010'的编码产生的有效字'10101010',正是这样。当电路106检测到位于位置104B的无效字中的错误时,优选地不对其进行校正,这表示错误校正已经正确发生。
优选地提供包含分别具有单个且恰好两个无效位的字的其他位置104A和/或104B。因此,可以例如针对各种数据片和可能发生错误的各种位置来测试电路106。优选地,提供包含具有单个无效位的字的多个(例如,多于两个)位置。优选地,提供包含具有两个无效位的字的多个(例如,多于两个)位置。可以根据所使用的错误校正码来调节每个字中的无效位的数目。可以根据数据的位数来调节无效字位置的数目。
作为示例,当电路106校正和/或检测到错误时,电路106发出错误信号,诸如标志或中断。优选地,在电路106的测试期间验证该错误信号的存在。此外,用户可以在包括诸如微处理器(未示出)等数据处理电路的设备中包括电路100。在由电路106检测到和/或校正错误的情况下,用户可以提供处理电路以执行特定程序。这样的程序例如在接收到源自电路106的错误信号之后由微处理器执行。因此,提供包含有意无效字的位置使得用户能够测试该程序的操作。
作为示例,旨在用有意无效字填充的位置耦合到电子电路110(DW)。电路110接收无效字INV。电路110直接将无效字加载到存储器中,即,没有诸如由电路106执行的编码。作为变型,有意无效字存储在电路110中。在另一变型中,电路110被设计为生成无效字。在该变型中,优选地电路110接收用于控制将无效字写入存储器中的信号。优选地电路110在每次接收到信号时生成无效字。
作为示例,电路110位于电路100外部的设备中。作为示例,该设备用于将无效字写入多个电路100的存储器102中,优选地在工厂中。然后,无效字在电路100的多个存储器102中是相同的。作为变型,电路110被包括在电路100内,并且用户可以使用该电路将无效字写入存储器。
优选地,电路110用于将包括例如程序在内的各种数据写入存储器102的部分RO中。优选地,无效字位于这些数据中。例如,程序是引导加载程序。在写入之后,优选地,部分RO被锁定在只读模式,即,禁止再次写入存储器的部分RO。然后,有意无效字仅经由例如电路106可读。优选地,存储器102的另一部分RW保持经由电路106以读取模式和写入模式可访问。
优选地,被选择为要用有意无效字填充的位置是连续的。这使得用户能够容易地使用无效字。优选地,具有有意无效字的位置104位于存储器的部分RO中。
已经描述了各种实施例和变型。本领域技术人员将理解,可以组合这些各种实施例和变型的某些特征,并且本领域技术人员将想到其他变型。
最后,基于上文中给出的功能指示,所描述的实施例和变型的实际实现在本领域技术人员的能力范围内。
这些改变、修改和改进旨在成为本公开的一部分,并且旨在落入本公开的精神和范围内。因此,前面的描述仅是示例性的,而不是限制性的。本公开仅受以下权利要求及其等同物限定。
Claims (8)
1.一种错误校正码存储器(102),其特征在于,所述错误校正码存储器(102)包括存储器位置,并且所述存储器位置中的至少一个存储器位置存储了一个或多个有意无效字。
2.根据权利要求1所述的错误校正码存储器,其特征在于,所述字位于连续位置(104A,104B)中。
3.根据权利要求1所述的错误校正码存储器,其特征在于,所述字是以只读模式可访问的。
4.根据权利要求1所述的错误校正码存储器,其特征在于,所述字或所述字之一包括单个无效位。
5.根据权利要求1所述的错误校正码存储器,其特征在于,所述字或所述字之一恰好包括两个无效位。
6.一种电子电路(110),其特征在于,所述电子电路(110)被配置为将一个或多个有意无效字写入错误校正码存储器(102)。
7.根据权利要求6所述的电子电路,其特征在于,所述电子电路被配置为使得在工厂中执行所述有意无效字的写入。
8.根据权利要求6所述的电子电路,其特征在于,所述电子电路包括根据权利要求1所述的存储器。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR1857993A FR3085769B1 (fr) | 2018-09-06 | 2018-09-06 | Memoire a code correcteur d'erreur |
FR1857993 | 2018-09-06 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN210984286U true CN210984286U (zh) | 2020-07-10 |
Family
ID=65243723
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201921470130.6U Active CN210984286U (zh) | 2018-09-06 | 2019-09-05 | 错误校正码存储器和电子电路 |
Country Status (3)
Country | Link |
---|---|
US (1) | US11392453B2 (zh) |
CN (1) | CN210984286U (zh) |
FR (1) | FR3085769B1 (zh) |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7149945B2 (en) * | 2003-05-09 | 2006-12-12 | Hewlett-Packard Development Company, L.P. | Systems and methods for providing error correction code testing functionality |
US8181100B1 (en) * | 2008-02-07 | 2012-05-15 | Marvell International Ltd. | Memory fault injection |
US9316691B2 (en) * | 2011-03-17 | 2016-04-19 | Eigenix | Method and apparatus for fault injection |
US8914687B2 (en) * | 2011-04-15 | 2014-12-16 | Advanced Micro Devices, Inc. | Providing test coverage of integrated ECC logic en embedded memory |
US8645797B2 (en) * | 2011-12-12 | 2014-02-04 | Intel Corporation | Injecting a data error into a writeback path to memory |
US9195555B2 (en) * | 2013-05-24 | 2015-11-24 | International Business Machines Corporation | Error injection into the leaf functions of call graphs |
US10546649B2 (en) * | 2015-08-18 | 2020-01-28 | Hewlett Packard Enterprise Development Lp | Post package repair for mapping to a memory failure pattern |
US10108512B2 (en) * | 2016-04-01 | 2018-10-23 | Intel Corporation | Validation of memory on-die error correction code |
US10043588B2 (en) * | 2016-12-15 | 2018-08-07 | SK Hynix Inc. | Memory device |
US10389379B2 (en) * | 2017-05-12 | 2019-08-20 | Qualcomm Incorporated | Error correcting code testing |
-
2018
- 2018-09-06 FR FR1857993A patent/FR3085769B1/fr active Active
-
2019
- 2019-09-05 CN CN201921470130.6U patent/CN210984286U/zh active Active
- 2019-09-05 US US16/562,025 patent/US11392453B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
US11392453B2 (en) | 2022-07-19 |
FR3085769B1 (fr) | 2021-01-29 |
US20200081776A1 (en) | 2020-03-12 |
FR3085769A1 (fr) | 2020-03-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6799287B1 (en) | Method and apparatus for verifying error correcting codes | |
US9043678B2 (en) | Detecting effect of corrupting event on preloaded data in non-volatile memory | |
CN105340022A (zh) | 用于校正数据错误的电路、设备及方法 | |
CN101256842B (zh) | 纠错码控制器和包括该纠错码控制器的存储器系统 | |
US6397357B1 (en) | Method of testing detection and correction capabilities of ECC memory controller | |
US7865804B2 (en) | System and method for enhanced error detection in memory peripherals | |
CN109643262B (zh) | 具有故障检测的纠错硬件 | |
KR100680473B1 (ko) | 액세스 시간이 감소된 플래시 메모리 장치 | |
CN106340319B (zh) | 用于保护和验证地址数据的方法和电路 | |
TW201331946A (zh) | 使用錯誤校正碼編碼以驗證錯誤校正碼解碼操作 | |
US9665423B2 (en) | End-to-end error detection and correction | |
CN109671466B (zh) | 一种阈值电压调试方法、装置及电子设备 | |
CN210984286U (zh) | 错误校正码存储器和电子电路 | |
US11069421B1 (en) | Circuitry for checking operation of error correction code (ECC) circuitry | |
CN105095011B (zh) | 数据处理方法、存储器控制电路单元以及存储器存储装置 | |
CN104598330B (zh) | 基于双备份的数据保存和校验方法 | |
CN112445639A (zh) | 错误检测 | |
CN111880961A (zh) | 用于透明寄存器数据错误检测和纠正的系统和方法 | |
CN109726030A (zh) | 包括用于误差校正电路的响应管理器的存储器架构 | |
US8028221B2 (en) | Error correction and error detection method for reading of stored information data and a storage control unit for the same | |
CN112068985A (zh) | 带编程指令识别的norflash存储器ecc检纠错方法及系统 | |
US11314513B2 (en) | Circuit for verifying the content of registers | |
US20220253315A1 (en) | Circuit for verifying the content of registers | |
US11809272B2 (en) | Error correction code offload for a serially-attached memory device | |
CN112445638B (zh) | 错误检测 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
GR01 | Patent grant | ||
GR01 | Patent grant |