软错误纠正方法、存储控制设备及存储系统技术方案

技术编号:3083632 阅读:138 留言:0更新日期:2012-04-11 18:40
本发明专利技术提供一种软错误纠正方法、存储控制设备及存储系统。该软错误纠正方法用于存储系统,该存储系统具有:多个内存存取控制器,用于以同步周期存储字节片式的数据的n个内存;以及一个系统控制器,其接收来自多个MPU中的任一个MPU的内存存取,并向内存存取控制器发布存储地址。在从一个内存读取的数据中检测到可纠正错误时,将检测出该错误的错误地址保存在一个内存存取控制器中,并从该内存存取控制器中向该系统控制器进行错误通知。响应该错误通知,不受MPU的干预,该内存存取控制器保存来自系统控制器的错误地址,并且读取、纠正该数据并将其重写至该错误地址。

【技术实现步骤摘要】

本专利技术一般地涉及一种软错误纠正方法、存储控制设备及存储系统,更具体地,涉及一种用于纠正内存内的软错误的软错误纠正方法,一种适用于这种软错误纠正方法的存储控制设备,以及一种采用这种软错误纠正方法的存储系统。
技术介绍
图1是示出传统存储系统的实例的系统框图。图1所示的存储系统10具有存取字节片式(Byte-sliced)的数据,即数据按一些字节为单位进行了划分的结构。存储系统10包括多个内存(MEM)1-1至1-n、多个内存存取控制器(MAC)2-1至2-n、系统控制器(SC)3、以及多个MPU 5-1至5-m。在图1中,数据总线由白色箭头来表示,地址总线由粗实线箭头来表示,并且状态总线由实线箭头来表示。内存存取控制器2-1至2-n被构造为以同步存取周期、以字节片式的数据的字节为单位存取内存1-1至1-n。换句话说,所有的内存存取控制器2-1至2-n以相同定时恒定并且同时地对所有内存1-1至1-n进行内存存取,从而在对内存1-1至1-n的存取中不会产生同步错误。另一方面,在由多个存储装置比如DRAM和SRAM构成的内存1-1至1-n中,会以预定的概率产生软错误。由此,在要求存储系统10具备可靠性的情况下,便利用比如ECC之类的数据保护机制来纠正内存1-1至1-n内的数据。例如,如果在一个内存1-1内产生了可纠正的软错误并且系统控制器3检测到该软错误,则通常系统控制器3的硬件自身会执行错误纠正操作。在这种情况下,需要下述的一系列操作。图2和图3是用于说明这种情况下的错误纠正操作的示图。图2是功能性地示出存储系统10的重要部分的系统框图,并且图3是用于说明错误纠正操作的时序图。在图2中,虚线箭头表示命令流,粗虚线箭头表示地址流,实线箭头表示状态流,以及粗实线箭头表示数据流。此外,图2中括号内的数字表示比特数。如图2所示,每个内存存取控制器2-1至2-n除了包括一个控制器(未示出)之外还包括寄存器521、522、525和526。系统控制器3除了包括一个控制器(未示出)之外,还包括选择器531和532、寄存器533和534、AND电路535、错误检测部件536、选择器537、错误纠正部件538和寄存器539。首先,如图2和图3所示,当来自MPU 5-1的读命令与地址一起输入到系统控制器3时,系统控制器3经由选择器531和532将读命令(Readcmd)和地址(Address)输入到内存存取控制器2-1。读命令(Command)和地址(Address)被临时保存在内存存取控制器2-1的寄存器521和522中,并且以内存规定的定时输入到内存1-1。从内存1-1读取(MEM Read)的并且包含ECC的数据(Data)被输入到内存存取控制器2-1并临时保存在内存存取控制器2-1内的寄存器525中,并以内存规定的定时被输入到系统控制器3。如果由于在系统控制器3的错误检测部件536中利用ECC进行错误检测(Read Data Check)的结果在读取数据(Read Data)中不存在错误(Error),则读取的数据(Correct Data)被输入到MPU5-1。另一方面,如果由于在系统控制器3中利用ECC进行错误检测的结果在读取的数据中存在错误,但是该读取的数据(Error Data)可由ECC(Error Correct)纠正,则对检测出错误的地址(Error Address)进行纠正错误的读命令(Scrub cmd)被输入到内存存取控制器2-1,以便从内存1-1读取错误数据(Error Data)。由于可在系统控制器3的错误纠正部件538中利用ECC纠正读取的数据中的错误,因此读取的数据经由寄存器539和选择器537被输入到错误纠正部件538,并被纠正,然后纠正后的数据(纠正后的读取的数据)与用于纠正错误的写命令一起被输入到内存存取控制器2-1。内存存取控制器2-1在寄存器526中临时保存纠正后的数据,并且在规定的定时将纠正后的数据重写到检测出上述错误的地址。由此,内存1-1内的可纠正软错误被纠正。在正常数据写入(MEM Write)的情况下,来自MPU5-1的写数据经由系统控制器3被输入到内存存取控制器2-1。如上所述,存储系统10被构造为使所有内存存取控制器2-1至2-n以相同定时恒定并且同时地对所有内存1-1至1-n进行内存存取。为此,不管在内存2-2至2-n中是否存在软错误,都与经由内存存取控制器2-1对内存1-1进行的软错误纠正操作类似,经由其它内存存取控制器2-2至2-n对内存1-2至1-n同时进行软错误纠正操作。例如,已经在日本特许公开No.59-217298中提出了一种用于修正存储错误的系统。但是,在传统的存储系统中,错误检测和错误纠正都在系统控制其中执行。结果,就会产生这样的问题,即系统控制器的结构变得复杂,并且系统控制器上的负载较大。此外,还存在这样的问题,即无法对其中系统控制器和纵横交换器分离设置的存储系统的应用。
技术实现思路
因此,本专利技术的总的目的是提供一种能抑制上述问题的、新颖和有用的软错误纠正方法、存储控制设备及存储系统。本专利技术的其他和更具体的目的是提供一种软错误纠正方法、存储控制设备和存储系统,其能够使得系统控制器的结构相对简单,减少系统控制器上的负载,并且能够实现对其中系统控制器和纵横交换器分离设置的存储系统的应用。本专利技术的又一目的是提供一种用于存储系统的软错误纠正方法,该存储系统具有n个内存存取控制器,所述n个内存存取控制器被构造为以同步周期存取用于存储字节片式的数据的n个内存;以及一个系统控制器,该系统控制器被构造为接收来自m个MPU中的任一个MPU的内存存取,并向所述n个内存存取控制器发布存储地址,其中m和n是大于或等于2的整数,该软错误纠正方法包括在从一个内存读取的数据中检测到可纠正错误时,将检测出该错误的错误地址保存在对应的一个内存存取控制器中,并从对应的一个内存存取控制器向该系统控制器进行错误通知;以及响应该错误通知,不受MPU的干预,从系统控制器控制保存错误地址的一个内存存取控制器,从对应的一个内存的错误地址读取数据,纠正该错误并且将纠正后的数据重写到该错误地址。按照本专利技术的软错误纠正方法,能够使得系统控制器的结构相对简单,减少系统控制器上的负载,并且能够实现对其中系统控制器和纵横交换器分离设置的存储系统的应用。本专利技术的再一目的是提供一种用于存储系统的软错误纠正方法,该存储系统具有n个内存存取控制器,所述n个内存存取控制器被构造为以同步周期存取用于存储字节片式的数据的n个内存;以及一个系统控制器,该系统控制器被构造为接收来自m个MPU中的任一个MPU的内存存取,并向所述n个内存存取控制器发布存储地址,其中m和n是大于或等于2的整数,该软错误纠正方法包括在从一个内存读取的数据中检测到可纠正错误时,将错误产生信息(error generation)和检测出错误的错误地址保存在对应的一个内存存取控制器中;以及周期性地或者当空闲状态持续了预定时间时,不受MPU的干预,通过保存来自该系统控制器的错误地址的一个内存存取控制器,响应该错误产生信息,从对应的一个内存的错误地址读取数据,纠正该错误并且将纠正后的数据重写到该错误地址。按照本专利技术的软错误纠正方法,能够使得系统本文档来自技高网
...

【技术保护点】
一种用于存储系统的软错误纠正方法,该存储系统具有:n个内存存取控制器,所述n个内存存取控制器被构造为以同步周期存取用于存储字节片式的数据的n个内存;以及一个系统控制器,该系统控制器被构造为接收来自m个MPU中的任一个MPU的内存存取,并向所述n个内存存取控制器发布存储地址,其中m和n是大于或等于2的整数,其特征是,该方法包括:在从一个内存读取的数据中检测到可纠正错误时,将检测出该错误的错误地址保存在对应的一个内存存取控制器中,并从该对应的一个内存存取控制器向该系统控制 器进行错误通知;以及响应该错误通知,不受MPU的干预,从系统控制器控制保存错误地址的一个内存存取控制器,从对应的一个内存的错误地址读取数据,纠正该错误并且将纠正后的数据重写到该错误地址。

【技术特征摘要】
JP 2005-3-17 2005-0780101.一种用于存储系统的软错误纠正方法,该存储系统具有n个内存存取控制器,所述n个内存存取控制器被构造为以同步周期存取用于存储字节片式的数据的n个内存;以及一个系统控制器,该系统控制器被构造为接收来自m个MPU中的任一个MPU的内存存取,并向所述n个内存存取控制器发布存储地址,其中m和n是大于或等于2的整数,其特征是,该方法包括在从一个内存读取的数据中检测到可纠正错误时,将检测出该错误的错误地址保存在对应的一个内存存取控制器中,并从该对应的一个内存存取控制器向该系统控制器进行错误通知;以及响应该错误通知,不受MPU的干预,从系统控制器控制保存错误地址的一个内存存取控制器,从对应的一个内存的错误地址读取数据,纠正该错误并且将纠正后的数据重写到该错误地址。2.如权利要求1所述的软错误纠正方法,其特征是,替代将检测出该错误的错误地址保存在该对应的一个内存存取控制器内,而是将该错误地址直接发送给该系统控制器,从而将错误纠正命令和该错误地址从该系统控制器同时输入到每个内存存取控制器。3.如权利要求1或2所述的软错误纠正方法,其特征是,响应该错误通知,从该系统控制器控制没有保存错误地址的任意内存存取控制器,从对应于所述任意内存存取控制器的内存的预设地址读取数据,随后通过等待完成回写所需的时间来进行定时调节。4.如权利要求1所述的软错误纠正方法,其特征是,响应该错误通知,从该系统控制器控制没有保存错误地址的任意内存存取控制器,从对应于所述任意内存存取控制器的内存的预设虚拟读地址读取数据,并且将该数据照原样回写至该预设虚拟读地址。5.如权利要求4所述的软错误纠正方法,其特征是,响应该错误通知,将错误纠正命令和该虚拟读地址从该系统控制器输入到每个内存存取控制器。6.如权利要求1、4和5中任一项所述的软错误纠正方法,其特征是,利用总线进行该错误通知,该总线被构造为从一个内存存取控制器向该系统控制器发送状态。7.一种用于存储系统的软错误纠正方法,该存储系统具有n个内存存取控制器,所述n个内存存取控制器被构造为以同步周期存取用于存储字节片式的数据的n个内存;以及一个系统控制器,该系统控制器被构造为接收来自m个MPU中的任一个MPU的内存存取,并向所述n个内存存取控制器发布存储地址,其中m和n是大于或等于2的整数,其特征是,该方法包括在从一个内存读取的数据中检测到可纠正错误时,将错误产生信息和检测出该错误的错误地址保存在对应的一个内存存取控制器中;以及周期性地或者当空闲状态持续了预定时间时,不受MPU的干预,通过保存来自该系统控制器的错误地址的一个内存存取控制器,响应该错误产生信息,从对应的一个内存的错误地址读取数据,纠正该错误并且将纠正后的数据重写到该错误地址。8.一种用于存储系统的存储控制设备,该存储系统具有n个内存存取控制器,所述n个内存存取控制器被构造为以同步周期存取用于存储字节片式的数据的n个内存;以及一个系统控制器,该系统控制器被构造为接收来自m个MPU中的任一个MPU的内存存取,并向所述n个内存存取控制器发布存储地址,其中m和n是大于或等于2的整数,其特征是,该存储控制设备包括装置,该装置用于在从一个内存读取的数据中检测到可纠正错误时,将检测出该可纠正错误的错误地址保存在对应的一个内存存取控制器中,并从该对应的一个内存存取控制器向该系统控制器进行错误通知;以及装置,该装置响应该错误通知,用于不受MPU的干预,从该系统控制器控制保存错误地址的一个内存存取控制器,并从对应的一个内存的错误地址读取数据,以纠正该错误并且将纠正后的数据重写到该错误地址。9.如权利要求8所述的存储控制设备,其特征是,替代将检测出该错误的错误地址保存在该对应的一个内存存取控制器内,而是将该错误地址直接发送给该系统控制器,从而将错误纠正命令和该错误地址从该系统控制器同时输入到每个内存存取控制器。10.如权利要求8或9所述的存储控制设备,其特征是,响应该错误通知,从该系统控制器控制没有保存错误地址的任意内存存取控制器,从对应于所述任意内存存取控制器的内存的预设地址读取数据,随后通过等待完成回写所需的时间来进行定时调节。11.如权利要求8所述的存储控制设备,其特征是还包括装置,该装置响应该错误通知,用于从该系统控制器控制没有保存错误地址的任意内存存取控制器,从对应于所述任意内存存取控制器的内存的预设虚拟读地址读取数据,并且将该数据照原样回写至该预设虚拟读地址。12.如权利要求11所述的存储控制设备,其特征是还包括装置,该装置响应该错误通知,用...

【专利技术属性】
技术研发人员:铃木贤司本田育史小口孝
申请(专利权)人:富士通株式会社
类型:发明
国别省市:JP[日本]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1