包括用于误差校正电路的响应管理器的存储器架构的制作方法

文档序号:17600894发布日期:2019-05-07 20:17阅读:142来源:国知局
包括用于误差校正电路的响应管理器的存储器架构的制作方法

本公开涉及数据通信中的误差校正的领域,并且具体地涉及用于相比现有误差校正电路系统增加对大于两位的误差的覆盖范围的电路系统。



背景技术:

在数字通信中,有时可能在数据传输期间发生位误差。例如,预期位序列可以以有线或无线方式被传输,但是当被接收时,位中的一个或多个位可能未被正确地接收到(例如,作为0被传输的位被接收为1)。由于这明显是不期望的情形,所以已经开发了各种误差检测和校正码。

简单的已知的误差校正技术被称为奇偶校验。奇偶校验将指示分组的之前的数据中一的数目(具有值为一的位位置)是偶数还是奇数的单个位添加到分组。如果奇数数目的位在传输中被改变,则消息将改变奇偶校验并且因此在此时检测到误差;然而,一个缺点在于被改变的位可能已经是奇偶校验位本身。对于使用奇偶校验的最常见惯例是奇偶校验值为一指示在数据中存在奇数数目个一,并且奇偶校验值为零指示在数据中存在偶数数目个一。如果被改变的位的数目是偶数,则校验位将是有效的并且将检测不到误差。

然而,奇偶校验不指示哪个位包含误差,甚至当奇偶校验能够检测到误差时。一旦使用奇偶校验检测到误差,然后数据就必须被整体丢弃并且从头重新传输。在有噪声的传输介质上,成功的重新传输可能花费不期望的很长时间,或者可能实际上决不会发生。因此,奇偶校验本身的总体质量和有用性是差的。然而,尽管奇偶校验的质量差,但是由于其仅使用单个位,所以该方法导致最小开销,易于实现,并且自然地好于没有误差校验。

另一已知的误差检测技术被已知为五中取二码。五中取二码是使用五个位(三个零和两个一)的编码方案。这提供十种可能的组合,足以表示数字0–9。该方案因此可以检测全部单个位误差,全部奇数数目位误差以及一些偶数数目位误差(例如两个1位的翻转)。然而,尽管该误差检测技术可以比简单的奇偶校验检测到更多的误差,但是其不能校正其检测到的误差中的任何误差。

已知的误差检测和误差校正技术是模块化冗余。在模块化冗余的情况下,每个数据位被重复多次以便确保其被正确地发送。例如,如果要发送的数据位为1,则n=3重复码将发送111。如果接收到的三个位不相同,则在传输期间发生误差。如果传输信道或介质足够干净,则大多数时候仅一个位将在每个三元组中改变。因此,001、010和100每个对应于0位,而110、101和011对应于1位,就好像这些位计数朝向期望位是什么而“投票”。由于该码具有在存在误差的情况下重建原始消息的能力,所以其被称为误差校正码。

然而,这样的码不能够正确地修复所有误差。例如,如果信道将两个位翻转并且接收器接收到001,则系统将检测到误差,但是推断原始位为0,这是不正确的。如果每个位被复制的次数被增加到四次,则全部两位误差都可以被检测到,但是不可能校正,因为投票为“平局”。在针对每个位的五次重复时,全部两位误差都可以被检测到,但不是全部三位误差都可以被检测到。因此,可以看到,模块化重复码极其低效,吞吐量降低的次数与使用的重复次数相等,并且效率急剧下降。这增加了每个位被复制的次数以便检测并且校正更多误差。

因此,需要开发用于检测大百分比的误差同时维持校正至少可接受百分比的误差的能力的技术,其不使用大的开销,并且不会过度低效。



技术实现要素:

本文公开了一种存储器架构,包括误差校正电路系统,误差校正电路系统被配置为:接收数据分组,并且确定在数据分组中是否存在可校正误差,并且输出指示在数据分组中存在或不存在可校正误差的可校正误差标志。误差校正电路系统还被配置为确定在数据分组中是否存在不可校正误差,并且输出指示在数据分组中存在或不存在不可校正误差的不可校正误差标志。存储器架构还包括响应管理器电路。响应管理器电路具有或门,或门将可校正误差标志和不可校正误差标志作为输入接收,并且生成输出。与门将可校正误差标志和模式选择信号作为输入接收,并且生成第一输出。多路复用器将不可校正误差标志和或门的输出作为输入接收,并且响应于模式选择信号而生成第二输出。

当模式选择信号指示响应管理器电路要在可用性模式中操作时,如果可校正误差标志指示在数据分组中存在可校正误差,则第一输出指示在数据分组中存在可校正误差,并且如果不可校正误差标志指示在数据分组中存在不可校正误差,则第二输出指示在数据分组中存在不可校正误差。

当模式选择信号指示响应管理器电路要在覆盖模式中操作时,如果可校正误差标志指示在数据分组中存在可校正误差,则第一输出指示在数据分组中潜在地存在可校正误差、但是可校正误差应当被当作不可校正误差来处置,并且如果不可校正误差标志指示在数据分组中存在不可校正误差,则第二输出指示在数据分组中存在不可校正误差。

响应管理器电路可以根据电路的至少一个接收到的操作条件来确定是进入可用性模式还是覆盖模式。

响应管理器电路可以根据接收到的配置简档来确定是进入可用性模式还是覆盖模式。

存储器架构可以包括具有第一存储器类型的第一存储器、具有与第一存储器类型不同的第二存储器类型的第二存储器、以及将第一存储器和第二存储器耦合到误差校正电路系统的物理接口电路系统。响应管理器电路基于数据分组是从第一存储器还是第二存储器接收到的来确定是进入可用性模式还是覆盖模式。

第一存储器类型可以是比第二存储器类型可靠性更低的存储器类型,使得来自第一存储器的数据的传输中的误差比来自第二存储器的数据的传输中的误差更有可能。

第一存储器类型可以是双数据速率同步动态随机存取存储器。

误差校正电路系统可以是汉明误差校正电路系统。

本文还公开了一种存储器架构,包括误差校正电路系统,误差校正电路系统被配置为:接收数据分组,确定在数据分组中是否存在可校正误差,并且输出指示在数据分组中存在或不存在可校正误差的可校正误差标志,并且确定在数据分组中是否存在不可校正误差,并且输出指示在数据分组中存在或不存在不可校正误差的不可校正误差标志。响应管理器电路被配置为接收可校正误差标志和不可校正误差标志,并且在可用性模式中,如果可校正误差标志指示在数据分组中存在可校正误差,则生成指示在数据分组中存在可校正误差的输出,并且如果不可校正误差标志指示在数据分组中存在不可校正误差,则生成指示在数据分组中存在不可校正误差的输出。在覆盖模式中,响应管理器电路被配置为如果可校正误差标志指示在数据分组中存在可校正误差,则生成指示在数据分组中潜在地存在可校正误差、但是可校正误差应当被当作不可校正误差来处置的输出,并且如果不可校正误差标志指示在数据分组中存在不可校正误差,则生成指示在数据分组中存在不可校正误差的输出。

本文还公开了一种方法方面。该方法是一种操作电子设备的方法,并且包括:接收数据分组,确定在数据分组中是否存在可校正误差,确定在数据分组中是否存在不可校正误差,并且确定是进入覆盖模式还是可用性模式。在可用性模式中,方法包括指示在数据分组中存在可校正误差,并且如果不可校正误差在数据分组中,则生成指示在数据分组中存在不可校正误差的输出。在覆盖模式中,方法包括指示在数据分组中潜在地存在可校正误差、但是可校正误差应当被当作不可校正误差来处置,并且如果数据分组中存在不可校正误差,则生成指示在数据分组中存在不可校正误差的输出。

附图说明

图1是根据本公开的包括误差校正的存储器电路的第一实施例的框图。

图2是根据本公开的包括误差校正的存储器电路的第二实施例的框图。

具体实施方式

下面将描述本公开的一个或多个实施例。这些描述的实施例仅仅是当前公开的技术的示例。附加地,为了提供简洁的描述,在本说明书中可以不描述实际实现的所有特征。

当介绍本公开的各种实施例的元件时,词语“一(a)”、“一(an)”和“所述(the)”旨在意指存在一个或多个元件。术语“包括(comprising)”、“包括(including)”和“具有(having)”旨在为包括性的并且意指可以存在除了列出的元件之外的附加元件。附加地,应当理解,对本公开的“一个实施例”或“实施例”的提及不旨在被解读为排除还包含记载的特征的附加实施例的存在。附图中的相同的附图标记在其中指代相同的元件,并且点撇符号用于指示不同实施例中的类似结构。

现在参考图1描述包括误差校正的存储器架构50的第一实施例。存储器架构50包括第一和第二双数据速率(ddr)同步动态随机存取存储器(sdram),其被指定为ddr052和ddr154并且各自耦合到物理接口(phy)56。物理接口56耦合到具有并入到其中或者与其相关联的误差校正电路的存储器控制器58。物理接口56是双数据速率同步动态随机存取存储器接口,以便使能与ddr052和ddr154的适当的通信,并且执行的误差校验是具有附加奇偶校验位的汉明类型的,其被称为secded(即,单误差校正、双误差监测)。

该secded误差校正的最小距离为四,也就是说任何两个不同码字相差的位置的最小数目为四。这允许误差校正在给定分组中的单个位误差和两位误差之间进行区分。因此,单个误差可以在检测(但是不校正)双误差的同时被检测到并且校正。secded检测是本领域技术人员已知的,并且因此其细节不需要在本文中进行描述。

物理接口56将包括数据位和校验位51的数据分组发送到存储器控制器58,存储器控制器58执行上述误差校正。存储器控制器58确定在接收到的数据分组中是否存在可校正误差(单个位误差),并且将指示这种情况的secint信号55作为输出而生成。存储器控制器58还确定在接收到的数据分组中是否存在不可校正误差(两位误差),并且将指示这种情况的dedint信号57作为输出而生成。如果检测到可校正误差,则包含经校正位53的新分组被生成、并且由存储器控制器58输出。

响应管理器60接收secint信号55和dedint信号57。如果存储器架构50的操作条件使得在提供的secded误差校正的可靠操作限制内、在数据分组中存在错误的发生(即,存在仅一位或两位误差的可能性)的情况下,则响应管理器60在可用性模式中操作,允许校正一位误差并且检测两位误差,并且分别将secint信号55和dedint信号57发送为secext信号59和dedext信号63作为输出。该可用性模式如此命名是因为仅一位误差和两位误差的误差校正和可能性导致存储器架构50的高可用性。

然而,如果存储器架构的操作条件使得存在大量噪声,并且可能的错误条件包括比由secded提供的校正和检测的限制更多的位错误(例如,三位或更多位误差),则响应管理器60在覆盖模式中操作,在覆盖模式中可校正错误指示被当作不可校正误差来处置,因为不可校正的三位或更大的误差可以被secded检测为单个位可校正误差。因此,在覆盖模式中,如果secint信号55指示潜在地存在单个位可校正误差(潜在是因为这可能实际上是不正确的并且相反表示存在三位或更高的不可校正误差),或者如果dedint信号57指示存在双位不可校正误差,则dedext信号63被断言(asserted)为指示潜在存在不可校正误差,而secext信号59不被断言。覆盖模式如此命名是因为该操作降低系统的可用性,但是可靠地检测错误的存在,因此增强由系统提供的错误检测覆盖范围。

在可用性模式与覆盖模式之间的选择可以由响应管理器60或由外部实体做出。该选择可以基于关于存储器架构50的操作条件的信息来做出,操作条件可以从诸如传感器的外部源,或者从与这样的传感器通信的微处理器或片上系统来接收。操作条件可以包括温度、背景电磁辐射或者任何其他关注的操作条件。该选择可以附加地或备选地基于由诸如微处理器或片上系统的外部实体提供的配置来做出,或者在设备制造期间被提供。

更进一步地,该选择可以附加地或备选地基于哪个特定存储器发送数据分组、在逐个分组的基础上做出。例如,存储器架构50可以包括ddr存储器和非ddr存储器,并且覆盖模式可以当数据要从ddr存储器接收时被激活,而可用性模式可以当数据要从非ddr存储器接收时被激活。这样的实施例被图示在图2中,其中ddr存储器ddr052和ddr154以及非ddrram49被耦合到物理接口56。

如以上所解释的,包括响应管理器的存储器架构50的优势是当在实际上存在三位或更大的误差时,secded可以指示存在单个位可校正误差并且不存在双位不可校正误差,但是现在secded可以被使用在覆盖模式中以可靠地检测三位或更大的误差。这在采用ddrram的应用中特别有用,因为ddrram易于发生高的错误率(例如三位或更大的误差)。此外,三位或更大的误差的精确误差检测允许将ddrram(以及其高吞吐率)的使用扩展到其传统上未被使用于其中的应用(诸如安全和汽车应用)中。

现在参考图2描述用于响应管理器60’的一个特定架构。此处,响应管理器60’包括或门62,或门62接收secint信号55和dedint信号57,并且基于其来生成输出65。多路复用器64从或门62接收输出65作为输入,以及接收dedint信号57。多路复用器64由指示要使用可用性模式还是覆盖模式的接收到的模式选择信号61来控制。多路复用器64生成dedext信号63。与门66接收secint信号55作为输入,以及接收模式选择信号61。与门66生成secint信号59。

然而,应当认识到,其他架构可以用于响应管理器60’。还应当认识到,虽然本文中的存储器架构已经关于使用secded的误差校正进行了描述,但是本文的原理可以被应用于使用不同种类的误差校正的架构。

虽然本公开已经关于有限数量的实施例进行了描述,但是受益于本公开的本领域技术人员将认识到可以设想不脱离如本文公开的本公开的范围的其他实施例。因此,本公开的范围应仅由随附的权利要求限制。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1