一种在运算器中校验数据的方法技术

技术编号:19023192 阅读:48 留言:0更新日期:2018-09-26 19:00
本实施例所涉及的检验数据的方法的目的是进行寄存器文件的检验数据的,而不会使计算器的处理速度下降。本实施例所涉及的检验对该数据中产生的错误进行纠正的检验数据的方法,其特征是具有:该运算器使用该校验数据来检测该数据的错误的检测步骤;以及该运算器使用不同于该校验数据的纠正数据来在对该数据中检测出的错误进行纠正的纠正步骤。

【技术实现步骤摘要】
一种在运算器中校验数据的方法
本专利技术涉及运算器以及它们的检验数据的方法。
技术介绍
伴随于CPU(CentralProcessingUnit,中央处理单元)上所搭载的晶体管数量的增加,产生在CPU上所搭载的寄存器文件中错误频繁地发生这种问题。以往关于错误检测一般是对每数位设置奇数或者偶数奇偶校验来进行错误检测这种方法。但是,在基于奇偶校验的方法中,即便能够检测出错误也无法进行错误纠正,因此,当在寄存器文件等的访问中检测出错误的情况下,需要再执行存储器访问,对性能带来大的影响。因此,就要求不仅检测寄存器文件的数据中的错误而且进行纠正,并希望使用ECC(Error-CorrectingCode,错误校正码)来进行纠正。但是,仅仅将寄存器文件的数据上以往所附加的奇偶校验数据替换成ECC数据,就有CPU的处理速度大幅降低这样的问题。另外关于检验数据的方法有以下的专利文献。专利文献1:日本特开平5-20215号公报
技术实现思路
本申请专利技术所涉及的检验数据的方法的目的就是进行寄存器文件的检验数据的,而不会使信息处理装置中的CPU的处理速度下降。本实施例所涉及的检验数据的方法是一种运算器中所设置的寄存器保持数据以及校验数据,对该数据中产生的错误进行纠正的检验数据的方法,其特征在于,具有:该运算器使用该校验数据来检测该数据的错误的检测步骤;以及该运算器使用不同于该校验数据的纠正数据,对在该数据中检测出的错误进行纠正的纠正步骤。另外,本实施例所涉及的检验数据的方法的特征是,该纠正步骤在该运算器检测出错误的情况下,中断运算处理并使用该纠正数据对该数据进行检验数据的。另外,本实施例所涉及的检验数据的方法的特征是,该校验数据和该纠正数据与该数据对应而被保存在该寄存器中。另外,本实施例所涉及的检验数据的方法的特征是,该寄存器具有保持要处理的全体数据的主寄存器文件和保持从该主寄存器文件转送的一部分的数据的当前寄存器文件。另外,本实施例所涉及的检验数据的方法的特征是,对于该纠正步骤中的纠正数据,使用转送该校验数据的信号线来转送纠正数据。另外,本实施例所涉及的检验数据的方法的特征是,在该检测步骤中的错误检测中,按照来自对运算处理进行控制的运算控制部的指示。另外,本实施例所涉及的检验数据的方法的特征是,还具有:重新生成与经过检验数据的的数据相对应的纠正数据的生成步骤。另外,本实施例所涉及的检验数据的方法的特征是,使用错误标记来判别在该纠正步骤中有无检测出错误。进而,本实施例所涉及的运算器是一种对数据中产生的错误进行纠正的运算器,其特征在于,具有:保持数据、对应于该数据的校验数据以及对应于该数据的纠正数据的寄存器;使用该校验数据来检测该数据的错误的检测单元;以及在检测出该错误的情况下使用该纠正数据进行纠正的纠正单元。根据本申请专利技术中的检验数据的方法,通过在未检测出错误时跳过伴随于ECC运算的处理,就能够纠正寄存器文件的位错误,而不会使信息处理装置的CPU的处理速度降低。附图说明图1是本专利技术一实施例中的寄存器文件内的数据格式。图2是本专利技术一实施例中的寄存器文件200。图3是本专利技术一实施例中的对寄存器文件401上的错误进行纠正的纠正流程图。图4是本专利技术一实施例中的检验数据的机制的运算电路400的框图。附图标记说明100...数据格式101...数据102...奇偶校验数据103...ECC数据200...寄存器文件400...运算电路401...寄存器文件402...运算器403...奇偶校验器404...ECC生成电路405...ECC纠正电路600...运算电路601...主寄存器文件602...当前寄存器文件603...奇偶校验器604...奇偶校验器605...运算器606...ECC纠正电路607...ECC生成电路700...CPU701...存储器702...高速缓存控制单元703...高速缓存704...指令控制单元705...运算单元706...运算控制部707...运算部708...寄存器部709...检验数据的部具体实施方式本专利技术一实施例中的检验数据的方法的目的是不会降低信息处理装置的CPU的处理速度地进行检验数据的,并提高信息处理装置的CPU中的可靠性。具体而言,本实施例中的检验数据的方法在搭载于信息处理装置的CPU内部得以实现。当然本实施例中的检验数据的方法是除CPU以外,还可在具有寄存器文件并通过程序而进行各种各样的数值计算、信息处理、图像处理或者设备控制的DSP(DigitalSignalProcessor)、GPU(GraphicsProcessingUnit)或者控制器LSI等的运算电路中实现的方法。而且,在安装了实现本实施例中的检验数据的方法的电路的CPU中,在寄存器内将奇偶校验数据和ECC数据与数据一起进行保持。奇偶校验数据是用于检测数据的位错误的数据。另外,ECC数据是用于纠正所检测出的错误的数据。在本实施例中,奇偶校验数据、ECC数据共同为8位数据。虽然CPU等可以利用ECC数据来进行检错,但本实施例中的检验数据的方法,是利用奇偶校验数据来进行检错,利用ECC数据来纠正所检测出的错误。首先,CPU进行从寄存器读出数据和对应于该数据的奇偶校验数据的处理,并判别有无检测出所读出的数据的错误。CPU进行分别从寄存器读出的数据和奇偶校验数据的EOR(Exclusive-OR:异或)运算,以判别有无奇偶错误。另外,在利用了奇偶校验数据的检错中检测有无1位错误。CPU通过进行奇偶校验以保证从寄存器读出的数据的正确性,据此,CPU进行数据转送中的错误检测。在CPU检测出1位错误时,CPU暂时中断正在执行的运算处理。而且,CPU从寄存器再次读出已被检测出错误的数据并且读出与该数据相对应的ECC数据。CPU基于ECC数据对检测出的1位错误进行纠正,并将错误已被纠正的数据写入寄存器进行修正。由此,就能够抑制CPU的处理速度降低的同时纠正1位错误,能够实现处理速度既快、且可靠性又高的CPU。(实施例1)图1是本实施例中的寄存器文件内的数据格式100。本实施例中的数据格式100是作为寄存器文件的1个项(entry)所设定的数据单位。数据格式100由数据101、奇偶校验数据102、ECC数据103所构成。在本实施例中,数据101为64位(8字节),奇偶校验数据102为8位、ECC数据103为8位。奇偶校验数据102是为了检测出在数据101中是否有1位错误而使用的数据。ECC数据103是为了纠正存在于数据101中的1位错误而使用的数据。另外,本实施例中的CPU使用物理上相同的信号线读出奇偶校验数据102和ECC数据103。据此CPU就能够进行ECC运算并能够进行检验数据的而不用增加新的信号线。这里,进行运算处理的运算器还可以是除CPU以外的DSP、GPU或者控制器LSI等具有的可以进行运算处理的单元。CPU对寄存器文件的数据以数据101和奇偶校验数据102的组、或者数据101和ECC数据103的组为单位来进行读出处理、或者写入处理。当然,数据格式100的大小还可以是64位(数据101)+8位(奇偶校验数据102)+8位(ECC数据)以外的大小,数据大小并不限定于该大小。图2是本实施例中的寄存器文件200。在本实施例本文档来自技高网...

【技术保护点】
1.一种检验数据的方法,运算器中所设置的寄存器保持数据以及校验数据,对该数据中产生的错误进行纠正,其特征在于,具有:该运算器使用该校验数据来检测该数据的错误的检测步骤;以及该运算器使用不同于该校验数据的纠正数据,对在该数据中检测出的错误进行纠正的纠正步骤。

【技术特征摘要】
1.一种检验数据的方法,运算器中所设置的寄存器保持数据以及校验数据,对该数据中产生的错误进行纠正,其特征在于,具有:该运算器使用该校验数据来检测该数据的错误的检测步骤;以及该运算器使用不同于该校验数据的纠正数据,对在该数据中检测出的错误进行纠正的纠正步骤。2.按照权利要求1所记载的检验数据的方法,其特征在于:该纠正步骤在该运算器检测出错误的情况下,中断运算处理并使用该纠正数据对该数据进行检验数据的。3.按照权利要求1所记载的检验数据的方法,其特征在于:该校验数据和该纠正数据与该数据对应而被保存在该寄存器中。4.按照权利要求1所记载的检验数据的方法,其特征在于:当在该检测步骤中检测出错误时,自该寄存器读出该纠正步骤中的...

【专利技术属性】
技术研发人员:刘静静刘珍珍
申请(专利权)人:西安优庆商贸有限公司
类型:发明
国别省市:陕西,61

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

1