本申请要求于2018年12月3日提交的第10-2018-0153637号韩国专利申请的优先权,所述韩国专利申请的公开通过引用包含于此。
在此公开的本发明构思的实施例涉及半导体存储器装置,更具体地讲,涉及包括易失性存储器装置的存储器模块和包括存储器模块的存储器系统。
背景技术:
半导体存储器可包括易失性存储器(诸如,动态随机存取存储器或静态随机存取存储器)和非易失性存储器(诸如,闪存、相变存储器、铁电存储器、磁存储器或电阻式存储器)。通常,易失性存储器支持高速随机存取,并且经常用作计算系统(诸如,个人计算机、服务器或工作站)的主存储器。
易失性存储器装置可包括在多个存储器模块中的每个中。多个存储器模块可基于存储器模块(诸如,双列直插存储器模块(dimm))的多种标准之一。在这种情况下,多个存储器模块可被插入到直接与计算系统或存储器系统的处理器连接的dimm插座/插槽中,并且可提供快的操作速度。
为了确保将被交换的数据的准确性,存储器系统可执行错误检测(诸如,命令/地址的奇偶校验或写入数据的循环冗余校验(crc))。在这种情况下,每当从提供给特定存储器模块的信号检测到错误时,处理器就可执行用于纠错的处理,但是在校正与特定存储器模块相关联的错误时,处理器不会允许对所有存储器模块执行刷新操作。因此,需要支持并发的纠错操作和存储器刷新操作的处理器和存储器模块。
技术实现要素:
本发明构思的实施例提供一种包括易失性存储器装置的存储器模块和包括所述存储器模块的存储器系统,所述存储器模块用于改善由于特定存储器模块的操作状态而导致的任何其他存储器模块的刷新操作的脆弱性。
根据示例性实施例,一种存储器模块包括:易失性存储器装置和控制器。控制器响应于从报警引脚接收的第一报警信号,刷新易失性存储器装置。控制器检测易失性存储器装置的错误,并将与错误相应的第二报警信号输出到报警引脚。
根据示例性实施例,一种存储器系统包括:处理器、第一存储器模块和第二存储器模块。处理器可提供信息。第一存储器模块可包括:第一易失性存储器装置;以及第一控制器,从将被提供给第一易失性存储器装置的写入信息检测错误,并生成与检测到的错误相应的报警信号。第二存储器模块可包括:第二易失性存储器装置;以及第二控制器,响应于报警信号刷新第二易失性存储器装置。处理器可响应于报警信号再次将写入信息提供给第一存储器模块。
根据示例性实施例,一种存储器系统可包括第一存储器模块、第二存储器模块和存储器控制器。第一存储器模块可包括:非易失性存储器装置;以及第一控制器,基于非易失性存储器装置的操作条件生成报警信号。第二存储器模块可包括:易失性存储器装置;以及第二控制器,响应于报警信号刷新易失性存储器装置。
根据本发明构思的另一实施例,提供一种存储器系统,包括:存储器装置,其中具有多个易失性存储器模块;以及存储器控制器,电结合到所述多个易失性存储器模块。存储器控制器被配置为:响应于由所述多个易失性存储器模块中的第一易失性存储器模块生成报警信号,校正所述多个易失性存储器模块中的第一易失性存储器模块中的错误,并且在生成报警信号时并发地进行刷新所述多个易失性存储器模块中的第二易失性存储器模块的至少一部分的操作。
在本发明构思的这些实施例的一些中,控制器可包括:报警缓冲器电路,被配置为:响应于在所述多个易失性存储器模块中的第一易失性存储器模块内生成的第一报警信号,生成报警信号作为第二报警信号。具体地讲,该报警缓冲器电路可包括:输出缓冲器,被配置为:响应于第一报警信号生成第二报警信号;以及输入缓冲器,被第一警报信号禁用。此外,当第一报警信号无效时,输出缓冲器可被禁用,并且输入缓冲器可被启用。
根据本发明构思的另一实施例,提供一种操作其中具有多个易失性存储器模块的存储器装置的方法。该方法包括:响应于在所述多个易失性存储器模块中的一个易失性存储器模块中检测到数据错误而生成第一报警信号,并且与第一报警信号的前边沿同步地开始校正所述数据的恢复操作和刷新所述多个易失性存储器模块中的第二易失性存储器模块的操作。此外,在开始之后,可在恢复操作结束时生成第一报警信号的后边沿。在这些实施例的一些中,生成第一报警信号的步骤可包括:与第一报警信号的前边沿同步地禁用报警缓冲器电路的输入路径。具体地讲,生成第一报警信号的步骤可包括:与第一报警信号同步地生成第二报警信号,并且刷新所述多个易失性存储器模块中的第二易失性存储器模块的操作可在将第二警报信号传送到所述多个易失性存储器模块中的第二易失性存储器模块之前。
附图说明
通过参照附图详细描述本发明构思的示例性实施例,本发明构思的以上和其他目的和特征将变得清楚。
图1是根据本发明构思的实施例的存储器系统的示例性框图。
图2是图1的存储器模块的示例性示图。
图3是包括在图1中所示的存储器模块中的控制器的示例性框图。
图4是示出图3的控制器的示例的示图。
图5是与图1的存储器系统的操作方法相关联的流程图。
图6是用于描述在基于报警信号不执行刷新操作的情况下的存储器系统的操作的时序图。
图7和图8是根据本发明构思的实施例的用于描述基于报警信号执行刷新操作的操作的时序图。
图9是包括在图1中所示的存储器模块中的控制器的示例性框图。
图10是与参照图9描述的存储器系统的操作方法相关联的流程图。
图11是根据本发明构思的实施例的存储器系统的示例性框图。
具体实施方式
下面,将参照附图清楚和详细地描述本发明构思的实施例,以达到本领域普通技术人员实现本发明的实施例的程度。
图1是示出根据本发明构思的实施例的存储器系统1000的框图。参照图1,存储器系统1000可包括处理器1100和第一存储器模块1200至第n存储器模块1400。例如,存储器系统1000可以以服务器(诸如,应用服务器、客户端服务器或数据服务器)的形式来实现。可选地,存储器系统1000可以以个人计算机或工作站的形式实现。
处理器1100可控制存储器系统1000的组件和组件的操作。处理器1100可执行操作系统和应用,并且可通过使用操作系统或应用来处理数据。处理器1100可包括存储器控制器1110。然而,本发明构思不限于此。例如,存储器控制器1110可位于处理器1100的外部。
存储器控制器1110可通过第一通道ch1或第二通道ch2访问第一存储器模块1200至第n存储器模块1400。例如,存储器控制器1110可包括用于存储访问第一存储器模块1200至第n存储器模块1400所需的各种信息的寄存器(未示出)。存储器控制器1110可参照存储在寄存器中的信息来访问第一存储器模块1200至第n存储器模块1400。
第一存储器模块1200至第n存储器模块1400可用作存储器系统1000的主存储器。第一存储器模块1200至第n存储器模块1400可按照存储器模块(诸如,双列直插式存储器模块(dimm)、寄存器式dimm(rdimm)和低负载dimm(lrdimm))的多种标准之一与存储器控制器1110通信。第一存储器模块1200至第n存储器模块1400可分别包括第一控制器1210至第n控制器1410。此外,第一存储器模块1200至第n存储器模块1400可分别包括第一存储器1220至第n存储器1420。
第一控制器1210至第n控制器1410可从存储器控制器1110接收地址、命令、时钟信号和控制信号。在第一存储器模块1200至第n存储器模块1400中的每个中,可基于地址、命令、时钟信号和控制信号对相应的存储器进行访问。由于地址、命令、时钟信号和控制信号被分别提供给第一存储器模块1200的第一存储器1220至第n存储器模块1400的第n存储器1420,所以第一存储器模块1200至第n存储器模块1400可分别对第一存储器1220至第n存储器1420执行各种操作(包括写入操作和读取操作)。
第一存储器1220至第n存储器1420中的每个可包括用于存储从处理器1100提供的数据的存储空间。第一存储器1220至第n存储器1420可包括高速易失性存储器(例如,dram)。然而,本发明构思不限于此。例如,第一存储器1220至第n存储器1420的至少一部分可包括不同类型的存储器。例如,第一存储器1220可包括闪存、相变存储器、铁电存储器、磁存储器或电阻式存储器,第二存储器1320至第n存储器1420可包括dram。
第一存储器模块1200至第n存储器模块1400可通过第一通道ch1或第二通道ch2连接到存储器控制器1110。第一通道ch1可包括用于将数据存储在第一存储器模块1200至第n存储器模块1400中或者从第一存储器模块1200至第n存储器模块1400读取数据的通道。第一通道ch1可包括分别专用于第一存储器模块1200至第n存储器模块1400的通道。
第二通道ch2可包括用于提供除了从第一存储器模块1200至第n存储器模块1400读取和将被存储在第一存储器模块1200至第n存储器模块1400中的数据之外的任何其他信息的通道。例如,第二通道ch2可包括用于将地址或命令提供给第一存储器模块1200至第n存储器模块1400的通道。例如,第二通道ch2可包括用于根据第一存储器模块1200至第n存储器模块1400中的任意一个的操作状态向存储器控制器1110提供报警信号的报警通道。例如,操作状态可与是否从提供给存储器模块的信息检测到错误相关联。检测到错误的存储器模块可将报警信号输出到报警通道。
第二通道ch2可不专用于第一存储器模块1200至第n存储器模块1400中的每个。第二通道ch2可由存储器控制器1110和第一存储器模块1200至第n存储器模块1400共享。例如,第一存储器模块1200至第n存储器模块1400中的每个可通过报警引脚电连接到包括在第二通道ch2中的一个报警通道。详细地讲,报警通道可接收由基于命令/地址的奇偶校验或写入数据的循环冗余校验(crc)而检测到错误的存储器模块输出的报警信号。通常,存储器模块可在检测到错误时通过报警通道向存储器控制器1110输出低脉冲。
当接收到报警信号时,存储器控制器1110可执行被设置为处理错误的操作(诸如,将命令/地址或数据重新发送到相关存储器模块)。当设置操作被执行时,存储器控制器1110不会将任何其他操作引导到所有的第一存储器模块1200至第n存储器模块1400。这样,所有存储器模块的用于保持存储在动态随机存取存储器中的数据的刷新操作可被延迟。在这种情况下,可能无法在刷新周期间隔内执行刷新操作,并且可降低存储的数据的稳定性。
为了解决上述刷新操作的脆弱性,第一控制器1210至第n控制器1410可触发将通过报警通道提供的报警信号,以执行存储器的刷新操作。现有的报警通道用于仅向存储器控制器1110提供报警信号。即,现有的存储模块使用报警通道来将报警信号输出到外部。然而,包括在本发明构思的存储器系统1000中的第一存储器模块1200至第n存储器模块1400可从外部接收报警信号,并且可基于报警信号执行刷新操作。下面将对此进行更充分的描述。
图2是图1的存储器模块的示例性示图。图2中所示的存储器模块1200可以是图1的第一存储器模块1200至第n存储器模块1400中的至少一个。在一个实施例中,存储器模块1200可以是符合rdimm标准的存储器模块,但是本发明构思不限于此。例如,存储器模块1200可以是符合各种标准(诸如,lrdimm标准、udimm标准和nvdimm标准)的存储器模块。参照图2,存储器模块1200可包括控制器1210和多个易失性存储器装置1221至1228。
控制器1210对应于图1的第一控制器1210至第n控制器1410中的至少一个。控制器1210可通过图1的第二通道ch2从存储器控制器1110接收命令/地址ca和时钟信号ck,并且可将接收的信号提供给多个易失性存储器装置1221至1228。控制器1210可包括寄存器时钟驱动器(rcd)。
控制器1210可通过报警引脚ap与包括在第二通道ch2中的报警通道连接。控制器1210可将报警信号as输出到报警通道,或者可通过报警通道从任何其他存储器模块接收报警信号as。例如,控制器1210可基于命令/地址的奇偶校验或写入数据的循环冗余校验来检测错误。当检测到错误时,控制器1210可生成报警信号as,并且可将报警信号as输出到报警通道。例如,控制器1210可接收作为任何其他存储器模块的错误检测结果而生成的报警信号as。在这种情况下,控制器1210可触发报警信号as,以对多个易失性存储器装置1221至1228执行刷新操作。
多个易失性存储器装置1221至1228包括在图1的第一存储器1220至第n存储器1420中的至少一个中。多个易失性存储器装置1221至1228可包括dram。多个易失性存储器装置1221至1228中的每个可响应于从控制器1210提供的信号,通过图1的第一通道ch1来传送数据dq。存储器模块1200还可包括用于数据通信的数据缓冲器(未示出),并且数据缓冲器(未示出)可与数据选通信号dqs同步地与存储器控制器1110交换数据dq。与图2的说明不同,多个易失性存储器装置1221至1228可通过控制器1210与存储器控制器1110传送数据dq。
图3是包括在图1中所示的存储器模块中的控制器的示例性框图。图3示出用于描述如何生成报警信号as并根据报警信号as执行刷新操作的第一控制器1210和第二控制器1310的示例。第一控制器1210和第二控制器1310中的每个可对应于图1的第一控制器1210至第n控制器1410中的一个。与第一控制器1210和第二控制器1310中的每个对应的存储器可被理解为易失性存储器装置(诸如,dram)。
第一控制器1210可包括第一错误检测器1211、第一报警缓冲器电路1212、第一刷新模块1213和第一模式寄存器1214。假设第一控制器1210包括在图1的第一存储器模块1200中。为了便于描述,包括在第一控制器1210中的组件被示出为单独的块,但是包括在第一控制器1210中的组件的布置不被这样限制。例如,在第一存储器模块1200中,第一报警缓冲器电路1212可与第一控制器1210的任何其他组件分离,并且可位于与报警引脚ap邻近。
第一错误检测器1211可通过分析从图1的存储器控制器1110提供给第一存储器模块1200的信息(写入信息)来检测错误。例如,写入信息可包括命令、地址和写入数据。例如,命令和地址可从图1的第二通道ch2提供给第一存储器模块1200,并且写入数据可从图1的第一通道ch1提供给第一存储器模块1200。第一错误检测器1211可通过分析写入信息来检测在发送数据时发生的错误。
例如,第一错误检测器1211可通过分析从存储器控制器1110提供给第一存储器模块1200的命令/地址来检测错误。例如,第一错误检测器1211可连同命令/地址一起从存储器控制器1110接收奇偶校验位。第一错误检测器1211可执行命令/地址的奇偶校验。第一错误检测器1211可通过基于接收的命令/地址生成奇偶校验位并将从存储器控制器1110接收的奇偶校验位与从第一控制器1210生成的奇偶校验位进行比较,来检测错误。
例如,第一错误检测器1211可通过分析从存储器控制器1110提供给第一存储器模块1200的写入数据来检测错误。例如,第一错误检测器1211可连同循环冗余校验(crc)码一起从存储器控制器1110接收写入数据。第一错误检测器1211可执行写入数据的循环冗余校验(crc)。第一错误检测器1211可通过基于接收的写入数据生成crc码并将从存储器控制器1110接收的crc码与从第一控制器1210生成的crc码进行比较,来检测错误。
当检测到错误时,第一错误检测器1211可生成错误信号e1。当未检测到错误时,第一错误检测器1211可生成正常信号e2。例如,错误信号e1可以是具有高电平的电信号,而正常信号e2可以是具有低电平的电信号。错误信号e1用于输出报警信号as,并被提供给第一报警缓冲器电路1212。此外,错误信号e1可被提供给第一刷新模块1213。
第一报警缓冲器电路1212基于错误信号e1,将报警信号as输出到报警通道。第一报警缓冲器电路1212电连接到报警通道。当检测到错误时,第一报警缓冲器电路1212可用作用于输出报警信号as的输出缓冲器。在这种情况下,第一报警缓冲器电路1212可防止通过报警通道提供给第一存储器模块1200的信号被接收。当未检测到错误时,第一报警缓冲器电路1212可用作用于通过报警通道接收从任何其他存储器模块提供的报警信号的输入缓冲器。这样,可识别任何其他存储器模块的操作状态(例如,错误的发生)。在这种情况下,第一报警缓冲器电路1212可防止信号被输出到报警通道。
第一刷新模块1213可基于错误信号e1或从外部提供的报警信号,允许第一存储器1220执行刷新操作。第一刷新模块1213可接收从第一错误检测器1211生成的错误信号e1,并且可触发错误信号e1以生成用于刷新第一存储器1220的第一刷新信号r1。
在检测到错误时,刷新操作可与被设置为处理错误的操作一起执行,但是本发明构思不限于此。例如,刷新操作可在存储器控制器1110处理错误之后执行。在这种情况下,第一刷新模块1213不会接收错误信号e1,并且可基于存储器控制器1110的刷新命令来执行刷新操作。
第一模式寄存器1214可存储执行第一存储器模块1200的各种操作模式所需的信息。第一模式寄存器1214可存储第一存储器1220的刷新操作所需的各种信息。例如,执行刷新操作的时间、刷新周期、将被执行的刷新操作的次数、对刷新操作进行计数的值等可存储在第一模式寄存器1214中。存储在第一模式寄存器1214中的信息可被改变。此外,可根据错误的处理时间来调整刷新时间或计数。第一刷新模块1213可参照存储在第一模式寄存器1214中的信息来执行刷新操作。
第二控制器1310可包括第二错误检测器1311、第二报警缓冲器电路1312、第二刷新模块1313和第二模式寄存器1314。假设第二控制器1310包括在图1的第二存储器模块1300中。第二错误检测器1311、第二报警缓冲器电路1312、第二刷新模块1313和第二模式寄存器1314可与第一错误检测器1211、第一报警缓冲器电路1212、第一刷新模块1213和第一模式寄存器1214基本相同。
第二错误检测器1311可基于命令/地址的奇偶校验或循环冗余校验(crc)来检测错误。当未检测到错误时,第二错误检测器1311可生成正常信号e2。正常信号e2被提供给第二报警缓冲器电路1312。当错误信号e1被提供给第一刷新模块1213时,正常信号e2可被提供给第二刷新模块1313,但是正常信号e2不会引起第二刷新模块1313的刷新操作。
第二报警缓冲器电路1312可基于正常信号e2从报警通道接收报警信号as。如参照第一报警缓冲器电路1212所述,当未检测到错误时,第二报警缓冲器电路1312可用作输入缓冲器。因此,从第一控制器1210生成的报警信号as可被第二控制器1310识别。第二报警缓冲器电路1312可将基于报警信号as生成的触发信号t1提供给第二刷新模块1313。
第二刷新模块1313可基于报警信号as允许第二存储器1320执行刷新操作。第二刷新模块1313可触发基于报警信号as生成的触发信号t1,并且可生成用于刷新第二存储器1320的第二刷新信号r2。因此,即使在第一存储器模块1200中发生错误,也可不延迟第二存储器模块1300的刷新操作,并且可确保存储在第二存储器1320中的数据的稳定性。此外,当发生错误时,第二存储器模块1300可内部地执行刷新操作,因此,存储器控制器1110的控制的负担可减少。第二刷新模块1313可参照存储在第二模式寄存器1314中的信息来执行刷新操作。
例如,第二刷新模块1313可基于报警信号as对第二存储器1320执行自动刷新操作。刷新操作可执行一次,但是本发明构思不限于此。例如,第二刷新模块1313可执行与设置到第二模式寄存器1314的操作计数一样多的刷新操作。第二刷新模块1313可执行与第二存储器1320中的行数一样多的刷新操作。在对相应的行执行刷新操作之后,可对与下一地址相应的行执行刷新操作。可在增加计数值的同时重复该刷新操作。刷新操作的计数可根据刷新时间来调整,或者可通过使用熔丝或模式寄存器组来调整。
例如,第二刷新模块1313可基于报警信号as对第二存储器1320执行自刷新操作。在自刷新操作中,因为用于从外部接收时钟信号的缓冲器被去激活,所以存储器控制器1110直到自刷新操作完成之后才介入第二存储器模块1300。因此,处理器1100可能必须识别第二刷新模块1313的自刷新操作。例如,处理器1100可通过报警信号as识别第二存储器模块1300的自刷新操作,或者第二存储器模块1300可将自刷新操作直接通知给处理器1100。在这种情况下,处理器1100可通过存储器控制器1110控制自刷新操作的时间或自刷新操作之后的后续处理。
图4是示出图3的控制器的示例的示图。图4的控制器1210可以是图3的第一控制器1210或第二控制器1310。参照图4,控制器1210可包括错误检测器1211、报警缓冲器电路1212、刷新模块1213和模式寄存器1214。错误检测器1211、刷新模块1213和模式寄存器1214与参照图3描述的错误检测器1211、刷新模块1213和模式寄存器1214相同。报警缓冲器电路1212可被理解为基于是否检测到错误而用作输入缓冲器或输出缓冲器的电路。
报警缓冲器电路1212可包括输入缓冲器iv1、输出缓冲器iv2、第一晶体管tr1和第二晶体管tr2。当检测到错误时,错误检测器1211可输出高电平的错误信号e1。在这种情况下,第一晶体管tr1可截止以对输入缓冲器iv1进行去激活,并且第二晶体管tr2可导通以激活输出缓冲器iv2。高电平的错误信号e1可通过输出缓冲器iv2被反相。其结果是,低脉冲形式的报警信号as可通过报警引脚输出到报警通道。此外,错误信号e1可被提供给刷新模块1213,并且刷新操作可基于错误信号e1被执行。
当未检测到错误时,错误检测器1211可输出低电平的正常信号e2。在这种情况下,第一晶体管tr1可导通以激活输入缓冲器iv1,并且第二晶体管tr2可截止以对输出缓冲器iv2进行去激活。从外部存储器模块输出的低脉冲形式的报警信号as可通过激活的输入缓冲器iv1接收。报警信号as可通过输入缓冲器iv1被反相。其结果是,高电平的触发信号t1可被提供给刷新模块1213以被触发,并且刷新操作可被执行。低电平的正常信号e2可被输入到刷新模块1213,但是不会引起刷新操作。
图5是与图1的存储器系统的操作方法相关联的流程图。相应的方法可由图1的存储器系统1000执行。为了便于描述,将参照图1的参考标记/标号来描述图5。在操作s110中,第一存储器模块1200可检测错误。第一控制器1210可通过命令/地址的奇偶校验或写入数据的循环冗余校验(crc)来检测错误。当检测到错误时,第一控制器1210可生成用于输出报警信号的错误信号。
在操作s120中,第一存储器模块1200可通过报警引脚将报警信号输出到报警通道。例如,图3的第一报警缓冲器电路1212可基于接收到的错误信号输出报警信号。输出的报警信号可被输入到第二存储器模块1300至第n存储器模块1400以及存储器控制器1110。假设第二存储器模块1300处于未检测到错误的状态。在这种情况下,第二存储器模块1300可接收报警信号。
在操作s130中,第二存储器模块1300可对第二存储器1320执行刷新操作。第二控制器1310可触发报警信号,并且可对第二存储器1320执行刷新操作。如参照图3所述,第二控制器1310的刷新操作计数和刷新操作方法不受限制。例如,可执行诸如自动刷新操作或自刷新操作的设置的刷新操作。
在操作s140中,处理器1100或存储器控制器1110可响应于从第一存储器模块1200检测到的错误并响应于相应的报警信号,执行恢复操作。这里,恢复操作表示用于处理错误的各种操作。例如,存储器控制器1110可对存储器控制器1110与第一存储器模块1200之间的通信通道执行恢复操作。恢复操作可包括zq校准操作。在恢复操作的第一阶段,执行“所有存储体预充电”;在恢复操作的最后阶段,可执行“利用自动预充电进行读取”。命令/地址奇偶校验错误可在多个阶段中再次发生。在这种情况下,可重复恢复操作,直到错误被清除为止。此外,存储器控制器1110可将命令/地址或数据重新发送到第一存储器模块1200,直到错误被清除为止。
图6是用于描述在基于报警信号不执行刷新操作的情况下的存储器系统的操作的时序图。相应的操作可由存储器系统执行,并且为了便于描述,将参照图1的参考标号/标记来描述图6。
第一存储器模块1200可通过从存储器控制器1110接收的命令/地址的奇偶校验或通过从存储器控制器1110接收的写入数据的循环冗余校验(crc)来检测错误。在这种情况下,第一存储器模块1200可将报警信号as(alertn)输出到报警通道。例如,第一存储器模块1200可基于在检测到错误时生成的错误信号,将低电平的报警信号as输出到报警通道。存储器控制器1110可接收报警信号as。
存储器控制器1110可基于报警信号as执行用于恢复错误的操作。如参照图5所述,恢复操作可包括用于处理错误的各种操作(诸如,zq校准、所有存储体预充电、利用自动预充电进行读取以及命令/地址或数据的重新发送)。在恢复操作期间可能再次检测到错误。在这种情况下,可重复恢复操作,直到错误被清除为止。在错误被清除的情况下,第一存储器模块1200不会生成错误信号,并且报警信号as可保持高电平。在响应于检测到错误而执行恢复操作时,报警信号as被示出为保持低电平,但是本发明构思不限于此。例如,报警信号as可在从检测到错误的时间起的设定时间期间保持低电平。
用于恢复或处理错误的时间被定义为错误处理时间“td”。在错误处理时间td期间,存储器控制器1110可不对第二存储器模块1300至第n存储器模块1400以及第一存储器模块1200执行单独的操作。这里,单独的操作可包括读取操作、写入操作或刷新操作,但不限于此。
在清除了错误之后,存储器控制器1110可将刷新命令提供给第一存储器模块1200至第n存储器模块1400。因为在错误处理时间td期间,第一存储器模块1200至第n存储器模块1400的刷新操作被延迟,所以刷新操作可在突发模式下执行。设置刷新周期间隔tr以确保存储在易失性存储器装置中的数据的稳定性。第一存储器模块1200至第n存储器模块1400在刷新周期间隔tr期间被请求执行刷新操作。
在重复发生错误的情况下,错误处理时间td可增加。在这种情况下,能够在刷新周期间隔tr期间执行刷新操作的时间减少。由于这个原因,易失性存储器装置的刷新操作不能在刷新周期间隔tr内完全执行。为了处理这个事件,处理器1100或存储器控制器1110可分别管理关于第二存储器模块1300至第n存储器模块1400的刷新操作。然而,在这种情况下,因为每当检测到错误时就必须管理存储器模块,所以处理器1100的控制的负担可增加。
图7是根据本发明构思的实施例的用于描述基于报警信号执行刷新操作的操作的时序图。相应的操作可由图1的存储器系统1000执行。将假设图7的刷新操作是自动刷新操作而给出描述。为了便于描述,将参照图1和图3的参考标号/标记来描述图7。
第一存储器模块1200可如参照图6所述检测错误。当发生这种情况时,第一存储器模块1200可将报警信号as(alertn)的前边沿(高至低边沿)输出到报警通道。例如,当检测到错误时,第一错误检测器1211可生成高电平的错误信号e1。第一报警缓冲器电路1212可基于高电平的错误信号e1用作输出缓冲器,可使错误信号e1反相,并且可将低电平的报警信号as输出到报警通道。
存储器控制器1110识别低电平的报警信号。如参照图6所述,存储器控制器1110可基于报警信号as执行用于恢复错误的操作。此外,与恢复操作一起,第一控制器1210可触发错误信号e1,并且可内部地对第一存储器1220执行刷新操作。
第二存储器模块1300识别低电平的报警信号as。这里,假设第二存储器模块1300处于未检测到错误的状态。因此,第二报警缓冲器电路1312可用作输入缓冲器并且可接收报警信号as。第二控制器1310可触发报警信号as,并且可内部地对第二存储器1320执行刷新操作。例如,第二存储器模块1300可在刷新周期trfc期间执行一次刷新操作。第二存储器模块1300可增加计数值,并且可在刷新周期trfc期间执行与下一地址相应的刷新操作。刷新操作的执行次数可在第二存储器模块1300中进行内部调整。在刷新周期trfc之后,可发布有效命令valid。
因为第二存储器模块1300基于报警信号as内部地执行刷新操作,所以参照图6所述的被延迟的刷新操作的脆弱性可被改进。第二存储器模块1300可执行刷新操作,而不需要等待直到第一存储器模块1200的错误被清除为止。以这种方式,可提高数据的稳定性。
图8是根据本发明构思的实施例的用于描述基于报警信号执行刷新操作的操作的时序图。相应的操作可由图1的存储器系统1000执行。在图8的刷新操作是自刷新操作的假设下给出描述。为了便于描述,将参照图1和图3的参考标号/标记来描述图8。
第一存储器模块1200可如参照图6和图7所述检测错误。在这种情况下,第一存储器模块1200可将低电平的报警信号as(alertn)输出到报警通道。存储器控制器1110可接收报警信号as。如参照图6和图7所述,存储器控制器1110可基于报警信号as执行用于恢复错误的操作。
第二存储器模块1300识别低电平的报警信号。第二控制器1310可基于报警信号as对第二存储器1320执行自刷新操作(自刷新进入,sre)。当接收到报警信号as时,第二控制器1310可基于自刷新信息对第二存储器1320执行刷新操作。自刷新信息可包括关于执行自刷新操作的时间tsr的信息。自刷新信息可包括关于随后的处理的信息(诸如,在自刷新操作之后生成有效命令的时间)。
在自刷新操作中,因为用于从外部接收时钟信号的缓冲器被去激活,所以存储器控制器1110不能介入第二存储器模块1300,直到自刷新操作完成(自刷新退出,srx)为止。因此,在执行自刷新操作之前,关于执行自刷新操作的时间tsr的信息对于第二存储器模块1300可能是必需的。该信息可从处理器1100提供。
因为第二存储器模块1300基于报警信号as执行刷新操作,所以参照图6描述的自刷新操作的脆弱性可被改善。第二存储器模块1300可执行刷新操作,而不需要等待直到第一存储器模块1200的错误被清除为止。因此,可确保数据的稳定性。
图9是包括在图1中示出的存储器模块中的控制器的示例性框图。图9示出用于描述如何生成报警信号as并根据报警信号as执行刷新操作的第一控制器2210和第二控制器2310的示例。第一控制器2210和第二控制器2310中的每个可对应于图1的第一控制器1210至第n控制器1410中的一个。与第一控制器2210对应的存储器可以是非易失性存储器装置(诸如,相变存储器),并且与第二控制器2310对应的存储器可以是易失性存储器装置(诸如,dram)。
第一控制器2210可包括报警生成器2211和第一报警缓冲器电路2212。假设第一控制器2210包括在图1的第一存储器模块1200中。为了便于描述,包括在第一控制器2210中的组件被示为单独的块,但是包括在第一控制器2210中的组件的布置不限于此。例如,在第一存储器模块1200中,第一报警缓冲器电路2212可与第一控制器2210的任何其他组件分离,并且可位于与报警引脚邻近。
报警生成器2211可基于第一存储器模块1200的操作条件生成激活信号a1。操作条件可以是指示第一存储器模块1200的状态的索引。例如,操作条件可以是第一存储器模块1200的温度。在这种情况下,第一存储器模块1200可包括温度检测器(未示出)。如由图9所示,当第一存储器模块1200的温度超出正常范围时,报警生成器2211可生成激活信号a1。
报警生成器2211可将第一存储器模块1200的操作条件与参考条件进行比较,并且基于比较结果生成激活信号a1。例如,报警生成器2211可将第一存储器模块1200的温度与参考温度进行比较。参考温度可以是非易失性存储器装置可正常操作的温度的阈值。当第一存储器模块1200的温度高于参考温度时,报警生成器2211可将激活信号a1输出到第一报警缓冲器电路2212。
第一报警缓冲器电路2212基于激活信号a1将报警信号as输出到报警通道。第一报警缓冲器电路2212通过报警引脚电连接到报警通道。如在图3和图4的第一报警缓冲器电路1212中一样,在接收到激活信号a1时,第一报警缓冲器电路2212可用作输出缓冲器。在这种情况下,第一报警缓冲器电路2212可防止通过报警通道提供给第一存储器模块1200的信号被接收。
当操作条件属于正常范围时,第一报警缓冲器电路2212可用作输入缓冲器,但是本发明构思不限于此。在第一存储器模块1200包括非易失性存储器装置的情况下,可不需要刷新操作。因此,第一报警缓冲器电路2212可不用作输入缓冲器,并且可不从任何其他存储器模块接收报警信号。
报警信号as可被提供给第二控制器2310和图1的存储器控制器1110。存储器控制器1110可基于报警信号as来控制第一存储器模块1200,使得第一存储器模块1200的温度降低。例如,存储器控制器1110可控制第一存储器模块1200,使得第一存储器模块1200在低功率模式下操作。
图1的存储器控制器1110可不对其他存储器模块执行单独的操作,直到第一存储器模块1200满足正常操作条件为止。这里,例如,单独的操作可包括第二存储器模块1300的读取操作、写入操作或刷新操作。在这种情况下,如上所述,第二存储器模块1300的刷新操作可被延迟,从而使得数据的稳定性相对低。为了解决这个问题,在本发明构思的一些实施例中,第一控制器2210可将报警信号提供给第二控制器2310。
第二控制器2310可包括错误检测器2311、第二报警缓冲器电路2312、刷新模块2313和模式寄存器2314。假设第二控制器2310包括在图1的第二存储器模块1300中。错误检测器2311、第二报警缓冲器电路2312、刷新模块2313和模式寄存器2314可与图3的第二错误检测器1311、第二报警缓冲器电路1312、第二刷新模块1313和第二模式寄存器1314基本相同。
错误检测器2311可基于命令/地址的奇偶校验或循环冗余校验(crc)来检测错误,或者使用另外的错误检测算法来检测错误。错误检测器2311可基于是否检测到错误来生成错误信号或正常信号er。错误信号或正常信号er被提供给第二报警缓冲器电路2312。
第二报警缓冲器电路2312可基于错误检测器2311的错误检测结果,从报警通道接收报警信号as。如参照图3所述,当检测到错误时,第二报警缓冲器电路2312可用作输出缓冲器,并且当未检测到错误时,第二报警缓冲器电路2312可用作输入缓冲器。当未检测到错误时,从第一控制器2210生成的报警信号as可被第二控制器2310识别。第二报警缓冲器电路2312可将基于报警信号as生成的触发信号t1提供给刷新模块2313。
刷新模块2313可基于报警信号as,允许易失性存储器装置执行刷新操作。例如,刷新模块2313可触发触发信号t1并可生成刷新信号ra。因此,根据第一存储器模块1200的异常操作条件,可不延迟第二存储器模块1300的刷新操作,并且可确保存储在易失性存储器装置中的数据的稳定性。此外,由于第二存储器模块1300内部地执行刷新操作,所以存储器控制器1110的控制的负担可减少。刷新模块2313可参照设置到模式寄存器2314的信息来执行刷新操作。
图10是与参照图9所述的存储器系统的操作方法相关联的流程图。相应的方法可由包括图9的第一控制器2210和第二控制器2310的存储器系统执行。为了便于描述,将参照图9的参考标记/标号来描述图10。
在操作s210中,第一控制器2210可将第一存储器模块的操作条件与参考条件进行比较。例如,第一控制器2210可将第一存储器模块的测量温度tm与参考温度进行比较。参考温度可以是第一存储器模块可正常操作的温度的阈值。当第一存储器模块的温度tm高于参考温度时,执行操作s220。当第一存储器模块的温度tm不高于参考温度时,第一控制器2210不生成报警信号as并且正常操作。
在操作s220中,第一控制器2210可通过报警引脚将报警信号as输出到报警通道。例如,当第一存储器模块的温度tm高于参考温度时,报警生成器2211可生成激活信号a1,并且第一报警缓冲器电路2212可基于激活信号a1输出报警信号as。报警信号as可被输入到第二控制器2310和图1的存储器控制器1110。
在操作s230中,第二控制器2310可对易失性存储器装置执行刷新操作。第二控制器2310可触发报警信号as,并且可对易失性存储器装置执行刷新操作。如上所述,刷新操作计数和刷新操作方法不受限制,并且第二控制器2310可执行诸如自动刷新操作或自刷新操作的设置的刷新操作。在这种情况下,在存储器控制器1110的控制下,第一控制器2210可执行用于降低第一存储器模块的温度tm的操作。
图11是根据本发明构思的实施例的存储器系统的示例性框图。参照图11,存储器系统3000可包括处理器3100以及多个存储器模块3210至3260和3310至3360。
处理器3100可控制存储器系统3000的组件和组件的操作。处理器3100可包括第一存储器控制器3110和第二存储器控制器3120。第一存储器控制器3110可通过第一通道ch1或第二通道ch2访问第一存储器模块3210至第六存储器模块3260。第二存储器控制器3120可通过第三通道ch3或第四通道ch4访问第七存储器模块3310至第十二存储器模块3360。
多个存储器模块3210至3260和3310至3360可用作存储器系统3000的主存储器。多个存储器模块3210至3260和3310至3360可按照存储器模块(诸如,双列直插式存储器模块(dimm)、寄存器式dimm(rdimm)和低负载dimm(lrdimm))的多个标准之一与第一存储器控制器3110和第二存储器控制器3120通信。如参照图1所述,多个存储器模块3210至3260和3310至3360可包括dram,并且多个存储器模块3210至3260和3310至3360的至少一部分可包括在类型上与dram不同的存储器(诸如,相变存储器)。
第一存储器模块3210至第六存储器模块3260可通过第一通道ch1或第二通道ch2连接到第一存储器控制器3110。第一通道ch1可包括分别专用于第一存储器模块3210至第六存储器模块3260的通道。第二通道ch2可由第一存储器控制器3110和第一存储器模块3210至第六存储器模块3260共享,并且可包括报警通道。在从第一存储器模块3210至第六存储器模块3260中的任何一个检测到错误或者操作条件超出参考条件的情况下,报警信号可被输出到报警通道。在这种情况下,第一存储器模块3210至第六存储器模块3260之中的包括dram的存储器模块可触发报警信号以执行刷新操作。
第七存储器模块3310至第十二存储器模块3360可通过第三通道ch3或第四通道ch4连接到第二存储器控制器3120。第三通道ch3可包括分别专用于第七存储器模块3310至第十二存储器模块3360的通道。第四通道ch4可由第二存储器控制器3120和第七存储器模块3310至第十二存储器模块3360共享,并且可包括报警通道。在从第七存储器模块3310至第十二存储器模块3360中的任何一个检测到错误或者操作条件超出参考条件的情况下,报警信号可被输出到报警通道。在这种情况下,第七存储器模块3310至第十二存储器模块3360之中的包括dram的存储器模块可触发报警信号以执行刷新操作。
根据本发明构思的实施例,由于任何其他存储器模块基于从特定存储器模块输出的报警信号执行刷新操作,因此可改善根据操作状态的刷新操作的脆弱性,并且可减少与刷新操作相关联的处理器或存储器控制器的控制的负担。
尽管已经参照本发明构思的示例性实施例描述了本发明构思,但是本领域普通技术人员将清楚,在不脱离由所附权利要求阐述的本发明构思的精神和范围的情况下,可对其做出各种变化和修改。
1.一种存储器系统,包括:
存储器装置,其中具有多个易失性存储器模块;以及
存储器控制器,电结合到所述多个易失性存储器模块,所述存储器控制器被配置为:响应于由所述多个易失性存储器模块中的第一易失性存储器模块生成报警信号,校正所述多个易失性存储器模块中的第一易失性存储器模块中的错误,并且在生成报警信号时并发地进行刷新所述多个易失性存储器模块中的第二易失性存储器模块的至少一部分的操作。
2.根据权利要求1所述的存储器系统,其中,所述多个易失性存储器模块包括报警缓冲器电路,被配置为:响应于在所述多个易失性存储器模块中的第一易失性存储器模块内生成的第一报警信号,生成第二报警信号作为报警信号。
3.根据权利要求2所述的存储器系统,其中,报警缓冲器电路包括:
输出缓冲器,被配置为:响应于第一报警信号生成第二报警信号;以及
输入缓冲器,由第一报警信号被去激活。
4.根据权利要求3所述的存储器系统,其中,输出缓冲器被去激活,并且输入缓冲器被激活,以接收第一报警信号。
5.根据权利要求1所述的存储器系统,还包括:
处理器,包括存储器控制器,所述处理器被配置为:将写入数据发送到所述多个易失性存储器模块中的第一易失性存储器模块,并且响应于报警信号将写入数据重新发送到所述多个易失性存储器模块中的第一易失性存储器模块。
6.一种存储器模块,包括:
易失性存储器装置;以及
控制器,被配置为:响应于从报警引脚接收的第一报警信号,刷新易失性存储器装置;检测易失性存储器装置的错误;并且将与错误相应的第二报警信号输出到报警引脚。
7.根据权利要求6所述的存储器模块,其中,控制器包括:
报警缓冲器电路,被配置为:接收第一报警信号或输出第二报警信号。
8.根据权利要求7所述的存储器模块,其中,报警缓冲器电路包括:
输出缓冲器,当检测到错误时,输出缓冲器被激活以将第二报警信号输出到报警引脚;以及
输入缓冲器,当检测到错误时,输入缓冲器被去激活,以防止从报警引脚接收信号。
9.根据权利要求7所述的存储器模块,其中,报警缓冲器电路包括:
输出缓冲器,当未检测到错误时,输出缓冲器被去激活,以防止信号被输出到报警引脚;以及
输入缓冲器,当未检测到错误时,输入缓冲器被激活,以从报警引脚接收第一报警信号。
10.根据权利要求6所述的存储器模块,其中,控制器包括:
错误检测器,被配置为:当检测到错误时生成错误信号,以及
其中,基于错误信号生成第二报警信号。
11.根据权利要求6所述的存储器模块,其中,基于与易失性存储器装置相应的命令或地址的奇偶校验来检测错误,或者基于与易失性存储器装置相应的写入数据的循环冗余校验来检测错误。
12.根据权利要求6所述的存储器模块,其中,控制器包括:
刷新模块,被配置为:基于第一报警信号或第二报警信号来刷新易失性存储器装置。
13.根据权利要求12所述的存储器模块,其中,刷新模块触发第一报警信号或第二报警信号,以与预设计数一样多地刷新易失性存储器装置。
14.根据权利要求13所述的存储器模块,其中,基于易失性存储器装置的刷新周期和处理检测到的错误所需的时间来调整预设计数。
15.根据权利要求12所述的存储器模块,其中,在接收到第一报警信号或第二报警信号时,刷新模块基于自刷新信息刷新易失性存储器装置,以及
其中,自刷新信息包括刷新操作的时间信息。
16.一种存储器系统,包括:
处理器,被配置为:提供写入信息;
第一存储器模块,包括:第一易失性存储器装置以及第一控制器,第一控制器被配置为:从将被提供给第一易失性存储器装置的写入信息检测错误,并生成与检测到的错误相应的报警信号;以及
第二存储器模块,包括:第二易失性存储器装置以及第二控制器,第二控制器被配置为:响应于报警信号刷新第二易失性存储器装置,
其中,处理器响应于报警信号再次将写入信息提供给第一存储器模块。
17.根据权利要求16所述的存储器系统,其中,第一控制器包括:
错误检测器,被配置为:基于错误生成错误信号;以及
报警缓冲器电路,被配置为:基于错误信号将报警信号输出到报警通道,并且基于错误信号阻止从报警通道输入到第一存储器模块的信号。
18.根据权利要求17所述的存储器系统,其中,第一控制器还包括:
刷新模块,被配置为:基于错误信号刷新第一易失性存储器装置。
19.根据权利要求16所述的存储器系统,其中,第二控制器包括:
错误检测器,被配置为:当未检测到与第二易失性存储器装置相应的错误时生成正常信号;
报警缓冲器电路,被配置为:基于正常信号从报警通道接收报警信号,并且基于正常信号阻止从第二存储器模块输出到报警通道的信号;以及
刷新模块,被配置为:基于报警信号刷新第二易失性存储器装置。
20.根据权利要求16所述的存储器系统,其中,写入信息包括包含循环冗余校验码的写入数据或包含奇偶校验位的命令/地址。
21.一种存储器系统,包括:
第一存储器模块,包括非易失性存储器装置和第一控制器,第一控制器被配置为:基于非易失性存储器装置的操作条件生成报警信号;
第二存储器模块,包括易失性存储器装置和第二控制器,第二控制器被配置为:响应于报警信号刷新易失性存储器装置;以及
存储器控制器,被配置为:控制第一存储器模块和第二存储器模块。
22.根据权利要求21所述的存储器系统,其中,第一控制器包括:
报警生成器,被配置为:基于将操作条件与参考条件进行比较的结果生成激活信号;以及
报警缓冲器电路,被配置为:基于激活信号输出报警信号。
23.根据权利要求21所述的存储器系统,其中,操作条件包括非易失性存储器装置的温度,以及
其中,当所述温度高于参考温度时,第一控制器输出报警信号。
24.根据权利要求21所述的存储器系统,其中,第二控制器包括:
错误检测器,被配置为:检测易失性存储器装置的错误;
报警缓冲器电路,被配置为:当检测到错误时,阻止从传送报警信号的报警通道输入到第二存储器模块的信号,并且当未检测到错误时,阻止从第二存储器模块输出到报警通道的信号;以及
刷新模块,被配置为:基于报警信号刷新易失性存储器装置。
25.根据权利要求21所述的存储器系统,其中,非易失性存储器装置包括相变存储器。
技术总结