CN112445645A - 具有经修改存取的半导体装置以及相关联方法和系统 - Google Patents
具有经修改存取的半导体装置以及相关联方法和系统 Download PDFInfo
- Publication number
- CN112445645A CN112445645A CN202010876359.0A CN202010876359A CN112445645A CN 112445645 A CN112445645 A CN 112445645A CN 202010876359 A CN202010876359 A CN 202010876359A CN 112445645 A CN112445645 A CN 112445645A
- Authority
- CN
- China
- Prior art keywords
- data
- ecc
- subset
- user accessible
- burst length
- 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.)
- Pending
Links
Images
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/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/1048—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 using arrangements adapted for a specific error detection or correction feature
- G06F11/1052—Bypassing or disabling error detection or correction
-
- 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/1044—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 with specific ECC/EDC distribution
-
- 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/1012—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 using codes or arrangements adapted for a specific type of error
- G06F11/102—Error in check bits
-
- 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/1012—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 using codes or arrangements adapted for a specific type of error
- G06F11/1032—Simple parity
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Dram (AREA)
Abstract
本申请涉及一种具有经修改的存取的半导体装置以及相关联方法和系统。描述了存储器装置、包含存储器装置的系统和操作存储器装置的方法,其中主机装置可以存取一组存储器胞元(例如,可被配置成存储ECC奇偶校验位的阵列中的一部分),所述组存储器胞元原本被保留用于存储器装置的ECC功能。所述存储器装置可以包含用于指示其ECC功能被启用还是被禁用的寄存器。在所述寄存器指示所述ECC功能被禁用时,所述存储器装置可以通过使所述组存储器胞元可用于用户可存取数据来增加可用于所述主机装置的存储容量。另外或可替代地,所述存储器装置可以在所述组存储器胞元中存储与所述存储器装置的各种操作方面相关联的元数据。
Description
技术领域
本公开总体上涉及半导体装置,并且更具体地涉及一种具有经修改存取的半导体装置以及相关联方法和系统。
背景技术
存储器装置广泛地用于存储与如计算机、无线通信装置、相机、数字显示器等各种电子装置有关的信息。存储器装置通常以计算机或其它电子装置中的内部半导体集成电路和/或外部可移动装置的形式提供。存在许多不同类型的存储器,包含易失性存储器和非易失性存储器。包含随机存取存储器(RAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)和同步动态随机存取存储器(SDRAM)等的易失性存储器需要施加电源来维持其数据。相比而言,非易失性存储器即使不使用外部电源也可以保留其存储的数据。非易失性存储器可用于多种技术,包含闪速存储器(例如,与非和或非)、相变存储器(PCM)、铁电随机存取存储器(FeRAM)、电阻式随机存取存储器(RRAM)和磁性随机存取存储器(MRAM)等。改进存储器装置通常可以包含增加存储器胞元密度、增加读取/写入速度或以其它方式降低操作等待时间、增加可靠性、增加数据保留、降低功耗或降低制造成本以及其它度量。
发明内容
一方面,本申请涉及一种方法,所述方法包括:在存储器装置的指示所述存储器装置的纠错码(ECC)模式被启用还是被禁用的模式寄存器处接收信令;至少部分地基于所述模式寄存器指示所述ECC模式被启用还是被禁用来选择从所述存储器装置到主机装置的数据传输的突发长度;以及将具有所选突发长度的数据从所述存储器装置传输到所述主机装置。
另一方面,本申请涉及一种设备,所述设备包括:寄存器,所述寄存器被配置成指示错误检查和纠正(ECC)功能被启用还是被禁用;存储器阵列,所述存储器阵列包含多个存储器胞元,所述多个存储器胞元包含第一子集和第二子集,所述第一子集被配置成存储第一用户可存取数据,所述第二子集被配置成:在所述寄存器指示所述ECC功能被禁用时存储第二用户可存取数据、与所述设备相关联的元数据或两者,并且在所述寄存器指示所述ECC功能被启用时存储ECC数据;以及电路系统,所述电路系统被配置成:在所述寄存器指示所述ECC功能被启用时与主机装置进行通信持续第一突发长度,所述第一突发长度用于传送所述第一子集中的所述第一用户可存取数据,并且在所述寄存器指示所述ECC功能被禁用时与所述主机装置进行通信持续第二突发长度,所述第二突发长度用于传送所述第一子集中的所述第一用户可存取数据和所述第二子集中的所述第二用户可存取数据或所述元数据。
另一方面,本申请涉及一种方法,所述方法包括:向存储器装置的指示所述存储器装置的纠错码(ECC)模式被启用还是被禁用的模式寄存器传输信令;向所述存储器装置传输读取命令;以及响应于所述读取命令而接收数据,其中所述数据的突发长度至少部分地基于所述ECC模式被启用还是被禁用,如由所述模式寄存器所指示的。
附图说明
图1是示意性地展示了根据本发明技术的实施例的存储器装置的框图。
图2是示意性地展示了根据本发明技术的实施例的存储器装置的框图。
图3是展示了根据本发明技术的实施例的操作存储器装置的方法的总体概要的流程图。
图4是示意性地展示了根据本发明技术的实施例的存储器系统的框图。
图5和6是展示了根据本发明技术的实施例的操作存储器装置的方法的流程图。
具体实施方式
一种存储器装置可以包含用于提供可靠数据——例如,管芯上ECC功能的错误检查和纠正(ECC)功能。执行ECC功能的算术、程序或电路系统可以被称为或包含纠错码(error-correcting code)(其也可以被称为纠错码(error-correction code))的各方面。此类存储器装置可以包含ECC电路和支持管芯上ECC功能的一组存储器胞元(例如,被配置成存储ECC奇偶校验位、ECC阵列的存储器阵列中的一部分)。在一些实施例中,所述组存储器胞元可以被保留以内部存储(例如,对用户不可存取的)ECC数据,并且存储器装置的指定存储容量可以不包含ECC阵列容量。在一些实例中,ECC阵列容量可以占据存储器装置的存储器阵列的可观部分——例如,总存储器阵列空间的大约6%。一些存储器系统可以包含主机装置,所述主机装置与包含管芯上ECC功能的存储器装置耦接,并且主机装置(或存储器系统)可以在不依赖于管芯上ECC功能的情况下执行所述主机装置自身的ECC功能。因此,可以采用保留以支持管芯上ECC功能的所述组存储器胞元以提供可以以其它方式可用的另外的特征——例如,超出指示为对存储器装置的用户可用的指定存储容量的另外的存储容量。
本发明技术的若干个实施例涉及存储器装置、包含存储器装置的系统以及操作存储器装置的方法,其中当ECC功能——例如由主机装置禁用时,主机装置可以存取针对存储器装置中的ECC功能保留的一组存储器胞元。在一个实施例中,存储器装置包含用于指示ECC功能被启用还是被禁用的寄存器。当ECC功能禁用时,存储器装置可以配置所述组存储器胞元来存储用户数据、元数据或两者。因此,存储器装置可以增加主机装置可用的存储容量——例如,将位输出增加大约6%。
存储器装置中的元数据可以是指与其它数据(例如,传输或接收到的数据)或存储器装置的操作方面(如操作温度、等待时间设置、数据传输参数)相关联的各种数据。在一些实施例中,存储器装置可以将元数据存储于一或多个寄存器中,存储器装置的输出电路对所述一或多个寄存器进行存取。在一些实施例中,存储器装置可以将元数据存储于存储器阵列(包含在ECC功能禁用时针对ECC功能保留的所述组存储器胞元)中。在存储器装置将元数据存储于存储器阵列中之后,元数据可以被视为用户数据的一部分以供将来存取。如此,存储器装置可以在不利用单独的命令(例如,用于读取存储于一或多个寄存器中的元数据的模式寄存器读取(MRR)命令)作为存取命令(例如,读取命令)的一部分的情况下(在存储于存储器阵列中时)输出元数据。
此外,在寄存器指示管芯上ECC功能禁用时,存储器装置可以修改突发长度以容纳待存储于所述组存储器胞元中的另外的信息(例如,另外的用户数据)或待从所述组存储器胞元中读取的另外的信息(例如,另外的用户数据或元数据)。例如,在寄存器指示管芯上ECC功能启用时,存储器装置可以使用第一突发长度(例如,BL32,其对应于双倍数据速率(DDR)方案下的十六(16)个时钟周期)。然而,在寄存器指示管芯上ECC功能禁用时,存储器装置可以使用第二突发长度(例如,BL34,其对应于DDR方案下的十七(17)个时钟周期)以结合另外的数据(例如,与原本被保留用于ECC功能的所述组存储器胞元相关联的用户数据或元数据)量。
参考图1描述了支持本发明技术的实施例的存储器装置。参考图2提供了存储器装置的更详细描述。图3进一步展示了根据本发明技术的实施例的存储器装置的各个操作方面。参考图4描述了支持本发明技术的实施例的存储器系统。参考图5和6描述了说明操作存储器装置的方法的流程图。
图1是示意性地展示了根据本发明技术的实施例的存储器装置100的框图。存储器装置100可以包含存储器胞元的阵列,如存储器阵列150。存储器阵列150可以包含多个组(例如,图1的实例中的组0-15),并且每个组可以包含多条字线(WL)、多条位线(BL)以及布置在字线(例如,m条字线,其也可以被称为行)与位线(例如,n条位线,其也可以被称为列)的交叉点处的多个存储器胞元(例如,m×n个存储器胞元)。存储器胞元可以包含多种不同的存储器媒体类型中的任何一种存储器媒体类型,包含电容式、磁阻式、铁电式、相变等。在一些实施例中,存储器阵列150(例如,ECC平面)的一部分可以被配置成存储ECC奇偶校验位。也就是说,存储器阵列150可以包含存储器胞元的第一子集和存储器胞元的第二子集(例如,ECC奇偶校验位),所述第一子集被配置成存储用户可存取数据,所述第二子集被配置成存储不同种类的数据——例如,在ECC功能启用时存储ECC数据,在ECC功能禁用时存储非ECC数据。对字线WL的选择可以由行解码器140执行,并且对位线BL的选择可以由列解码器145执行。可以为对应的位线BL提供读出放大器(SAMP),并且可以将所述读出放大器连接到至少一个相应的局部I/O线对(LIOT/B),所述局部I/O线对进而可以通过可以充当开关的传输门(TG)耦接到至少一个相应的主I/O线对(MIOT/B)。存储器阵列150还可以包含板线和用于管理所述板线的操作的对应电路系统。
在一些实施例中,存储器阵列150包含存储器阵列,所述存储器阵列包含一组存储器胞元。所述组存储器胞元可以包含存储器胞元的第一子集,所述第一子集被配置成存储用户可存取数据(例如,来自主机装置的数据)。此外,所述组存储器胞元可以包含存储器胞元的第二子集,所述第二子集被保留以存储ECC数据以支持存储器装置100的ECC功能。因此,在ECC功能启用时,主机装置可以不直接存取存储器胞元的第二子集。然而,在ECC功能禁用时,存储器装置100可以将存储器胞元的第二子集配置为存储另外的用户可存取数据(例如,允许从主机装置存取)、与存储器装置100相关联的元数据或两者。在一些实施例中,存储器装置100可以将存储器胞元的第二子集配置为存储另外的用户可存取数据(例如,整个存储器阵列150被配置成存储用户可存取数据)并且将元数据存储在其它地方——例如,存储器装置100的一或多个寄存器。进一步地,存储器装置100可以包含被配置成指示ECC功能被启用还是被禁用的寄存器(例如,模式寄存器)。
存储器装置100可以采用多个外部端子,所述多个外部端子包含耦接到命令总线和地址总线以分别接收命令信号CMD和地址信号ADDR的命令端子和地址端子。存储器装置可以进一步包含用于接收芯片选择信号CS的芯片选择端子;用于接收时钟信号CK和CKF的时钟端子;用于接收数据时钟信号WCK和WCKF的数据时钟端子;数据端子DQ、RDQS、DBI(针对数据总线反转功能)和DMI(针对数据屏蔽反转功能);电源端子VDD、VSS、VDDQ和VSSQ。
可以从外部向命令端子和地址端子供应地址信号和组地址信号。向地址端子供应的地址信号和组地址信号可以通过命令/地址输入电路105传送到地址解码器110。地址解码器110可以接收地址信号,并且向行解码器140供应经解码行地址信号(XADD)并且向列解码器145供应经解码列地址信号(YADD)。地址解码器110还可以接收ADDR输入的组地址部分,并且向行解码器140和列解码器145两者供应经解码组地址信号(BADD)。
可以从存储器控制器向命令端子和地址端子供应命令信号CMD、地址信号ADDR和芯片选择信号CS。命令信号可以表示来自存储器控制器的各种存储器命令(例如,包含存取命令,所述存取命令可以包含读取命令和写入命令)。芯片选择信号CS可以用于选择存储器装置100以对提供给命令端子和地址端子的命令和地址进行响应。当向存储器装置100提供激活CS信号时,可以对命令和地址进行解码并且可以执行存储器操作。命令信号CMD可以通过命令/地址输入电路105以内部命令信号ICMD的形式提供给命令解码器115。命令解码器115可以包含用于对内部命令信号ICMD进行解码以生成用于执行存储器操作的各种内部信号和命令的电路,所述内部命令信号例如用于选择字线的行命令信号和用于选择位线的列命令信号。内部命令信号还可以包含输出激活命令和输入激活命令,如计时命令CMDCK(图1中未示出)。
在一些实施例中,命令解码器115可以进一步包含一或多个用于跟踪各种计数或值(例如,对由存储器装置100接收到的刷新命令或由存储器装置100执行的自刷新操作的计数)的寄存器118。在一些实施例中,寄存器118的子集可以被称为模式寄存器,并且被配置成存储用户定义的变量以在执行各种功能、特征和模式(例如,ECC模式)时提供灵活性。例如,存储器装置100可以在模式寄存器处从主机装置接收信令,所述模式寄存器指示存储器装置的ECC模式被启用还是被禁用——例如指示存储器装置100的ECC功能被启用还是被禁用。基于存储于模式寄存器处的指示,存储器装置100可以存取存储器阵列150的ECC奇偶校验位并且执行各种操作——例如,使用ECC奇偶校验位执行ECC功能,在ECC奇偶校验位处/从ECC奇偶校验位存储/检索用户可存取数据或元数据。
当向具有开放行的组发出读取命令并且及时供应列地址作为读取命名的一部分时,可以从由行地址(其可能已经以标识开放行的激活命令的一部分的形式提供)和列地址指定的存储器阵列150中的存储器胞元中读取读取数据。读取命令可以由命令解码器115接收,所述命令解码器可以向输入/输出电路160提供内部命令,使得读取数据可以根据RDQS时钟信号通过读取/写入放大器155和输入/输出电路160从数据端子DQ、RDQS、DBI和DMI输出。读取数据可以在由可以编程在存储器装置100中,例如在模式寄存器(例如,寄存器118)中的读取等待时间信息RL所限定的时间提供。读取等待时间信息RL可以根据CK时钟信号的时钟周期来限定。例如,当提供了相关联读取数据时,读取等待时间信息RL可以是CK信号的在由存储器装置100接收到读取命令之后的多个时钟周期。
当向具有开放行的组发出写入命令并且及时供应列地址作为写入命令的一部分时,可以根据WCK和WCKF时钟信号将写入数据供应给数据端子DQ、DBI和DMI。写入命令可以由命令解码器115接收,所述命令解码器可以向输入/输出电路160提供内部命令,使得写入数据可以由输入/输出电路160中的数据接收器接收,并且通过输入/输出电路160以及读取/写入放大器155供应到存储器阵列150。写入数据可以写入在由行地址和列地址指定的存储器胞元中。写入数据可以在由写入等待时间WL信息限定的时间提供给数据端子。写入等待时间WL信息可以编程在存储器装置100中,例如在模式寄存器(例如,寄存器118)中。可以根据CK时钟信号的时钟周期限定写入时延WL信息。例如,当接收到相关联写入数据时,写入等待时间信息WL可以是CK信号的在由存储器装置100接收到写入命令之后的多个时钟周期。
在DDR方案下,突发长度为2N的数据突发(例如,八(8)、十六(16)、三十二(32))包含在N(例如,四(4)、八(8)、十六(16))个时钟周期期间对存储器装置的每个输出引脚(例如,每个数据端子DQ)传输的2N位数据。在一些实施例中,输入/输出电路160可以被配置成在寄存器(例如,模式寄存器)指示ECC功能启用时与主机装置进行通信(例如,通过数据端子DQ传输或接收数据)持续第一突发长度。例如,第一突发长度可以是三十二(32),在DDR方案下,三十二对应于十六(16)个时钟周期(例如,WCK和WCKF时钟周期)。第一突发长度可以确定为在数据突发内传送(例如,传输或接收)存储器胞元的第一子集中的用户可存取数据。在一些实施例中,在ECC功能启用时,输入/输出电路160可以在另外的一或多个数据突发(即,第一突发长度之外的一或多个数据突发)期间输出元数据(例如,存储于一或多个寄存器上的元数据)。
此外,输入/输出电路160可以被配置成在寄存器(例如,模式寄存器)指示ECC功能禁用时与主机装置进行通信持续第二突发长度。例如,第一突发长度可以是三十四(34),在DDR方案下,三十四对应于十七(17)个时钟周期。第二突发长度可以确定为在数据突发内传送存储器胞元的第一子集中的用户可存取数据和存储器胞元的第二子集中的另外的用户可存取数据或元数据。在一些实施例中,元数据可以存储于其它地方(例如,输入/输出电路160存取的寄存器180)并且不存储于存储器胞元的第二子集中(或存储器胞元的第一子集中)。在一些实施例中,第二突发长度(例如,较长的数据突发)可以比第一突发长度(例如,较短的数据突发)长一(1)个以上的时钟周期——例如,长两(2)个时钟周期,长三(3)个时钟周期,或者甚至更多。
在一些实施例中,存储器装置100可以在指示存储器装置100的ECC模式(例如,ECC功能)被启用还是被禁用的寄存器118(例如,模式寄存器)处接收信令。存储器装置100可以响应于接收到信令而基于模式寄存器指示ECC模式被启用还是被禁用来选择到主机装置的数据传输的突发长度。随后,存储器装置100可以将具有所选突发长度的数据传输到主机装置。在一些实施例中,存储器装置100可以确定ECC模式被禁用并且从第一突发长度和第二突发长度中选择突发长度,所述第二突发长度包含比第一突发长度的位多的位。存储器装置100可以传输具有所选突发长度(例如,第二突发长度)的数据。
可以向电源端子供应电源电位VDD和VSS。这些电源电位VDD和VSS可以供应给内部电压发生器电路170。内部电压发生器电路170可以基于电源电位VDD和VSS生成各种内部电位VPP、VOD、VARY、VPERI等。内部电位VPP可以在行解码器140中使用,内部电位VOD和VARY可以在包含在存储器阵列150中的读出放大器中使用,并且内部电位VPERI可以在许多其它电路块中使用。
还可以向电源端子供应电源电位VDDQ。电源电位VDDQ可以与电源电位VSS一起供应给输入/输出电路160。在本发明技术的实施例中,电源电位VDDQ的电位可以与电源电位VDD的电位相同。在本发明技术的另一个实施例中,电源电位VDDQ的电位可以与电源电位VDD的电位不同。然而,可以将专用电源电位VDDQ用于输入/输出电路160,使得由输入/输出电路160产生的电源噪声不会传播到其它电路块。
可以向时钟端子和数据时钟端子供应外部时钟信号和互补外部时钟信号。外部时钟信号CK、CKF、WCK、WCKF可以供应给时钟输入电路120。CK信号和CKF信号可以是互补的,并且WCK信号和WCKF信号也可以是互补的。互补时钟信号可以具有相反的时钟电平并且在同一时间在相反的时钟电平之间转变。例如,当时钟信号处于低时钟电平时,互补时钟信号处于高电平,并且当时钟信号处于高时钟电平时,互补时钟信号处于低时钟电平。此外,当时钟信号从低时钟电平转变为高时钟电平时,互补时钟信号从高时钟电平转变为低时钟电平,并且当时钟信号从高时钟电平转变为低时钟电平时,互补时钟信号从低时钟电平转变为高时钟电平。
包含在时钟输入电路120中的输入缓冲器可以接收外部时钟信号。例如,当由来自命令解码器115的CKE信号启用时,输入缓冲器可以接收CK信号和CKF信号以及WCK信号和WCKF信号。时钟输入电路120可以接收外部时钟信号以生成内部时钟信号ICLK。内部时钟信号ICLK可以供应给内部时钟电路130。内部时钟电路130可以基于接收到的内部时钟信号ICLK和来自命令解码器115的时钟启用信号CKE提供各种相位和频率控制的内部时钟信号。例如,内部时钟电路130可以包含时钟路径(图1中未示出),所述时钟路径接收内部时钟信号ICLK并且向命令解码器115提供各种时钟信号。内部时钟电路130可以进一步提供输入/输出(IO)时钟信号。IO时钟信号可以供应给输入/输出电路160并且可以用作用于确定读取数据的输出定时和写入数据的输入定时的定时信号。IO时钟信号可以以多个时钟频率提供,使得数据可以以不同的数据速率从存储器装置100输出和输入到所述装置。当期望高存储器速度时,较高的时钟频率可能是令人期望的。当期望较低功耗时,较低的时钟频率可能是令人期望的。内部时钟信号ICLK还可以供应给定时发生器135,并且因此可以生成各种内部时钟信号。
存储器装置100可以连接到多个能够将存储器用于临时或永久地存储信息的电子装置中的任何电子装置或其组件。例如,存储器装置100的主机装置可以是计算装置,如台式计算机或便携式计算机、服务器、手持装置(例如,移动电话、平板计算机、数字阅读器、数字媒体播放器)或其某个组件(例如,中央处理单元、协处理器、专用存储器控制器等)。主机装置可以是联网装置(例如,交换机、路由器等)或数字图像、音频和/或视频的记录器、车辆、电器、玩具或多种其它产品中的任何产品。在一个实施例中,主机装置可以直接连接到存储器装置100,但是在其它实施例中,主机装置可以间接(例如,通过联网连接或通过中间装置)连接到存储器装置。
图2是示意性地展示了根据本发明技术的实施例的存储器装置200的框图。存储器装置200可以是参考图1描述的存储器装置100的实例或者可以包含存储器装置的各方面。存储器装置200可以包含外围电路270、寄存器275、ECC电路280和存储器阵列250。外围电路270可以包含参考图1描述的各种组件的各方面。例如,外围电路270可以包含命令/地址输入电路105、地址解码器110、命令解码器115和输入/输出电路160等的各方面。此外,存储器阵列250可以是参考图1描述的存储器阵列150的实例或者可以包含存储器阵列的各方面。
寄存器275(其也可以被称为模式寄存器)可以被配置成指示存储器装置200的ECC功能(例如,管芯上ECC功能)被启用还是被禁用。在一些实施例中,与存储器装置200耦接的主机装置可以在不依赖于存储器装置200的管芯上ECC功能的情况下执行ECC功能。在此类情况下,寄存器275可以指示管芯上ECC功能(例如,由主机装置)禁用,使得存储器装置200可以修改某些操作方面以向主机装置提供另外的特征。
存储器阵列250可以包括一组存储器胞元,所述组存储器胞元包含第一子集260和第二子集265。第一子集260可以被配置成存储第一用户可存取数据——例如,来自主机装置的数据。在一些实施例中,第一子集260可以占据存储器阵列250的存储容量的主要部分——例如,大于存储容量的90%。第一子集260可以表示存储器阵列250的一部分,所述部分可以由主机装置存取,不论管芯上ECC功能被启用还是被禁用。在一些实施例中,第二子集265可以被配置成在ECC功能启用时存储支持存储器装置200的管芯上ECC功能的ECC数据——因此,第二子集265也可以被称为ECC奇偶校验位或奇偶校验平面。第二子集265可以占据存储器阵列250的存储容量的相对较小但可观的部分——例如,存储容量的大约5%到10%。在一些实施例中,当ECC功能启用时,第二子集265可能无法由主机装置存取。在其它实施例中,在ECC功能启用时,第二子集265可以由主机装置存取,使得主机装置可以存取ECC数据。
然而,在ECC功能禁用时,第二子集265可以被配置成存储第二用户可存取数据(例如,来自主机装置的数据)、与存储器装置200相关联的元数据或两者。当第二子集265被配置成存储第二用户可存取数据时,存储器装置200可以向主机装置提供增加的存储容量——例如,几乎为整个存储容量(即,整个存储容量对应于第一子集260和第二子集265)的100%。也就是说,除了对应于第一子集260的存储容量(其可以被称为存储器装置的指定存储容量)之外,存储器装置200可以向主机装置提供额外的存储容量(即,对应于第二子集265的存储容量)。此外,第一子集260和第二子集265可以提供未被存储器装置200的ECC功能纠正的第一用户可存取数据和第二用户可存取数据。此类未经纠正的用户可存取数据可以为主机装置提供在错误特性和/或特征改变的情况下优化和/或修改其ECC例程的机会。
另外或可替代地,第二子集265可以被配置成存储元数据,所述元数据包括与存储器装置200的操作模式有关的信息,如操作温度、与存取命令相关联的等待时间设置、用于数据传输的参数、测试模式或其组合。以此方式,存储器装置200可以以存取操作的一部分(例如,指向第一子集260的读取命令)的形式提供元数据,而不必引发用于检索可能以其它方式存储于存储器装置200的各种寄存器(例如,模式寄存器)的元数据的命令(例如,MRR命令)。此类从寄存器检索元数据的命令可能会为存储器装置200引入不期望的延迟,因为命令可能会将存储器装置200置于特定模式(例如,“状态”模式)下,从而导致存储器阵列250处于某一状况(例如,“空闲”状况)。因此,使用此类命令可能受到限制,并且主机装置对元数据的可见性也可能受到限制。
在一些实施例中,第二子集265可以组织为物理上邻近(或非常接近)第一子集260,使得存储器装置200的支持第一子集260和第二子集265的某些组件(例如,行解码器140、列解码器145、读取/写入放大器155、读出放大器(SAMP))可以被共享或被有效布局。在其它实施例中,第二子集265可以组织为与第一子集260分离,使得第一子集260和第二子集265可以彼此相对独立地操作——例如,第一子集和第二子集具有单独的电源域、对控制和/或数据路径的单独的路由。
当ECC功能启用时,ECC电路280为存储器装置200提供ECC功能。ECC电路可以与第二子集265耦接并且使用存储于第二子集265中的ECC数据对存储于第一子集260中的第一用户可存取数据执行ECC功能。在一些实施例中,ECC电路280可以被配置成检测第一用户可存取数据中的两个或两个以上错误和/或纠正第一用户可存取数据中的一或多个错误。例如,ECC电路280可以检测第一用户可存取数据中的两位错误并且纠正第一用户可存取数据中的一位错误。在一些实施例中,ECC电路280可以被配置成指示第一用户可存取数据包含大于其检测和纠正能力的错误量。
外围电路270可以被配置成在寄存器275指示ECC功能启用时与主机装置进行通信持续第一突发长度(例如,BL32),其中第一突发长度用于传送第一子集260中的第一用户可存取数据。另外,外围电路270可以被配置成在寄存器275指示ECC功能禁用时与主机装置进行通信持续第二突发长度(例如,BL34、BL36、BL38、BL40),其中第二突发长度用于传送第一子集260中的第一用户可存取数据和第二子集265中的第二用户可存取数据或元数据。在一些实施例中,外围电路270可以包含与存储器阵列250(因此与第一子集260和第二子集265)耦接的逻辑电路(例如,第一逻辑电路)。第一逻辑电路可以被配置成在寄存器275指示ECC功能禁用时将第一用户可存取数据与第二用户可存取数据或元数据组合以传输到主机装置。
在一些实施例中,在ECC功能启用时,存储器装置200(例如,外围电路270)可以被配置成向主机装置提供存储于第二子集265处的ECC数据(例如,与存储于第一子集260处的用户可存取数据相关联的ECC数据)。在此类实施例中,在存储器装置200传输存储于第一子集260的用户可存取数据和存储于第二子集265处的ECC数据时可以修改突发长度(例如,从BL32增加到BL34)。在其它实施例中,在ECC功能禁用时,存储器装置200(例如,外围电路270)可以被配置成与主机装置进行通信(例如,检索和传输存储于第一子集260处的用户可存取数据、在第一子集260处检索和存储用户可存取数据),而不修改突发长度——例如,使用单个突发长度(例如,BL32)向(从)主机装置传输(或接收)用户可存取数据,无论ECC功能被启用还是被禁用。在此类实施例中,用户可存取数据可以未被存储器装置200的ECC功能纠正。
在一些实施例中,存取命令(例如,读取命令、写入命令)可以指向第一子集260或者第一子集260和第二子集265两者。在此类实施例中,存储器装置(例如,外围电路270)可以基于以下来操作:ECC功能被启用还是被禁用和/或存取命令指向第一子集260还是第一子集260和第二子集265两者。例如,在ECC功能启用时和在存取命令指向第一子集260时,存储器装置200可以与主机装置进行通信持续与第一子集260处的第一用户可存取数据相对应的第一突发长度(例如,BL32)。在另一个实例中,在ECC功能启用时和在存取命令指向第一子集260和第二子集265两者时,存储器装置200可以与主机装置进行通信持续第二突发长度(例如,BL34),所述第二突发长度对应于第一子集260处的第一用户可存取数据和第二子集265处的ECC数据。
在又另一个实例中,在ECC功能禁用时和在存取命令指向第一子集260和第二子集265两者时,存储器装置200可以与主机装置进行通信持续第二突发长度(例如,BL34),所述第二突发长度对应于第一子集260处的第一用户可存取数据和第二子集265处的第二用户可存取数据或元数据。在又另一个实例中,在ECC功能禁用时和在存取命令指向第一子集260时,存储器装置200可以与主机装置进行通信持续与第一子集260中的第一用户可存取数据相对应的第一突发长度(例如,BL32)。在一些实施例中,存储器装置200可以包含另外的寄存器276(图2中以虚线绘制),所述另外的寄存器被配置成指示存取命令(例如,读取命令、写入命令)指向第一子集260还是第一子集260和第二子集265两者。在此类实施例中,存储器装置200(例如,外围电路270)可以基于寄存器275(例如,指示ECC功能被启用还是被禁用)和另外的寄存器276(例如,指示存取命令指向第一子集260还是第一子集260和第二子集265两者)来操作。
尽管在前述示例实施例中已经描述和展示了具有占据存储器装置的大于90%的存储容量的第一子集和占据存储器装置的小于10%的存储容量的第二子集的存储器阵列,但是在其它实施例中,可以向存储器装置提供具有不同的容量分配的存储器阵列。例如,可以提供具有小于90%的存储容量(例如,75%、66%或甚至50%或更少)的第一子集。
图3是展示了根据本发明技术的实施例的操作存储器装置的方法的总体概要的流程图300。流程图300可以是存储器装置200(或者存储器装置200的外围电路270)可以执行的方法的实例或者包含所述方法的各方面。此类存储器装置(例如,存储器装置100或200)可以包含具有一组存储器胞元的存储器阵列(例如,存储器阵列150或250),其中所述组存储器胞元包含被配置成存储第一用户可存取数据的第一子集(例如,第一子集260)和被配置成存储ECC数据的第二子集(例如,第二子集265)。进一步地,存储器装置可以维持被配置成指示ECC功能被启用还是被禁用的寄存器(例如,寄存器275)。
在一些情况下,在步骤305处,存储器装置(例如,存储器装置200的外围电路270)可以基于检查寄存器(例如,寄存器275)来确定ECC功能启用。随后,在步骤310处,存储器装置可以激活ECC电路(例如,ECC电路280)。
在步骤315处,存储器装置可以在从主机装置接收到读取命令时从第一子集检索第一用户可存取数据。如上文所阐述,存储器装置可能——例如,已经根据存储于第二子集265中的ECC数据使用ECC电路280执行了ECC功能。在一些实施例中,存储器装置可以使用存储于第二子集265中的ECC数据检测存储于第一子集中的第一用户可存取数据中的至少一个错误。进一步地,存储器装置可以在将第一用户可存取数据输出到主机装置之前在第一用户可存取数据中纠正所述至少一个错误。以这种方式,在将第一用户可存取数据传输到主机装置之前,第一用户可存取数据中的一或多个错误可能已经被纠正。在步骤320处,存储器装置可以与主机装置进行通信(例如,向主机装置传输第一用户可存取数据)持续第一突发长度(例如,BL32)。
可替代地,在步骤325处,在ECC功能启用时,存储器装置可以在从主机装置接收到写入命令时从主机装置接收第一用户可存取数据持续第一突发长度。随后,存储器装置可以生成与第一用户可存取数据相关联的ECC数据(例如,ECC奇偶校验位)。在步骤330处,存储器装置可以将第一用户可存取数据存储于第一子集中并且将与第一用户可存取数据相关联的ECC数据存储于第二子集中。
在其它情况下,参考步骤305,存储器装置(例如,存储器装置200的外围电路270)可以基于检查寄存器(例如,寄存器275)来确定ECC功能禁用。随后,在步骤340处,存储器装置可以绕过ECC电路(例如,ECC电路280)。
在步骤345处,存储器装置可以在从主机装置接收到读取命令时在第一子集中检索第一用户可存取数据和在第二子集中检索第二用户可存取数据或元数据,其中第二子集可以被进一步配置成在ECC功能禁用时存储第二用户可存取数据、元数据或两者。在一些实施例中,在ECC功能禁用时,存储器装置可以同时存取所述组存储器胞元的第一子集和第二子集。在一些实施例中,存储器装置可以将第一用户可存取数据与第二用户可存取数据或元数据组合以传输到主机装置。
在一些实施例中,存储器装置可以确定第二突发长度,在所述第二突发长度期间,存储器装置传输第一用户可存取数据和第二用户可存取数据或元数据。存储器装置可以基于第二用户可存取数据的量或元数据的量确定第二突发长度(例如,BL34),其中第二突发长度大于第一突发长度。进一步地,存储器装置可以通过使第一突发长度递增偶数个突发来确定第二突发长度。例如,存储器装置可以通过递增与DDR方案下的一个时钟周期相对应的两个突发来从BL32确定BL34。在其它实例中,存储器装置可以从BL32(通过递增对应于两个时钟周期的四个突发)确定BL36、(通过递增对应于三个时钟周期的六个突发)确定BL38或(通过递增对应于四个时钟周期的八个突发)确定BL40。
在步骤350处,存储器装置可以向主机装置传送(例如,传输)第一用户可存取数据和第二用户可存取数据或元数据持续第二突发长度(例如,BL34)。可替代地,在步骤355处,存储器装置可以在从主机装置接收到写入命令时从主机装置接收第一用户可存取数据和第二用户可存取数据持续第二突发长度。随后在步骤360处,存储器装置可以将第一用户可存取数据存储于第一子集中并且将第二用户可存取数据存储于第二子集中。
图4是具有根据本发明技术的实施例配置的存储器装置400的系统401的框图。存储器装置400可以是参考图1和2描述的存储器装置100和200的实例或者包含所述存储器装置的各方面。如所示出的,存储器装置400包含主存储器402(例如,DRAM、与非闪存、或非闪存、FeRAM、PCM等)和控制电路系统406,所述控制电路系统可操作地耦接到主机装置408(例如,上游中央处理器(CPU))。主存储器402可以是参考图1和2描述的存储器阵列150或250的实例或者包含所述方法的各方面。进一步地,控制电路系统406可以是参考图2描述的外围电路270的实例或包含所述外围电路的各方面。主存储器402包含多个存储器单元420,所述多个存储器单元各自包含多个存储器胞元。存储器单元420可以是单独的存储器管芯、单个存储器管芯中的存储器平面、与硅穿孔(TSV)竖直连接的存储器管芯堆叠等。例如,在一个实施例中,存储器单元420中的每个存储器单元可以由半导体管芯形成并且与其它存储器单元管芯布置在单个装置封装中。在其它实施例中,多个存储器单元420可以共同定位于单个管芯上和/或跨多个装置封装分布。在一些实施例中,存储器单元420还可以细分为存储器区域428(例如,组、列、通道、块、页等)。
存储器胞元可以包含例如被配置成永久或半永久地存储数据的浮栅存储元件、电荷捕获存储元件、相变存储元件、电容式存储元件、铁电存储元件、磁阻式存储元件和/或其它合适的存储元件。主存储器402和/或单独的存储器单元420还可以包含用于存取存储器胞元和/或对存储器胞元进行编程(例如,写入)和其它功能,如用于处理信息和/或与控制电路系统406或主机装置408进行通信的其它电路组件,如多路复用器、解码器、缓冲器、读取/写入驱动器、地址寄存器、数据输出/数据输入寄存器等。尽管出于说明的目的在所展示的实施例中被示出为具有一定数量的存储器胞元、行、列、区域和存储器单元,但是存储器胞元、行、列、区域和存储器单元的数量可以变化,并且在其它实施例中,其尺度可以大于或小于所展示的实例中所示的尺度。例如,在一些实施例中,存储器装置400可以仅包含一个存储器单元420。可替代地,存储器装置400可以包含两个、三个、四个、八个、十个或更多个(例如,16个、32个、64个或更多个)存储器单元420。尽管在图4中将存储器单元420示出为各自包含四个存储器区域428,但是在其它实施例中,每个存储器单元420可以包含一个、两个、三个、八个或更多个(例如,16个、32个、64个、100个、128个、256个或更多个)存储器区域。
在一个实施例中,控制电路系统406可以设置在与主存储器402(例如,包含命令/地址/时钟输入电路系统、解码器、电压发生器和定时发生器、输入/输出电路系统等)的管芯相同的管芯上。在另一个实施例中,控制电路系统406可以是微控制器、专用逻辑电路系统(例如,现场可编程门阵列(FPGA)、专用集成电路(ASIC)、存储器管芯上的控制电路系统等)或其它合适的处理器。在一个实施例中,控制电路系统406可以包含处理器,所述处理器被配置成执行存储于存储器中的指令,以执行用于控制存储器装置400的操作的各种过程、逻辑流程和例程,包含管理主存储器402以及处理存储器装置400与主机装置408之间的通信。在一些实施例中,控制电路系统406可以包含嵌入式存储器,所述嵌入式存储器具有用于存储例如行计数器、组计数器、存储器指针、取得的数据等的存储器寄存器。在本发明技术的另一个实施例中,存储器装置400可以不包含控制电路系统,而是可以依赖于(例如,由主机装置408提供,或者由与存储器装置400分离的处理器或控制器提供的)外部控制。
主机装置408可以是能够利用存储器来临时或永久地存储信息的多个电子装置中的任何电子装置或其组件。例如,主机装置408可以是计算装置,如台式计算机或便携式计算机、服务器、手持装置(例如,移动电话、平板计算机、数字阅读器、数字媒体播放器)或其某个组件(例如,中央处理单元、协处理器、专用存储器控制器等)。主机装置408可以是联网装置(例如,交换机、路由器等)或数字图像、音频和/或视频的记录器、车辆、电器、玩具或多种其它产品中的任何产品。在一个实施例中,主机装置408可以直接连接到存储器装置400,但是在其它实施例中,主机装置408可以间接(例如,通过联网连接或通过中间装置)连接到存储器装置。
在操作中,控制电路系统406可以直接对主存储器402的各种存储器区域进行写入或以其它方式进行编程(例如,擦除)。控制电路系统406通过主机装置总线或接口410与主机装置408进行通信。在一些实施例中,主机装置总线或接口410可以被配置成承载具有可变突发长度的数据突发。例如,主机装置总线或接口410可以基于存储器装置400的ECC功能启用(例如,BL32)还是禁用(例如,BL34、BL36、BL38、BL40)来携带具有第一突发长度(例如,BL32)或第二突发长度(例如,BL34、BL36、BL38、BL40)的数据突发。在一些实施例中,主机装置408和控制电路系统406可以通过专用存储器总线(例如,DRAM总线)进行通信。在其它实施例中,主机装置408和控制电路系统406可以通过串行接口(如串行连接的SCSI(SAS)、串行AT附件(SATA)接口、外围组件互连快速(PCIe))或其它合适的接口(例如,并行接口)进行通信。主机装置408可以向控制电路系统406发送各种请求(以例如分组或分组流的形式)。请求可以包含用于读取、写入、擦除、返回信息的命令和/或用于执行特定操作(例如,刷新操作、TRIM操作、预充电操作、激活操作、耗损均衡操作、垃圾收集操作等)的命令。
在一些实施例中,控制电路系统406可以被配置成跟踪在多个存储器单元420中的主存储器402中(例如,在控制电路系统406的嵌入式存储器中的寄存器或表中)执行的操作(例如,读取操作、写入操作、擦除操作、激活操作等),以促进在按需的基础上执行刷新操作。在此方面,控制电路系统406可以被配置成比较由不同的存储器单元420经历的操作的数量或速率,并且基于由存储器单元420经历的操作的数量或速率之间的比较来对存储器单元420执行或调度刷新操作。可替代地,控制电路系统406可以被配置成基于每个存储器单元420与一或多个预定阈值(例如,阈值操作数量、阈值操作速率等)的比较来对存储器单元420执行或调度刷新操作。因此,由于不同的单元420可以经历无序刷新操作的自由度,因此与另一个单元420相比,可以更频繁地刷新作为超过阈值数量或速率的操作的目标的存储器单元420。
在一些实施例中,存储器装置400包含被配置成指示ECC功能被启用还是被禁用的寄存器(例如,参考图2描述的寄存器275)。进一步地,主存储器402可以包含一组存储器胞元,其中所述组存储器胞元包括第一子集和第二子集。第一子集可以被配置成存储第一用户可存取数据。此外,第二子集可以被配置成在寄存器指示ECC功能启用时存储ECC数据,并且在寄存器指示ECC功能禁用时存储第二用户可存取数据、元数据或两者。在一些实施例中,主机装置408和存储器装置400被配置成在寄存器指示ECC功能启用时通信持续第一突发长度(例如,BL32),其中第一突发长度确定用于传送第一子集中的第一用户可存取数据。另外或可替代地,主机装置408和存储器装置400被配置成在寄存器指示ECC功能禁用时通信持续第二突发长度(例如,BL34、BL36、BL38、BL40),其中第二突发长度确定用于传送第一子集中的第一用户可存取数据和第二子集中的第二用户可存取数据或元数据。
在一些实施例中,主机装置408可以向存储器装置400的指示存储器装置400的ECC模式被启用还是被禁用的模式寄存器传输信令。进一步地,主机装置408可以向存储器装置400传输读取命令。随后,主机装置408可以响应于读取命令而接收数据,其中数据的突发长度基于ECC模式被启用还是被禁用,如由模式寄存器所指示的。
在一些实施例中,在ECC功能禁用时,主机装置408可以被配置成向存储器装置400传输存取命令,其中存取命令(例如,读取命令、写入命令)包括同时标识所述组存储器胞元的第一子集和第二子集的一组地址位。在从主机装置408接收到读取命令时,存储器装置400可以绕过ECC电路,所述ECC电路被配置成:在第一子集的第一用户可存取数据中检测和纠正错误;通过将第一用户可存取数据与第二用户可存取数据或元数据组合来生成数据集;并且根据第二突发长度(例如,BL34)将所述数据集传输到主机装置。
在一些实施例中,在ECC功能禁用时,主机装置408可以被配置成:在具有第二突发长度的第一数据突发中从存储器装置400接收第一数据集;确定第一数据集包含元数据的第一部分;在具有第二突发长度的第二数据突发中从存储器装置接收第二数据集;确定第二数据集包含元数据的第二部分;并且将元数据的第一部分与元数据的第二部分组合。以此方式,主机装置408可以通过多个数据传输实例从存储器装置400接收元数据,所述多个数据传输实例各自根据第二突发长度发生。在一些实施例中,主机装置408可以被配置成向存储器装置400传输被启用还是被禁用ECC功能的指示,使得存储器装置400可以根据从主机装置传输的指示设置寄存器。
在一些实施例中,在ECC功能禁用时,存储器装置400可以被配置成用具有第二突发长度的数据突发从主机装置接收数据集,其中所述数据集包含第一用户可存取数据和第二用户可存取数据,并且将第一用户可存取数据存储于第一子集中并将第二用户可存取数据存储于第二子集中。在一些实施例中,存储器装置400可以被配置成将寄存器设置为在存储器系统401的初始化周期期间指示ECC功能被启用还是被禁用。在此类实施例中,初始化周期可以包含上电程序,并且存储器装置400可以包含作为寄存器的默认值的指示ECC功能状态(例如,ECC功能被启用还是被禁用)的参数。
图5是展示了根据本发明技术的实施例的操作存储器装置的方法的流程图500。流程图500可以是存储器装置200(或者存储器装置200的外围电路270)可以执行的如参考图2所描述的方法的实例或者包含所述方法的各方面。此类存储器装置可以包含具有一组存储器胞元的存储器阵列,其中所述组存储器胞元包含第一子集和第二子集,所述第一子集被配置成存储第一用户可存取数据,所述第二子集被配置成:在存储器装置的ECC模式被启用时存储ECC数据;并且在存储器装置的ECC模式被禁用时存储第二用户可存取数据或元数据或两者。
所述方法包含在存储器装置的指示存储器装置的ECC模式被启用还是被禁用的模式寄存器处接收信令(框510)。根据本发明技术的一方面,框510的接收特征可以由外围电路(例如,图2的外围电路270)或控制电路系统(例如,图4的控制电路系统406)结合地址/命令输入电路(例如,图1的地址/命令输入电路105)执行。
所述方法包含基于模式寄存器指示ECC模式是被启用还是被禁用来选择从存储器装置到主机装置的数据传输的突发长度(框520)。根据本发明技术的一方面,框520的选择特征可以由外围电路(例如,图2的外围电路270)或控制电路系统(例如,图4的控制电路系统406)执行。
所述方法包含将具有所选突发长度的数据从存储器装置传输到主机装置(框530)。根据本发明技术的一方面,框530的传输特征可以由外围电路(例如,图2的外围电路270)或控制电路系统(例如,图4的控制电路系统406)结合输入/输出电路(例如,图1的输入/输出电路160)执行。
所述方法可以进一步包含确定存储器装置的ECC模式被禁用,其中突发长度选自第一突发长度和第二突发长度,所述第二突发长度的位比第一突发长度的位多;以及将具有第二突发长度的数据从存储器装置传输到主机装置(框540)。根据本发明技术的一方面,框540的确定特征和传输特征可以由外围电路(例如,图2的外围电路270)或控制电路系统(例如,图4的控制电路系统406)结合输入/输出电路(例如,图1的输入/输出电路160)执行。
在一些实施例中,具有第二突发长度的传输的一或多个位包含关于所传输数据或存储器装置或两者的信息的元数据。在一些实施例中,具有第二突发长度的传输的每个位包含数据。在一些实施例中,第一突发长度包含三十二(32)位,并且第二突发长度包含三十四(34)位。
所述方法可以进一步包含:确定存储器装置的ECC模式被启用;使用第二子集中的ECC数据在第一子集中的第一用户可存取数据中检测至少一个错误;以及在将第一用户可存取数据输出到主机装置之前在第一用户可存取数据中纠正所述至少一个错误。所述方法可以进一步包含在ECC功能禁用时同时存取所述组存储器胞元的第一子集和第二子集。
在一些实施例中,所述方法可以进一步包含绕过ECC电路,所述ECC电路被配置成使用存储于第二子集中的ECC数据对第一用户可存取数据执行ECC功能,其中将具有所选突发长度的数据传输到主机装置对应于将第一用户可存取数据和第二用户可存取数据或元数据传输到主机装置。在一些实施例中,所述方法可以进一步包含:基于第二用户可存取数据的量或元数据的量确定第二突发长度,其中第二突发长度大于第一突发长度,并且将具有所选突发长度的数据传输到主机装置对应于将第一用户可存取数据和第二用户可存取数据或元数据传输到主机装置。在一些实施例中,确定第二突发长度进一步包括使第一突发长度递增偶数个突发。
在一些实施例中,所述方法可以进一步包含将第一用户可存取数据与第二用户可存取数据或元数据组合以传输到主机装置,其中将具有所选突发长度的数据传输到主机装置对应于将第一用户可存取数据和第二用户可存取数据或元数据传输到主机装置。在一些实施例中,所述方法可以进一步包含:从主机装置接收具有所选突发长度的第三用户可存取数据,第三用户可存取数据包含第一用户可存取数据和第二用户可存取数据;将第一用户可存取数据存储于第一子集中;以及将第二用户可存取数据存储于第二子集中。
图6是展示了根据本发明技术的实施例的操作系统的方法的流程图600。流程图600可以是主机装置(例如,参考图2描述的主机装置、参考图4描述的主机装置408)可以执行的如参考图2和4所描述的方法或包含所述方法的各方面。
所述方法包含向存储器装置的指示存储器装置的ECC模式被启用还是被禁用的模式寄存器传输信令(框610)。根据本发明技术的一方面,框610的传输特征可以由主机装置(例如,图4的主机装置408)执行。
所述方法包含向存储器装置传输读取命令(框620)。根据本发明技术的一方面,框620的传输特征可以由主机装置(例如,图4的主机装置408)执行。
所述方法包含响应于读取命令而接收数据,其中数据的突发长度基于ECC模式被启用还是被禁用,如由模式寄存器所指示的(框630)。根据本发明技术的一方面,框630的接收特征可以由主机装置(例如,图4的主机装置408)执行。
应当注意,上文描述的方法描述了可能的实施方案,并且可以被重新布置或以其它方式修改操作和步骤,并且其它实施方案是可能的。此外,可以组合所述方法中的两种或两种以上方法的实施例。
可以使用各种不同的工艺和技术中的任何工艺和技术表示本文描述的信息和信号。例如,可以贯穿上述描述引用的数据、指令、命令、信息、信号、位、符号和芯片可以通过电压、电流、电磁波、磁场或磁性粒子、光场或光学粒子或其任何组合来表示。一些附图可以将信号展示为单个信号;然而,本领域的普通技术人员将理解的是,信号可以表示信号总线,其中总线可以具有各种位宽。
本文所讨论的包含存储器装置的装置可以形成在如硅、锗、硅锗合金、砷化镓、氮化镓等半导体衬底或管芯上。在一些情况下,衬底是半导体晶圆。在其它情况下,衬底可以是绝缘体上硅(SOI)衬底,如玻璃上硅(SOG)或蓝宝石上硅(SOS),或另一个衬底上的半导体材料的外延层。可以通过使用各种化学物质(包含但不限于磷、硼或砷)进行掺杂来控制衬底或衬底的子区域的导电性。可以在衬底的初始形成或生长期间通过离子注入或通过任何其它掺杂手段来执行掺杂。
本文描述的功能可以以硬件、由处理器执行的软件、固件或其任何组合实施。其它实例和实施方案处于本公开和所附权利要求的范围内。实施功能的特征还可以物理地定位在各个位置处,包含分布成使得功能的部分在不同的物理位置处实施。
如本文中(包含在权利要求中)所使用的,如在项目列表(例如,以如“...中的至少一个”或“...中的一或多个”等短语结尾的项目列表)中使用的“或”指示包含性列表,使得例如列表A、B或C中的至少一个意指A或B或C或AB或AC或BC或ABC(即,A和B和C)。并且,如本文所使用的,短语“基于”不应解释为对条件闭集的引用。例如,在不脱离本公开的范围的情况下,被描述为“基于条件A”的示范性步骤可以基于条件A和条件B两者。换句话说,如本文所使用的,短语“基于”应与短语“至少部分地基于”以相同的方式解释。
根据上文,应理解,在本文中已经出于说明的目的描述了本发明的具体实施例,但可以在不偏离本发明的范围的情况下进行各种修改。相反,在前述描述中,讨论了许多具体细节以提供对本发明技术的实施例的透彻和使能描述。然而,相关领域的技术人员将认识到,可以在没有所述具体细节中的一或多个具体细节的情况下实践本公开。在其它实例中,未示出或未详细描述通常与存储器系统和装置相关联的众所周知的结构或操作,以避免模糊本发明技术的其它方面。通常,应当理解,除了本文公开的那些具体实施例之外,各种其它装置、系统和方法也可以处于本发明技术的范围内。
Claims (20)
1.一种方法,其包括:
在存储器装置的指示所述存储器装置的纠错码ECC模式被启用还是被禁用的模式寄存器处接收信令;
至少部分地基于所述模式寄存器指示所述ECC模式被启用还是被禁用来选择从所述存储器装置到主机装置的数据传输的突发长度;以及
将具有所选突发长度的数据从所述存储器装置传输到所述主机装置。
2.根据权利要求1所述的方法,其进一步包括:
确定所述存储器装置的所述ECC模式被禁用,其中所述突发长度选自第一突发长度和第二突发长度,所述第二突发长度的位比所述第一突发长度的位多;以及
将具有所述第二突发长度的数据从所述存储器装置传输到所述主机装置。
3.根据权利要求2所述的方法,其中具有所述第二突发长度的传输的一或多个位包括关于所传输数据或所述存储器装置或两者的信息的元数据。
4.根据权利要求2所述的方法,其中具有所述第二突发长度的传输的每个位包括数据。
5.根据权利要求2所述的方法,其中所述第一突发长度包括三十二(32)位,并且所述第二突发长度包括三十四(34)位。
6.根据权利要求1所述的方法,其中所述存储器装置包括包含多个存储器胞元的存储器阵列,所述多个存储器胞元具有第一子集和第二子集,所述第一子集被配置成存储第一用户可存取数据,所述第二子集被配置成:(1)在所述存储器装置的所述ECC模式被启用时存储ECC数据;并且(2)在所述存储器装置的所述ECC模式被禁用时存储第二用户可存取数据或元数据或两者,并且其中所述方法进一步包括:
确定所述存储器装置的所述ECC模式被启用;
使用所述第二子集中的所述ECC数据检测所述第一子集中的所述第一用户可存取数据中的至少一个错误;以及
在将所述第一用户可存取数据输出到所述主机装置之前纠正所述第一用户可存取数据中的所述至少一个错误。
7.根据权利要求6所述的方法,其进一步包括:
在所述ECC模式被禁用时同时存取所述多个存储器胞元的所述第一子集和所述第二子集。
8.根据权利要求6所述的方法,其中将具有所述所选突发长度的所述数据传输到所述主机装置对应于将所述第一用户可存取数据和所述第二用户可存取数据或元数据传输到所述主机装置,并且其中所述方法进一步包括:
绕过ECC电路,所述ECC电路被配置成使用存储于所述第二子集中的所述ECC数据对所述第一用户可存取数据执行ECC功能。
9.根据权利要求6所述的方法,其中将具有所述所选突发长度的所述数据传输到所述主机装置对应于将所述第一用户可存取数据和所述第二用户可存取数据或元数据传输到所述主机装置,并且其中所述方法进一步包括:
基于所述第二用户可存取数据的量或所述元数据的量确定第二突发长度,其中所述第二突发长度大于第一突发长度。
10.根据权利要求9所述的方法,其中确定所述第二突发长度进一步包括使所述第一突发长度递增偶数个突发。
11.根据权利要求6所述的方法,其中将具有所述所选突发长度的所述数据传输到所述主机装置对应于将所述第一用户可存取数据和所述第二用户可存取数据或元数据传输到所述主机装置,并且其中所述方法进一步包括:
将所述第一用户可存取数据与所述第二用户可存取数据或元数据组合以传输到所述主机装置。
12.根据权利要求6所述的方法,其进一步包括:
从所述主机装置接收具有所述所选突发长度的第三用户可存取数据,所述第三用户可存取数据包含所述第一用户可存取数据和所述第二用户可存取数据;
将所述第一用户可存取数据存储于所述第一子集中;以及
将所述第二用户可存取数据存储于所述第二子集中。
13.一种设备,其包括:
寄存器,所述寄存器被配置成指示错误检查和纠正ECC功能被启用还是被禁用;
存储器阵列,所述存储器阵列包含多个存储器胞元,所述多个存储器胞元包含第一子集和第二子集,所述第一子集被配置成存储第一用户可存取数据,所述第二子集被配置成:在所述寄存器指示所述ECC功能被禁用时存储第二用户可存取数据、与所述设备相关联的元数据或两者;并且在所述寄存器指示所述ECC功能被启用时存储ECC数据;以及
电路系统,所述电路系统被配置成:
在所述寄存器指示所述ECC功能被启用时与主机装置进行通信持续第一突发长度,所述第一突发长度用于传送所述第一子集中的所述第一用户可存取数据,并且
在所述寄存器指示所述ECC功能被禁用时与所述主机装置进行通信持续第二突发长度,所述第二突发长度用于传送所述第一子集中的所述第一用户可存取数据和所述第二子集中的所述第二用户可存取数据或所述元数据。
14.根据权利要求13所述的设备,其进一步包括:
ECC电路,所述ECC电路与所述第二子集耦接,所述ECC电路被配置成在所述寄存器指示所述ECC功能被启用时使用所述第二子集中的所述ECC数据对所述第一子集中的所述第一用户可存取数据执行所述ECC功能。
15.根据权利要求14所述的设备,其中所述ECC电路被配置成检测所述第一用户可存取数据中的两个或两个以上错误和/或纠正所述第一用户可存取数据中的一或多个错误。
16.根据权利要求13所述的设备,其进一步包括:
第一逻辑电路,所述第一逻辑电路与所述多个存储器胞元耦接,所述第一逻辑电路被配置成在所述寄存器指示所述ECC功能被禁用时将所述第一用户可存取数据与所述第二用户可存取数据或元数据组合。
17.根据权利要求13所述的设备,其中所述第一突发长度小于所述第二突发长度。
18.根据权利要求13所述的设备,其中所述元数据包括与所述设备的操作模式有关的信息,所述信息包含操作温度、与存取命令相关联的等待时间设置、用于数据传输的参数、测试模式或其组合。
19.根据权利要求13所述的设备,其进一步包括:
第二寄存器,所述第二寄存器被配置成指示存取命令指向所述第一子集还是所述第一子集和所述第二子集两者。
20.一种方法,其包括:
向存储器装置的指示所述存储器装置的纠错码ECC模式被启用还是被禁用的模式寄存器传输信令;
向所述存储器装置传输读取命令;以及
响应于所述读取命令而接收数据,其中所述数据的突发长度至少部分地基于所述ECC模式被启用还是被禁用,如由所述模式寄存器所指示的。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US16/554,913 US11042436B2 (en) | 2019-08-29 | 2019-08-29 | Semiconductor device with modified access and associated methods and systems |
US16/554,913 | 2019-08-29 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112445645A true CN112445645A (zh) | 2021-03-05 |
Family
ID=74679833
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010876359.0A Pending CN112445645A (zh) | 2019-08-29 | 2020-08-27 | 具有经修改存取的半导体装置以及相关联方法和系统 |
Country Status (2)
Country | Link |
---|---|
US (3) | US11042436B2 (zh) |
CN (1) | CN112445645A (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10963336B2 (en) | 2019-08-29 | 2021-03-30 | Micron Technology, Inc. | Semiconductor device with user defined operations and associated methods and systems |
US11200118B2 (en) | 2019-08-29 | 2021-12-14 | Micron Technology, Inc. | Semiconductor device with modified command and associated methods and systems |
US11042436B2 (en) | 2019-08-29 | 2021-06-22 | Micron Technology, Inc. | Semiconductor device with modified access and associated methods and systems |
US11379306B1 (en) * | 2021-07-29 | 2022-07-05 | Bae Systems Information And Electronic System Integration Inc. | Method for radiation hardening synchronous DRAM |
Family Cites Families (45)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5430859A (en) | 1991-07-26 | 1995-07-04 | Sundisk Corporation | Solid state memory system including plural memory chips and a serialized bus |
US6212631B1 (en) | 1999-01-15 | 2001-04-03 | Dell Usa, L.P. | Method and apparatus for automatic L2 cache ECC configuration in a computer system |
JP3595495B2 (ja) | 2000-07-27 | 2004-12-02 | Necマイクロシステム株式会社 | 半導体記憶装置 |
US7444581B2 (en) | 2003-11-04 | 2008-10-28 | Texas Instruments Incorporated | Error handling of storage device data in real time systems |
US7398348B2 (en) | 2004-08-24 | 2008-07-08 | Sandisk 3D Llc | Method and apparatus for using a one-time or few-time programmable memory with a host device designed for erasable/rewritable memory |
US20060218467A1 (en) | 2005-03-24 | 2006-09-28 | Sibigtroth James M | Memory having a portion that can be switched between use as data and use as error correction code (ECC) |
US7757061B2 (en) | 2005-05-03 | 2010-07-13 | Micron Technology, Inc. | System and method for decoding commands based on command signals and operating state |
US7624329B2 (en) | 2006-08-30 | 2009-11-24 | Freescale Semiconductor, Inc. | Programming a memory device having error correction logic |
US8102710B2 (en) | 2007-10-17 | 2012-01-24 | Micron Technology, Inc. | System and method for setting access and modification for synchronous serial interface NAND |
US8239732B2 (en) | 2007-10-30 | 2012-08-07 | Spansion Llc | Error correction coding in flash memory devices |
KR101687038B1 (ko) | 2008-12-18 | 2016-12-15 | 노바칩스 캐나다 인크. | 에러 검출 방법 및 하나 이상의 메모리 장치를 포함하는 시스템 |
US8495467B1 (en) | 2009-06-30 | 2013-07-23 | Micron Technology, Inc. | Switchable on-die memory error correcting engine |
US8437183B2 (en) | 2009-12-16 | 2013-05-07 | Sandisk Il Ltd. | Auxiliary parity bits for data written in multi-level cells |
CN103329103B (zh) | 2010-10-27 | 2017-04-05 | 希捷科技有限公司 | 使用用于基于闪存的数据存储的自适应ecc技术的方法和设备 |
US8902653B2 (en) | 2011-08-12 | 2014-12-02 | Micron Technology, Inc. | Memory devices and configuration methods for a memory device |
KR101888074B1 (ko) | 2012-01-09 | 2018-08-13 | 삼성전자주식회사 | 저장 장치 및 불휘발성 메모리 장치, 그리고 그것의 동작 방법 |
US8898548B1 (en) * | 2012-08-24 | 2014-11-25 | Western Digital Technologies, Inc. | Methods, data storage devices and systems having variable size ECC page size |
US20140229655A1 (en) | 2013-02-08 | 2014-08-14 | Seagate Technology Llc | Storing Error Correction Code (ECC) Data In a Multi-Tier Memory Structure |
US9690650B2 (en) | 2013-03-11 | 2017-06-27 | Macronix International Co., Ltd. | Storage scheme for built-in ECC operations |
US9367391B2 (en) | 2013-03-15 | 2016-06-14 | Micron Technology, Inc. | Error correction operations in a memory device |
US9146809B2 (en) | 2013-10-07 | 2015-09-29 | Macronix International Co., Ltd. | ECC method for double pattern flash memory |
US20150169406A1 (en) * | 2013-12-16 | 2015-06-18 | Sandisk Technologies Inc. | Decoding techniques for a data storage device |
US9535785B2 (en) | 2014-01-17 | 2017-01-03 | Macronix International Co., Ltd. | ECC method for flash memory |
US9904596B2 (en) | 2014-05-15 | 2018-02-27 | Integrated Silicon Solution, Inc. | Serial bus event notification in a memory device |
US20170160952A1 (en) * | 2014-07-28 | 2017-06-08 | Sony Corporation | Memory controller, memory system, and information processing system |
US9558066B2 (en) | 2014-09-26 | 2017-01-31 | Intel Corporation | Exchanging ECC metadata between memory and host system |
US9710324B2 (en) | 2015-02-03 | 2017-07-18 | Qualcomm Incorporated | Dual in-line memory modules (DIMMs) supporting storage of a data indicator(s) in an error correcting code (ECC) storage unit dedicated to storing an ECC |
US11216323B2 (en) | 2015-09-16 | 2022-01-04 | Samsung Electronics Co., Ltd. | Solid state memory system with low power error correction mechanism and method of operation thereof |
WO2017192626A1 (en) * | 2016-05-02 | 2017-11-09 | Intel Corporation | Internal error checking and correction (ecc) with extra system bits |
US10503435B2 (en) | 2016-12-01 | 2019-12-10 | Qualcomm Incorporated | Providing extended dynamic random access memory (DRAM) burst lengths in processor-based systems |
CN107039086A (zh) * | 2017-05-17 | 2017-08-11 | 西安紫光国芯半导体有限公司 | 具有兼容不同数据长度的纠错功能的存储器和纠错方法 |
CN107025948B (zh) | 2017-05-17 | 2023-08-15 | 西安紫光国芯半导体有限公司 | 具有标志位指示数据长度的纠错功能的存储器和纠错方法 |
CN107039087A (zh) * | 2017-05-17 | 2017-08-11 | 西安紫光国芯半导体有限公司 | 用于dram的ecc编码方法以及dram |
KR102362229B1 (ko) | 2017-08-10 | 2022-02-11 | 삼성전자주식회사 | 메모리 컨트롤러, 메모리 시스템 및 메모리 컨트롤러를 포함하는 어플리케이션 프로세서 |
KR102453437B1 (ko) | 2018-01-25 | 2022-10-12 | 삼성전자주식회사 | 반도체 메모리 장치, 이를 포함하는 메모리 시스템 및 반도체 메모리 장치의 동작 방법 |
KR102410566B1 (ko) | 2018-02-05 | 2022-06-17 | 삼성전자주식회사 | 반도체 메모리 장치, 이를 포함하는 메모리 시스템 및 반도체 메모리 장치의 동작 방법 |
KR102432551B1 (ko) | 2018-02-13 | 2022-08-16 | 삼성전자주식회사 | 반도체 메모리 장치, 이를 포함하는 메모리 시스템 및 반도체 메모리 장치의 동작 방법 |
KR102511903B1 (ko) | 2018-02-26 | 2023-03-21 | 에스케이하이닉스 주식회사 | 고정된 에러정정능력의 에러정정코드 엔진을 이용하여 재구성할 수 있는 에러정정동작을 수행하는 메모리 시스템 |
KR102553780B1 (ko) | 2018-05-10 | 2023-07-10 | 에스케이하이닉스 주식회사 | 메모리 장치, 이를 포함하는 메모리 시스템 및 메모리 시스템의 동작 방법 |
KR102629405B1 (ko) | 2018-11-09 | 2024-01-25 | 삼성전자주식회사 | 반도체 메모리 장치, 메모리 시스템 및 반도체 메모리 장치의 동작 방법 |
US11144387B2 (en) * | 2019-04-29 | 2021-10-12 | Intel Corporation | Apparatus, systems, and methods to detect and/or correct bit errors using an in band link over a serial peripheral interface |
US10963336B2 (en) | 2019-08-29 | 2021-03-30 | Micron Technology, Inc. | Semiconductor device with user defined operations and associated methods and systems |
US11200118B2 (en) | 2019-08-29 | 2021-12-14 | Micron Technology, Inc. | Semiconductor device with modified command and associated methods and systems |
US11042436B2 (en) | 2019-08-29 | 2021-06-22 | Micron Technology, Inc. | Semiconductor device with modified access and associated methods and systems |
US11258539B2 (en) * | 2020-05-06 | 2022-02-22 | Intel Corporation | Technologies for performing encoding of data symbols for column read operations |
-
2019
- 2019-08-29 US US16/554,913 patent/US11042436B2/en active Active
-
2020
- 2020-08-27 CN CN202010876359.0A patent/CN112445645A/zh active Pending
-
2021
- 2021-06-17 US US17/350,099 patent/US11687403B2/en active Active
-
2023
- 2023-05-08 US US18/313,670 patent/US20240078153A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
US20210064460A1 (en) | 2021-03-04 |
US20240078153A1 (en) | 2024-03-07 |
US11042436B2 (en) | 2021-06-22 |
US20210311822A1 (en) | 2021-10-07 |
US11687403B2 (en) | 2023-06-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111433850B (zh) | 用于独立存储器库维护的方法和采用所述方法的存储器装置和系统 | |
CN114341813B (zh) | 具有修改命令的半导体装置以及相关联方法和系统 | |
US11687406B2 (en) | Semiconductor device with user defined operations and associated methods and systems | |
US11687403B2 (en) | Semiconductor device with modified access and associated methods and systems | |
US20220382628A1 (en) | Semiconductor device with power-saving mode and associated methods and systems | |
US11468939B2 (en) | Conditional row activation and access during refresh for memory devices and associated methods and systems | |
US11881251B2 (en) | Row clear features for memory devices and associated methods and systems | |
US11533064B2 (en) | Error correcting code poisoning for memory devices and associated methods and systems | |
US12003252B2 (en) | Error correcting code poisoning for memory devices and associated methods and systems |
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 |