CN101849356A - 自计时电路抗毛刺的加固 - Google Patents
自计时电路抗毛刺的加固 Download PDFInfo
- Publication number
- CN101849356A CN101849356A CN200880105286A CN200880105286A CN101849356A CN 101849356 A CN101849356 A CN 101849356A CN 200880105286 A CN200880105286 A CN 200880105286A CN 200880105286 A CN200880105286 A CN 200880105286A CN 101849356 A CN101849356 A CN 101849356A
- Authority
- CN
- China
- Prior art keywords
- circuit
- signal
- door
- inverter
- input
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K5/00—Manipulating of pulses not covered by one of the other main groups of this subclass
- H03K5/125—Discriminating pulses
- H03K5/1252—Suppression or limitation of noise or interference
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K19/00—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
- H03K19/003—Modifications for increasing the reliability for protection
- H03K19/0033—Radiation hardening
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K19/00—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
- H03K19/20—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits characterised by logic function, e.g. AND, OR, NOR, NOT circuits
Landscapes
- Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Nonlinear Science (AREA)
- Manipulation Of Pulses (AREA)
- Analogue/Digital Conversion (AREA)
- Dc Digital Transmission (AREA)
Abstract
公开了多种技术,所述技术用于加固自计时电路以抵抗毛刺。毛刺滤波器被置于数字设计的一些部分内。在一些实施方式中,毛刺滤波器是动态可调的。在一个实施方式中,输入被输出锁定。用于估计编码符号的方法被提出,作为差分信号技术的电路。
Description
约翰·班布里奇
肖恩·索尔兹伯里
背景
异步电路,常称为“无时钟电路”或“自计时”电路,其在用于包括电子产品例如集成电路的数字逻辑中时提供很多优于同步电路的优点。异步电路的重要优点是,与用异步设计技术实现的相同功能相比较,其具有较低的功率。历史上,同步设计的使用比异步设计更加广泛,部分地因为这样的因素,如,需要较小的芯片面积、更容易和更好理解的测试性能,以及设计工具的更加广泛的实用性。
同步电路为电路确定具体的定时(time)以估计(和响应于)输入条件。例如,同步电路常利用时钟信号来使能/禁止接受同步的逻辑门的输入中的数据信号(“同步”)。非同步期间内的输入线路上的任何错误信号都不被逻辑门所知且因此对门的状态没有影响。
相比之下,通过定义,无时钟电路异步地响应于输入信号,并且可在一定的条件下响应于在门输入处的任何信号变化,其中,信号变化具有足够的信号电平(例如,在晶体管阈值电压之上)和持续时间(例如,门输入级的接通时间)。因此在到无时钟电路的输入信号线路上的毛刺,诸如电压尖脉冲,可导致不希望发生的状态。
串话干扰、电源噪声、电磁耦合和电中断的其他来源都可导致信号的传播延迟中的变化,且有可能地,还可导致电路中的信号上的毛刺。如果毛刺足够大,即其等于或超过晶体管阈值电压,且如果毛刺持续足够长的持续时间,那么包括晶体管的逻辑门可对于其内部状态以及输入到逻辑门的其他输入信号的值的一些组合来改变其输出的值。在自计时逻辑电路中,这样的毛刺可导致不正确的状态或值或不恰当的控制信号的传输。
故障可以各种方式出现,其依赖于它们影响了电路的哪个部分,电路的那个部分的瞬时状态,以及发生在电路的那个部分中的下一个恰当的操作。例如,在Muller C元件预期来自上游Muller C元件的逻辑信号时,在到Muller C元件的输入上的变高的(high-going)毛刺可导致该元件像有效的逻辑HI输入信号一样判读(interpret)毛刺,导致元件改变其输出状态,因此其在不应传输HI逻辑输出时传输HI逻辑输出。在另一个例子中,RTZ(“归零制”)逻辑设计中的多个并联的Muller C元件可通过在控制Muller C元件的信号线路上的变低的毛刺不正确地从“等待”状态中释放出来。
一些故障可通过系统被传播,直到到达故障隔离点。这样的情况的例子是,导致编码符号作为错误值被更改和接收或可能地导致另外的编码信号被加进的故障。被加进的信号在所预期的符号之前被接收并代替预期的符号被使用,逼迫真正的编码符号以及其随后的所有符号稍后进行信号交换。
由于故障编码符号被更改或加进且传播到孤立点的被传播的故障,如果导致损害,则将导致接收到不正确的信息。
如果被传播的故障影响片上网络(“NoC”)包的消息头字段(messageheader field)或网络结构单元中的路由逻辑,则其可导致对包或信息的不正确的路由处理。例子包括被路由到错误接收器的包、被截短的包,或可能地被连接到一起的多个包,这是由于包的末端的标记被更改使得其不被识别。
在一些情况下,故障可将输入或状态保持元件翻转成为与处理自计时通信协议相关的状态机。这可导致转换到错误状态,由于该状态机可能不再能够正确地与其近邻通信,该错误状态可导致不正确的操作或者也可能导致死锁的协议。
所需要的是用于防止毛刺导致无时钟电路中的逻辑故障的设备。
概要
本发明包括用于改进自计时逻辑块的加固的多个电路,其包括:
a.毛刺滤波器;
b.可调毛刺滤器;
c.信号锁定;
d.验证完整的编码符号;以及
e.包括Muller C元件的互补信号发送。
贯穿整个设计或在所选的位置应用全部的或少于全部的加固技术。毛刺滤波器包括延迟线,该延迟线与携带信号的线路并联,被逻辑元件终止,因此过滤出窄脉冲。毛刺滤波器的一些实施方式提供了用于调节延迟线的延迟时间的装置。信号锁定提供了回到逻辑块的输入侧的锁存的输出,防止状态中的任何变化直到来自上游发送块的归零为止。通过验证完整的编码符号,包括假定为不活动的信号线,额外的故障就可被避免。不同的信号发送使用互补的信号线对和Muller C门,用于新的技术以加固长线路来抵抗由增加的共模抑制带来的毛刺。
附图概述
图1为用于Muller C逻辑门的标准符号。现有技术。
图2示出了用于Muller C元件的电路框图。现有技术。
图3示出了Muller C元件的可选的实施方式。现有技术。
图4为用于传输数据信号的自计时电路的例子。现有技术。
图5示出了图4的信号和其边缘转换之间的关系。
图6为对应于图5和图4的转换信号图。
图7为毛刺滤波器。现有技术。
图8为毛刺滤波器。现有技术。
图9为依照本发明的使用Muller C门的毛刺滤波器。
图10为依照本发明的可调毛刺滤波器。
图11为逻辑块例如图4的逻辑块中的毛刺滤波器的例子。
图12示出了用于通过评估高电平信号(high signal)来检测正确的编码符号的电路。
图13示出了用于通过评估所有信号阶段(terms)来检测正确的编码符号的电路。
图14为用于锁定到逻辑块的输入直到空闲状态被提供的电路。
图15示出了使用Muller C元件的不同信号发送方法。
一些实施方式的描述
一些术语的定义:
毛刺 | 浪涌电流或干扰电信号;并且在扩展的应用中,状态的突然的短暂的不规律性。 |
Q | 用于表示逻辑元件的输出端的符号,所述逻辑元件例如触发器、AND门、Muller C元件,以及类似元件。 |
RTZ | 归零。一种传输逻辑数据的方法,其中信号在数据位之间归零。 |
NRZ | 不归零。一种传输逻辑数据的方法,其中不要求信号在数据位之间归零。 |
NoC | 片上网络,一种在逻辑块之间进行片内通信的方法,其中使用例如包交换的组网技术。 |
本领域中所熟知的用于“Muller C”元件的符号100和逻辑表达式被示于图1中。我们将有时将Muller C元件称为“C单元”或可交换地称为“C元件”。图2示出了Muller C元件200的典型实施方式。根据如下的逻辑表达式,检查电路图,输入信号A和B在其各自的输入端驱动线路206上的输出信号Q的状态的变化:
[1]Q=A·B+Q·(A+B)。
表达式[1]可通过输出信号Q不改变状态除非信号A和B改变为相同的状态的陈述来口头地描述。线路206上的信号Q对应于线路208上的堆叠的FET 217的输出被反相器202缓冲和反相。当信号A和B变化(但不使得信号Q变化),为保持线路206上的信号Q的输出状态,弱反馈反相器204连接在反相器202两端。反馈反相器204还可减少或消除线路206上的毛刺。本领域的技术人员将知道用于保持线路206上的信号Q的状态的其他电路。
FET堆叠217实施表达式[1]的项(A-B)。例如,如果A=B=1,FET 210和212将被驱动为截止,FET 214和216将被驱动为导通,那么只要线路208上的FET堆叠417的输出强于弱反馈反相器204,则连接到线路208上的接地信号的反相器202的输入端将被下拉,且反相器202的输出将驱动为高。类似地,如果A=B=0,FET 210和212将被驱动为导通,且FET214和216将被驱动为截止,那么再次地只要线路208上的FET堆叠217的输出强于弱反馈反相器204,则连接到线路208上的高压信号的反相器202的输入端将被驱动为高,并且反相器202的输出将驱动为低。因此A=B=1的条件对应于单元200的置位(SET),且A=B=0的条件对应于单元200的复位(RESET)。任何其他条件都不导致单元200的变化。例如,如果A=1且B=0,FET堆叠217的输出将浮动且弱反馈反相器204将防止线路208上的输入信号改变,因此反相器202的输出(和Q)不改变。这个条件,即,当信号A和B不同时信号Q的保持,实施表达式[1]的Q·(A+B)项。
图3是Muller C元件300的另一个实施方式。注意到Muller C元件300逻辑上等同于图2中的Muller C元件200。单元300的状态通过表1描述。表的条目对应于输入信号A和B,随后为对应于图3中的参考标号的逻辑门的输出。“Q”表明门的输出是不确定的;也就是说,与之前的输出信号相比没有变化。
表1
A | B | 302 | 304 | 306 | 308(Q) |
0 | 0 | 1 | 0 | 1 | 0 |
0 | 1 | 1 | 1 | Q’ | Q’ |
1 | 0 | 1 | 1 | Q’ | Q’ |
1 | 1 | 0 | 1 | 0 | 1 |
然后,图2和图3的Muller C元件可被视为改变输出信号Q的状态,以在信号A和B变为相等的任何时间响应于信号A和B的状态。这种情况什么时候发生是不重要的。也就是说,信号A=B不必要在任何特别的时刻被提供到单元的输入,以使输出信号Q进行响应。因此通过使用可具有任何数量的输入项的自计时单元的各种形式,且通过提供单元的输出信号Q作为另一个自计时元件的输入信号,可设计逻辑块,该逻辑块将独立于任何预先确定的定时钟对输入的给定状态评估正确的输出状态,因为每个部件在其输入有效之前都不改变状态。
毛刺可导致对电路的有效或无效输入。尽管中点检查也可被执行,但数据的验证可被执行,例如通过软件或逻辑在数据符号的最终使用的点上执行。因此,用正确的设计,尽管由毛刺导致的无效条件可降低系统性能,但其对于系统不是致命的。无效的条件就其属性来说可以直接被检测。较难检测的是毛刺导致门接收不期望的有效输入条件的条件。所以,加固设计使其对导致有效符号的毛刺更具有抵抗性是重要的。为了理解这个情况,我们检查正确地进行操作的自计时逻辑设计的操作;即,没有错误的自计时逻辑设计的操作。
本领域中有很多自计时设计拓扑。为了说明的目的,我们讨论“n中之1(1 of n)”或“1位热位编码(one hot)”电路设计,其中该电路设计使用归零制(RTZ)数据通信协议。图4示出了这样的电路的一个例子。为描述操作,我们详细检查一个门的操作。图4包括三个基于Muller C的电路元件。发送器402传输数据到接收器404。尽管不需要,在示出的例子中管线中继器(pipeline-repeater)406简单地重复所接收到的从发送器向下游到接收器的数据。表2是用于管线中继器406的状态表,其中RTZ符号协议被使用,且其中单个H是仅有的有效输入。输入数字指的是输入线路上的到门404的信号。
表2
沿数据路径传送的数据包括从402.n到404.n的三个数据线,其可被理解为数据脉动(ripple)。当数据包从输入侧传递到门的输出侧时,门用ACK信号向下一个最上游的电路告知收到所述活动,使得上游电路提供下一个数据包。
图5说明了与图4的管线中继器门406有关的逻辑序列。图6展示了关于管线中继器的上升信号沿和下降信号沿的相互作用的转换图。图5中的信号标号对应于图4中所示的电路的信号线路。括弧中的字母对应于图6的转换图中的相同字母。字母后面的加号代表该信号是上升的,字母后面的减号代表该信号是下降的。
临时举例,考虑符号“001”由发送器402通过中继器406被发送到接收器404(假设线路402.0是任意数据字的LSB)。如果H输入到MullerC元件420、422、424中的每一个,那么线路413上的信号是H。如稍前所讨论的,Muller C元件不改变其输出直到两个输入变为相同的值为止。在所示出的例子中,RTZ协议被实施,所以线路413上的H使得等待中的元件420、422和424接收来自发送器402的匹配的高电平信号。根据表2,门406处于空闲状态。当数据字{001}被发送器402传输时,线路406.0上的信号上升(A+)。因为线路413上的信号为高,数据字{100}在传播延迟之后被传递到线路404.0、404.1、404.2上的中继器406的输出(B+)。线路404.0上的信号的上升沿将线路428上的或门418的输出驱动为高(E+)。线路428上的信号被提供回到发送器402中的反相器410,从而由中继器406传递数据字而向发送器402提供(上游)ACK信号。
线路404.0(B+)上的高信号被传递通过下一个Muller C元件426(因为反相器414的输出也为高),因此将线路419上的或门438的输出信号驱动为高(C+),该信号被反相器412反相,向门406提供来自门404的(下游)ACK(D-)。上游ACK(线路428上的信号)提供低输入到门402的Muller C元件,从而通知发送器402数据已在接收器404被接收,并使门402的Muller C元件为低输入做好准备,完成协议的RTZ需要。然后,当发送器402在线路406.0、406.1和406.2上提供数据字{000}到中继器406时(A-),线路404.0上的输出走低(B-),因为线路413上的信号之前为低,所以使得到Muller C元件420的两个输入都为低。线路404.0上的低信号驱动或门418为低(E-),从而使得线路440上的信号为高,因此使门402为另一个数据字做好准备。类似地,Muller C元件426的数据输出变低,如线路419上的或门438的输出所作的一样(C-)。线路419上的信号为低,线路413上的信号被反相器412驱动为高(D+),此时中继器406被配置为接收另一个数据字。图5中所示的定时信号没有任何特别的标度,但确实指示信号沿的相对位置。
仍看图4,在恰当的操作(即,无毛刺)过程中,到门406的有效的H输入使得门406的输出提供相应的符号到门404。或门418接收来自线路404.0、404.1和404.2的信号。或门418的输出被提供到反相器410。反相器410的输出提供从门406返回到门402的告知收到(“ACK”)信号。例如,考虑402.0=1、402.1=402.2=0,这样的数据之前由门402提供到门406。当线路413上的反相器412的输出为低时,或门418被线路406.0上的门406的高输出驱动为高。或门418的高输出被提供到门402的反相器410,从而向门402提供确认(“ACK”),其是由门406进行的来自门402的符号被呈现到门404的指示。发送器门402中的Muller C元件中的每一个对应于之前所讨论的双输入Muller C元件,其中,根据表1(和等式[1])输出Q(对应于线路406.0上的信号)现可归零(实现RTZ的要求)。于是,我们知道,那数据被沿着从发送器到接收器的总线传递,在发送器和接收器之间有可选的门,其中在每个阶段上,该阶段的输出提供ACK回到之前的阶段,同时继续向下一个阶段传递数据(如果有下一个阶段的话)。
如之前的讨论所示,在(电路中的)某个时刻和位置的某种极性和功率的毛刺可导致形成无时钟电路,以与有正确的(期望的)状态变化相同的方式来运行。表3列出了自计时电路中可因毛刺而导致的一些错误。当然,表3中所列出的潜在的问题依赖于其他条件。
表3
毛刺 | 位置 | 预期的下一个动作 | 可能的影响 |
+ | ACK | 新的n中之1编码 | 临时锁定 |
+ | ACK | ACK有效(assertion) | 符号丢失(快速通过(racethrough)) |
+ | 数据线 | 新的n中之1编码(相同的线路) | 附加的符号 |
+ | 数据线 | 新的n中之1编码(不同的线路) | ·附加的符号·非法符号 |
+ | 数据线 | ACK有效 | 非法符号(n中之2) |
+ | 数据线 | ACK无效(de-assertion) | ·附加的符号·非法符号 |
毛刺 | 位置 | 预期的下一个动作 | 可能的影响 |
- | ACK | 编码RTZ | 临时锁定 |
- | ACK | ACK RTZ | 非法符号(快速通过) |
- | 数据线 | 编码RTZ(n中之0) | 附加的符号 |
- | 数据线 | ACK有效 | 无影响 |
- | 数据线 | ACK无效 | 附加的符号 |
本发明包括电路设计,其中自计时电路被加固以抵抗毛刺的影响。此处所呈现的技术一般是互相独立并互补的。它们可在一起被使用,但在一起使用可导致性能下降和/或芯片面积增大。
脉冲在穿过经过CMOS逻辑门时被衰减(宽度减小),且这使得可以使用可调延迟线滤出毛刺。当延迟线被置于C元件上的附加输入端口和输入线之间时,延迟线使得只有持续的电平变化被锁住,滤出瞬间的毛刺。延迟线的可调特性允许配置毛刺滤器的灵敏度。毛刺滤波的这个技术可被应用到系统中的任何信号上,包括前向路径、返回路径和状态机的内部操作,且可被应用到更加复杂的n中之m编码。
图7、8和9呈现了延迟线毛刺滤波器的三个例子。图7示出了毛刺滤波器700,其包括与到与门712的输入引线710并联的四个反相器702、704、706和708。注意到延迟线毛刺滤波器中的反相器的数量应为偶数,以维持毛刺脉冲信号的极性。滤波器700只改进对变高的的毛刺的抵抗性。图8示出了类似的毛刺滤波器800,其中与门712被或门812代替,因而只提供了对变低的毛刺的抵抗性。
在一个实施方式中,滤波器700和800被用在电路中的位置上,其中大部分变高的或变低的毛刺都分别被预料到或者变高的和变低的毛刺两者都被预料,但一种极性的影响比另一种更具不确定性。只防御一种脉冲极性的益处是,与对两个极性都有效的滤波器相比,这样的滤波器具有较小的器件封装(芯片面积)并且对性能的影响较小。
图9示出了毛刺滤波器900,其在将毛刺降低到两种极性的某种脉冲宽度下有效。(偶数数量的)一系列反相器(902、904、906、908)与到Muller C元件912的信号引线910并联。如之前所讨论的(见表1),MullerC元件不改变其输出,除非两个输入信号有相同的逻辑值。这对于A=B=0和A=B=1两者来说都是适用的(“A”对应于最后一个反相器908的输出;“B”对应于引线910上的信号的值)。因此滤波器900对过滤上升的和下降的毛刺脉冲都有效。
在一个实施方式中,延迟线毛刺滤波器,例如滤波器700、800和900被使得可调,这是通过添加用于短路延迟线系列反相器中的一些(偶数的)数量的系列反相器的结构来实现的。图10示出了类似于滤波器900的滤波器,其具有可选脉冲宽度滤波调节。线路1016上的信号TUNE导通传输晶体管1014,从而将系列反相器的数量从八减少到四。本领域技术人员应知道调节延迟线的很多可选方式。本发明的一些实施方式中,调节由逻辑或固件确定,其中某种数据传输速率故障决定了期望有较长或较短的延迟时间。例如,在一个实施方式中,当系统被置于低功率模式时延迟时间增加,预料数据速率较低,因此有效信号的脉冲宽度较宽。在一些实施方式中,中央监视器跟踪故障的数量和规律性,以提供更适合的毛刺滤波技术以实现更高的性能。用于每个传送层部件的所有可调延迟线为了高性能被初始地调节,且如果故障在某个路线上被规律地检测到,就只对那些部件增加延迟。
图11是应用在图4的管线中继器406周围的毛刺滤波器的例子。延迟线1141、1142和1143被增加以与数据字信号线并联。延迟线1144连接到附加的Muller C元件1122。注意到延迟线1141、1142和1143被连接到Muller C元件(分别地,为1120、1122、1124)的附加输入上,且不需要Muller C元件(类似于图9中的元件91)作为延迟线滤波器的部分。也就是说,Muller C元件1120、1122、1124现为三输入Muller C元件,在C元件响应之前需要全部三个输入信号具有相同的值。例如,如果延迟线1141的延迟时间至少与毛刺的脉冲宽度相同,线路1106.0上的毛刺将被滤除和忽略。
毛刺滤波器不一定被普遍使用。例如,在本发明的一些实施方式中,非毛刺滤波硬件块被其输入上的前向路径毛刺滤波器和其输出上的返回路径毛刺滤波器包封。这个硬件块包封可在内部连接短路且假定不受毛刺影响时被使用。如果硬件块的内部受毛刺影响,那么相同的技术可在有针对性的、逐条导线的基础上应用于内部导线。
在本发明的一个实施方式中,更多的导线需要电平移动,以使得有效的符号被观察到和锁住,以进一步降低瞬间故障导致不恰当/不正确符号的可能性。例如,6中之3配置需要在毛刺之前或在毛刺的时间窗内两个(3-1个)信号改变电平。
在现有技术中,自计时电路在没有故障的假设下被设计。通常假设为空闲/低状态(例如,RTZ)且活动/高状态被明确地检测。例如,在图4所示的电路中,完整的检测由或门(416、418、438)执行,因为非活动的输入将会为低。类似地,对于n中之m电路,通常只检测‘m’个活动信号,假设(n-m)个信号为不活动的。以不同的方式进行说明,逻辑上的“无关”条件被应用到假设为不活动的信号上。图12为检测3中之2电路的编码完成的例子。与门1202、1204、1206检测全部三个可能的有效符号:AC、AB和BC。这种方法的一些实施方式在设计中使用C元件来代替与门,以使设计工程师创建物理实现所需要满足的时间限制的数目最小化。注意到图12(和图13)中标志A、B、C指得是Muller C元件的输出线上的逻辑电平。但是这个配置不会检测出不正确的数据字{111},也就是,A=B=C=1。或门1208将像为正确的符号一样为这个不正确的符号驱动线路1210上的高信号。在本发明的一个实施方式中,所有的项都被评估以验证正确的数据字/符号。全编码-符号检测将需要更多的芯片面积,原因是不活动的信号被作为检测器的因素,其寻找三个信号线路上的准确模式,但是毛刺则可能被检测到,因为它们将导致所要检测的3中之3模式。例如,见图13,三个三输入与门被使用,其中两高和一低信号的所有组合(即,3中之2电路)都被评估,且或门1308只响应于正确的编码符号。在一个实施方式中,通过为门1202、1204和1206使用C元件,可得到进一步的加固。加固的增强是由Muller C的状态实现的,其中只有在输入线完成RTZ时才除去ACK信号。
“m”为较大数字的“n中之m”编码,例如与3中之2编码相比较的6中之3编码,提供了较高的数据率。也就是说,它们对于以延迟不敏感的方式通过尽可能少的导线传输给定数目的比特来说,比较低数目的“n中之m”编码要更加高效。这通常是理想的特性,但是由于毛刺-加固的原因,在一些实施方式中效率稍微低的编码被使用,其允许应用具有折衷的功率(能量)和面积的技术,以保证稳健性。在本发明的一个实施方式中,代替在“n中之m”编码中具有“m个”活动信号,有(n-m)个活动信号,即,“n中之(n-m)”编码,其与n中之m的方法具有相同的排列数目和相同的信息承载能力以及相同的导线数量。
在本发明的另一个实施方式中,自计时逻辑块通过使毛刺导致问题的可能性的窗口变窄而被进行毛刺-加固。这是通过使用所存储的值传播通过下游锁存器、导致在其输出上的数据完成来实现的,其导致ACK的有效,该ACK的有效又禁止初始锁存器被毛刺攻击。这个技术在图12和图13中被示出;参考图14以进一步讨论。
考虑输入字{010},其中线路1410中的高信号传播到C单元1402的输出,从而驱动或门1404为高,表示数据字被块接收。线路1406上的高的或门1404信号被提供到反相器1408。反相器1408的低输出被提供到C单元的输入,从而将其锁定以防止进一步的状态改变。假设线路1412上的下游ACK信号被接收,当C单元的输入完成RTZ时,所有输出变低,如或门1404一样,从而释放锁定状态。在那个时刻以前,来自反相器1408的低输出防止输入毛刺导致块的输出的变化。
我们可通过更改其结构来改进锁存器,以提供明确的锁定能力,并且通过使用管线锁存器中的本地完成检测器来对此进行利用。这样通过以下事实改进稳健性:
降低在锁存器中存储数据和锁定危险状态之间的延迟——锁定是非常快的,只需要传播通过本地完成检测器和反相器。
锁存器的输出上的数据导线上的危险状态可回流通过锁存器中的完成检测器,导致了确认导线到上游发送器的不正确的(提前的)转换。这个情况将使得发送者阻挡新的数据进入其锁存器中。使用n中之1编码,(或者如果毛刺发生在ACK导线上,具有任何编码),这种情况只是临时的,但是使用n中之m编码,其中完成检测器包括状态保持元件(例如C元件或SR锁存器),那么这就变成了阻挡进一步动作的永久锁定。这种情况可通过降低每个锁存器的灵敏度以除去在预期之前发生的ACK事件来避免,这是通过基于输出完成和下游的确认之间的差别插入附加的不对称的C元件或锁存器以锁定确认导线实现的。图12中示出了例子,其中Muller C元件1208包括附加的输入以在线路1210上接收来自完成检测或门1212上的完成信号。
图15说明了本发明的另一个实施方式,其中Muller C元件用于互补信号发送以改进对毛刺导致的错误的抵抗性。尽管该技术可被普遍使用,其通常用于具有长路段(long run)的数据线,例如携带ACK信号的数据线。见图15,线路1504上的完成检测或门1502的输出信号被并行提供给缓冲器1506和反相器1508。线路1512和1514携带到Muller C元件1510的互补信号,其中到元件1510的两个输入中的一个包括反相器。线路1516上的元件1510的输出将反映线路1504上的来自或门1502的输出。3中之2协议是最小的,所以最低级,n中之m编码允许将所讨论的全部故障加固技术合起来应用。当然本公开所呈现的技术可采用自计时设计方法在较大或较小的程度上与任何编码协议组合。
Claims (7)
1.一种电路,其用于加固自计时电路,所述电路包括与用于携带电信号的线路串联的毛刺滤波器,其中所述线路连接到自计时电路的输入端。
2.如权利要求1所述的电路,其中所述毛刺滤波器包括与信号线并联的延迟线,其中,所述延迟线和所述信号线连接到门的输入端。
3.如权利要求2所述的电路,其中,所述门为Muller C元件。
4.如权利要求2所述的电路,其中,所述延迟线包括偶数数量的串联连接的反相器。
5.如权利要求4所述的电路,其还包括连接在偶数数量但少于全部的所述反相器两端的开关,其中,所述开关响应于被提供到所述开关上的控制端的信号,其中所述开关在所述偶数数量的反相器两端提供电短路,从而改变所述延迟线的时间延迟值。
6.一种电路,其用于加固自计时电路,其中,所述自计时电路包括多个Muller C元件,所述电路包括:
线路,所述线路用于携带来自每个Muller C元件的输出信号,其中每条线路连接到不同的Muller C元件的输出端上;
多个与门,其中与门的数量等于Muller C元件的数量,且其中每个与门上的输入端的数量等于所述Muller C元件的数量;
在每个与门的输入端上的至少一个反相器,每个与门具有相同数量的输入端反相器,且其中没有两个与门具有被提供到至少一个输入反相器的相同的Muller C输出信号;
或门,所述或门用于接收来自所有所述与门的输出信号;
用于将来自所述或门的输出信号反相的反相器;以及
用于携带来自所述反相器的输出端的信号的线路,其中所述线路连接到所述Muller C元件中的每一个的输入端。
7.一种电路,其用于降低电噪声对线路的影响,所述电路包括:
缓冲器,所述缓冲器包括连接到所述线路的输入端;
反相器,所述反相器包括连接到与所述缓冲器并联的线路的输入端;以及
Muller C元件,所述Muller C元件包括:
用于接收来自所述缓冲器的线路上的信号的输入端;
用于接收来自所述反相器的线路上的信号的输入端;
在对应于来自所述反相器的所述线路的所述输入端上的反相器;以及
输出端。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/849,312 | 2007-09-03 | ||
US11/849,312 US20100097131A1 (en) | 2007-09-03 | 2007-09-03 | Hardening of self-timed circuits against glitches |
PCT/IB2008/002229 WO2009030997A2 (en) | 2007-09-03 | 2008-08-28 | Hardening of self-timed circuits against glitches |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101849356A true CN101849356A (zh) | 2010-09-29 |
Family
ID=40352694
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200880105286A Pending CN101849356A (zh) | 2007-09-03 | 2008-08-28 | 自计时电路抗毛刺的加固 |
Country Status (7)
Country | Link |
---|---|
US (1) | US20100097131A1 (zh) |
EP (2) | EP2186195A2 (zh) |
JP (1) | JP2011511484A (zh) |
KR (1) | KR20100088126A (zh) |
CN (1) | CN101849356A (zh) |
TW (1) | TW200931808A (zh) |
WO (1) | WO2009030997A2 (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103475355A (zh) * | 2013-09-24 | 2013-12-25 | 中国科学院微电子研究所 | 抗单粒子瞬态脉冲cmos电路 |
CN106936411A (zh) * | 2015-12-30 | 2017-07-07 | 格科微电子(上海)有限公司 | 抗噪声干扰的数字触发器 |
CN108233914A (zh) * | 2016-12-22 | 2018-06-29 | 电信科学技术研究院 | 一种随机噪声电流扰动电路 |
CN108352834A (zh) * | 2016-09-12 | 2018-07-31 | 纳尔逊曼德拉大学 | 用于抑制数字电子电路中的单粒子瞬变或毛刺的方法和电路 |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103299576B (zh) | 2011-01-13 | 2016-05-25 | 三菱电机株式会社 | 比特生成装置以及比特生成方法 |
EP2515197A1 (en) * | 2011-04-21 | 2012-10-24 | STMicroelectronics SA | Clock gating circuit using a Muller C- element |
US8644318B2 (en) * | 2011-09-21 | 2014-02-04 | Qualcomm, Incorporated | Systems and methods for asynchronous handshake-based interconnects |
WO2018015833A1 (en) * | 2016-07-19 | 2018-01-25 | Semiconductor Energy Laboratory Co., Ltd. | Semiconductor device |
US10797706B2 (en) | 2016-12-27 | 2020-10-06 | Semiconductor Energy Laboratory Co., Ltd. | Semiconductor device |
US11177805B1 (en) * | 2020-06-25 | 2021-11-16 | Qualcomm Incorporated | Reducing glitch power in digital circuits |
Family Cites Families (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3824409A (en) * | 1972-06-12 | 1974-07-16 | Massachusetts Inst Technology | Arbiter circuits |
US4785204A (en) * | 1985-06-21 | 1988-11-15 | Mitsubishi Denki Kabushiki Kaisha | Coincidence element and a data transmission path |
US4760279A (en) * | 1986-07-02 | 1988-07-26 | Kabushiki Kaisha Toshiba | Noise cancelling circuit |
US5796962A (en) * | 1991-05-17 | 1998-08-18 | Theeus Logic | Null convention bus |
US5764081A (en) * | 1991-05-17 | 1998-06-09 | Theseus Logic, Inc. | Null convention interface circuits |
US5198710A (en) * | 1991-05-30 | 1993-03-30 | Texas Instruments Incorporated | Bi-directional digital noise glitch filter |
EP0552507B1 (en) * | 1991-12-04 | 1998-02-11 | Koninklijke Philips Electronics N.V. | Arbiter with a direct signal that is modifiable under priority-conflict control |
JP3605122B2 (ja) * | 1991-12-13 | 2004-12-22 | テキサス インスツルメンツ インコーポレイテツド | 補償回路と遅延を補償する方法 |
KR950004855B1 (ko) * | 1992-10-30 | 1995-05-15 | 현대전자산업 주식회사 | 반도체 메모리 소자의 어드레스 전이 검출 회로 |
US5652902A (en) * | 1993-06-08 | 1997-07-29 | Theseus Research, Inc. | Asynchronous register for null convention logic systems |
JPH1091271A (ja) * | 1996-09-11 | 1998-04-10 | Mitsubishi Electric Corp | 内部クロック発生装置 |
JP3739525B2 (ja) * | 1996-12-27 | 2006-01-25 | 富士通株式会社 | 可変遅延回路及び半導体集積回路装置 |
US6031390A (en) * | 1997-12-16 | 2000-02-29 | Theseus Logic, Inc. | Asynchronous registers with embedded acknowledge collection |
US6388533B2 (en) * | 2000-03-02 | 2002-05-14 | Texas Instruments Incorporated | Programmable ring oscillator |
JP3425947B2 (ja) * | 2001-10-19 | 2003-07-14 | 沖電気工業株式会社 | 遷移信号制御回路及びそれを用いた調停装置 |
US6847247B2 (en) * | 2001-11-27 | 2005-01-25 | Sun Microsystems, Inc. | Jittery polyphase clock |
US6529046B1 (en) * | 2001-12-12 | 2003-03-04 | Etron Technology, Inc. | Minimum pulse width detection and regeneration circuit |
US7336103B1 (en) * | 2004-06-08 | 2008-02-26 | Transmeta Corporation | Stacked inverter delay chain |
TWI278086B (en) * | 2005-10-19 | 2007-04-01 | Novatek Microelectronics Corp | Internal resistor apparatus of an integrated circuit chip |
-
2007
- 2007-09-03 US US11/849,312 patent/US20100097131A1/en not_active Abandoned
-
2008
- 2008-08-28 CN CN200880105286A patent/CN101849356A/zh active Pending
- 2008-08-28 EP EP08789120A patent/EP2186195A2/en not_active Withdrawn
- 2008-08-28 JP JP2010522465A patent/JP2011511484A/ja active Pending
- 2008-08-28 EP EP10164724A patent/EP2239848A2/en not_active Withdrawn
- 2008-08-28 WO PCT/IB2008/002229 patent/WO2009030997A2/en active Application Filing
- 2008-08-28 KR KR1020107007199A patent/KR20100088126A/ko not_active Application Discontinuation
- 2008-09-03 TW TW097133786A patent/TW200931808A/zh unknown
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103475355A (zh) * | 2013-09-24 | 2013-12-25 | 中国科学院微电子研究所 | 抗单粒子瞬态脉冲cmos电路 |
CN106936411A (zh) * | 2015-12-30 | 2017-07-07 | 格科微电子(上海)有限公司 | 抗噪声干扰的数字触发器 |
CN106936411B (zh) * | 2015-12-30 | 2021-07-27 | 格科微电子(上海)有限公司 | 抗噪声干扰的数字触发器 |
CN108352834A (zh) * | 2016-09-12 | 2018-07-31 | 纳尔逊曼德拉大学 | 用于抑制数字电子电路中的单粒子瞬变或毛刺的方法和电路 |
CN108233914A (zh) * | 2016-12-22 | 2018-06-29 | 电信科学技术研究院 | 一种随机噪声电流扰动电路 |
Also Published As
Publication number | Publication date |
---|---|
WO2009030997A3 (en) | 2009-07-09 |
TW200931808A (en) | 2009-07-16 |
EP2239848A2 (en) | 2010-10-13 |
JP2011511484A (ja) | 2011-04-07 |
WO2009030997A2 (en) | 2009-03-12 |
US20100097131A1 (en) | 2010-04-22 |
EP2186195A2 (en) | 2010-05-19 |
KR20100088126A (ko) | 2010-08-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101849356A (zh) | 自计时电路抗毛刺的加固 | |
US5541759A (en) | Single fiber transceiver and network | |
US20140101356A1 (en) | Transmission device, transmission system, and control method for transmission device | |
CN105393237A (zh) | 多相位时钟生成方法 | |
US11757550B2 (en) | Ethernet interface and related systems, methods and devices | |
CN203149557U (zh) | 基于fpga的容错异步串行收发器装置 | |
CN103176934A (zh) | 基于fpga的容错异步串行收发器装置 | |
CN114846456A (zh) | 串行通信链路接收器-发送器的自主传输错误检测以及实现其的微控制器系统外围设备 | |
US11374731B2 (en) | Fast initial phase search for digital clock and data recovery and related systems, devices, and methods | |
CN105827351A (zh) | 转态强制编码接收器 | |
Lodhi et al. | Low power soft error tolerant macro synchronous micro asynchronous (MSMA) pipeline | |
WO1993023940A1 (en) | Method and means for automatically detecting and correcting a polarity error in twisted-pair media | |
CN100549909C (zh) | 一种异步复位电路及其实现方法 | |
Ogg et al. | Asynchronous transient resilient links for NoC | |
Fu et al. | Burst error detection hybrid ARQ with crosstalk-delay reduction for reliable on-chip interconnects | |
US20120207230A1 (en) | Communication method, communication system and communication device | |
Zhang et al. | Fine-grained splitting methods to address permanent errors in network-on-chip links | |
CN103346862A (zh) | 一种分级保护的片上网络数据传输装置及方法 | |
CN102118214A (zh) | 检测同步串行通信数据通信可靠性的方法 | |
CN108631808B (zh) | 用于数字信号传输的装置和方法 | |
US10320528B2 (en) | Fault tolerant communication channel | |
CN112311519B (zh) | 使用信号中的边沿定时的全双工通信 | |
CN112118163B (zh) | 在自动化系统中进行能量传输和数据传输的系统和方法 | |
Singh et al. | Determination of UART receiver baud rate tolerance | |
Lechner et al. | A generic architecture for robust asynchronous communication links |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20100929 |