專利名稱:動態波動流水線接口裝置及其方法
技術領域:
一般地說,本發明涉及數據處理系統,具體地說,涉及數據處理系統中的總線接口。
背景技術:
隨著數據處理系統中系統時鐘速度的增大,它反映了中央處理單元的速度的增大,系統中總線上的傳輸速度也不得不相應地增大。穿過數據處理系統各總線連接部件的數據傳輸必定受限于這些部件的物理分離。已開發的一種在總線上傳輸數據的方法是波動流水線(Wave-pipeline),其中,在先前的數據通過總線被捕獲到接收裝置中之前便向總線上發出數據信號。換言之,穿過數據處理系統中各部件之間的總線接口,以基本上是“裝配線”的方式使數據成流水線式傳送。一旦該“流水線”或“裝配線”被充滿,數據便以一個平均速率發送,它超過了穿過該接口的延遲。
在一個典型的數據處理系統中,數據可從一個源裝置傳輸到多個接收裝置。不同的接收裝置將通過具有不同電性長度的總線接口耦合于源裝置(或者說發送裝置),因此有不同的延遲。
再有,在接收多個數據信號的單個裝置中,每個信號可能有不同的延遲。這些變化可能產生自制造容差、設計限制(例如線長度變化)、以及依賴時間的效應,如依賴于數據的跳變(jitter)(碼間子干擾),時鐘跳變以及噪聲。
再有,人們期望數據同步地分發。就是說,期望數據在預先確定的系統時鐘周期上被分發。如果數據的分發比預期的要早或遲,便可能發生錯誤。
在一個波動流水線接口中,所做的時序分析更加復雜,因為快路徑和慢路徑同等重要。數據有效區間,即數據能被有效取樣的時間間隔,被縮短了,因為把源裝置(或者說發送裝置)與一個或多個接收裝置耦合起來的快路徑和慢路徑之間的時間差增大了。如果快路徑和慢路徑之間的時間差變得如總線時鐘周期那樣大,便會失掉同步。再有,取樣時鐘的偏斜可能進一步減小數據有效區間。隨著總線接口速度的增大,需要快路徑和慢路徑之間的定時變化更小,于是時鐘偏斜約束變得更加嚴重。然而,時鐘偏斜和定時變化的控制可能受到數據處理系統的布局所造成的物理約束的限制。所以,在本領域需要方法和裝置能在接口的接收裝置端對數據進行去偏斜,并增大數據能在期間被可靠取樣的時間。
本發明的一個目的是提供一種技術,它能緩解上述缺陷。
發明內容
根據本發明,我們提供一個接口裝置,包含多個延時裝置,每個裝置可被操作以接收相應的數據信號,每個延時裝置有一個可預選的延時時間,并在所述預選延時時間之后輸出所述數據信號;以及與所述多個延時裝置耦合的電路,可操作用于設置每個可預選的延時時間,每個預選延時時間被設置,以響應每個數據信號所對應的到達時間。
還是根據本發明,我們提供一種在接口中動態的波動流水線傳送的方法,包括把多個數據信號中每個數據信號的到達邊緣設置成對應于所述多個數據信號中最遲到達的數據信號的到達邊緣的步驟。
上文中已相當廣泛地概述了本發明的特點和技術優點,以便能更好地理解下文中對本發明的詳細描述。下面將描述本發明的其他特點和優點,這些構成本發明權利要求的主題。
附圖簡述為了更完全地理解本發明及其優點,現在參考下文中結合附圖進行的描述,這些附圖是
圖1以方框圖形式顯示根據本發明一個實施例的數據處理系統;圖2以方框圖形式顯示根據本發明的一個動態波動流水線接口的實施例;換設置到所述最遲到達的數據信號的到達邊緣的步驟包含如下步驟比較所述數據信號,并當所述數據信號包含第一預先確定的值集時輸出第一預先確定的輸出信號值,當所述數據信號子集有第二預先確定的值集時輸出第二預先確定的輸出信號值,這里所述數據信號子集采取所述第一和第二預先確定的值集之一,以響應所述到達時間;對所述時鐘信號延時一個預先確定的延時時間增量,以響應所述第一輸出信號值;以及重復所述比較和延時步驟,這里所述重復步驟因響應所述第二輸出信號值而終止。14.權利要求11的方法,這里所述對每個數據信號延遲一個預選時間延時的步驟包含如下步驟比較所述數據信號,并當所述數據信號包含第一預先確定的值集時輸出第一預先確定的輸出信號值,當所述數據信號子集有第二預先確定的值集時輸出第二預先確定的輸出信號值,這里所述數據信號子集采取所述第一和第二確先確定的值集之一,以響應所述到達時間;對所述第一數據信號延遲一個預先確定的延時時間增量,以響應所述第一輸出信號值;重復所述比較和延時步驟,這里所述重復步驟因響應所述第二輸出信號值而終止;使所述第一數據信號的延時減小一個延時時間增量;以及對下一個數據信號重復所述比較、延時、重復和減小步驟,這里所述對下一個數據信號的重復步驟因響應所述多個數據信號中的最后一個數據信號而終止。
15.權利要求9的方法,這里每個數據信號有一個預先確定的數據值圖案。
16.權利要求10的方法,這里所述調節時鐘相位的步驟包含如下步驟確定所述數據窗口的較遲側邊;確定所述數據窗口的較早側邊;以及把所述時鐘的一個預先確定的轉換設置到所述較早和較遲側邊的平均位置。
17.權利要求16的方法,這里所述確定較遲側邊的步驟包含如下步驟比較所述數據信號,并當所述數據信號包含第一預先確定的值集時輸出第一預先確定的輸出信號值,當所述數據信號子集有第二預先確定的值集時輸出第二預先確定的輸出信號值,這里所述數據信號子集采取所述第一和第二預先確定的值集之一,以響應所述到達時間;對所述時鐘信號延時一個預先確定的延時時間增量,以響應所述第一輸出信號值;重復所述比較和延時步驟,這里所述重復步驟因響應所述第二輸出信號值而終止;以及確定代表當前延時時間的數據值,以響應所述第二輸出信號值,所述代表當前延時的數據值對應于所述較遲側邊。
18.權利要求16的方法,這里所述確定較早側邊的步驟包含如下步驟比較所述數據信號,并當所述數據信號包含第一預先確定的值集時輸出第一預先確定的輸出信號值,當所述數據信號子集有第二預先確定的值集時輸出第二預先確定的輸出信號值,這里所述數據信號子集采取所述第一和第二預先確定的值集之一,以響應所述到達時間;對所述時鐘信號的延時時間減小一個預先確定的延時增量,以響應所述第一輸出信號值;重復所述比較和減小步驟,這里所述重復步驟因響應所述第二輸出信號值而終止;以及確定代表當前延時時間的數據值,以響應所述第二輸出信號值,所述代表當前延時的數據值對應于所述較早側邊。
19.權利要求17的方法,這里所述代表當前延時時間的數據值包含一個計數。
20.權利要求18的方法,這里所述代表當前延時時間的數據值包含的數據,與總線時鐘208一起,由芯片202中的接口200接收。應該理解,其后對數據接收單元232的描述同樣適用于由芯片202接收來自芯片204的數據。
現在參考圖3,圖中示意性顯示了到達芯片204輸入端的數據222的時序圖。雖然將針對數據222描述其時序,但接口200是雙向的,所以會理解,類似的時序圖同樣會適用于從芯片204到芯片202的數據傳輸。第一數據信號,即數據302,在由芯片202和204之間路徑上的有限傳輸時間產生的標稱延遲之后到達。圖3中所示數據302在基準時間To到達。第二數據信號,即數據304,其延遲長于數據信號302的延遲,相對于基準時間的延遲量為Ts,它將取作數據總線222上的多個延遲數據信號中的最大延遲。類似地,第三數據信號,即數據306,其延遲小于標稱值并早于數據302到達。數據306顯示出到時比其準值To早Tf。為了下文中描述數據接收單元232的操作,Tf將取作代表數據總線222上多個早到數據信號中最早一個的到達時間。數據偏斜可能產生于多個來源,包括制造容差,設計限制(如線長度的變化)以及依賴時間的效應,例如依賴數據的跳變(碼間干擾),時鐘跳變以及噪聲。(在圖3中),基準是相對于傳輸中心顯示的,這是為了在示意性時序圖中易于顯示。本領域普通技術人員將會理解,可以用其他預先確定的穩態值百分比來規定有效傳輸。
在I/O時鐘236的一個邊緣數據被寄存到接收裝置中,如芯片204。在沒有數據偏斜的情況中,數據可被捕獲到一個寬度為I/O時鐘236周期的數據有效窗口中。數據偏斜使數據有效窗口寬度Tw減小,其尊小量為Tf和Ts之和。
為了恢復數據有效窗口的寬度。根據本發明的接口200向數據接收單元232輸入多個數據信號,如圖4中所示。數據由接收器230暫存并耦合到一個可編程延時線,即延時線406至408之一。可編程延時線406至408在輸入到延時線的相應數據信號中提供預選的延時量。接收最遲到達的數據信號的延時線(對應于圖3中的數據304)被編程為零延時。(應該理解,任何電路有一個最小傳輸時間。零延時應進一步理解為相對于任何這種最小傳播時間的延時為零。)這樣,如果例如在圖4中數據402對應于圖3中的數據304,延時線408被編成為零延時。接收其他數據信號的延時線被編程為延時增量,這里接收的數據信號有最早到達時間(對應于圖3中的數據306)的延時線被編程為最長延時。這樣,如果例如在圖4中數據線408對應于最早到達的數據信號,則延時線408被編程為有最長延時值。這樣,輸入到芯片204的全部數據信號,即數據402至數據404,被去偏斜至最遲到達的數據信號。雖然已結合單個數據信號顯示和描述了圖4所示本發明的實施例,但應該理解,本發明的原理可以應用于多組數據信號,如數據字節或其他這種數據信號分組。這樣的替代實施例將在本發明的精神和范圍內。
通過初始化對位過程(IAP),延時線406至408被編程以具有它們的預選延時值。可以在裝有動態波動流水線接口200的數據處理系統100被加電或復位時進行IAP。在本發明的一個實施例中,IAP可由來自圖1中CPU110的一個信號控制。在IAP中,通過認定IAP方式選擇240經由數據總線222發送一個預先確定的同步(sync)圖案(pattern),從而由MUX228輸出這個預先確定的同步圖案。該同步圖案在構成數據總線222和所有數據信號上發送。
該同步圖案被捕獲到寄存器412至414中,它們接收延時線406至408的輸出。輸入到寄存器412至414的數據被鎖定在I/O時鐘236的一個邊緣上,該時鐘是經由緩存器234從總線時鐘206提取的。I/O時鐘236在數據接收單元232中的延時線410中被延時。被延時的I/O時鐘在緩存器416中被再加能并提供給寄存器412至414。
對延時線410以及延時線406至408的控制是經由狀態機418進行的。在IAP過程中。狀態機418響應同步圖案被捕獲到寄存器412至414中,以調節每個延時線406至408中的可編程延時。
輸出420-422被耦合到數據比較邏輯424的相應輸入端。適當的同步圖案允許在沒有任何數據偏斜的情況下同步數據捕獲具有無混淆的分辨力。一個這種圖案構成數據值序列“0”。這一序列是周期性的,其周期性為4個I/O時鐘周期,并與一有彈性的接口一起使用,該彈性接口的彈性為4個時鐘周期。一種彈性接口是待決的被共同授予的美國專利申請的主題,該專利申請題為“彈性接口裝置及其方法”,它已被納入這里作為參考。也可以實現其他同步圖案,只要這種同步圖案允許同步數據捕獲具有無混淆的分辨力。例如,可以實現另一種同步圖案,它為上述數據值序列的補碼。現在將結合狀態機408的操作描述延時線406至408以及410中延時的選擇。
現在參考圖5A,圖中顯示通過狀態機418選擇延時的方法。在步驟502,通過在延時線410中選擇適當的延時,使I/O時鐘調節到最后一個到達的數據信號。還將結合圖5B和5C進一步討論步驟502。在步驟504中數據信號被去偏斜,將結合圖5D和5E進一討論這一步驟。在步驟508中,I/O時鐘取樣點被調節。下文中將結合圖5F和5G進一步討論步驟508。
現在參考圖5B,圖中顯示I/O時鐘延時步驟502的流程圖。在步驟512中,如先前描述的那樣,以發送同步圖案來啟動IAP。在步驟514中,圖4中的狀態機418確定鎖定在寄存器412至414中的與相同數據信號對應的同步圖案,對于上面描述的同步圖案示例,它是值“1”。狀態機418通過確定設置-復位(S-R)觸發器428的輸出426是否已被復位,來確定是否已鎖定這同一數據信號。S-R觸發器的輸出426由數據比較邏輯424控制,它檢測失去比較(miscompare)的情況并認定它的佃出430以對此作出響應。為響應數據比較邏輯424的每個輸入端421至423處出現相同數據信號的情況,輸出430被取反,從而使S-R觸發器復位。由延時的I/O時鐘411使數據比較邏輯424被選通,從而在數據比較邏輯424的輸出端430上建立一輸出信號,以響應數據鎖定在寄存器412至414中。一個與正邏輯實現相對應的數據比較邏輯424的實施例可以形成輸入端421至423上信號和從延時時鐘411導出的選通脈沖的邏輯NAND(“與非”)。另一種作法是,與負邏輯實現相對應的實施例輸入端421至423上信號和從延時時鐘411導出的選通脈沖的邏輯OR(“或”)。這一實施例將對應于上面討論的補充同步圖案。
通過在延時I/O時鐘411的多個周期上取樣同步圖案,可以減小在延時線406至408以及410中設置延時的統計漲落。延時I/O時鐘411使計數器432增量。在預定的延時I/O時鐘周期數K之后,計數器432認定輸出434,然后計數器432退回(roll over)。計數器432的輸出端434與S-R觸發器428的復位輸入端436耦合,從而使輸出端426復位。然后可進行下一個同步圖案/失去比較檢測序列。如果在任何取樣中檢測到失去比較,則S-R觸發器被設置。
現在回到圖5B,如果在由整數值K確定的取樣周期期間,數據比較邏輯424的全部輸入端421至423有相同的數據信號,則步驟514遵循“是”路徑,于是方法500進入步驟504。在這種情況中,由于在延時線406至408中尚未設置延時,圖5C中示意性顯示的時序是有代表性的。通過延時線410已使I/O時鐘236延時一個量Td,這里邊緣t1是在由時間間隔Tw代表的數據有效窗口之內。
初始時,延時時間Td可以是零,這里邊緣To位于數據有效窗口的外部,邊緣To把值“1”鎖定在接收數據306的寄存器412至414之一當中,把值“O”鎖定在接收數據302和304的寄存器中。一個“失去比較”造成了。然后,數據比較邏輯424的輸出430被認定,而S-R觸發器428的輸出426被設置。結果,在圖5B中的步驟514中,“否”分支被遵循。在步驟516中,狀態機418通過延時線410增大延時。
由狀態機418在計數方向438上向雙向計數器440發送一個“上升”信號。當計數器432達到由整數值K確定的計數終點時,計數器440對其計數增量,以響應計數器432認定輸出434。在雙向計數器440中包含的計數被提供給延時控制442。延時控制442對計數解碼并向延時線410提供一個相應的控制信號444,從而使延時線410以預先確定的時間增量來增大延時時間Td。(可在本發明中使用的一個可編程延時線410是一個待決的共同擁有的美國專利申請的主題,該專利申請題為“可編程延時閉鎖環”,這里納入作為參考。)然后,I/O時鐘延時步驟502轉向步驟514。
如果在步驟514中被增加的Td值足以把邊緣t1置于數據有效窗口中,那么步驟514遵循上述“是”分支。否則,在步驟516中再次增大通過延時線410的延時,于是I/O時鐘延時步驟502通過步驟514和516循環,直至邊緣t1落入數據有效窗口為止。然后,狀態機418進入步驟504,在其中使數據去偏斜。
在圖5D中詳細描述了數據去偏斜步驟504。在步驟504中,多個延時線406至408被編程。在步驟518,選定與第一數據信號對應的第一延時線供進行編程。(這可能對應于被初始化為第一個值的腳標j,這第一個值可以是零)。在步驟520中,進行數據比較。在步驟520中的數據比較與圖5B中步驟514的數據比較的進行方式完全相同,所以這里不再詳細描述。
如果所有數據都處于同步狀態,則在步驟522中,在與第j個數據信號對應的第j個延時線中設置一個延時增量。請注意,在開始時,由于I/O時鐘調節步驟502,在步驟520中將遵循“是”分支。在步驟522中對延時增量之后,再次進行數據比較步驟520。然后數據去偏斜步驟504在步驟520和522之間循環,直至失掉數據同步,于是步驟520取“否”分支,在那里,在步驟524中,在第j個數據信號中的延時被減小一個延時增量。這樣,第j個數據信號可以與I/O時鐘相位對齊。
通過再次參考圖5C,可對此有進一步的理解。例如,首先假定在步驟520和522中第j個數據信號是最遲到達的數據信號,即數據304。于是,對相應的延時線增加第一延時增量將移動數據304,從而使它的邊緣t2發生在延時的I/O時鐘411的邊緣t1之后。然后,在步驟520中,數據比較遵循“否”分支到達步驟524,在那里去掉了在步驟522中添加的一個延時增量。這樣,對最后到達的數據信號,沒有添加額外的延時。這是數據去偏斜步驟504所希望的操作,因為最后到達的數據信號可以是對所有其他數據信號進行去偏斜所用的參照。
類似地,現在再用舉例來考慮步驟520和522對最早到達的數據信號,即圖5C中的數據306,所進行的操作,對于最早到達的數據信號,通過重復循環穿過步驟520和522,在其相應的可編程延時線中增加多個延時增量,直至其邊緣t3在時間上移動到延時的I/O時鐘411的邊緣t1之后。然后,正如先前針對數據304所描述的那樣,數據準備步驟520遵循“否”分支到達步驟524,在那里可編程延時被減小一個延時增量,于是邊緣t3與延時的I/O時鐘411的邊緣t1對齊。
在對第j個數據信號去偏斜之后,在步驟526中,數據去偏斜步驟504確定是否所有數據信號延時都已被編程。如果不是,則去偏斜步驟504在步驟527進入下一個延時線,并返回步驟520。在所有延時線都已被調節之后,所有數據信號與延時的I/O時鐘411的邊緣t1對齊,如圖5E的時序圖中示意性顯示的那樣,于是去偏斜步驟504進入方法500的步驟506。
在時鐘取樣點調節步驟506中,延時的I/O時鐘411邊緣t1可以被調節到數據有效窗口的中央。雖然在發送時時鐘邊緣可能在中央,但由于路徑延遲差別、噪聲等的影響,它在接收器處可能是被偏斜的。取樣點調節步驟506對時鐘信號進行去偏斜。參考圖5F,在步驟528中,進行數據比較。開始時,由于數據去偏斜步驟506、使數據比較步驟526遵循“是”分支進行步驟540,而在步驟530中,在延時線410中編程的時間延時增加一個時間延時增量。然后,時鐘取樣點調節步驟506轉到步驟528,在那里再次進行數據比較。然后,I/O時鐘調節步驟506通過步驟528和530進行循環,直至在數據比較步驟528中造成數據失去比較為止,表明延時的I/O時鐘411的延時時鐘邊緣t1(記為t1′)已跳過圖5G中數據有效窗口的較遲側邊t1。然后,數據比較步驟528遵循“否”分支,并在步驟532中存儲計數器440中的計數。
然后,I/O時鐘取樣調節步驟506確定數據有效窗口的較早側邊。在步驟534中,延時線410中的延時減小一個時間延時增量。在步驟536中,進行數據比較。因為在步驟534中邊緣t1′已被移回到數據有效窗口中,所以數據比較536遵循它的“是”分支,而在延時線410中編程的延時再減小一個延時增量。然后,時鐘取樣調節步驟506通過步驟536和538循環,直至數據比較步驟536中的數據比較給出失去比較(miscompare)信號。這表明圖5G中的延時I/O時鐘411的邊緣t1已達到早于數據有效窗口的較早側邊te。延時I/O時鐘411的這一變換用t1″表示。然后,數據比較步驟536遵循“否”分支,并在步驟540中存儲計數器440中的較早側邊計數。
在步驟542中,延時I/O時鐘411的相位設置成數據有效窗口的較早側邊和較遲側邊的平均值處。這在圖5G中對應于延時I/O時鐘411曲線的實線部分,在邊緣t1″處。然后延時I/O時鐘取樣調節步驟506進入步驟508,于是方法500退出IAP方式。
這里描述的實施例中展現的裝置和方法提供了一種動態波動流水線接口。到達該接口的多個數據信號被彼此相對去偏斜,補償各數據信號之間的道跟蹤(tracking)差、I/O時鐘和數據信號之間的路徑差。以及數據信號之間的設計容差,例如芯片連線、模塊連線和插件板連線。結果,數據信號區間的寬度被增大。
該接口進一步調節取樣時鐘,使得取樣點基本上處在數據有效區間的中央,從而使I/O時鐘和數據之間的路徑差、模塊連線差及插件板連線差可以得到補償。
權利要求
1.一種接口裝置,包含多個延時裝置,每個裝置可被操作以接收相應的數據信號,每個延時裝置有一個可預選的延時時間,并在所述預選延時時間之后輸出所述數據信號;以及與所述多個延時裝置耦合的電路,可操作用于設置每個可預選的延時時間,每個預選延時時間被設置,以響應一個到達時間。
2.權利要求1的裝置,這里所述數據信號中的第一個包含一個時鐘信號。
3.前述任何一個權利要求的裝置,這里所述可操作設置每個預選延時時間的電路包含數據比較邏輯,可操作用于接收所述數據信號的一個預先確定的子集,并在所述數據信號子集包含第一預先確定的值集時輸出第一預先確定的輸出信號值,在所述數據信號子集有第二預先確定的值集時輸出第二預先確定的輸出信號值,這里所述數據信號子集采取所述第一和第二預先確定的值集之一,以響應所述伴隨的到達時間;以及可操作修改所述預選延時時間的電路,以響應所述第一和第二預先確定的輸出信號值。
4.權利要求3的裝置,這里所述第一預先確定的值集所包含的每個值是相同的,而所述第二預先確定的值集所包含的第一成員和第二成員是不同的值。
5.權利要求3的裝置,這里所述可操作修改所述預選延時時間的電路包含一個狀態機,可操作修改所述預選延時時間,以響應所述第一和第二輸出信號值。
6.權利要求5的裝置,這里所述可操作修改所述預選延時時間的電路進一步包含一個計數器,可操作接收來自所述狀態機的指示信號,所述計數器可操作輸出一個計數信號,以確定一個延時時間增量個數,用于修改所述預選延時時間,這里所述延時時間增量有一個預先確定值。
7.權利要求6的裝置,這里所述可操作修改所述預選延時時間的電路進一步包含延時控制電路,該電路可操作接收所述計數信號,并向所述多個延時裝置中的每一個輸出一個控制信號,這里所述控制信號可操作修改所述預選延時時間。
8.權利要求3的裝置,這里所述修改預選延時時間以響應所述第一和第二預選確定的信號的電路包含一個存儲裝置,有一輸入端與所述比較邏輯耦合,所述存儲裝置的邏輯狀態可操作用于進行設置以響應所述第一預先確定的信號,和用于進行復位以響應所述第二預先確定的信號;一個計數器,與所述存儲裝置耦合,可操作用于在預先確定的計數過后復位所述存儲裝置;以及一個電路,可操作接收所述存儲裝置的邏輯狀態并修改所述預選延時時間以響應所述邏輯狀態。
9.在一接口中的動態波動流水線傳送方法,包含把多個數據信號中每個數據信號的到達邊緣置成對應于所述多個數據信號中最遲到達的數據信號的到達邊緣的步驟。
10.權利要求9的方法,進一步包含調節時鐘相位的步驟,這里所述時鐘的一個預先確定的轉換基本上落在一數據窗口的中央。
11.權利要求9或10的方法,這里所述設置所述多個數據信號到達邊緣的步驟包含如下步驟確定所述最遲到達的數據信號;以及使每個數據信號延時一個預選的時間延時,所述預選時間延時是響應每個到達邊緣的相應到達時間而設置的。
12.權利要求11的方法,這里所述確定最遲到達的數據信號的步驟包含把時鐘信號的一個預先確定的轉換設置到所述最遲到達的數據信號的到達邊緣的步驟。
13.權利要求12的方法,這里所述把時鐘信號的一個預先確定的轉換設置到所述最遲到達的數據信號的到達邊緣的步驟包含如下步驟比較所述數據信號,并當所述數據信號包含第一預先確定的值集時輸出第一預先確定的輸出信號值,當所述數據信號子集有第二預先確定的值集時輸出第二預先確定的輸出信號值,這里所述數據信號子集采取所述第一和第二預先確定的值集之一,以響應所述到達時間;對所述時鐘信號延時一個預先確定的延時時間增量,以響應所述第一輸出信號值;以及重復所述比較和延時步驟,這里所述重復步驟因響應所述第二輸出信號值而終止。
14.權利要求11的方法,這里所述對每個數據信號延遲一個預選時間延時的步驟包含如下步驟比較所述數據信號,并當所述數據信號包含第一預先確定的值集時輸出第一預先確定的輸出信號值,當所述數據信號子集有第二預先確定的值集時輸出第二預先確定的輸出信號值,這里所述數據信號子集采取所述第一和第二確先確定的值集之一,以響應所述到達時間;對所述第一數據信號延遲一個預先確定的延時時間增量,以響應所述第一輸出信號值;重復所述比較和延時步驟,這里所述重復步驟因響應所述第二輸出信號值而終止;使所述第一數據信號的延時減小一個延時時間增量;以及對下一個數據信號重復所述比較、延時、重復和減小步驟,這里所述對下一個數據信號的重復步驟因響應所述多個數據信號中的最后一個數據信號而終止。
15.權利要求9的方法,這里每個數據信號有一個預先確定的數據值圖案。
16.權利要求10的方法,這里所述調節時鐘相位的步驟包含如下步驟確定所述數據窗口的較遲側邊;確定所述數據窗口的較早側邊;以及把所述時鐘的一個預先確定的轉換設置到所述較早和較遲側邊的平均位置。
17.權利要求16的方法,這里所述確定較遲側邊的步驟包含如下步驟比較所述數據信號,并當所述數據信號包含第一預先確定的值集時輸出第一預先確定的輸出信號值,當所述數據信號子集有第二預先確定的值集時輸出第二預先確定的輸出信號值,這里所述數據信號子集采取所述第一和第二預先確定的值集之一,以響應所述到達時間;對所述時鐘信號延時一個預先確定的延時時間增量,以響應所述第一輸出信號值;重復所述比較和延時步驟,這里所述重復步驟因響應所述第二輸出信號值而終止;以及確定代表當前延時時間的數據值,以響應所述第二輸出信號值,所述代表當前延時的數據值對應于所述較遲側邊。
18.權利要求16的方法,這里所述確定較早側邊的步驟包含如下步驟比較所述數據信號,并當所述數據信號包含第一預先確定的值集時輸出第一預先確定的輸出信號值,當所述數據信號子集有第二預先確定的值集時輸出第二預先確定的輸出信號值,這里所述數據信號子集采取所述第一和第二預先確定的值集之一,以響應所述到達時間;對所述時鐘信號的延時時間減小一個預先確定的延時增量,以響應所述第一輸出信號值;重復所述比較和減小步驟,這里所述重復步驟因響應所述第二輸出信號值而終止;以及確定代表當前延時時間的數據值,以響應所述第二輸出信號值,所述代表當前延時的數據值對應于所述較早側邊。
19.權利要求17的方法,這里所述代表當前延時時間的數據值包含一個計數。
20.權利要求18的方法,這里所述代表當前延時時間的數據值包含一個計數。
21.包括一個接口的數據處理系統,包含一個中央處理單元(CPU);一個與所述CPU耦合的接收裝置,可操作從所述CPU接收至少一個數據信號,所述接收裝置包括一個數據接收單元,所述數據接收單元包含權利要求1-8中任何一個的接口裝置。
全文摘要
實現了動態波動流水線接口裝置和方法。從發送電路接收的數據信號在被寄存到接收裝置中之前經由對應于每個信號的可編程延時裝置進行延時。在每個延時裝置中的可編程延時是根據一個初始化過程設置的,從而使每個信號按照最遲到達的信號去掉偏斜。于是,控制數字信號鎖定的輸入/輸出(I/O)時鐘的相位被調節,從而使鎖定變換基本上處于數據有效窗口的中央。
文檔編號G06F13/42GK1342289SQ0080464
公開日2002年3月27日 申請日期2000年3月3日 優先權日1999年3月5日
發明者丹尼爾·M·德勒普斯, 弗蘭克·D·福萊歐勒, 克文·C·高爾 申請人:國際商業機器公司