当前位置: 首页 > 专利查询>英国国防部专利>正文

数字运算电路制造技术

技术编号:2890251 阅读:248 留言:0更新日期:2012-04-11 18:40
一种数字运算电路(10),包括一反相电路(28),此反相电路连接到一个要检测出其中错误的数字电路(48)。输入到电路(10)的一个操作数在第一操作中产生一输出结果并存储于一比较电路(82)中。此操作数在电路(10)的操作的第二周期中由反相电路(28)反相,并且其输出结果由比较电路(82)与来自第一操作的结果进行比较。来自此比较的一个非零结果表示在电路(10)的操作中产生了一个或多个错误。(*该技术在2015年保护过期,可自由使用*)

【技术实现步骤摘要】

本专利技术涉及一种数字运算电路,更具体地,本专利技术涉及一种具有错误检测功能的电路。数字运算电路广泛地应用于许多领域。在过去的十年里,电子技术得到迅速发展,其结果是增加了集成电路和系统技术的复杂性。复杂性的增加产生了一些问题,具体地讲就是因老化而引起的可靠性降低、操作中的瞬态故障和制造过程中的生产故障。这些问题随着电路和系统复杂性的增加和器件尺寸的减小而增加。增加电路复杂性的另一个方面是,对一个复杂电路或系统的所有方面的完全测试也许在经济上是不可能的。因此,这样的一种电路或系统在制造时就可能会有导致未能识别的错误形式。对于一些安全要求严格的应用,诸如航空器系统,检测电路错误变得越来越重要。检测错误的一些方法是公知的,诸如象在“错误检测和错误校正码”(“Error Detecting and Error Correcting Codes”),RWHamming,Dell systems Technical Journal,Vol 29 No 1 pp 147-160,1950年1月中描述的海明(Hamming)码的应用。海明码是奇偶检验码,它适用于检验数据的传输和存储。但是,它们有一个严重的缺点,这就是它们不能在运算操作中保留,因而不能用于运算电路。克服有关在运算操作中保留的限制的编码见“错误检测码,自校验电路和应用”(“Error Detecting Code,Self-Checking Circuits andApplications”),JWalkerly,Elserier,North Holland Inc,1978。一个简单的例子就是所谓的AN码。其中,输入数据字乘以一个外加的被乘数。因此,不是此被乘数的倍数的输出可以认为含有错误。所有的运算码都需要附加电路以实现原始编码和错误检验。而且,由于编码后的数据字比未编码时长,因此需要更多的硬件以实现其运算功能。对于错误检测,也曾采用时间冗余方法。与执行所需操作的正常时间相比,这些时间冗余方法需要额外的处理时间。因此,如果一个操作在没有错误检测时需要一个时间单元来完成,那么在一个采用时间冗余的错误检测系统中,此操作可能需要两个或多个时间单元来实现。Patel和Fung已经提出了一个时间冗余的例子(“Concurrent ErrorDetection in ALU’s by Recomputing with shifted Operand”,J H Pateland L Y Fung,IEEE Trans。On Computers,Vol c-31,pp 589-595,July1982)。它包括两次计算一给定的结果,而同时在第一次和第二次计算之间对操作数的比特位进行移位。在重新对齐两个输出结果后,由硬件引起的任何错误将表现在所述两个输出结果中的不同位置上,因而可被检测到。这种方法可用于诸如算术逻辑单元(ALU)等的电路,前述ALU电路可以以模块的形式构成,而且在各模块之间几乎没有或者没有连通性。其缺点是需要额外的硬件模块以处理所述的被移位的操作数。T H Chen等人的方法(“Design of concurrent Error-DetetableVLSI-Based Array Dividers”,T H Chen,L G Chen,Y S Chang,ProcIEEE International Conference on Computer Design(ICCD),1992)利用电路的规则性而将一个电路分成两个相等的部分,其中每一部分仅执行所需计算的一半。然后,每一部分电路被使用两次以产生两个完整的结果,而在没有错误时,这两个完整的结果应该是相等的。但是,这种方法仅限于具有能够分开执行计算功能的规则性的电路。本专利技术的一个目的是提供一种具有错误检测功能的数字运算电路的可供选择的结构。本专利技术提供了一种数字运算电路,包括用于提供至少一个输入操作数到所述电路中的装置,其特征在于此电路包括(i)用于把输入到所述电路的至少一个操作数进行反相的装置,以及(ii)一种装置,用于从被反相和未反相的操作数所产生的电路输出获得一比较值,以便提供在电路操作中的错误产生或未产生的一个指示。根据本说明书的目的,术语“操作数”定义为一个带符号的二进制数,本专利技术的数字运算电路对所述的二进制数执行一个运算操作。本专利技术适用于其符号隐含于比特表达式中的那些操作数,即这些操作数没有表示符号的附加位。因此,本专利技术适应于采用补码表示的系统,例如2的补码表示。术语“反相”(inverting),对于一个操作数来说,“反相”意味着改变一个数的符号而保持其大小不变。对于一个二的补码数,就是将此数的所有位分别相应地从0或1改变到1或0,并且对产生的结果加1。术语“反相”(inverted)和“未反相”(non-inverted)可由此得到解释。本专利技术具有的优点是,它提供了一种用于运算电路中的错误检测的装置,与现有技术中的电路相比,此装置能够简单地实现。输入操作数被两次提供给本专利技术的电路并在第二次应用中被反相。当这两个输出结果由比较装置比较时,此反相使错误能够被检测。本专利技术提供了检测由永久的和瞬态的电路故障所引起的错误的能力,前述的故障改变了一个电路节点处的逻辑值。本专利技术也能够检测多个错误。本专利技术可用于现有的数字信号处理(DSP)电路,并且也可用于自测试应用。本专利技术的数字运算电路可以提供一个能指示电路中错误的位置的输出值。当故障位置已被确定时,纠错将易于进行。在本专利技术的一个优选实施例中,当电路中没有故障时从所述比较装置产生一个零输出。而一个非零输出表示存在一个错误。在另一个实施例中,本专利技术包含至少两个相同的数字运算电路,其中的一个对所述的操作数执行一个操作,而另一个对所述的被反相的操作数执行一个并发的操作。现在,本专利技术将结合附图进行描述,其中附图说明图1是本专利技术的一个数字运算电路;图2是图1所示电路操作的时序图;图3是乘法器—累加器形式的本专利技术的数字运算电路的另一个实施例;图4是图3中的电路的一个单元;图5是图3所示电路在错误检测中的一些例子。参照图1,图1显示了本专利技术的数字运算电路的一个方框图,此电路总体上被标示为10。电路10接收图1中没有示出的两个输入数A和B,这两个数为二的补码数,并且电路10将A和B相加而产生一个输出即二的补码和数S。A和B都为四位数,其相应的位分别是a0至a3和b0至b3。一般地,A和B相应地具有位ai和bj(i=0-3,j=0-3),其中i=0和j=0分别表示最低有效位(Lsb),而i=3和j=3分别表示最高有效位(msb)。和数S是一个五位数,其相应位为s0至s4;通常,S具有位sk,其中k=0和k=4分别表示S的Isb和msb。由于两个四位数A和B相加可能产生一个进位位,因此S有第5位s4。数A和B分别在标示为12、14、16、18和20、22、24、26的输入线上输入到电路10,其中所有的这些输入线都连接到一反相电路28。反相电路28有一允许输入端30。当反相电路28从允许输入端30接收到的一输入信号为高电平时,它将产生输出-A和-B,即它将使数A和B反相。A和B的符号的反相通过将相应的每一位a和b分别反相并对结果各自加1来实现。当所述允许输入信本文档来自技高网...

【技术保护点】
一种数字运算电路,包括用于提供至少一个输入操作数到所述电路(10)的输入装置(12-18),其特征在于所述电路(10)包括:i)用于把输入到电路(10)的至少一个操作数进行反相的装置(28),以及ii)装置(82),用于根据从被反相 和未反相的操作数所产生的电路输出(98-106)获得一比较值,从而提供在电路操作中的错误产生或未产生的一个指示。

【技术特征摘要】
...

【专利技术属性】
技术研发人员:RA埃文斯
申请(专利权)人:英国国防部
类型:发明
国别省市:GB[英国]

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

1
相关领域技术
  • 暂无相关专利