CN112466380A - 存储器及其存储方法 - Google Patents
存储器及其存储方法 Download PDFInfo
- Publication number
- CN112466380A CN112466380A CN202011449520.2A CN202011449520A CN112466380A CN 112466380 A CN112466380 A CN 112466380A CN 202011449520 A CN202011449520 A CN 202011449520A CN 112466380 A CN112466380 A CN 112466380A
- Authority
- CN
- China
- Prior art keywords
- data
- module
- bit data
- ecc
- bit
- 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
Images
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
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Techniques For Improving Reliability Of Storages (AREA)
- Detection And Correction Of Errors (AREA)
- For Increasing The Reliability Of Semiconductor Memories (AREA)
Abstract
本发明涉及存储器及其存储方法和对应的电子设备。本发明的存储器中引入了写选择模块和/或读选择模块,可以很容易地直接访问到ECC阵列模块,能够在写操作和读操作的过程中非常灵活地切换多种模式。
Description
技术领域
本发明涉及存储器领域。具体地,本发明涉及可以很容易地直接访问到ECC阵列模块从而在读操作和写操作的过程中很容易地切换多种模式的存储器及其存储方法和对应的电子设备。
背景技术
纠错码(Error Correction Code,ECC)是一种对数据进行检错和纠错的方法。它利用在一定长度数据位的基础上增加额外的数据来实现检错和纠错功能,这些额外的数据称为校验位。校验位的长度根据选定的ECC算法来确定。
在选定ECC算法之后,一定长度的数据位都存在与其对应的校验位,而这些校验位也需要阵列来存储。选定ECC算法之后的写入和读出过程如下:当N位数据从系统被写入存储器时,首先通过ECC编码模块经由选定的ECC算法产生所述N位数据的M位校验位,然后N位数据和M位校验位一起被写入相应的存储阵列(如图1中所示)。当从存储器读出N位数据时,N位数据和M位校验位从各自的存储阵列中读出,被放大后送入ECC解码模块。ECC解码模块可以对错误进行检测和纠正,得到经纠正的N位数据(如图2中所示)。
然而,在这种情况下,当对存储器进行测试时,为了实现不同的测试目标,可能会需要不同的特殊拓扑数据。例如,可能需要为‘b11111111、‘b00000000、b10101010、‘b01010101、‘b11101111、‘b00010000等或者其他的任何数据拓扑。
对于数据阵列而言,很容易实现这样的数据拓扑,因为数据阵列中存储的值就是外部系统所写入的值。但是,对于ECC阵列而言,ECC阵列中所存储的校验位是通过选定ECC算法由相应的数据位计算得到的。也就是说,校验位既与相应的数据位的值相关,又与所选定的ECC算法相关。因此,对于ECC阵列,很难或者不能得到特殊的数据拓扑。这就意味着对ECC阵列的测试结果将会是不真实或者不准确或者不精确的。
因此,亟需解决现有技术中的上述技术问题。
发明内容
基于上述技术问题,本发明提出了一种存储器及其存储方法和对应的电子设备。本发明是基于这样的认识而提出的:如果存储器能够直接访问到ECC阵列模块,则它就可以很容易地控制在ECC阵列模块中实际所存储的数据的值,从而能够在ECC阵列模块中存储特殊拓扑数据;当然,同时,在这一过程中,不能够影响到ECC阵列模块的正常功能。针对此,本发明的存储器中引入了写选择模块和/或读选择模块,可以很容易地直接访问到ECC阵列模块,能够在写操作和读操作的过程中非常灵活地切换多种模式。
根据本发明的第一方面,提供了一种存储器,包括:
数据阵列模块,所述数据阵列模块用于存储第一N位数据;
纠错码ECC阵列模块,所述ECC阵列模块用于存储第一M位数据;
ECC处理模块,所述ECC处理模块与所述数据阵列模块、所述ECC阵列模块连接,且所述ECC处理模块从所述数据阵列模块接收第一N位数据以及从所述ECC阵列模块接收第一M位数据且对所述第一N位数据以及第一M位数据进行处理,得到经处理的数据;
选择模块,所述选择模块与所述数据阵列模块、所述ECC阵列模块、所述ECC处理模块连接,且所述选择模块从所述数据阵列模块接收所述第一N位数据以及从所述ECC阵列模块接收所述第一M位数据以及从所述ECC处理模块接收经处理的数据,且根据一个选择控制指令而选择性地输出;
其中,N、M均为正整数。
根据本发明的存储器的一个优选实施方案,所述选择控制指令为第一读选择控制指令,所述选择模块根据所述第一读选择控制指令输出所述第一N位数据。
根据本发明的存储器的一个优选实施方案,所述选择控制指令为第二读选择控制指令,所述选择模块根据所述第二读选择控制指令输出所述第一N位数据以及所述第一M位数据。
根据本发明的存储器的一个优选实施方案,所述ECC处理模块包括ECC解码模块,所述ECC解码模块对所述第一N位数据和所述第一M位数据进行ECC解码,得到第一经纠正的N位数据以及第一经纠正的M位数据,且将所述第一经纠正的N位数据以及所述第一经纠正的M位数据输出至所述选择模块。
根据本发明的存储器的一个优选实施方案,所述选择控制指令为第三读选择控制指令,所述选择模块根据所述第三读选择控制指令输出所述第一经纠正的N位数据以及所述第一经纠正的M位数据。
根据本发明的存储器的一个优选实施方案,所述ECC处理模块包括ECC解码模块,所述ECC解码模块根据所述第一M位数据对所述第一N位数据进行ECC解码,得到第二经纠正的N位数据,且将所述第二经纠正的N位数据输出至所述选择模块。
根据本发明的存储器的一个优选实施方案,所述选择控制指令为第四读选择控制指令,所述选择模块根据所述第四读选择控制指令输出所述第二经纠正的N位数据。
根据本发明的存储器的一个优选实施方案,所述选择控制指令为第五读选择控制指令,所述选择模块根据所述第五读选择控制指令输出所述第二经纠正的N位数据以及所述第一M位数据。
根据本发明的存储器的一个优选实施方案,所述ECC处理模块包括ECC编码模块,所述ECC编码模块从输入端接收第二N位数据,对所述第二N位数据进行编码,得到第一M位校验数据,且将所述第一M位校验数据输出至所述选择模块。
根据本发明的存储器的一个优选实施方案,所述选择控制指令为第一写选择控制指令,所述选择模块根据所述第一写选择控制指令将所述第一M位校验数据输出至所述ECC阵列模块。
根据本发明的存储器的一个优选实施方案,所述选择模块从输入端接收第一M位测试数据。
根据本发明的存储器的一个优选实施方案,当M小于等于N时,所述第一M位测试数据是所述第二N位数据的一部分;或者
当M大于N时,所述第一M位测试数据是所述第二N位数据的重复、补0或补1。
根据本发明的存储器的一个优选实施方案,所述选择控制指令为第二写选择控制指令,所述选择模块根据所述第二写选择控制指令将所述第一M位测试数据输出至所述ECC阵列模块。
根据本发明的第二方面,提供了一种用于存储器的存储方法,所述存储器包括:数据阵列模块,所述数据阵列模块用于存储第一N位数据;纠错码ECC阵列模块,所述ECC阵列模块用于存储第一M位数据;ECC处理模块,所述ECC处理模块与所述数据阵列模块、所述ECC阵列模块连接;以及,选择模块,所述选择模块与所述数据阵列模块、所述ECC阵列模块、所述ECC处理模块连接;所述存储方法包括:
所述ECC处理模块从所述数据阵列模块接收第一N位数据以及从所述ECC阵列模块接收第一M位数据且对所述第一N位数据以及第一M位数据进行处理,得到经处理的数据;
所述选择模块从所述数据阵列模块接收所述第一N位数据以及从所述ECC阵列模块接收所述第一M位数据以及从所述ECC处理模块接收经处理的数据,且所述选择模块根据一个选择控制指令而选择性地输出;
其中,N、M均为正整数。
根据本发明的存储方法的一个优选实施方案,所述存储方法还包括:
当所述选择控制指令为第一读选择控制指令时,所述选择模块根据所述第一读选择控制指令输出所述第一N位数据。
根据本发明的存储方法的一个优选实施方案,所述存储方法还包括:
当所述选择控制指令为第二读选择控制指令时,所述选择模块根据所述第二读选择控制指令输出所述第一N位数据以及所述第一M位数据。
根据本发明的存储方法的一个优选实施方案,所述ECC处理模块包括ECC解码模块;所述存储方法还包括:
所述ECC解码模块对所述第一N位数据和所述第一M位数据进行ECC解码,得到第一经纠正的N位数据以及第一经纠正的M位数据,且将所述第一经纠正的N位数据以及所述第一经纠正的M位数据输出至所述选择模块。
根据本发明的存储方法的一个优选实施方案,所述存储方法还包括:
当所述选择控制指令为第三读选择控制指令时,所述选择模块根据所述第三读选择控制指令输出所述第一经纠正的N位数据以及所述第一经纠正的M位数据。
根据本发明的存储方法的一个优选实施方案,所述ECC处理模块包括ECC解码模块;所述存储方法还包括:
所述ECC解码模块根据所述第一M位数据对所述第一N位数据进行ECC解码,得到第二经纠正的N位数据,且将所述第二经纠正的N位数据输出至所述选择模块。
根据本发明的存储方法的一个优选实施方案,所述存储方法还包括:
当所述选择控制指令为第四读选择控制指令时,所述选择模块根据所述第四读选择控制指令输出所述第二经纠正的N位数据。
根据本发明的存储方法的一个优选实施方案,所述存储方法还包括:
当所述选择控制指令为第五读选择控制指令时,所述选择模块根据所述第五读选择控制指令输出所述第二经纠正的N位数据以及所述第一M位数据。
根据本发明的存储方法的一个优选实施方案,所述ECC处理模块包括ECC编码模块;所述存储方法还包括:
所述ECC编码模块从输入端接收第二N位数据,对所述第二N位数据进行编码,得到第一M位校验数据,且将所述第一M位校验数据输出至所述选择模块。
根据本发明的存储方法的一个优选实施方案,所述存储方法还包括:
当所述选择控制指令为第一写选择控制指令时,所述选择模块根据所述第一写选择控制指令将所述第一M位校验数据输出至所述ECC阵列模块。
根据本发明的存储方法的一个优选实施方案,所述存储方法还包括:
所述选择模块从输入端接收第一M位测试数据。
根据本发明的存储方法的一个优选实施方案,所述存储方法还包括:
当M小于等于N时,所述第一M位测试数据是所述第二N位数据的一部分;或者
当M大于N时,所述第一M位测试数据是所述第二N位数据的重复、补0或补1。
根据本发明的存储方法的一个优选实施方案,所述存储方法还包括:
当所述选择控制指令为第二写选择控制指令,所述选择模块根据所述第二写选择控制指令将所述第一M位测试数据输出至所述ECC阵列模块。
根据本发明的第三方面,提供了一种电子设备,所述电子设备包括:
至少一个存储器,所述存储器为上述存储器;以及
至少一个处理器,所述处理器与所述存储器连接,且所述处理器与所述存储器通过所述总线进行通信,所述处理器对所述存储器中数据进行处理。
根据本发明的第四方面,提供了一种电子设备,所述电子设备包括:
至少一个存储器,在所述存储器上存储有计算机可执行指令;以及
至少一个处理器,所述处理器与所述存储器连接,且所述处理器与所述存储器通过所述总线进行通信,当所述处理器执行所述计算机可执行指令时,所述计算机可执行指令使得所述处理器执行上述存储方法。
附图说明
通过下文结合对附图的说明,将更容易理解本发明,在附图中:
图1示出了已知的包含ECC功能的存储器的写入过程。
图2示出了已知的包含ECC功能的存储器的读出过程。
图3是根据本发明的一个实施方案的写入过程的示意图。
图4是根据本发明的另一实施方案的写入过程的示意图。
图5是根据本发明的一个实施方案的读出过程的示意图。
图6是根据本发明的另一实施方案的读出过程的示意图。
图7是根据本发明的一个实施方案的读出方法的流程图。
图8是根据本发明的一个实施方案的写入方法的流程图。
具体实施方式
下面将结合附图来对本发明的实施方案进行进一步详述。
图3是根据本发明的一个实施方案的写入过程的示意图。
图3中也示意性示出了写入过程中所涉及的存储器的构成,所述存储器包括:数据阵列模块310、纠错码ECC阵列模块320、ECC编码模块330和写选择模块340。
从图3中可以看到,ECC编码模块330与写选择模块340连接,且ECC编码模块330从一个输入端接收N位数据,对N位数据进行编码,得到M位校验数据,且将所述M位校验数据输出至写选择模块340。
从图3中还可以看到,写选择模块340除了从ECC编码模块330接收M位校验数据之外,还可以从另外的输入端接收M位特殊拓扑数据,且根据写选择控制指令sel_wr_mode而选择性地将M位校验数据或者M位特殊拓扑数据写入至ECC阵列模块320。
图3中所涉及的写选择控制指令sel_wr_mode主要分为如下两种:
(1)测试模式,将M位特殊拓扑数据写入ECC阵列模块320;
(2)正常模式,将M位校验数据写入ECC阵列模块320。
然而,应理解,图3不限制于如上几种写选择控制指令sel_wr_mode。
图3中的写选择控制指令sel_wr_mode也可以包括诸如:正常模式,将M位特殊拓扑数据写入ECC阵列模块320;测试模式,将M位校验数据写入ECC阵列模块320;等等。在本发明中,根据需要,可以在任意模式中将M位特殊拓扑数据、M位校验数据中的一个写入ECC阵列模块320中。
对比图1,可以看到本发明的图3中引入了写选择模块340,写选择模块340用于选择性地将M位校验数据或者M位测试数据写入至ECC阵列模块320。在图3中,存储器通过写选择模块340可以直接地访问到ECC阵列模块320。这样,如果需要,可以直接对ECC阵列模块320进行写操作。例如,在背景技术部分所提及的测试模式中,如果需要ECC阵列中写入特殊拓扑数据,则可以直接通过写选择模块340将特殊拓扑数据写入ECC阵列模块320中。
图4是根据本发明的另一实施方案的写入过程的示意图。
与图3中类似,图4中也示意性示出了写入过程中所涉及的存储器的构成,所述存储器包括数据阵列模块410、纠错码ECC阵列模块420、ECC编码模块430和写选择模块440。
如图4中可以看到的,ECC编码模块430与写选择模块440连接,且ECC编码模块430从输入端接收N位数据,对N位数据进行编码,得到M位校验数据,且将所述M位校验数据输出至写选择模块440。
与图3中不同,图4中的写选择模块440除了从ECC编码模块430接收M位校验数据之外,还从N位数据接收M位特殊拓扑数据(即,从N位特殊拓扑数据中导出M位特殊拓扑数据),且根据写选择控制指令sel_wr_mode而选择性地将M位校验数据或者M位特殊拓扑数据写入至ECC阵列模块420。
图4中的上述布置的考虑因素为:由于存储器的接口规范,一般没有额外的输入、输出端口用于ECC阵列的输入、输出数据的传输。如果写入数据阵列的N位数据是N位特殊拓扑数据,则可以考虑从N位特殊拓扑数据中导出M位特殊拓扑数据。
此时,当M小于等于N时,所述M位测试数据是所述N位数据的一部分;或者,当M大于N时,所述M位测试数据是所述N位数据的重复、补0或补1。
例如,如果N为8,M为4(M小于N)且假定N位(8位)特殊拓扑数据为‘b10101010,则M位特殊拓扑数据可以为N位特殊拓扑数据的一部分,诸如‘b1010。
再例如,如果N为8,M为16(M大于N)且再次假定N位(8位)特殊拓扑数据为‘b10101010,则M位特殊拓扑数据可以为N位特殊拓扑数据的重复(诸如,‘b1010101010101010)、补0(诸如,‘b1010101000000000或者‘b0000000010101010)或补1(诸如,‘b1010101011111111或者‘b1111111110101010)。
图4中所涉及的写选择控制指令sel_wr_mode也主要分为如下两种:
(1)测试模式,将M位特殊拓扑数据写入ECC阵列模块420;
(2)正常模式,将M位校验数据写入ECC阵列模块420。
类似于图3,图4不限制于如上几种写选择控制指令sel_wr_mode。图4中的写选择控制指令sel_wr_mode也可以包括诸如:正常模式,将M位特殊拓扑数据写入ECC阵列模块420;测试模式,将M位校验数据写入ECC阵列模块420;等等。
另外,类似于图3,本发明的图4中引入了写选择模块440,写选择模块440用于选择性地将M位校验数据或者M位测试数据写入至ECC阵列模块420。在图4中,存储器通过写选择模块440可以直接地访问到ECC阵列模块420。这样,如果需要,可以直接对ECC阵列模块420进行写操作。
图5和图6示出了在图3和图4的写入过程之后的读出过程。此时,ECC阵列模块中可能存储的是M位校验数据,也可能存储的是M位特殊拓扑数据。
图5是根据本发明的一个实施方案的读出过程的示意图。
图5中也示意性示出了读出过程中所涉及的存储器的构成,所述存储器包括数据阵列模块510、纠错码ECC阵列模块520、ECC解码模块530和读选择模块540。
从图5中可以看到,ECC解码模块530与数据阵列模块510、ECC阵列模块520连接,且ECC解码模块530从数据阵列模块510接收N位数据以及从ECC阵列模块520接收M位数据且对所述N位数据以及所述M位数据进行解码,得到经解码的数据,其中N、M均为正整数。
读选择模块540与数据阵列模块510、ECC阵列模块520、ECC解码模块530连接,且读选择模块540也从数据阵列模块510接收所述N位数据以及从ECC阵列模块520接收所述M位数据以及从ECC解码模块530接收经解码的数据,且根据读选择控制指令sel_rd_mode而选择性地进行输出。在图5中,读选择模块540从ECC解码模块530所接收的经处理的数据为经纠正的N位数据。
图5中所涉及的读选择控制指令sel_rd_mode主要分为如下几种:
(1)测试模式,仅读出N位数据;
(2)测试模式,读出N位数据以及M位数据(此时,M位数据为M位特殊拓扑数据);
(3)正常模式,读出经纠正的N位数据;
(4)正常模式,读出经纠正的N位数据以及M位数据(此时,M位数据为M位校验数据)。
然而,应理解,图5不限制于如上几种读选择控制指令sel_rd_mode。
图5中的读选择控制指令sel_rd_mode也可以包括诸如:正常模式,仅读出N位数据;正常模式,读出N位数据以及M位数据(此时,M位数据为M位特殊拓扑数据);测试模式,读出经纠正的N位数据;或者,测试模式,读出经纠正的N位数据以及M位数据(此时,M位数据为M位校验数据);等等。在本发明中,根据需要,可以在任意模式中读出N位数据、经纠正的N位数据、M位数据中的一个或多个。
对比图2,可以看到本发明的图5中引入了读选择模块540,读选择模块540用于选择性地读出N位数据、经纠正的N位数据、M位数据中的一个或多个。在图5中,存储器通过读选择模块540可以直接地访问到ECC阵列模块520。这样,如果需要,可以直接对ECC阵列模块520进行读操作。例如,在背景技术部分所提及的测试模式中,如果需要在ECC阵列中测试特殊拓扑数据,则可以直接通过读选择模块540将特殊拓扑数据从ECC阵列模块520读出。
图6是根据本发明的另一实施方案的读出过程的示意图。
与图5中类似,图6中也示意性示出了读出过程中所涉及的存储器的构成,所述存储器包括数据阵列模块610、纠错码ECC阵列模块620、ECC解码模块630和读选择模块640。
从图6中可以看到,ECC解码模块630与数据阵列模块610、ECC阵列模块620连接,且ECC解码模块630从数据阵列模块610接收N位数据以及从ECC阵列模块620接收M位数据且对所述N位数据以及所述M位数据进行解码,得到经解码的数据,其中N、M均为正整数。
读选择模块640与数据阵列模块610、ECC阵列模块620、ECC解码模块630连接,且读选择模块640也从数据阵列模块610接收N位数据以及从ECC阵列模块620接收所述M位数据以及从ECC解码模块630接收经解码的数据,且根据读选择控制指令sel_rd_mode而选择性地进行输出。在图6中,读选择模块640从ECC解码模块630所接收的经处理的数据为经纠正的N位数据以及经纠正的M位数据。
图6中的上述布置的考虑因素为:如果ECC阵列模块所存储的M位校验数据也出错,也可以根据ECC算法进行检测纠正,一般经纠正的M位校验数据是不需要输出的。然而,在一些情况下,如果测试需要,也可以将经纠正的M位校验数据输出,以供分析或者其他需求。
图6中所涉及的读选择控制指令sel_rd_mode主要分为如下几种:
(1)测试模式,仅读出N位数据;
(2)测试模式,读出N位数据以及M位数据(此时,M位数据为M位特殊拓扑数据);
(3)测试模式,读出经纠正的N位数据以及经纠正的M位数据(此时,M位数据为M位校验数据);
(4)正常模式,读出经纠正的N位数据;
(5)正常模式,读出经纠正的N位数据以及M位数据(此时,M位数据为M位校验数据)。
类似于图5,图6不限制于如上几种读选择控制指令sel_rd_mode。图6中的读选择控制指令sel_rd_mode也可以包括诸如:正常模式,仅读出N位数据;正常模式,读出N位数据以及M位数据(此时,M位数据为M位特殊拓扑数据);正常模式,读出经纠正的N位数据以及经纠正的M位数据(此时,M位数据为M位校验数据);测试模式,读出经纠正的N位数据;测试模式,读出经纠正的N位数据以及M位数据(此时,M位数据为M位校验数据);等等。在本发明中,根据需要,可以在任意模式中读出N位数据、经纠正的N位数据、M位数据、经纠正的M位数据中的一个或多个。
类似于图5,本发明的图6中引入了读选择模块640,读选择模块640用于选择性地读出N位数据、经纠正的N位数据、M位数据中的一个或多个。在图6中,存储器通过读选择模块640可以直接地访问到ECC阵列模块620。这样,如果需要,可以直接对ECC阵列模块620进行读操作。
图7是根据本发明的一个实施方案的读出方法的流程图。图7中的读出方法如上针对图3至图4中的任一个所描述的存储器。所述读出方法包括:
步骤S710:ECC解码模块从数据阵列模块接收N位数据以及从所述ECC阵列模块接收M位数据且对所述N位数据以及M位数据进行解码,得到经解码的数据;
步骤S720:读选择模块从数据阵列模块接收所述N位数据以及从所述ECC阵列模块接收所述M位数据以及从所述ECC解码模块接收经解码的数据,且所述读选择模块根据一个读选择控制指令而选择性地输出。
图8是根据本发明的一个实施方案的写入方法的流程图。图8中的写入方法如上针对图5至图6中的任一个所描述的存储器。所述写入方法包括:
步骤S810:ECC编码模块从输入端接收N位数据,对所述N位数据进行编码,得到M位校验数据;
步骤S820:写选择模块从ECC编码模块接收所述M位校验数据以及从输入端接收M位特殊拓扑数据,且根据一个写选择控制指令而选择性地将所述M位校验数据或者所述M位校验数据写入至所述ECC阵列模块。
本发明提出的存储器及其存储方法可以很容易地直接访问到ECC阵列模块,能够在写操作和读操作的过程中非常灵活地切换多种模式。
本发明中所提出的存储器是存储芯片(例如,ROM、SDRAM、RAM、DRAM、SRAM、FLASH、EPROM、EEPROM、CD-ROM或其他光盘存储装置、磁盘存储装置或其他磁性存储装置),以用于存储数据和/或计算机代码。存储器可以是或包括非瞬态易失性存储器或非易失性存储器等。
应注意,上文所提及的实施方案例示而非限制本发明,且在不脱离所附权利要求的范围的前提下,本领域技术人员将能够设计许多替代实施方案。应理解,本发明的范围由权利要求限定。
Claims (10)
1.一种存储器,其特征在于,包括:
数据阵列模块,所述数据阵列模块用于存储第一N位数据;
纠错码ECC阵列模块,所述ECC阵列模块用于存储第一M位数据;
ECC处理模块,所述ECC处理模块与所述数据阵列模块、所述ECC阵列模块连接,且所述ECC处理模块从所述数据阵列模块接收第一N位数据以及从所述ECC阵列模块接收第一M位数据且对所述第一N位数据以及第一M位数据进行处理,得到经处理的数据;
选择模块,所述选择模块与所述数据阵列模块、所述ECC阵列模块、所述ECC处理模块连接,且所述选择模块从所述数据阵列模块接收所述第一N位数据以及从所述ECC阵列模块接收所述第一M位数据以及从所述ECC处理模块接收经处理的数据,且根据一个选择控制指令而选择性地输出;
其中,N、M均为正整数。
2.根据权利要求1所述的存储器,其特征在于,所述选择控制指令为第一读选择控制指令,所述选择模块根据所述第一读选择控制指令输出所述第一N位数据。
3.根据权利要求1或2所述的存储器,其特征在于,所述选择控制指令为第二读选择控制指令,所述选择模块根据所述第二读选择控制指令输出所述第一N位数据以及所述第一M位数据。
4.根据权利要求1或2所述的存储器,其特征在于,所述ECC处理模块包括ECC解码模块,所述ECC解码模块对所述第一N位数据和所述第一M位数据进行ECC解码,得到第一经纠正的N位数据以及第一经纠正的M位数据,且将所述第一经纠正的N位数据以及所述第一经纠正的M位数据输出至所述选择模块。
5.一种用于存储器的存储方法,其特征在于,所述存储器包括:数据阵列模块,所述数据阵列模块用于存储第一N位数据;纠错码ECC阵列模块,所述ECC阵列模块用于存储第一M位数据;ECC处理模块,所述ECC处理模块与所述数据阵列模块、所述ECC阵列模块连接;以及,选择模块,所述选择模块与所述数据阵列模块、所述ECC阵列模块、所述ECC处理模块连接;所述存储方法包括:
所述ECC处理模块从所述数据阵列模块接收第一N位数据以及从所述ECC阵列模块接收第一M位数据且对所述第一N位数据以及第一M位数据进行处理,得到经处理的数据;
所述选择模块从所述数据阵列模块接收所述第一N位数据以及从所述ECC阵列模块接收所述第一M位数据以及从所述ECC处理模块接收经处理的数据,且所述选择模块根据一个选择控制指令而选择性地输出;
其中,N、M均为正整数。
6.根据权利要求5所述的存储方法,其特征在于,所述存储方法还包括:
当所述选择控制指令为第一读选择控制指令时,所述选择模块根据所述第一读选择控制指令输出所述第一N位数据。
7.根据权利要求5或6所述的存储方法,其特征在于,所述存储方法还包括:
当所述选择控制指令为第二读选择控制指令时,所述选择模块根据所述第二读选择控制指令输出所述第一N位数据以及所述第一M位数据。
8.根据权利要求5或6所述的存储方法,其特征在于,所述ECC处理模块包括ECC解码模块;所述存储方法还包括:
所述ECC解码模块对所述第一N位数据和所述第一M位数据进行ECC解码,得到第一经纠正的N位数据以及第一经纠正的M位数据,且将所述第一经纠正的N位数据以及所述第一经纠正的M位数据输出至所述选择模块。
9.一种电子设备,其特征在于,所述电子设备包括:
至少一个存储器,所述存储器为根据权利要求1-4中的任一项所述的存储器;以及
至少一个处理器,所述处理器与所述存储器连接,且所述处理器与所述存储器通过所述总线进行通信,所述处理器对所述存储器中数据进行处理。
10.一种电子设备,其特征在于,所述电子设备包括:
至少一个存储器,在所述存储器上存储有计算机可执行指令;以及
至少一个处理器,所述处理器与所述存储器连接,且所述处理器与所述存储器通过所述总线进行通信,当所述处理器执行所述计算机可执行指令时,所述计算机可执行指令使得所述处理器执行根据权利要求5至8中的任一项所述的存储方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011449520.2A CN112466380B (zh) | 2020-12-11 | 2020-12-11 | 存储器及其存储方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011449520.2A CN112466380B (zh) | 2020-12-11 | 2020-12-11 | 存储器及其存储方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112466380A true CN112466380A (zh) | 2021-03-09 |
CN112466380B CN112466380B (zh) | 2023-08-11 |
Family
ID=74800947
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011449520.2A Active CN112466380B (zh) | 2020-12-11 | 2020-12-11 | 存储器及其存储方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112466380B (zh) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6295617B1 (en) * | 1997-06-30 | 2001-09-25 | Nec Corporation | Testing method of semiconductor memory device and semiconductor memory device applicable to the method |
US20020013924A1 (en) * | 2000-07-27 | 2002-01-31 | Kouji Yamamoto | Semiconductor memory device having ECC type error recovery circuit |
CN1963950A (zh) * | 2005-11-11 | 2007-05-16 | 恩益禧电子股份有限公司 | 具有ecc功能的半导体存储设备 |
US20080016392A1 (en) * | 2006-06-26 | 2008-01-17 | Emerging Memory Technologies Inc. | Ecc system for memory |
US20120266033A1 (en) * | 2011-04-15 | 2012-10-18 | Advanced Micro Devices, Inc. | Providing test coverage of integrated ecc logic en embedded memory |
US20150301889A1 (en) * | 2013-01-09 | 2015-10-22 | Seiko Instruments Inc. | Non-volatile semiconductor storage device and method of testing the same |
US20160110253A1 (en) * | 2012-11-27 | 2016-04-21 | Sun-gyeum KIM | Semiconductor memory device including non-volatile memory, cache memory, and computer system |
CN107039086A (zh) * | 2017-05-17 | 2017-08-11 | 西安紫光国芯半导体有限公司 | 具有兼容不同数据长度的纠错功能的存储器和纠错方法 |
-
2020
- 2020-12-11 CN CN202011449520.2A patent/CN112466380B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6295617B1 (en) * | 1997-06-30 | 2001-09-25 | Nec Corporation | Testing method of semiconductor memory device and semiconductor memory device applicable to the method |
US20020013924A1 (en) * | 2000-07-27 | 2002-01-31 | Kouji Yamamoto | Semiconductor memory device having ECC type error recovery circuit |
CN1963950A (zh) * | 2005-11-11 | 2007-05-16 | 恩益禧电子股份有限公司 | 具有ecc功能的半导体存储设备 |
US20080016392A1 (en) * | 2006-06-26 | 2008-01-17 | Emerging Memory Technologies Inc. | Ecc system for memory |
US20120266033A1 (en) * | 2011-04-15 | 2012-10-18 | Advanced Micro Devices, Inc. | Providing test coverage of integrated ecc logic en embedded memory |
US20160110253A1 (en) * | 2012-11-27 | 2016-04-21 | Sun-gyeum KIM | Semiconductor memory device including non-volatile memory, cache memory, and computer system |
US20150301889A1 (en) * | 2013-01-09 | 2015-10-22 | Seiko Instruments Inc. | Non-volatile semiconductor storage device and method of testing the same |
CN107039086A (zh) * | 2017-05-17 | 2017-08-11 | 西安紫光国芯半导体有限公司 | 具有兼容不同数据长度的纠错功能的存储器和纠错方法 |
Also Published As
Publication number | Publication date |
---|---|
CN112466380B (zh) | 2023-08-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101750662B1 (ko) | 데이터 에러 교정용 회로, 장치, 및 방법 | |
KR100261790B1 (ko) | 에러 정정/검출회로와 반도체 기억장치 | |
US11144388B2 (en) | Nonvolatile memory device and memory system including nonvolatile memory device | |
US10802912B2 (en) | Semiconductor memory device and memory system having the same | |
US10790038B2 (en) | Semiconductor apparatus and test system including the semiconductor apparatus | |
US10992322B2 (en) | Data storage system and associated method for saving storage space and eliminating data errors | |
US7913110B2 (en) | Electronic circuit with a memory matrix that stores pages including extra data | |
US7075851B2 (en) | Semiconductor memory device inputting/outputting data and parity data in burst operation | |
CN112466380B (zh) | 存储器及其存储方法 | |
CN112420118B (zh) | 存储器及其存储方法和对应的电子设备 | |
US10310939B2 (en) | Semiconductor memory system and data writing method | |
US11200117B2 (en) | Semiconductor memory device, controller, memory system, and operation method thereof | |
US9361180B2 (en) | Storing data by an ECC memory | |
US10867663B2 (en) | Control method for memory and non-transitory computer-readable media | |
US8028221B2 (en) | Error correction and error detection method for reading of stored information data and a storage control unit for the same | |
US9053772B2 (en) | Method for conducting reference voltage training | |
US11698835B2 (en) | Memory and operation method of memory | |
CN112017724B (zh) | 存储系统和在存储系统中纠正错误的方法 | |
US11424765B2 (en) | ECC decoders having low latency | |
US20230307078A1 (en) | Method and device for checking data, electronic device, and storage medium | |
US9507663B1 (en) | Memory device and operation method | |
CN115910178A (zh) | 存储器、数据处理结构和数据分析方法 | |
KR19980027610A (ko) | 플래시 메모리의 에러 보정회로 | |
KR19990075207A (ko) | 내장형 램의 에러 체크 방법 |
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 |