專利名稱:自計(jì)時(shí)電路抗毛刺的加固的制作方法
自計(jì)時(shí)電路抗毛刺的加固約翰 班布里奇肖恩 索爾茲伯里 背景異步電路,常稱為“無時(shí)鐘電路”或“自計(jì)時(shí)”電路,其在用于包括電子產(chǎn)品例如集 成電路的數(shù)字邏輯中時(shí)提供很多優(yōu)于同步電路的優(yōu)點(diǎn)。異步電路的重要優(yōu)點(diǎn)是,與用異步 設(shè)計(jì)技術(shù)實(shí)現(xiàn)的相同功能相比較,其具有較低的功率。歷史上,同步設(shè)計(jì)的使用比異步設(shè)計(jì) 更加廣泛,部分地因?yàn)檫@樣的因素,如,需要較小的芯片面積、更容易和更好理解的測試性 能,以及設(shè)計(jì)工具的更加廣泛的實(shí)用性。同步電路為電路確定具體的定時(shí)(time)以估計(jì)(和響應(yīng)于)輸入條件。例如,同 步電路常利用時(shí)鐘信號(hào)來使能/禁止接受同步的邏輯門的輸入中的數(shù)據(jù)信號(hào)(“同步”)。 非同步期間內(nèi)的輸入線路上的任何錯(cuò)誤信號(hào)都不被邏輯門所知且因此對(duì)門的狀態(tài)沒有影 響。相比之下,通過定義,無時(shí)鐘電路異步地響應(yīng)于輸入信號(hào),并且可在一定的條件下 響應(yīng)于在門輸入處的任何信號(hào)變化,其中,信號(hào)變化具有足夠的信號(hào)電平(例如,在晶體管 閾值電壓之上)和持續(xù)時(shí)間(例如,門輸入級(jí)的接通時(shí)間)。因此在到無時(shí)鐘電路的輸入信 號(hào)線路上的毛刺,諸如電壓尖脈沖,可導(dǎo)致不希望發(fā)生的狀態(tài)。串話干擾、電源噪聲、電磁耦合和電中斷的其他來源都可導(dǎo)致信號(hào)的傳播延遲中 的變化,且有可能地,還可導(dǎo)致電路中的信號(hào)上的毛刺。如果毛刺足夠大,即其等于或超過 晶體管閾值電壓,且如果毛刺持續(xù)足夠長的持續(xù)時(shí)間,那么包括晶體管的邏輯門可對(duì)于其 內(nèi)部狀態(tài)以及輸入到邏輯門的其他輸入信號(hào)的值的一些組合來改變其輸出的值。在自計(jì)時(shí) 邏輯電路中,這樣的毛刺可導(dǎo)致不正確的狀態(tài)或值或不恰當(dāng)?shù)目刂菩盘?hào)的傳輸。故障可以各種方式出現(xiàn),其依賴于它們影響了電路的哪個(gè)部分,電路的那個(gè)部 分的瞬時(shí)狀態(tài),以及發(fā)生在電路的那個(gè)部分中的下一個(gè)恰當(dāng)?shù)牟僮?。例如,在Muller C 元件預(yù)期來自上游Muller C元件的邏輯信號(hào)時(shí),在到Muller C元件的輸入上的變高的 (high-going)毛刺可導(dǎo)致該元件像有效的邏輯HI輸入信號(hào)一樣判讀(interpret)毛刺,導(dǎo) 致元件改變其輸出狀態(tài),因此其在不應(yīng)傳輸HI邏輯輸出時(shí)傳輸HI邏輯輸出。在另一個(gè)例 子中,RTZ( “歸零制”)邏輯設(shè)計(jì)中的多個(gè)并聯(lián)的Muller C元件可通過在控制Muller C元 件的信號(hào)線路上的變低的毛刺不正確地從“等待”狀態(tài)中釋放出來。一些故障可通過系統(tǒng)被傳播,直到到達(dá)故障隔離點(diǎn)。這樣的情況的例子是,導(dǎo)致編 碼符號(hào)作為錯(cuò)誤值被更改和接收或可能地導(dǎo)致另外的編碼信號(hào)被加進(jìn)的故障。被加進(jìn)的信 號(hào)在所預(yù)期的符號(hào)之前被接收并代替預(yù)期的符號(hào)被使用,逼迫真正的編碼符號(hào)以及其隨后 的所有符號(hào)稍后進(jìn)行信號(hào)交換。由于故障編碼符號(hào)被更改或加進(jìn)且傳播到孤立點(diǎn)的被傳播的故障,如果導(dǎo)致?lián)p 害,則將導(dǎo)致接收到不正確的信息。
如果被傳播的故障影響片上網(wǎng)絡(luò)(“NoC”)包的消息頭字段(messageheader field)或網(wǎng)絡(luò)結(jié)構(gòu)單元中的路由邏輯,則其可導(dǎo)致對(duì)包或信息的不正確的路由處理。例子包括被路由到錯(cuò)誤接收器的包、被截短的包,或可能地被連接到一起的多個(gè)包,這是由于包的末端的標(biāo)記被更改使得其不被識(shí)別。在一些情況下,故障可將輸入或狀態(tài)保持元件翻轉(zhuǎn)成為與處理自計(jì)時(shí)通信協(xié)議相 關(guān)的狀態(tài)機(jī)。這可導(dǎo)致轉(zhuǎn)換到錯(cuò)誤狀態(tài),由于該狀態(tài)機(jī)可能不再能夠正確地與其近鄰?fù)ㄐ牛?該錯(cuò)誤狀態(tài)可導(dǎo)致不正確的操作或者也可能導(dǎo)致死鎖的協(xié)議。所需要的是用于防止毛刺導(dǎo)致無時(shí)鐘電路中的邏輯故障的設(shè)備。概要本發(fā)明包括用于改進(jìn)自計(jì)時(shí)邏輯塊的加固的多個(gè)電路,其包括a.毛刺濾波器;b.可調(diào)毛刺濾器;C.信號(hào)鎖定;d.驗(yàn)證完整的編碼符號(hào);以及e.包括Muller C元件的互補(bǔ)信號(hào)發(fā)送。貫穿整個(gè)設(shè)計(jì)或在所選的位置應(yīng)用全部的或少于全部的加固技術(shù)。毛刺濾波器包 括延遲線,該延遲線與攜帶信號(hào)的線路并聯(lián),被邏輯元件終止,因此過濾出窄脈沖。毛刺濾 波器的一些實(shí)施方式提供了用于調(diào)節(jié)延遲線的延遲時(shí)間的裝置。信號(hào)鎖定提供了回到邏輯 塊的輸入側(cè)的鎖存的輸出,防止?fàn)顟B(tài)中的任何變化直到來自上游發(fā)送塊的歸零為止。通過 驗(yàn)證完整的編碼符號(hào),包括假定為不活動(dòng)的信號(hào)線,額外的故障就可被避免。不同的信號(hào)發(fā) 送使用互補(bǔ)的信號(hào)線對(duì)和Muller C門,用于新的技術(shù)以加固長線路來抵抗由增加的共模抑 制帶來的毛刺。附圖概述
圖1為用于Muller C邏輯門的標(biāo)準(zhǔn)符號(hào)。現(xiàn)有技術(shù)。圖2示出了用于Muller C元件的電路框圖。現(xiàn)有技術(shù)。圖3示出了 Muller C元件的可選的實(shí)施方式。現(xiàn)有技術(shù)。圖4為用于傳輸數(shù)據(jù)信號(hào)的自計(jì)時(shí)電路的例子?,F(xiàn)有技術(shù)。圖5示出了圖4的信號(hào)和其邊緣轉(zhuǎn)換之間的關(guān)系。圖6為對(duì)應(yīng)于圖5和圖4的轉(zhuǎn)換信號(hào)圖。圖7為毛刺濾波器?,F(xiàn)有技術(shù)。圖8為毛刺濾波器?,F(xiàn)有技術(shù)。圖9為依照本發(fā)明的使用Muller C門的毛刺濾波器。圖10為依照本發(fā)明的可調(diào)毛刺濾波器。圖11為邏輯塊例如圖4的邏輯塊中的毛刺濾波器的例子。圖12示出了用于通過評(píng)估高電平信號(hào)(high signal)來檢測正確的編碼符號(hào)的 電路。圖13示出了用于通過評(píng)估所有信號(hào)階段(terms)來檢測正確的編碼符號(hào)的電路。圖14為用于鎖定到邏輯塊的輸入直到空閑狀態(tài)被提供的電路。圖15示出了使用Muller C元件的不同信號(hào)發(fā)送方法。一些實(shí)施方式的描述一些術(shù)語的定義
本領(lǐng)域中所熟知的用于“Muller C”元件的符號(hào)100和邏輯表達(dá)式被示于圖1中。我們將有時(shí)將Muller C元件稱為“C單元”或可交換地稱為“C元件”。圖2示出了 Muller C元件200的典型實(shí)施方式。根據(jù)如下的邏輯表達(dá)式,檢查電路圖,輸入信號(hào)A和B在其各 自的輸入端驅(qū)動(dòng)線路206上的輸出信號(hào)Q的狀態(tài)的變化[1]Q = A · B+Q · (A+B)。表達(dá)式[1]可通過輸出信號(hào)Q不改變狀態(tài)除非信號(hào)A和B改變?yōu)橄嗤臓顟B(tài)的陳 述來口頭地描述。線路206上的信號(hào)Q對(duì)應(yīng)于線路208上的堆疊的FET 217的輸出被反相 器202緩沖和反相。當(dāng)信號(hào)A和B變化(但不使得信號(hào)Q變化),為保持線路206上的信 號(hào)Q的輸出狀態(tài),弱反饋反相器204連接在反相器202兩端。反饋反相器204還可減少或 消除線路206上的毛刺。本領(lǐng)域的技術(shù)人員將知道用于保持線路206上的信號(hào)Q的狀態(tài)的 其他電路。FET堆疊217實(shí)施表達(dá)式[1]的項(xiàng)(A-B)。例如,如果A = B = 1,FET 210和212 將被驅(qū)動(dòng)為截止,F(xiàn)ET 214和216將被驅(qū)動(dòng)為導(dǎo)通,那么只要線路208上的FET堆疊417的 輸出強(qiáng)于弱反饋反相器204,則連接到線路208上的接地信號(hào)的反相器202的輸入端將被下 拉,且反相器202的輸出將驅(qū)動(dòng)為高。類似地,如果A = B = 0,F(xiàn)ET 210和212將被驅(qū)動(dòng)為 導(dǎo)通,且FET214和216將被驅(qū)動(dòng)為截止,那么再次地只要線路208上的FET堆疊217的輸 出強(qiáng)于弱反饋反相器204,則連接到線路208上的高壓信號(hào)的反相器202的輸入端將被驅(qū)動(dòng) 為高,并且反相器202的輸出將驅(qū)動(dòng)為低。因此A = B = 1的條件對(duì)應(yīng)于單元200的置位 (SET),且A = B = 0的條件對(duì)應(yīng)于單元200的復(fù)位(RESET)。任何其他條件都不導(dǎo)致單元 200的變化。例如,如果A = 1且B = 0,F(xiàn)ET堆疊217的輸出將浮動(dòng)且弱反饋反相器204將 防止線路208上的輸入信號(hào)改變,因此反相器202的輸出(和Q)不改變。這個(gè)條件,S卩,當(dāng) 信號(hào)A和B不同時(shí)信號(hào)Q的保持,實(shí)施表達(dá)式[1]的Q · (A+B)項(xiàng)。圖3是Muller C元件300的另一個(gè)實(shí)施方式。注意到Muller C元件300邏輯上 等同于圖2中的Muller C元件200。單元300的狀態(tài)通過表1描述。表的條目對(duì)應(yīng)于輸入 信號(hào)A和B,隨后為對(duì)應(yīng)于圖3中的參考標(biāo)號(hào)的邏輯門的輸出?!癚”表明門的輸出是不確定的;也就是說,與之前的輸出信號(hào)相比沒有變化。表 1 然后,圖2和圖3的Muller C元件可被視為改變輸出信號(hào)Q的狀態(tài),以在信號(hào)A 和B變?yōu)橄嗟鹊娜魏螘r(shí)間響應(yīng)于信號(hào)A和B的狀態(tài)。這種情況什么時(shí)候發(fā)生是不重要的。 也就是說,信號(hào)A = B不必要在任何特別的時(shí)刻被提供到單元的輸入,以使輸出信號(hào)Q進(jìn)行 響應(yīng)。因此通過使用可具有任何數(shù)量的輸入項(xiàng)的自計(jì)時(shí)單元的各種形式,且通過提供單元 的輸出信號(hào)Q作為另一個(gè)自計(jì)時(shí)元件的輸入信號(hào),可設(shè)計(jì)邏輯塊,該邏輯塊將獨(dú)立于任何 預(yù)先確定的定時(shí)鐘對(duì)輸入的給定狀態(tài)評(píng)估正確的輸出狀態(tài),因?yàn)槊總€(gè)部件在其輸入有效之 前都不改變狀態(tài)。毛刺可導(dǎo)致對(duì)電路的有效或無效輸入。盡管中點(diǎn)檢查也可被執(zhí)行,但數(shù)據(jù)的驗(yàn)證 可被執(zhí)行,例如通過軟件或邏輯在數(shù)據(jù)符號(hào)的最終使用的點(diǎn)上執(zhí)行。因此,用正確的設(shè)計(jì), 盡管由毛刺導(dǎo)致的無效條件可降低系統(tǒng)性能,但其對(duì)于系統(tǒng)不是致命的。無效的條件就其 屬性來說可以直接被檢測。較難檢測的是毛刺導(dǎo)致門接收不期望的有效輸入條件的條件。 所以,加固設(shè)計(jì)使其對(duì)導(dǎo)致有效符號(hào)的毛刺更具有抵抗性是重要的。為了理解這個(gè)情況,我 們檢查正確地進(jìn)行操作的自計(jì)時(shí)邏輯設(shè)計(jì)的操作;即,沒有錯(cuò)誤的自計(jì)時(shí)邏輯設(shè)計(jì)的操作。本領(lǐng)域中有很多自計(jì)時(shí)設(shè)計(jì)拓?fù)?。為了說明的目的,我們討論“η中之1(1 of η)” 或“1位熱位編碼(one hot)”電路設(shè)計(jì),其中該電路設(shè)計(jì)使用歸零制(RTZ)數(shù)據(jù)通信協(xié)議。 圖4示出了這樣的電路的一個(gè)例子。為描述操作,我們?cè)敿?xì)檢查一個(gè)門的操作。圖4包括 三個(gè)基于Muller C的電路元件。發(fā)送器402傳輸數(shù)據(jù)到接收器404。盡管不需要,在示出 的例子中管線中繼器(pipeline-i^peaterHoe簡單地重復(fù)所接收到的從發(fā)送器向下游到 接收器的數(shù)據(jù)。表2是用于管線中繼器406的狀態(tài)表,其中RTZ符號(hào)協(xié)議被使用,且其中單 個(gè)H是僅有的有效輸入。輸入數(shù)字指的是輸入線路上的到門404的信號(hào)。表2
沿?cái)?shù)據(jù)路徑傳送的數(shù)據(jù)包括從402. η到404. η的三個(gè)數(shù)據(jù)線,其可被理解為數(shù)據(jù) 脈動(dòng)(ripple)。當(dāng)數(shù)據(jù)包從輸入側(cè)傳遞到門的輸出側(cè)時(shí),門用ACK信號(hào)向下一個(gè)最上游的 電路告知收到所述活動(dòng),使得上游電路提供下一個(gè)數(shù)據(jù)包。圖5說明了與圖4的管線中繼器門406有關(guān)的邏輯序列。圖6展示了關(guān)于管線中 繼器的上升信號(hào)沿和下降信號(hào)沿的相互作用的轉(zhuǎn)換圖。圖5中的信號(hào)標(biāo)號(hào)對(duì)應(yīng)于圖4中所 示的電路的信號(hào)線路。括弧中的字母對(duì)應(yīng)于圖6的轉(zhuǎn)換圖中的相同字母。字母后面的加號(hào) 代表該信號(hào)是上升的,字母后面的減號(hào)代表該信號(hào)是下降的。臨時(shí)舉例,考慮符號(hào)“001”由發(fā)送器402通過中繼器406被發(fā)送到接收器404 (假 設(shè)線路402. 0是任意數(shù)據(jù)字的LSB)。如果H輸入到MullerC元件420、422、424中的每一 個(gè),那么線路413上的信號(hào)是H。如稍前所討論的,Muller C元件不改變其輸出直到兩個(gè)輸 入變?yōu)橄嗤闹禐橹?。在所示出的例子中,RTZ協(xié)議被實(shí)施,所以線路413上的H使得等待 中的元件420、422和424接收來自發(fā)送器402的匹配的高電平信號(hào)。根據(jù)表2,門406處于 空閑狀態(tài)。當(dāng)數(shù)據(jù)字{001}被發(fā)送器402傳輸時(shí),線路406.0上的信號(hào)上升(A+)。因?yàn)榫€ 路413上的信號(hào)為高,數(shù)據(jù)字{100}在傳播延遲之后被傳遞到線路404. 0,404. 1,404. 2上 的中繼器406的輸出(B+)。線路404. 0上的信號(hào)的上升沿將線路428上的或門418的輸出 驅(qū)動(dòng)為高(E+)。線路428上的信號(hào)被提供回到發(fā)送器402中的反相器410,從而由中繼器 406傳遞數(shù)據(jù)字而向發(fā)送器402提供(上游)ACK信號(hào)。線路404.0(B+)上的高信號(hào)被傳遞通過下一個(gè)Muller C元件426(因?yàn)榉聪嗥?414的輸出也為高),因此將線路419上的或門438的輸出信號(hào)驅(qū)動(dòng)為高(C+),該信號(hào)被反 相器412反相,向門406提供來自門404的(下游)ACK(D-)。上游ACK (線路428上的信 號(hào))提供低輸入到門402的Muller C元件,從而通知發(fā)送器402數(shù)據(jù)已在接收器404被接 收,并使門402的Muller C元件為低輸入做好準(zhǔn)備,完成協(xié)議的RTZ需要。然后,當(dāng)發(fā)送器 402在線路406. 0,406. 1和406. 2上提供數(shù)據(jù)字{000}到中繼器406時(shí)(A-),線路404. 0上的輸出走低(B-),因?yàn)榫€路413上的信號(hào)之前為低,所以使得到Muller C元件420的兩 個(gè)輸入都為低。線路404. 0上的低信號(hào)驅(qū)動(dòng)或門418為低(E-),從而使得線路440上的信 號(hào)為高,因此使門402為另一個(gè)數(shù)據(jù)字做好準(zhǔn)備。類似地,Muller C元件426的數(shù)據(jù)輸出 變低,如線路419上的或門438的輸出所作的一樣(C-)。線路419上的信號(hào)為低,線路413 上的信號(hào)被反相器412驅(qū)動(dòng)為高(D+),此時(shí)中繼器406被配置為接收另一個(gè)數(shù)據(jù)字。圖5 中所示的定時(shí)信號(hào)沒有任何特別的標(biāo)度,但確實(shí)指示信號(hào)沿的相對(duì)位置。仍看圖4,在恰當(dāng)?shù)牟僮?S卩,無毛刺)過程中,到門406的有效的H輸入使得門 406的輸出提供相應(yīng)的符號(hào)到門404?;蜷T418接收來自線路404. 0,404. 1和404. 2的信 號(hào)?;蜷T418的輸出被提供到反相器410。反相器410的輸出提供從門406返回到門402 的告知收到(“ACK”)信號(hào)。例如,考慮402.0 = 1,402. 1 = 402. 2 = 0,這樣的數(shù)據(jù)之前 由門402提供到門406。當(dāng)線路413上的反相器412的輸出為低時(shí),或門418被線路406. 0 上的門406的高輸出驅(qū)動(dòng)為高?;蜷T418的高輸出被提供到門402的反相器410,從而向門 402提供確認(rèn)(“ACK”),其是由門406進(jìn)行的來自門402的符號(hào)被呈現(xiàn)到門404的指示。 發(fā)送器門402中的Muller C元件中的每一個(gè)對(duì)應(yīng)于之前所討論的雙輸入Muller C元件, 其中,根據(jù)表1(和等式[1])輸出Q (對(duì)應(yīng)于線路406.0上的信號(hào))現(xiàn)可歸零(實(shí)現(xiàn)RTZ的 要求)。于是,我們知道,那數(shù)據(jù)被沿著從發(fā)送器到接收器的總線傳遞,在發(fā)送器和接收器之 間有可選的門,其中在每個(gè)階段上,該階段的輸出提供ACK回到之前的階段,同時(shí)繼續(xù)向下 一個(gè)階段傳遞數(shù)據(jù)(如果有下一個(gè)階段的話)。如之前的討論所示,在(電路中的)某個(gè)時(shí)刻和位置的某種極性和功率的毛刺可 導(dǎo)致形成無時(shí)鐘電路,以與有正確的(期望的)狀態(tài)變化相同的方式來運(yùn)行。表3列出了 自計(jì)時(shí)電路中可因毛刺而導(dǎo)致的一些錯(cuò)誤。當(dāng)然,表3中所列出的潛在的問題依賴于其他 條件。表 3 本發(fā)明包括電路設(shè)計(jì),其中自計(jì)時(shí)電路被加固以抵抗毛刺的影響。此處所呈現(xiàn)的 技術(shù)一般是互相獨(dú)立并互補(bǔ)的。它們可在一起被使用,但在一起使用可導(dǎo)致性能下降和/ 或芯片面積增大。脈沖在穿過經(jīng)過CMOS邏輯門時(shí)被衰減(寬度減小),且這使得可以使用可調(diào)延遲 線濾出毛刺。當(dāng)延遲線被置于C元件上的附加輸入端口和輸入線之間時(shí),延遲線使得只有 持續(xù)的電平變化被鎖住,濾出瞬間的毛刺。延遲線的可調(diào)特性允許配置毛刺濾器的靈敏度。 毛刺濾波的這個(gè)技術(shù)可被應(yīng)用到系統(tǒng)中的任何信號(hào)上,包括前向路徑、返回路徑和狀態(tài)機(jī) 的內(nèi)部操作,且可被應(yīng)用到更加復(fù)雜的η中之m編碼。圖7、8和9呈現(xiàn)了延遲線毛刺濾波器的三個(gè)例子。圖7示出了毛刺濾波器700, 其包括與到與門712的輸入引線710并聯(lián)的四個(gè)反相器702、704、706和708。注意到延遲 線毛刺濾波器中的反相器的數(shù)量應(yīng)為偶數(shù),以維持毛刺脈沖信號(hào)的極性。濾波器700只改 進(jìn)對(duì)變高的的毛刺的抵抗性。圖8示出了類似的毛刺濾波器800,其中與門712被或門812 代替,因而只提供了對(duì)變低的毛刺的抵抗性。在一個(gè)實(shí)施方式中,濾波器700和800被用在電路中的位置上,其中大部分變高的 或變低的毛刺都分別被預(yù)料到或者變高的和變低的毛刺兩者都被預(yù)料,但一種極性的影響 比另一種更具不確定性。只防御一種脈沖極性的益處是,與對(duì)兩個(gè)極性都有效的濾波器相 比,這樣的濾波器具有較小的器件封裝(芯片面積)并且對(duì)性能的影響較小。圖9示出了毛刺濾波器900,其在將毛刺降低到兩種極性的某種脈沖寬度下有效。 (偶數(shù)數(shù)量的)一系列反相器(902、904、906、908)與到Muller C元件912的信號(hào)引線910 并聯(lián)。如之前所討論的(見表l),MullerC元件不改變其輸出,除非兩個(gè)輸入信號(hào)有相同的 邏輯值。這對(duì)于A = B = O和A = B= I兩者來說都是適用的(“A”對(duì)應(yīng)于最后一個(gè)反相 器908的輸出;“B”對(duì)應(yīng)于引線910上的信號(hào)的值)。因此濾波器900對(duì)過濾上升的和下降 的毛刺脈沖都有效。在一個(gè)實(shí)施方式中,延遲線毛刺濾波器,例如濾波器700、800和900被使得可調(diào), 這是通過添加用于短路延遲線系列反相器中的一些(偶數(shù)的)數(shù)量的系列反相器的結(jié)構(gòu)來 實(shí)現(xiàn)的。圖10示出了類似于濾波器900的濾波器,其具有可選脈沖寬度濾波調(diào)節(jié)。線路 1016上的信號(hào)TUNE導(dǎo)通傳輸晶體管1014,從而將系列反相器的數(shù)量從八減少到四。本領(lǐng) 域技術(shù)人員應(yīng)知道調(diào)節(jié)延遲線的很多可選方式。本發(fā)明的一些實(shí)施方式中,調(diào)節(jié)由邏輯或固件確定,其中某種數(shù)據(jù)傳輸速率故障決定了期望有較長或較短的延遲時(shí)間。例如,在一個(gè) 實(shí)施方式中,當(dāng)系統(tǒng)被置于低功率模式時(shí)延遲時(shí)間增加,預(yù)料數(shù)據(jù)速率較低,因此有效信號(hào) 的脈沖寬度較寬。在一些實(shí)施方式中,中央監(jiān)視器跟蹤故障的數(shù)量和規(guī)律性,以提供更適合 的毛刺濾波技術(shù)以實(shí)現(xiàn)更高的性能。用于每個(gè)傳送層部件的所有可調(diào)延遲線為了高性能被 初始地調(diào)節(jié),且如果故障在某個(gè)路線上被規(guī)律地檢測到,就只對(duì)那些部件增加延遲。圖11是應(yīng)用在圖4的管線中繼器406周圍的毛刺濾波器的例子。延遲線1141、 1142和1143被增加以與數(shù)據(jù)字信號(hào)線并聯(lián)。延遲線1144連接到附加的Muller C元件 1122。注意到延遲線1141、1142和1143被連接到Muller C元件(分別地,為1120、 1122、 1124)的附加輸入上,且不需要Muller C元件(類似于圖9中的元件91)作為延遲線濾波 器的部分。也就是說,Muller C元件1120、1122、1124現(xiàn)為三輸入Muller C元件,在C元 件響應(yīng)之前需要全部三個(gè)輸入信號(hào)具有相同的值。例如,如果延遲線1141的延遲時(shí)間至少 與毛刺的脈沖寬度相同,線路1106. 0上的毛刺將被濾除和忽略。毛刺濾波器不一定被普遍使用。例如,在本發(fā)明的一些實(shí)施方式中,非毛刺濾波硬 件塊被其輸入上的前向路徑毛刺濾波器和其輸出上的返回路徑毛刺濾波器包封。這個(gè)硬件 塊包封可在內(nèi)部連接短路且假定不受毛刺影響時(shí)被使用。如果硬件塊的內(nèi)部受毛刺影響, 那么相同的技術(shù)可在有針對(duì)性的、逐條導(dǎo)線的基礎(chǔ)上應(yīng)用于內(nèi)部導(dǎo)線。在本發(fā)明的一個(gè)實(shí)施方式中,更多的導(dǎo)線需要電平移動(dòng),以使得有效的符號(hào)被觀 察到和鎖住,以進(jìn)一步降低瞬間故障導(dǎo)致不恰當(dāng)/不正確符號(hào)的可能性。例如,6中之3配 置需要在毛刺之前或在毛刺的時(shí)間窗內(nèi)兩個(gè)(3-1個(gè))信號(hào)改變電平。在現(xiàn)有技術(shù)中,自計(jì)時(shí)電路在沒有故障的假設(shè)下被設(shè)計(jì)。通常假設(shè)為空閑/低狀 態(tài)(例如,RTZ)且活動(dòng)/高狀態(tài)被明確地檢測。例如,在圖4所示的電路中,完整的檢測由 或門(416、418、438)執(zhí)行,因?yàn)榉腔顒?dòng)的輸入將會(huì)為低。類似地,對(duì)于η中之m電路,通常 只檢測‘m’個(gè)活動(dòng)信號(hào),假設(shè)(n-m)個(gè)信號(hào)為不活動(dòng)的。以不同的方式進(jìn)行說明,邏輯上的 “無關(guān)”條件被應(yīng)用到假設(shè)為不活動(dòng)的信號(hào)上。圖12為檢測3中之2電路的編碼完成的例 子。與門1202、1204、1206檢測全部三個(gè)可能的有效符號(hào)AC、AB和BC。這種方法的一些 實(shí)施方式在設(shè)計(jì)中使用C元件來代替與門,以使設(shè)計(jì)工程師創(chuàng)建物理實(shí)現(xiàn)所需要滿足的時(shí) 間限制的數(shù)目最小化。注意到圖12(和圖13)中標(biāo)志A、B、C指得是Muller C元件的輸出 線上的邏輯電平。但是這個(gè)配置不會(huì)檢測出不正確的數(shù)據(jù)字{111},也就是,A = B = C = 1?;蜷T1208將像為正確的符號(hào)一樣為這個(gè)不正確的符號(hào)驅(qū)動(dòng)線路1210上的高信號(hào)。在本 發(fā)明的一個(gè)實(shí)施方式中,所有的項(xiàng)都被評(píng)估以驗(yàn)證正確的數(shù)據(jù)字/符號(hào)。全編碼_符號(hào)檢 測將需要更多的芯片面積,原因是不活動(dòng)的信號(hào)被作為檢測器的因素,其尋找三個(gè)信號(hào)線 路上的準(zhǔn)確模式,但是毛刺則可能被檢測到,因?yàn)樗鼈儗?dǎo)致所要檢測的3中之3模式。例 如,見圖13,三個(gè)三輸入與門被使用,其中兩高和一低信號(hào)的所有組合(即,3中之2電路) 都被評(píng)估,且或門1308只響應(yīng)于正確的編碼符號(hào)。在一個(gè)實(shí)施方式中,通過為門1202、1204 和1206使用C元件,可得到進(jìn)一步的加固。加固的增強(qiáng)是由Muller C的狀態(tài)實(shí)現(xiàn)的,其中 只有在輸入線完成RTZ時(shí)才除去ACK信號(hào)?!癿”為較大數(shù)字的“η中之m”編碼,例如與3中之2編碼相比較的6中之3編碼, 提供了較高的數(shù)據(jù)率。也就是說,它們對(duì)于以延遲不敏感的方式通過盡可能少的導(dǎo)線傳輸 給定數(shù)目的比特來說,比較低數(shù)目的“η中之m”編碼要更加高效。這通常是理想的特性,但是由于毛刺-加固的原因,在一些實(shí)施方式中效率稍微低的編碼被使用,其允許應(yīng)用具有折衷的功率(能量)和面積的技術(shù),以保證穩(wěn)健性。在本發(fā)明的一個(gè)實(shí)施方式中,代替在“η 中之m”編碼中具有“m個(gè)”活動(dòng)信號(hào),有(n-m)個(gè)活動(dòng)信號(hào),即,“η中之(n-m)”編碼,其與 η中之m的方法具有相同的排列數(shù)目和相同的信息承載能力以及相同的導(dǎo)線數(shù)量。在本發(fā)明的另一個(gè)實(shí)施方式中,自計(jì)時(shí)邏輯塊通過使毛刺導(dǎo)致問題的可能性的窗 口變窄而被進(jìn)行毛刺_加固。這是通過使用所存儲(chǔ)的值傳播通過下游鎖存器、導(dǎo)致在其輸 出上的數(shù)據(jù)完成來實(shí)現(xiàn)的,其導(dǎo)致ACK的有效,該ACK的有效又禁止初始鎖存器被毛刺攻 擊。這個(gè)技術(shù)在圖12和圖13中被示出;參考圖14以進(jìn)一步討論。考慮輸入字{010},其中線路1410中的高信號(hào)傳播到C單元1402的輸出,從而驅(qū) 動(dòng)或門1404為高,表示數(shù)據(jù)字被塊接收。線路1406上的高的或門1404信號(hào)被提供到反相 器1408。反相器1408的低輸出被提供到C單元的輸入,從而將其鎖定以防止進(jìn)一步的狀態(tài) 改變。假設(shè)線路1412上的下游ACK信號(hào)被接收,當(dāng)C單元的輸入完成RTZ時(shí),所有輸出變 低,如或門1404 —樣,從而釋放鎖定狀態(tài)。在那個(gè)時(shí)刻以前,來自反相器1408的低輸出防 止輸入毛刺導(dǎo)致塊的輸出的變化。我們可通過更改其結(jié)構(gòu)來改進(jìn)鎖存器,以提供明確的鎖定能力,并且通過使用管 線鎖存器中的本地完成檢測器來對(duì)此進(jìn)行利用。這樣通過以下事實(shí)改進(jìn)穩(wěn)健性降低在鎖存器中存儲(chǔ)數(shù)據(jù)和鎖定危險(xiǎn)狀態(tài)之間的延遲——鎖定是非??斓?,只需 要傳播通過本地完成檢測器和反相器。鎖存器的輸出上的數(shù)據(jù)導(dǎo)線上的危險(xiǎn)狀態(tài)可回流通過鎖存器中的完成檢測器,導(dǎo) 致了確認(rèn)導(dǎo)線到上游發(fā)送器的不正確的(提前的)轉(zhuǎn)換。這個(gè)情況將使得發(fā)送者阻擋新的 數(shù)據(jù)進(jìn)入其鎖存器中。使用η中之1編碼,(或者如果毛刺發(fā)生在ACK導(dǎo)線上,具有任何編 碼),這種情況只是臨時(shí)的,但是使用η中之m編碼,其中完成檢測器包括狀態(tài)保持元件(例 如C元件或SR鎖存器),那么這就變成了阻擋進(jìn)一步動(dòng)作的永久鎖定。這種情況可通過降 低每個(gè)鎖存器的靈敏度以除去在預(yù)期之前發(fā)生的ACK事件來避免,這是通過基于輸出完成 和下游的確認(rèn)之間的差別插入附加的不對(duì)稱的C元件或鎖存器以鎖定確認(rèn)導(dǎo)線實(shí)現(xiàn)的。圖 12中示出了例子,其中Muller C元件1208包括附加的輸入以在線路1210上接收來自完成 檢測或門1212上的完成信號(hào)。圖15說明了本發(fā)明的另一個(gè)實(shí)施方式,其中Muller C元件用于互補(bǔ)信號(hào)發(fā)送以 改進(jìn)對(duì)毛刺導(dǎo)致的錯(cuò)誤的抵抗性。盡管該技術(shù)可被普遍使用,其通常用于具有長路段(long run)的數(shù)據(jù)線,例如攜帶ACK信號(hào)的數(shù)據(jù)線。見圖15,線路1504上的完成檢測或門1502 的輸出信號(hào)被并行提供給緩沖器1506和反相器1508。線路1512和1514攜帶到Muller C 元件1510的互補(bǔ)信號(hào),其中到元件1510的兩個(gè)輸入中的一個(gè)包括反相器。線路1516上的 元件1510的輸出將反映線路1504上的來自或門1502的輸出。3中之2協(xié)議是最小的,所 以最低級(jí),η中之m編碼允許將所討論的全部故障加固技術(shù)合起來應(yīng)用。當(dāng)然本公開所呈 現(xiàn)的技術(shù)可采用自計(jì)時(shí)設(shè)計(jì)方法在較大或較小的程度上與任何編碼協(xié)議組合。
權(quán)利要求
一種電路,其用于加固自計(jì)時(shí)電路,所述電路包括與用于攜帶電信號(hào)的線路串聯(lián)的毛刺濾波器,其中所述線路連接到自計(jì)時(shí)電路的輸入端。
2.如權(quán)利要求1所述的電路,其中所述毛刺濾波器包括與信號(hào)線并聯(lián)的延遲線,其中, 所述延遲線和所述信號(hào)線連接到門的輸入端。
3.如權(quán)利要求2所述的電路,其中,所述門為MullerC元件。
4.如權(quán)利要求2所述的電路,其中,所述延遲線包括偶數(shù)數(shù)量的串聯(lián)連接的反相器。
5.如權(quán)利要求4所述的電路,其還包括連接在偶數(shù)數(shù)量但少于全部的所述反相器兩端 的開關(guān),其中,所述開關(guān)響應(yīng)于被提供到所述開關(guān)上的控制端的信號(hào),其中所述開關(guān)在所述 偶數(shù)數(shù)量的反相器兩端提供電短路,從而改變所述延遲線的時(shí)間延遲值。
6.一種電路,其用于加固自計(jì)時(shí)電路,其中,所述自計(jì)時(shí)電路包括多個(gè)Muller C元件, 所述電路包括線路,所述線路用于攜帶來自每個(gè)Muller C元件的輸出信號(hào),其中每條線路連接到不 同的Muller C元件的輸出端上;多個(gè)與門,其中與門的數(shù)量等于Muller C元件的數(shù)量,且其中每個(gè)與門上的輸入端的 數(shù)量等于所述Muller C元件的數(shù)量;在每個(gè)與門的輸入端上的至少一個(gè)反相器,每個(gè)與門具有相同數(shù)量的輸入端反相器, 且其中沒有兩個(gè)與門具有被提供到至少一個(gè)輸入反相器的相同的Muller C輸出信號(hào); 或門,所述或門用于接收來自所有所述與門的輸出信號(hào); 用于將來自所述或門的輸出信號(hào)反相的反相器;以及用于攜帶來自所述反相器的輸出端的信號(hào)的線路,其中所述線路連接到所述Muller C 元件中的每一個(gè)的輸入端。
7.一種電路,其用于降低電噪聲對(duì)線路的影響,所述電路包括 緩沖器,所述緩沖器包括連接到所述線路的輸入端;反相器,所述反相器包括連接到與所述緩沖器并聯(lián)的線路的輸入端;以及 Muller C元件,所述Muller C元件包括 用于接收來自所述緩沖器的線路上的信號(hào)的輸入端; 用于接收來自所述反相器的線路上的信號(hào)的輸入端; 在對(duì)應(yīng)于來自所述反相器的所述線路的所述輸入端上的反相器;以及 輸出端。
全文摘要
公開了多種技術(shù),所述技術(shù)用于加固自計(jì)時(shí)電路以抵抗毛刺。毛刺濾波器被置于數(shù)字設(shè)計(jì)的一些部分內(nèi)。在一些實(shí)施方式中,毛刺濾波器是動(dòng)態(tài)可調(diào)的。在一個(gè)實(shí)施方式中,輸入被輸出鎖定。用于估計(jì)編碼符號(hào)的方法被提出,作為差分信號(hào)技術(shù)的電路。
文檔編號(hào)H03K5/1252GK101849356SQ200880105286
公開日2010年9月29日 申請(qǐng)日期2008年8月28日 優(yōu)先權(quán)日2007年9月3日
發(fā)明者約翰·班布里奇, 肖恩·索爾茲伯里 申請(qǐng)人:思利蒂克斯Uk有限公司