用于在数据记录系统中识别系统性错误的方法和设备的制作方法

文档序号:6763449阅读:132来源:国知局
专利名称:用于在数据记录系统中识别系统性错误的方法和设备的制作方法
技术领域
本发明通常涉及在系统中的系统性错误的识别,特别是在数据记录系统,如磁带设备或光记录设备中的系统性错误的识别。
版权保护材料 本发明文献的部分公开内容包括受版权保护的材料。版权享有者不反对对专利商标局专利文件或记录中出现的任何专利文献或专利公开进行复制,但对其他则保留其所有版权。

背景技术
众所周知,因任何各种各样的条件,所有类型的系统都容易出现错误。一些条件可以是瞬时性的(短暂且可能自行纠正)。另外一些条件可以是系统性的(既非暂时,也不能自行纠正)。非系统性条件可能导致系统问题,这样的问题通常是暂时且可能无需纠错行动。相比之下,系统性条件还可能导致非暂时性的系统问题,这将通常需要由人工系统操作员或由系统自身内的纠错程序采取某些纠错行动。重要的是能够区分出系统性和非系统性错误,仅在必要时确保正确的纠错行动,从而减少因不必要(以及可能耗时和/或代价高)的行为所导致的低效。
以数据记录设备,如磁带设备驱动器,为系统示例(光盘记录器为可应用本发明的另一系统示例)。用户数据以此处称为“数据集合(data sets)”的逻辑单元写到磁带介质。每个数据集合包括固定数量的子单元,此处称为“数据段(data segments)”。在写入操作期间,将数据集合的数据段记录在带介质上。在该记录后,通过带驱动器回读数据段,以识别任何含有错误的段。若识别出错误写入的段,则对其重写,通常重写在带介质上的不同位置。当重写了所有出错的段时,对它们进行回读,以识别另外的错误。回读/重写处理一直持续到带介质包含有数据集合中每个段的至少一个无错的映象(image)。应该理解,若识别出任何错误写入的段,则实际记录到带介质上的数据段的总数将大于数据集合中数据段的数量。
如果将每个重写的段记录到带介质上与相应的最初记录的段不同的位置,则会减少带介质上可记录的有用数据的总量。如果重写段的数量较大,则带介质上丢失的容量会相当大。此外,因重写错误写入的段需要额外耗时,写入数据速率受到影响,而且,由于为获得数据集合的完整映象而读出所有写入以及重写的段需要额外耗时,读出数据速率同样受到影响。
有多种可导致数据段出现错误并且必须重写的可能条件。这些条件包括 1)随机电噪声; 2)介质缺陷,如较差的磁涂层,衬底不规则或物理损伤(折皱或变形);和 3)其他因素,如在读和写通道电路,写入头和带介质之间的装设失配。这种失配可源自于制造商的系统装设,部件的差异,部件的正常老化和/或磨损。
第一种条件始终是瞬时的;第二种因素通常是瞬时的;而第三种为系统的且不具瞬时性。
当因瞬时性条件导致数据段出错时,即使可做任何事情也很少有办法来纠正错误,因为按照规定,事情已经过去。不过,如果能够检测出系统性错误并将其识别为系统性错误,可对系统性条件进行纠正。例如,可调整电路,以抵消元件之间的失配或补偿老化或磨损。应该理解,当条件仅为瞬时性时进行这样的调谐(tuning),将导致失调(de-tuned)的,次优化(suboptimal)的系统。
现有的方法不能充分且一致地区分系统性和非系统性条件。一种这样的方法是对输入值求平均值,且不对指示系统性条件的许多小事件与指示局部或强随机性(瞬时性)条件的有些大的事件加以区分。求平均值并不能对输入值产生的统计结果进行一致的分析。第二种方法是依赖于下降移动平均(使用IIR滤波器)。然而,该方法仍不能一致地区分出长期(系统性)条件和短期、局部的(瞬时性)事件。
因此,需要能够一致地识别出系统中的系统性错误,从而允许仅在适当时采取补救行动。


发明内容
本发明提供了一种用于在数据记录设备中的数据存储写入操作期间识别系统性条件的方法和设备。进行所记录数据集合的多重数据观察,并将其存储在缓冲区中。当将数据集合完全写入记录介质时,将数据集合中重写段的数量(或最初以及在重写期间针对数据集合写入的数据段的总数)存储在缓冲区单元中。当缓冲区满时,将全部缓冲区中每个存储的单元值与第一阈值进行比较,并确定超出第一阈值的值的数量。另外,将在全部缓冲区的较小子集(最好代表最近缓冲区项(buffer entries))中的存储值与第二阈值进行比较,并确定超出第二阈值的该值数量。如果超出第一阈值的值的数量大于第三阈值,且超出第二阈值的值的数量大于第四阈值,则表明为系统性条件。



图1表示可采用本发明的数据存储记录设备的方块图; 图2表示示例性带介质的一部分; 图3表示光记录盘和光转换器; 图4表示本发明采用两个网络的控制逻辑的一个实施例的方块图; 图5表示图4所示控制逻辑的逻辑图; 图6A表示本发明方法的流程图; 图6B表示图6A所示本发明方法流程图的继续; 图7表示在不表明任何错误条件的条件下应用本发明的写入操作的数据绘图; 图8表示仅在最近M个数据集合中检测出最近发生的错误的写入操作数据的绘图; 图9表示在L个数据集合中而不在M个数据集合中检测出瞬时错误的写入操作的数据绘图; 图10表示瞬时错误不会持续足够长至出现在最近M个数据集合中的写入操作的数据绘图; 图11表示存在头阻塞且表明系统错误条件的写入操作的数据绘图,其中,在大部分观察时期期间,包括最近M个数据集合,并且指示头阻塞; 图12也表示具有在观察周期的整个较长部分期间(包括结束端)出现的系统错误条件的写入操作的数据绘图;以及 图13表示采用四个网络的本发明控制逻辑的第二实施例的方块图。

具体实施例方式 本发明通过在一系列许多观察事件上观察度量(merit)数字(figure)来区分系统性和非系统性(瞬时性)条件。对每个事件进行分类,并基于相应分类对条件的性质作出判决。在数据存储记录环境中,为确保正确写入整个数据集合,所用度量的具体数字具体为必须重写(因错误)到记录介质的数据段的数量。较大的写入段数量表示显著的错误条件。本发明能够确定该错误条件是系统性条件(对其可应用补救行动)还是非系统性条件(对其应用补救行动可能会徒劳)。
当全部正确写入每个数据集合后,将数据集合的重写段的数量作为“事件”报告。通过算法将每个观察的事件分类为若干事件类型之一。在一个分类中,三种事件类型可为“好”,“坏”和“非常坏”(不过应该理解,分类及分类标记是随意的,可使用其他分类及标记)。维护分类事件(或事件本身)的运行历史记录。然后,在预定时间,分析历史记录,并判定任何观察的事件是否符合系统性条件的预定标准。该标准包括若干因素 1)观察事件数,表示物理距离或时间段; 2)各观察事件的严重程度; 3)在整个观察周期上超出一个或更多阈值的观察事件的比例;和 4)在较短的,最好是最近的观察周期上超出一个或更多阈值的观察事件的比例。
由于系统性条件将存在于整个观察周期,包括较短的、最近的观察周期,两个(或更多)观察周期允许准确和一致地区分系统性和非系统性条件。相比之下,当分析整个观察周期时,可识别非系统性条件,不过,当仅仅分析较短的、最近的周期时,将不会显现出非系统性条件由于其瞬时特性,从而显现不出。
本发明包括其中存储多个数据观察的缓冲区。当将数据集合完全写入到记录介质时,将数据集合中重写段的数量(或最初以及在重写期间针对数据集合写入的数据段的总数)存储在缓冲区单元中。当缓冲区满时,将整个缓冲区中各存储单元值与第一阈值进行比较,并确定超出第一阈值的值的数量。另外,将整个缓冲区的更小子集(最好代表最近缓冲区项)中的存储值与第二阈值进行比较,并确定超出第二阈值的该值的数量。如果超出第一阈值的值的数量大于第三阈值,且超出第二阈值的值的数量大于第四阈值,则表明为系统性条件。
图1是数据存储记录设备100的方块图。尽管将根据数据存储记录系统的具体应用描述本发明,然而本发明还可应用于出现有瞬时和系统性错误的其他类型系统。记录设备100包括转换器(也称读/写头)102,转换器102接近记录介质104,用于将数据记录在介质上以及从介质读取数据。记录设备100还包括控制器106,读出通道108和写入通道110。通过控制器106从主机150接收所要记录的数据,并通过写入通道110将其发送到转换器102。通过转换器102检测要从介质104读出的数据,并通过读出通道108将其发送到控制器106,以输送到主机150。
通过介质传送装置112实现记录介质102的移动。如果介质104为磁记录带,则传送装置112包括一组带传送电机,以便沿越过转换器102的两个方向中任一个方向移动带。图2图解了示例性带介质200的一部分,带介质200具有四个轨道202,204,206和208(所示的带200具有四个轨道仅仅是出于说明目的;带实际可具有其他数量的轨道)。如果记录设备100的转换器102一次能够读/写单个轨道(同样也仅仅出于说明目的;高密度转换器可具有一次读/写多个轨道的能力),当写入或读出第一轨道202时,带200将沿第一方向(例如,从左向右)行进。然后,转换器移位且带方向反向,写入或读出第二轨道204。处理一直持续到完成读或写操作。一次沿一个方向访问的轨道称为“卷(wrap)”,每当完成一卷时,改变带的方向。
如果介质104为光盘,传送装置112包括主轴电机,用于转动在转换器102上方或下方的盘。传送装置112由在控制器106的总体控制下的传送控制器114来控制。图3图解了光记录盘300和光转换器320。如同带介质200一样,光盘300包括一系列轨道(依据记录系统的类型,呈同心或螺旋形)302。当搜索或跟踪轨道时,转换器320沿径向移动,当聚焦时,沿垂直于盘的方向移动。
回到图1,记录设备100还可包括相对于记录介质104正确定位转换器102以进行搜索和跟踪操作(而且,在光记录设备的情形中,还用于聚焦操作)的转换器定位控制器116。
图4是本发明控制逻辑400的一个实施例的方块图。控制逻辑400可作为记录设备控制器100的一部分,或可独立于记录设备控制器100并与之相连。控制逻辑400包括缓冲区402,缓冲区402包括一系列L个存储单元。在L个存储单元中包含M个顺序单元的子集。如以下将要详细描述的,M个单元最好是在写操作期间最后填充的单元。控制逻辑400还包括第一观察器网络410和第二观察器网络430,第一观察器网络410与缓冲区402相连,以检查所有L个存储单元,第二观察器网络430与缓冲区402相连,以仅检查M个存储单元。组合逻辑模块450被连接以接收来自第一和第二网络410和430的输出。组合逻辑模块450的输出状态表示数据记录设备100的条件。
图5是图4所示的控制逻辑400的逻辑图。第一网络410包括第一组比较器412,被连接以接收L个缓冲区单元的内容;加法器或计数器414,与第一比较器412的输出相连;和比较器416,与计数器414的输出相连。第二网络430包括第二组比较器432,被连接以接收M个缓冲区单元的内容;加法器或计数器434,与第二比较器432的输出相连;和比较器436,与计数器434的输出相连。应该理解,可选地,同时读取缓冲区单元的两个比较器组412和432可均作为相继读取缓冲区单元的单个比较器。也可采用其他功能等效方案。还应理解,此处所示方块图的功能还可不用硬件,而采用软件或固件来实现。
现在,将参照图5以及图6A和图6B的流程图描述控制逻辑400的操作。对于第一和第二组比较器412和432,分别确定阈值水平THHB-1A和THHB-2A。这两个阈值水平可以相同或不同。对于其他比较器416和436,也确定阈值水平THPR-1A和THPR-2A。
当写入操作开始时(步骤600),将数据集合写入到记录介质(步骤602)。回读数据段(步骤604)并检查每个数据段的错误。如果检测出任何错误(步骤606),重写出错的段(步骤608)。重读数据段(步骤604)并再次检查错误(步骤606)。重复此处理,直至不会检测到另外的错误;将重写段的数量存储在缓冲区402的第一单元中(步骤610)。可选地,可将写入的段(包括重写的段)的总数存储在缓冲区单元中,且超出量在以后计算。然后,确定是否有更多的数据集合需要写入(步骤612)。若如此,写入下一个数据集合(步骤602),并继续前述处理,直到将每个数据集合的完全和准确的映像写入到记录介质,或直到缓冲区402满。
然后,通过第一网络410的第一组比较器412读出在缓冲区402的第一单元中存储的值(步骤614);如果该值不超过第一阈值THHB-1A(步骤616),则读出下一个单元的值(步骤614)。当确定一个值超出第一阈值THHB-1A时,加法器或计数器414递增(步骤618)。继续该处理,直到通过相应比较器412读出所有的缓冲区单元值(步骤620)。接下来,在第一网络410中的其他比较器416读出计数器414的内容,并确定超出第一阈值THHB-1A的值的总数是否大于第二阈值THPR-1A(步骤620)。若如此,将比较器416的输出PA设置成‘1’(步骤624);否则,将输出PA设置成‘0’(步骤626)。
然后,通过第二网络430的第二组比较器432读出在M个缓冲区单元的第一单元中存储的值(步骤628)。最好是,M个值为M个最近存储的值;不过,M个值可从任何相继的M个单元读出。如果该值不超过第三阈值THHB-2A(步骤630),则读出下一个单元的值(步骤628)。当确定一个值超出第三阈值THHB-2A时,第二加法器或计数器434递增(步骤632)。继续该处理,直到通过相应比较器432读出所有M个缓冲区单元值(步骤634)。接下来,在第二网络430中的其他比较器436读出第二计数器432的内容,并确定超出第三阈值THHB-2A的值的总数是否大于第四阈值THPR-2A(步骤636)。若如此,将比较器436的输出QA设置成‘1’(步骤638);否则,将输出QA设置成‘0’(步骤640)。
最后,将PA和QA与以下状态表I进行比较(步骤642),以提供输出状态(步骤644)。 状态表IPA QA 状态0 00 11 01 10123 参看状态表I,当指示第一状态(状态0)时,在长观察周期(在全部L个数据集合)或较短观察周期(在M个数据集合)上没有任何显著错误出现。这样,状态0是无错误状态。当指示第二状态(状态1)时,在较短观察周期而不是长观察周期上检测出显著错误。这样,状态1表示最近出现的事件或错误。当指示第三状态(状态2)时,在长观察周期而不是较短观察周期上检测出显著错误。这样,状态2表示瞬时性事件。以及,当指示第四状态(状态3)时,在长观察周期和较短观察周期上都检测出显著性错误。这样,状态3表示显著的、长期存在的错误;即,系统性错误。
图7-11为示例性写入操作的数据绘图,用以说明本发明控制逻辑400的操作的结果。在每个绘图中,沿水平轴的是写入的数据集合的数量‘i’,沿垂直轴的是每个数据集合的被重写的数据段的数量。长观察周期L等于1070个数据集合。该数量可等于在一个带卷中能够写入的数据集合的数量,可等于在具体写入操作中数据集合的数量,或可为经验上所选作为要观察的数据集合的合适数量的数量(例如,较短周期可将过多瞬时错误看作系统性错误,较长周期可将过多系统性错误看作瞬时错误)。短观察周期M等于107个数据集合。在图7中,将阈值THHB-1A和THHB-2A均设置为2,将阈值THPR-1A设置为696,将THPR-2A设置为70。尽管有少数数据集合有多于2个的重写段,然而不足以重写以通过比较器416和436并触发错误指示。这就是无错误状态0。
图8是其中将阈值THHB-1A和THHB-2A均设置为3,将阈值THPR-1A设置为696,将THPR-2A设置为70的最近出现错误(状态1)的数据绘图。由于在观察周期中最近出现“突发性”错误,从而仅在M个数据集合中便将其检测出。
图9是其中再次将阈值THHB-1A和THHB-2A均设置为3,将阈值THPR-1A设置为696,将THPR-2A设置为70的瞬时错误(状态2)的数据绘图。由于仅在观察周期的大约半中间而不是接近结束处出现错误,从而在L个数据集合中,而不是在M个数据集合中,将其检测出。无论什么原因导致错误,它会在观察周期结束前消失,并且不成为问题。此外,由于不再出现错误,试图纠正问题将是徒劳的。
同样,图10是另一瞬时错误(状态2)的数据绘图。如图10所说明的瞬时错误可作为在观察周期早期导致暂时性头阻塞(head clog)的快速积累碎片(debris)的结果。尽管重写段的数量较高,但阻塞的持续时间不会长至在最后M个数据集合中存在。
相比之下,图11是另一头阻塞的数据绘图,不过,它在大部分观察周期(包括最后M个数据集合)上更为缓慢地积累起来,因此指示需要采取补救行动,如头清洗的系统性错误条件(状态3)。
图12也是在观察周期的整个较长部分(包括结束)上存在的显著错误条件的数据绘图(状态3)。图12所表示的条件可以是转换器102的逐渐降级,最后降级严重至触发系统性错误指示,并导致补救行动(例如重新校准)。应注意,如果对比大约2700个还多的数据集合采样,由于在最近M个数据集合中不会检测出错误,从而不会触发这样的指示。
当确定合适的观察周期和阈值水平时,选择过高的一组值可导致将某些系统性条件误分类为瞬时性条件,从而使某些系统性条件逃过检测,并阻碍快速纠错行动。而且,选择过低的一组值,可导致将某些瞬时性条件误分类为系统性条件,从而触发不必要(且可能是无用的)纠错行动。应将阈值THHB-1A设置成指示何时记录介质的容量开始低于其所需容量的值,以及应将阈值THPR-1A设置成指示基本连续条件(并通过阈值THHB-2A的适当设置证实)的值。通过经验性处理发现,对于一个检测的磁带系统,1070个数据集合(具有包含对应的L=1070个单元的缓冲区)的长观察周期和107个数据集合(且M个对应缓冲区单元作为最近填充的单元)的短观察周期是合适的周期。已发现,阈值THHB-1A和THHB-2A均等于3,阈值THPR-1A等于321(表示按近L的30%的值),THPR-2A等于21(表示按近M的20%的值)适合于检测的带系统。应该理解,对于其他带系统以及其他类型的记录系统,如光盘系统,可改变这些参数中的任何参数。此外,这些参数可取决于条件的类型以及所要检测的事件。
当采用另外两个(或更多个)观察网络以补充第一和第二网络410和430时,如图13中的控制逻辑1300所示,可获得更多信息而不是四种可检测的状态。第一和第二网络410和430可相同于图4和5所示那些构件。第三和第四网络1310和1330也与之相同,不过为THHB-1B,THHB-2B,THPR-1B和THPR-2B指派了不同的阈值。它不仅还可用于观察最近M个值,还可观察缓冲区的不同部分。组合逻辑对来自四个网络410,430,1310和1330的输出PA,QA,PB和QB进行处理,并依据以下状态表II产生输出。状态表II PA QA PB QB 状态 0 0 00 0 0 01 0 0 10 0 0 11 0 1 00 0 1 01 0 1 10 0 1 11 1 0 00 1 0 01 1 0 10 1 0 11 1 1 00 1 1 01 1 1 10 1 1 110123456789101112131415 应注意,状态0,4,8和12对应于第一个状态表I的状态0,1,2和3。
通过适当设置阈值水平,可确定一个条件为系统性的,但可例如通过重新校准来纠错,或该条件为系统性的,但可例如通过头清洗来纠错(或根本不可解决)。
如果THHB-1A小于THHB-1B,且如果将THPR-1A设置成小于或等于THPR-1B,使得只要PB等于1,PA也将等于1,则可将状态的数量减少为更加方便但仍有价值的数量。类似地,如果将THHB-2A设置成小于THHB-2B,且如果将THPR-2A设置成小于或等于THPR-2B,则只要QB等于1,QA也将等于1。这样,得到以下状态表III状态表III PA QA PB QB 状态 00 00 01 00 01 01 10 00 10 10 11 00 11 01 11 10 11 1104581012131415 状态0指示所有观察区域基本无错误。状态4指示尽管最近区域包含有错误,不过错误不会长至足以指示显著条件。状态5指示最近区域包含有头阻塞,但它不会持续长至足以指示显著条件。状态8指示在长观察周期的早期存在显著条件,不过不再存在。状态10指示可能已经存在头阻塞,不过不再存在。状态12指示存在错误条件且需要补救行动。状态13指示存在错误条件且需要补救行动。它还指示在最近区域可能存在头阻塞,不过不会持续长至足以需要显著的补救行动。状态14指示存在错误条件且需要补救行动。它还指示曾存在头阻塞,不过不再存在。以及,状态15指示存在主要的系统性条件且需要显著的补救行动。
附录是列出本发明的示例性软件实现的C语言代码。
通过此处所批露的实施例完全实现了本发明的目的。本领域技术人员可知,在不偏离本发明主要功能的条件下,可以通过不同实施方式实现本发明的各个方面。具体实施例是说明性的,并非意于限制下面权利要求给出的本发明的范围。
附 录 在#define语句中所示的值仅出于说明目的。
在初始化时,函数“InitializeBuffer”将所有历史缓冲区元素设 置为零。仅当在输入L个第一元素之前对输出采样时,才需要如此。
#defineL 1070 ∥在历史缓冲区中的元素的数量#defineM 107∥在历史缓冲区中的M个元素的数量#defineTH_HB_1A 6 ∥网络1A的TH_HB#defineTH_HB_1B 20 ∥网络1B的TH_HB#defineTH_HB_2A 7 ∥网络2A的TH_HB#defineTH_HB_2B 25 ∥网络2B的TH_HB#defineTH_PR_1A 300 ∥网络1A的TH_PR#defineTH_PR_1B 300 ∥网络1B的TH_PR#defineTH_PR_2A 30 ∥网络2A的TH_PR#defineTH_PR_2B 30 ∥网络2B的TH_PRintHistory_Buffer[L];∥L个元素的历史缓冲区void InitializeBuffer(void){∥将所有元素设置为零int i;for(i=0;i<L;i++)History_Buffer[i]=0;}int ProcessNewHistoryBufferElement(int NewValue){∥说明将一个新的观察放入历史缓冲区∥然后计算结果系统状态∥输入NewValue-该数据集合的重写子单元的数量∥输出State-结果系统状态<!-- SIPO <DP n="14"> --><dp n="d14"/>//为清楚起见,本说明假设输入元素放置在历史缓冲区的<br/>//最后元素中。这样做需要对于每个新项移动各个历史缓<br/>//冲区。有效实现会使用指针来维护输入和输出索引,以<br/>//免移动缓冲区。//原始值为零(从零计数)。因此历史缓冲区中的第一//个位置为History_Buffer
,最后位置为//History_Buffer[L-1]intcounter;inti;intPa,Pb,Qa,Qb;intState;∥对History Buffer循环移位丢弃最旧的值,为新值提供空间for(i=1;i<L;i++)History_Buffer[i-1]=History_Buffer[i];∥将新元素放入历史缓冲区History_Buffer[L-1]=NewValue;∥在L个元素上评估观察器网络#1A∥对等于或大于TH_HB_1A的历史缓冲区项的数量计数counter=0;for(i=0;i<L;i++)if(TH_HB_1A<=History_Buffer[i])counter=counter+1;∥如果计数等于或大于TH_PR_1A,设置Pa=1if(TH_PR_1A<=counter)Pa=1;elsePa=0;∥在L个元素上评估观察器网络#1B∥对等于或大于TH_HB_1B的历史缓冲区项的数量计数counter=0;<!-- SIPO <DP n="15"> --><dp n="d15"/>for(i=0;i<L;i++)if(TH_HB_1B<=History_Buffer[i])counter=counter+1;∥如果计数等于或大于TH_PR_1B,设置Pb=1if(TH_PR_1B<=counter)Pb=1;elsePb=0;∥在M个元素上评估观察器网络#2A∥对等于或大于TH_HB_2A的历史缓冲区项的数量计数counter=0;for(i=L-M;i<L;i++)if(TH_HB_2A<=History_Buffer[i])counter=counter+1;∥如果计数等于或大于TH_PR_2A,设置Qa=1if(TH_PR_2A<=counter)Qa=1;elseQa=0;∥在M个元素上评估观察器网络#2B∥对等于或大于TH_HB_2B的历史缓冲区项的数量计数counter=0;for(i=L-M;i<L;i++)if(TH_HB_2B<=History_Buffer[i])counter=counter+1;∥如果计数等于或大于TH_PR_2B,设置Qb为真if(TH_PR_2B<=counter)Qb=1;elseQb=0;∥以简便方式组合Pa,Pb,Qa和Qb以输出<!-- SIPO <DP n="16"> --><dp n="d16"/>∥出于说明目的,将其转换成0至15的值State=Qb+2*Pb+4*Qa+8*Pa;return State;}
权利要求
1.一种用于识别数据记录设备中的系统性错误的方法,包括步骤
将多个数据集合写入记录介质,每个数据集合包括多个数据段;
识别出每个数据集合的错误写入的数据段;
对于每个数据集合,将表示数据集合的错误写入数据段的数量的值存储在缓冲区单元中;
确定多个,即L个第一缓冲区单元中包含超出第一预定阈值THHB-1A的存储值的第一缓冲区单元的数量PR1A;
确定多个,即M个第二缓冲区单元中包含超出第二预定阈值THHB-2A的存储值的第二缓冲区单元的数量PR2A,其中,M<L;以及
产生输出信号,该信号指示以下情况之中的至少一个数量PR1A是否超过第三预定阈值THPR-1A,以及数量PR2A是否超过第四预定阈值THPR-2A。
2.如权利要求1所述的方法,还包括步骤
回读每个数据集合;
将数据集合的写入出错的数据段重写到记录介质;
重复写入,读出,重写和存储步骤,直到多个,即L个数据集合已经被写入记录介质,并且同样多个值已经被存储在相继的缓冲区单元中,其中包括多个,即M个相继存储的值;
其中,表示写入出错的数据段的数量的值指示数据集合的重写数据段的数量;
其中,输出信号还用于
如果PR1A小于第三阈值THPR-1A且PR2A小于第四预定阈值THPR-2A,则指示第一状态,该第一状态指示无错误条件;
如果PR1A小于第三阈值THPR-1A且PR2A大于第四预定阈值THPR-2A,则指示第二状态,该第二状态指示最近出现的事件;
如果PR1A大于第三阈值THPR-1A且PR2A小于第四预定阈值THPR-2A,则指示第三状态,该第三状态指示瞬时性事件;以及
如果PR1A大于第三阈值THPR-1A且PR2A大于第四预定阈值THPR-2A,则指示第四状态,该第四状态指示系统性条件。
3.如权利要求1所述的方法,还包括步骤
如果PR1A超过THPR-1A,将变量PA设置成等于1,否则,将PA设置成等于0;以及
如果PR2A超过THPR-2A,将变量QA设置成等于1,否则,将QA设置成等于0;
从而
如果PA和QA均等于0,则输出信号处在第一状态;
如果PA等于0且QA等于1,则输出信号处在第二状态;
如果PA等于1且QA等于0,则输出信号处在第三状态;以及
如果PA和QA均等于1,则输出信号处在第四状态。
4.如权利要求3所述的方法,还包括步骤
确定L个缓冲区单元中包含超出第三预定阈值THHB-1B的存储值的缓冲区单元的数量PR1B;
确定M个缓冲区单元中包含超出第四预定阈值THHB-2B的存储值的缓冲区单元的数量PR2B;
产生具有第五至第二十状态的输出信号,每个状态都指示数据记录设备的特性,第五、第九、第十三和第十七状态分别与第一、第二、第三和第四状态对应。
5.如权利要求4所述的方法,还包括步骤
如果PR1B超过THPR-1B,将变量PB设置成等于1,否则,将PB设置成等于0;以及
如果PR2B超过THPR-2B,将变量QB设置成等于1,否则,将变量QB设置成等于0。
6.如权利要求5所述的方法,其中,输出信号根据以下状态表处于第五至第二十状态
状态表PA QA PB QB 状态0 00 00 00 10 01 00 01 10 10 00 10 10 11 00 11 11 00 01 00 11 01 01 01 11 10 01 10 11 11 01 11 1 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
7.如权利要求5所述的方法,还包括步骤
设置THHB-1A<THHB-1B且设置THPR-1A≤THPR-1B,从而,当PB=1时,PA=1;
设置THHB-2A<THHB-2B且设置THPR-2A≤THPR-2B,从而,当QB=1时,QA=1;以及
根据简化的状态表产生输出信号
简化的状态表PA QAPB QB 状态00 0 001 0 001 0 110 0 0 5 9 10 131 0 1 01 1 0 01 1 0 11 1 1 01 1 1 1 15 17 18 19 20
8.如权利要求1所述的方法,其中,M个存储值为M个最近存储的相继值。
9.如权利要求1所述的方法,其中,每个缓冲区单元中存储的值等于数据集合的错误写入的数据段的数量。
10.如权利要求1所述的方法,其中,每个缓冲区单元中存储的值等于数据集合的写入数据段的总数。
11.如权利要求1所述的方法,其中,每当将值存储在缓冲区单元中时,产生新的输出信号。
12.如权利要求1所述的方法,其中,在记录操作结束时产生输出信号。
13.如权利要求1所述的方法,还包括步骤
确定L个缓冲区单元中包含超出第五预定阈值THPR-1B的存储值的缓冲区单元的数量PR1B;
确定M个缓冲区单元中包含超出第六预定阈值THHB-2B的存储值的缓冲区单元的数量PR2B;
产生输出信号,该信号指示以下情况中的至少一个数量PR1A是否超过第七预定阈值THPR-1A,和数量PR2A是否超过第八预定阈值THPR-2A。
14.一种用于数据记录设备的控制器逻辑,该数据记录设备用于将数据集合记录到记录介质上,每个数据集合包括多个数据段,其中,在数据记录操作期间,识别出记录在记录介质上的数据集合的出错数据段,该控制器逻辑包括
缓冲区,包括一组L个单元,所述单元包含一组M个单元,其中M<L,每个存储单元用于包含表示一个数据集合的出错数据段的数量的值;
第一网络,包括用于确定数量PR1A的装置,PR1A表示L个单元中具有超出第一预定阈值THHB-1A的值的单元的数量;
第二网络,包括用于确定数量PR2A的装置,PR2A表示M个单元中具有超出第二预定阈值THHB-2A的值的单元的数量;以及
组合逻辑单元,与第一和第二网络的输出连接,并具有指示以下情况中的至少一个的输出信号数量PR1A是否超过第三预定阈值THPR-1A,和数量PR2A是否超过第四预定阈值THPR-2A。
15.如权利要求14所述的控制器逻辑,其中
第一网络还包括用于产生在PR1A超过第三预定阈值THPR-1A的情况下具有1状态,否则具有0状态的输出PA的装置;
第二网络还包括用于产生在PR2A超过第四预定阈值THPR-2A的情况下具有1状态,否则具有0状态的QA的装置;以及
组合逻辑单元还包括
第一和第二输入,被连接以从第一和第二网络接收输出PA和QA;以及
输出,其中
若PA和QA等于0,该输出具有第一状态,第一状态指示无错误的条件;
若PA等于0且QA等于1,该输出具有第二状态,第二状态指示最近出现的事件;
若PA等于1且QA等于0,该输出具有第三状态,第三状态指示瞬时性事件;以及
若PA和QA等于1,该输出具有第四状态,第四状态指示系统性条件。
16.如权利要求15所述的控制器逻辑,其中
在第一网络中
用于确定数量PR1A的装置包括
第一比较器,用于将L个缓冲区单元中的每个值与第一预定阈值THHB-1A进行比较;和
第一计数器,用于对L个缓冲区单元中超过THHB-1A的值的数量进行计数,第一计数器具有用于输出数量PR1A的输出;并且
用于产生输出PA的装置包括第二比较器,用于将第一计数器的输出PR1A与第三预定阈值THPR-1A进行比较;并且
在第二网络中
用于确定数量PR2A的装置包括
第三比较器,用于将M个缓冲区单元中的每个值与第二预定阈值THHB-2A进行比较;和
第二计数器,用于对M个缓冲区单元中超过THHB-2A的值的数量进行计数,第二计数器具有用于输出数量PR2A的输出;并且
用于产生输出QA的装置包括第四比较器,用于将第二计数器的输出PR2A与第四预定阈值THPR-2A进行比较。
17.如权利要求15所述的控制器逻辑,还包括
第三网络,包括
用于确定数量PR1B的装置,PR1B表示L个单元中具有超过第五预定阈值THHB-1B的值的单元的数量;和
用于产生输出PB的装置,其中如果PR1B超过第六预定阈值THPR-1B,该输出具有1状态,否则具有0状态;
第四网络,包括
用于确定数量PR2B的装置,PR2B表示M个单元中具有超过第七预定阈值THHB-2B的值的单元的数量;和
用于产生输出QB的装置,其中如果PR2B超过第八预定阈值THPR-2B,该输出具有1状态,否则具有0状态;并且
组合逻辑单元还包括第三和第四输入,用于接收来自第三和第四网络的输出PB和QB,输出还具有第五至第二十状态,每个状态都指示数据记录设备的特性,其中,第五、第九、第十三和第十七状态分别与第一、第二、第三和第四状态对应。
18.如权利要求17所述的控制器逻辑,其中,组合逻辑单元的输出根据以下状态表处于第五至第二十状态
状态表PA QA PB QB 状态0 0000 0010 0100 0110 1000 1010 1100 1111 0001 0011 0101 0111 1001 1011 1101 111 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
19.如权利要求17所述的控制器逻辑,其中
THHB-1A<THHB-1B且THPR-1A≤THPR-1B,从而,当PB=1时,PA=1;
THHB-2A<THHB-2B且THPR-2A≤THPR-2B,从而,当QB=1时,QA=1;并且
组合逻辑单元根据简化的状态表产生输出值
简化的状态表PA QA PB QB 状态000 0010 0010 1 5 9 10100010101100110111101111 13 15 17 18 19 20
20.如权利要求14所述的控制器逻辑,其中,第二网络还包括用于读出M个值的装置。
21.如权利要求14所述的控制器逻辑,其中,第二网络还包括用于读出M个最近存储的相继值的装置。
22.如权利要求14所述的控制器逻辑,其中,每个缓冲区单元中存储的值等于数据集合的错误写入的数据段的数量。
23.如权利要求14所述的控制器逻辑,其中,每个缓冲区单元中存储的值等于数据集合的写入数据段的总数。
24.如权利要求14所述的控制器逻辑,其中,每当将值存储在缓冲区单元中时,产生新的输出信号。
25.如权利要求14所述的控制器逻辑,其中,数据记录设备为多卷带设备,而且,当数据存储写入操作进行到带卷末端时产生输出信号。
26.如权利要求14所述的控制器逻辑,其中,数据记录设备为光盘记录设备。
27.如权利要求14所述的控制器逻辑,其中,在记录操作结束时产生输出信号。
28.如权利要求14所述的控制器逻辑,还包括
第三网络,包括用于确定L个缓冲区单元中包含超出第五预定阈值THPR-1B的存储值的缓冲区单元的数量PR1B的装置;和
第四网络,包括用于确定M个缓冲区单元中包含超出第六预定阈值THHB-2B的存储值的缓冲区单元的数量PR2B的装置;
其中,还将组合逻辑单元连接至第三和第四网络的输出,该输出信号指示以下情况中的至少一个数量PR1A是否超过第七预定阈值THPR-1A,和数量PR2A是否超过第八预定阈值THPR-2A。
29.一种数据记录设备,包括
转换头,用于对可记录介质记录和读出数据;
传送机构,用于传送可记录介质经过转换头;
数据写入通道,用于将信号传送到转换头,从而在记录操作期间将包括数据集合的数据记录在可记录介质上,每个数据集合包括多个数据段;
数据读出通道,用于接收来自转换头的信号,从而自可记录介质读出所记录的数据集合;以及
写入错误检测单元,与数据写入通道和数据读出通道连接,用于检测所记录数据段中的错误;
控制单元,与数据写入通道连接;
缓冲区,包括一组L个单元,所述单元含有一组M个单元,其中M<L,每个存储单元用于包含表示在记录操作期间写入的数据集合的错误写入数据段的数量的值;
第一网络,包括用于确定数量PR1A的装置,PR1A表示L个单元中具有超出第一预定阈值THHB-1A的值的单元的数量;
第二网络,包括用于确定数量PR2A的装置,PR2A表示M个单元中具有超出第二预定阈值THHB-2A的值的单元的数量;以及
组合逻辑单元,与第一和第二网络的输出连接,并具有指示以下情况中的至少一个的输出信号数量PR1A是否超过第三预定阈值THPR-1A,和数量PR2A是否超过第四预定阈值THPR-2A。
30.如权利要求29所述的数据记录设备,其中
第一网络还包括用于产生在PR1A超过第三预定阈值THPR-1A的情况下具有1状态,否则具有0状态的输出PA的装置;
第二网络还包括用于产生在PR2A超过第四预定阈值THPR-2A的情况下具有1状态,否则具有0状态的QA的装置;以及
组合逻辑单元还包括
第一和第二输入,被连接以从第一和第二网络接收输出PA和QA;以及
输出,其中
若PA和QA等于0,该输出具有第一状态,第一状态指示无错误的条件;
若PA等于0且QA等于1,该输出具有第二状态,第二状态指示最近出现的事件;
若PA等于1且QA等于0,该输出具有第三状态,第三状态指示瞬时性事件;以及
若PA和QA等于1,该输出具有第四状态,第四状态指示系统性条件。
31.如权利要求30所述的数据记录设备,其中
在第一网络中
用于确定数量PR1A的装置包括
第一比较器,用于将L个缓冲区单元中的每个值与第一预定阈值THHB-1A进行比较;和
第一计数器,用于对L个缓冲区单元中超过THHB-1A的值的数量进行计数,第一计数器具有用于输出数量PR1A的输出;并且
用于产生输出PA的装置包括第二比较器,用于将第一计数器的输出PR1A与第三预定阈值THPR-1A进行比较;并且
在第二网络中
用于确定数量PR2A的装置包括
第三比较器,用于将M个缓冲区单元中的每个值与第二预定阈值THHB-2A进行比较;和
第二计数器,用于对M个缓冲区单元中超过THHB-2A的值的数量进行计数,第二计数器具有用于输出数量PR2A的输出;并且
用于产生输出QA的装置包括第四比较器,用于将第二计数器的输出PR2A与第四预定阈值THPR-2A进行比较。
32.如权利要求30所述的数据记录设备,还包括
第三网络,包括
用于确定数量PR1B的装置,PR1B表示L个单元中具有超过第五预定阈值THHB-1B的值的单元的数量;和
用于产生输出PB的装置,其中如果PR1B超过第六预定阈值THPR-1B,该输出具有1状态,否则具有0状态;
第四网络,包括
用于确定数量PR2B的装置,PR2B表示M个单元中具有超过第七预定阈值THHB-2B的值的单元的数量;和
用于产生输出QB的装置,其中如果PR2B超过第八预定阈值THPR-2B,该输出具有1状态,否则具有0状态;并且
组合逻辑单元还包括第三和第四输入,用于接收来自第三和第四网络的输出PB和QB,输出还具有第五至第二十状态,每个状态都指示数据记录设备的特性,其中,第五、第九、第十三和第十七状态分别与第一、第二、第三和第四状态对应。
33.如权利要求32所述的数据记录设备,其中,组合逻辑单元的输出根据以下状态表处于第五至第二十状态
状态表PA QA PB QB 状态0 00 00 00 10 01 00 01 10 10 00 10 10 11 00 11 11 00 01 00 11 01 0 5 6 7 8 9 10 11 12 13 14 1510 1111 0011 0111 1011 11 16 17 18 19 20
34.如权利要求32所述的数据记录设备,其中
THHB-1A<THHB-1B且THPR-1A≤THPR-1B,从而,当PB=1时,PA=1;
THHB-2A<THHB-2B且THPR-2A≤THPR-2B,从而,当QB=1时,QA=1;并且
组合逻辑单元根据简化的状态表产生输出值
简化的状态表PA QA PB QB 状态0 00 00 10 00 10 11 00 01 01 01 10 01 10 11 11 01 11 1 5 9 10 13 15 17 18 19 20
35.如权利要求29所述的数据记录设备,其中,第二网络包括用于读出M个值的装置。
36.如权利要求29所述的数据记录设备,其中,第二网络包括用于读出M个最近存储的相继值的装置。
37.如权利要求29所述的数据记录设备,其中,每个缓冲区单元中存储的值等于数据集合的错误写入数据段的数量。
38.如权利要求29所述的数据记录设备,其中,每个缓冲区单元中存储的值等于数据集合的写入数据段的总数。
39.如权利要求29所述的数据记录设备,其中,每当将值存储在缓冲区单元中时,产生新的输出信号。
40.如权利要求29所述的数据记录设备,其中,在数据存储写入操作结束时产生输出信号。
41.如权利要求29所述的数据记录设备,其中,数据记录设备为磁记录驱动器,记录介质为磁带介质。
42.如权利要求41所述的数据记录设备,其中,记录介质为多卷可记录介质,且当数据存储写入操作进行到带卷末端时产生输出信号。
43.如权利要求29所述的数据记录设备,其中,数据记录设备为光盘记录设备,且记录介质为可记录光盘。
44.如权利要求29所述的数据记录设备,还包括
第三网络,包括用于确定L个缓冲区单元中包含超出第五预定阈值THPR-1B的存储值的缓冲区单元的数量PR1B的装置;和
第四网络,包括用于确定M个缓冲区单元中包含超出第六预定阈值THHB-2B的存储值的缓冲区单元的数量PR2B的装置;
其中,还将组合逻辑单元连接至第三和第四网络的输出,该输出信号指示以下情况中的至少一个数量PR1A是否超过第七预定阈值THPR-1A,和数量PR2A是否超过第八预定阈值THPR-2A。
45.一种可用于可编程计算机的计算机可读介质的计算机程序产品,该计算机程序产品在其中体现有用于在写入操作期间识别数据记录设备中的系统性错误的计算机可读代码,该计算机可读代码包括用于执行以下步骤的指令
将多个数据集合写入记录介质,每个数据集合包括多个数据段;
识别出每个数据集合的错误写入的数据段;
对于每个数据集合,将表示数据集合的错误写入数据段的数量的值存储在缓冲区单元中;
确定多个,即L个第一缓冲区单元中包含超出第一预定阈值THHB-1A的存储值的第一缓冲区单元的数量PR1A;
确定多个,即M个第二缓冲区单元中包含超出第二预定阈值THHB-2A的存储值的第二缓冲区单元的数量PR2A,其中,M<L;以及
产生输出信号,该信号指示以下情况之中的至少一个数量PR1A是否超过第三预定阈值THPR-1A,以及数量PR2A是否超过第四预定阈值THPR-2A。
46.如权利要求45所述的计算机程序,其中,计算机可读代码还包括用于执行以下步骤的指令
回读每个数据集合;
将数据集合的写入出错的数据段重写到记录介质;
重复写入,读出,重写和存储步骤,直到多个,即L个数据集合已经被写入记录介质,并且同样多个值已经被存储在相继的缓冲区单元中,其中包括多个,即M个相继存储的值;
其中,输出信号还用于
如果PR1A小于第三阈值THPR-1A且PR2A小于第四预定阈值THPR-2A,则指示第一状态,该第一状态指示无错误条件;
如果PR1A小于第三阈值THPR-1A且PR2A大于第四预定阈值THPR-2A,则指示第二状态,该第二状态指示最近出现的事件;
如果PR1A大于第三阈值THPR-1A且PR2A小于第四预定阈值THPR-2A,则指示第三状态,该第三状态指示瞬时性事件;以及
如果PR1A大于第三阈值THPR-1A且PR2A大于第四预定阈值THPR-2A,则指示第四状态,该第四状态指示系统性条件。
47.如权利要求45所述的计算机程序产品,其中计算机可读代码还包括用于执行以下步骤的指令
如果PR1A超过THPR-1A,将变量PA设置成等于1,否则,将PA设置成等于0;以及
如果PR2A超过THPR-2A,将变量QA设置成等于1,否则,将QA设置成等于0;
从而
如果PA和QA均等于0,则输出信号处在第一状态;
如果PA等于0且QA等于1,则输出信号处在第二状态;
如果PA等于1且QA等于0,则输出信号处在第三状态;以及
如果PA和QA均等于1,则输出信号处在第四状态。
48.如权利要求47所述的计算机程序产品,其中计算机可读代码还包括用于执行以下步骤的指令
确定L个缓冲区单元中包含超出第三预定阈值THHB-1B的存储值的缓冲区单元的数量PR1B;
确定M个缓冲区单元中包含超出第四预定阈值THHB-2B的存储值的缓冲区单元的数量PR2B;
产生具有第五至第二十状态的输出信号,每个状态都指示数据记录设备的特性,第五、第九、第十三和第十七状态分别与第一、第二、第三和第四状态对应。
49.如权利要求48所述的计算机程序产品,其中计算机可读代码还包括用于执行以下步骤的指令
如果PR1B超过THPR-1B,将变量PB设置成等于1,否则,将PB设置成等于0;以及
如果PR2B超过THPR-2B,将变量QB设置成等于1,否则,将变量QB设置成等于0。
50.如权利要求49所述的计算机程序产品,输出信号根据以下状态表处于第五至第二十状态
状态表PA QA PB QB 状态000 0000 1001 0001 1010 0010 1011 0 5 6 7 8 9 10 11011 1100 0100 1101 0101 1110 0110 1111 0111 1 12 13 14 15 16 17 18 19 20
51.如权利要求49所述的计算机程序产品,计算机可读代码还包括用于执行以下步骤的指令
设置THHB-1A<THHB-1B且设置THPR-1A≤THPR-1B,从而,当PB=1时,PA=1;
设置THHB-2A<THHB-2B且设置THPR-2A≤THPR-2B,从而,当QB=1时,QA=1;并且
根据简化的状态表产生输出值
简化的状态表PA QA PB QB 状态0 00 00 10 00 10 11 00 01 01 01 10 01 10 11 11 01 11 1 5 9 10 13 15 17 18 19 20
52.如权利要求45所述的计算机程序产品,其中,每个缓冲区单元中存储的值等于数据集合的错误写入数据段的数量。
53.如权利要求45所述的计算机程序产品,其中,每个缓冲区单元中存储的值等于数据集合的写入数据段的总数。
54.如权利要求45所述的计算机程序产品,其中,每当将值存储在缓冲区单元中时,产生新的输出信号。
55.如权利要求45所述的计算机程序产品,其中,M个存储值为M个最近存储的相继值。
56.如权利要求45所述的计算机程序产品,其中,在记录操作结束时产生输出信号。
57.如权利要求45所述的计算机程序,其中,计算机可读代码还包括用于执行以下步骤的指令
确定L个缓冲区单元中包含超出第五预定阈值THPR-1B的存储值的缓冲区单元的数量PR1B;
确定M个缓冲区单元中包含超出第六预定阈值THHB-2B的存储值的缓冲区单元的数量PR2B;
产生输出信号,该信号指示以下情况中的至少一个数量PR1A是否超过第七预定阈值THPR-1A,和数量PR2A是否超过第八预定阈值THPR-2A。
全文摘要
本发明通过观察一系列多个观察事件的度量数值来区分系统性和非系统性(瞬时性)条件。在数据存储记录环境中,为确保正确写入整个数据集合,所用度量的具体数值为必须重写(因错误)到记录介质的数据段数量。大量的写入段指示显著性错误条件。当整个正确写入每个数据集合后,汇报数据集合重写段的数量作为“事件”。维护分类事件(或事件本身)的运行历史记录。然后,在预定时间,分析历史记录,并判定任何观察事件是否符合系统性条件的预定标准。
文档编号G11B20/18GK1591659SQ20041005749
公开日2005年3月9日 申请日期2004年8月13日 优先权日2003年8月21日
发明者保罗·J·西格 申请人:国际商业机器公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1