專利名稱:無毛刺可編程時鐘整形器的制作方法
無毛刺可編程時鐘整形器
背景技術:
通常在計算系統(tǒng)中,時鐘信號用來定義用于同步部件之間的數據的操作和活動的時間基準。時鐘分配網絡在整個計算系統(tǒng)內從公共點到各個部件分配時鐘信號??梢栽谡麄€時鐘分配網絡內采用可編程延遲線和修改時鐘信號的各種電路以插入時鐘延遲以及用其他方式修改時鐘信號來匹配不同部件之間的正時(timing)。作為ー個示例,圖1示出了可以用在計算系統(tǒng)中的時鐘整理器(trimmer)電路100。時鐘整理器電路100是基于施加到時鐘輸入信號(CKIN) 104的整理值(TRM_VALUE)102可編程的以改變施加到時鐘輸入信號104的延遲量。使用級聯(lián)2輸入反相多路復用器106改變延遲。特別地,級聯(lián)多路復用器106中的第一多路復用器接收時鐘輸入信號104作為兩個輸入中的每ー個。級聯(lián)多路復用器106中接下來的多路復用器的每ー個均接收前ー個多路復用器的輸出作為ー個輸入而時鐘輸入信號104作為另ー個輸入。整理值102由解碼器108解碼以為級聯(lián)多路復用器106中多路復用器的每ー個提供選擇信號。經解碼的整理值控制哪些多路復用器選擇從級聯(lián)多路復用器106中的ー個多路復用器傳遞到下ー個的級聯(lián)時鐘值,以便控制施加到時鐘輸入信號104的延遲量。從時鐘整理器電路100輸出的時鐘輸出信號(CKOUT) 110相對于時鐘輸入信號104偏移(skew) 了通過級聯(lián)多路復用器106施加的延遲量。為了更精細的粒度控制,實現反相多路復用器以減小多路復用器之間的延遲步(st印)長。在一些情況下,經延遲的時鐘信號可以反相,并且在輸出之前由級聯(lián)多路復用器106中的最后的多路復用器校正經延遲的時鐘信號的極性。有各種與這一方法相關聯(lián)的問題和局限性。例如,時鐘整理器電路100僅經配置以聯(lián)動(1ck-St印)地將延遲添加到時鐘輸入信號104的上升沿和下降沿使得占空比是固定的。換言之,時鐘輸入信號的上升沿和下降沿不可獨立編程。這ー特征導致計算系統(tǒng)的性能速度的整體下降,因為在ー些條件下由聯(lián)動延遲減慢了時鐘頻率。
圖1示意性地示出了現有技術時鐘整理器電路。圖2示意性地示出了計算系統(tǒng)的實施例。圖3示意性地示出了上升沿偏移邏輯的實施例。圖4示意性地示出了下降沿偏移邏輯的實施例。圖5示意性地示出了時鐘整形電路的實施例。圖6示意性地示出了包括可變負載通路門(pass-gate)的上升沿偏移邏輯的實施例。圖1示意性地示出了經配置以實施時鐘門控的上升沿偏移邏輯的另ー實施例。圖8示意性地示出了級聯(lián)的多個時鐘整形電路。圖9示出了用于在微處理器中動態(tài)整形時鐘信號的方法的實施例。
具體實施方式
本公開提出了用于在可以稱為“無毛刺”的時鐘整形中,在不生成毛刺的情況下動態(tài)地整形時鐘信號的新穎的微處理器架構和方法。更具體地,本公開涉及經配置以獨立地調整時鐘信號路徑的上升沿和/或下降沿的時鐘整形電路。換言之,時鐘整形電路經配置以選擇性地調整時鐘信號的上升沿延遲、下降沿延遲或者上升沿延遲和下降沿延遲??删幊虝r鐘整形電路使在不停止時鐘源的操作的情況下時鐘信號的實時重新編程成為可能。這樣的獨立信號整形功能可以有利地用來在硅生產之后(即流片之后)在電路中調試時鐘信號路徑以提高計算系統(tǒng)速度、效率和性能。圖2示意性地示出了計算系統(tǒng)200的實施例。計算系統(tǒng)200包括微處理器202。在所不出的實施例中,微處理器202是包括多個處理核心204的多核微處理器。然而,在一些實施例中,微處理器200可以僅包括單個處理核心。時鐘源206經配置以生成定義時間基準來同步計算系統(tǒng)200內的數據活動的時鐘信號。時鐘分配網絡208 (例如時鐘樹)將時鐘信號從時鐘源206分配到多個處理核心204中的每一個。在所不出的實施例中,多個處理核心中的每一個均包括時鐘整形電路210。在一些實施例中,多個處理核心204中的一個或多個可以包括多于一個的時鐘整形電路。在一些實施例中,多個處理核心204中的一個或多個可以不包括時鐘整形電路。例如,在一些實施例中,時鐘整形電路可以放置在時鐘源206和多個處理核心204之間的時鐘分配網絡208中以將時鐘信號提供給多于一個的處理核心。注意時鐘整形電路在微處理器中的使用僅僅是一個示例,并且應該理解時鐘整形電路可以利用在具有時鐘信號的任意數字芯片(例如,數字信號處理芯片、存儲器模塊等等)中。此外,應該理解在數字芯片中可以實現任意合適數量的時鐘整形電路。時鐘整形電路210經配置以接收起源于時鐘源206的時鐘輸入信號。時鐘整形電路210包括上升沿偏移邏輯212和下降沿偏移邏輯214。上升沿偏移邏輯212經配置以選擇性地延遲時鐘輸入信號的上升沿。下降沿偏移邏輯214經配置以獨立于對上升沿的調整來選擇性地延遲時鐘輸入信號的下降沿。時鐘整形電路210經配置以輸出相對于時鐘輸入信號選擇性地發(fā)生偏移的時鐘輸出信號。時鐘整形電路210經配置以取決于操作條件使時鐘輸出信號相對于時鐘輸入信號不同地發(fā)生偏移。在一些情況下,時鐘整形電路210通過經由上升沿偏移邏輯212將上升延遲量添加到時鐘輸入信號的上升沿來使時鐘輸出信號相對于時鐘輸入信號發(fā)生偏移。例如,可以在后硅(post-silicon)調試期間確定處理操作實際上可以花費比從微處理器202的設計所預期的更少的時間來完成。因為處理操作比預期花費更少的時間,時鐘整形電路210可以動態(tài)地延遲時鐘信號的上升沿以縮短時鐘信號的占空比。為縮短占空比所做出的延遲調整可以提高時鐘信號的速度路徑的性能。進一步,在一些實現方案中,在處理操作完成之后剩余的時間可以借用給其他操作,諸如用于不同的流水線階段和/或用于階段之間
坐坐寸寸ο在一些情況下,時鐘整形電路210通過經由下降沿偏移邏輯214將下降延遲量添加到時鐘輸入信號的下降沿來使時鐘輸出信號相對于時鐘輸入信號發(fā)生偏移。例如,可以在后硅調試期間確定處理操作實際上可以花費比從微處理器202的設計所預期的更多的時間來完成。因為處理操作比預期花費更多的時間,時鐘整形電路210可以動態(tài)地延遲時鐘信號的下降沿以延長時鐘信號的占空比來允許操作在時鐘周期內完成。為延長占空比所做出的延遲調整可以減少時鐘信號的速度路徑中的不確定性并使微處理器更強健。
在一些情況下,時鐘整形電路210通過經由上升沿偏移邏輯212將上升延遲量添加到時鐘輸入信號的上升沿并且經由下降沿偏移邏輯214將下降延遲量添加到時鐘輸入信號的下降沿來使時鐘輸出信號相對于時鐘輸入信號發(fā)生偏移。例如,為了在多個處理核心204中的兩個或更多個之間匹配時鐘插入延遲,時鐘整形電路210可以通過將延遲添加到時鐘信號的上升沿和下降沿二者來使時鐘輸入信號發(fā)生偏移。在一些情況下,時鐘整形電路210不使時鐘輸出信號相對于時鐘輸入信號發(fā)生偏移。換言之,在一些情況下,時鐘整形電路210不將實質的上升延遲添加到時鐘輸入信號的上升沿或不將實質的下降延遲添加到時鐘輸入信號的下降沿,或者延遲實質上是O。正如上面所提到的,應該理解時鐘整形電路210可以用于以任意合適的方式修改微處理器202的時鐘信號。在一些實現方案中,時鐘整形電路可以用于靜態(tài)地匹配兩個處理核心之間的時鐘插入延遲。在一些實現方案中,時鐘整形電路可以用作本地時鐘樹的一部分以匹配邏輯部件216之間的正吋。注意在不脫離本公開的范圍的情況下,時鐘整形電路可以用在具有時鐘信號的任意類型的數字芯片中以按要求修改時鐘信號。邏輯部件216可以包括實施處理操作或與基于時鐘信號操作的處理操作相關聯(lián)的任意合適的部件。例如,邏輯部件216可以包括位于處理流水線的提取、解碼和執(zhí)行(以及在一些情況下記憶和寫回)階段的各種部件。此外,時鐘整形電路210經配置以動態(tài)地改變添加到時鐘信號的上升沿的上升延遲量并動態(tài)地改變添加到時鐘信號的下降沿的下降延遲量。這樣的延遲可以基于不同的處理操作和對應的完成時間、不同處理核心之間的延遲匹配等等而改變。圖3示意性地示出了實現在圖2所示的時鐘整形電路210中的上升沿偏移邏輯212的實施例。上升沿偏移邏輯212經配置以選擇性地延遲時鐘輸入信號(CKIN)302的上升沿。多個緩沖器314串聯(lián)耦合以產生可以施加到時鐘輸入信號302的上升沿的不同延遲量。多個緩沖器314中的第一緩沖器經配置以接收時鐘輸入信號302,第一緩沖器將時鐘輸入信號302輸出到系列中下一個緩沖器的輸入,依此類推。因為緩沖器串聯(lián)耦合,所以每個緩沖器均添加了延遲步,該延遲步被添加到系列中前一個緩沖器的延遲歩。多路復用器306用于選擇施加到時鐘輸入信號302的上升沿的延遲量。多路復用器306包括多個輸入線308、輸出線310和選擇線312。注意取決于實施例選擇線312可以包括多個線或者可以包括多個位線。在所示出的實施例中,選擇線312作為I位使能線和4位選擇線示出。多個緩沖器314的每個輸出均耦合到多路復用器306的關聯(lián)輸入線。此夕卜,時鐘輸入信號302直接耦合到多路復用器306的輸入線之一,并且電源(VDD) 316耦合到多路復用器306的另ー輸入線。多路復用器306經配置以基于選擇線312的狀態(tài)選擇多個輸入線308之一以發(fā)送到輸出線310。選擇線312經配置以接收經配置以激活或停用延遲功能的延遲上升使能信號(DELAY_RISE)320以及經配置以選擇傳遞到輸出線310的上升延遲量的時鐘延遲信號304。將延遲上升使能信號320發(fā)送到耦合到選擇線312的鎖存器318。鎖存器318經配置以接收延遲上升使能信號320、在時鐘輸入信號302上升之前建立延遲上升使能信號320以及保持延遲上升使能信號320直到時鐘輸入信號302下降。由解碼器322接收時鐘延遲信號304。解碼器322輸出經解碼的時鐘延遲信號,其與延遲上升使能信號320 —起作為輸入發(fā)送到AND門324。將AND門324的輸出發(fā)送到耦合到選擇線312的鎖存器326。鎖存器326經配置以接收時鐘延遲信號304、在時鐘輸入信號302上升之前建立時鐘延遲信號304以及保持時鐘延遲信號304直到時鐘輸入信號302下降。通過對信號加以鎖存,在由多路復用器306進行選擇期間不發(fā)生信號的切換。因此,從多路復用器306輸出的毛刺可以消除。結合使用時鐘延遲信號304和延遲上升使能信號320以改變施加到時鐘輸入信號302的上升沿的上升延遲量。特別地,延遲上升使能信號320的狀態(tài)確定上升延遲是否施加到時鐘輸入信號302的上升沿。例如,在所示出的實施例中,當延遲上升使能信號320是O時,則多路復用器306的輸入線4 (VDD)被選擇,并且輸出線310被設置為VDD (即電源),而時鐘輸入信號302的上升沿不被延遲。換言之,通過強制輸出線310為VDD,可以旁路多路復用器306使得沒有延遲被添加到時鐘輸入信號302的上升沿。在一些實施例中,時鐘延遲信號304和延遲上升使能信號320可以合并為使能多路復用器306以及控制輸入選擇的一個信號。另一方面,如果延遲上升使能信號320是1,那么延遲功能被激活,并且基于時鐘延遲信號304選擇延遲量。在所示出的實施例中,時鐘延遲信號304可以在以下四個不同的延遲步之間確定選擇:(I)使時鐘輸入信號302通過多路復用器306的延遲量;(2)使時鐘輸入信號302通過一個緩沖器和多路復用器306的延遲量;(3)使時鐘輸入信號302通過兩個緩沖器和多路復用器306的延遲量;以及(4)使時鐘輸入信號302通過三個緩沖器和多路復用器306的延遲量。應該理解在不脫離本公開的范圍的情況下可以采用任意合適數量的步和步長。將所選擇的時鐘延遲(CKDLY)提供到多路復用器306的輸出線310。所選擇的時鐘延遲與時鐘輸入信號302 —起作為輸入發(fā)送到AND門328。時鐘輸出信號(CK0UT)330從AND門328輸出。時鐘輸出信號330相對于時鐘輸入信號302選擇性地發(fā)生偏移,以致當延遲上升使能信號320激活上升沿偏移邏輯212的延遲功能時上升沿包括上升延遲量。這一配置使施加到時鐘輸入信號302的上升延遲量能夠根據多個緩沖器314而動態(tài)地改變。注意上述實施例僅僅是示例性的,并且應該理解在不脫離本公開的范圍的情況下可以實現其他配置。例如,多路復用器306可以具有不同數量的輸入,使得多于或少于可選擇以施加到上升沿的四個不同延遲量。圖4示意性地示出了實現在圖2所示的時鐘整形電路210中的下降沿偏移邏輯214的實施例。下降沿偏移邏輯214經配置以選擇性地延遲時鐘輸入信號(CKIN)302的下降沿。多個緩沖器414串聯(lián)耦合以產生施加到時鐘輸入信號302的下降沿的不同延遲量。多個緩沖器414中的第一緩沖器經配置以接收時鐘輸入信號302,第一緩沖器將時鐘輸入信號302輸出到系列中下一個緩沖器的輸入,依此類推。因為緩沖器串聯(lián)耦合,所以每個緩沖器均添加了延遲步,該延遲步被添加到系列中前一個緩沖器的延遲步。多路復用器406用于選擇施加到時鐘輸入信號302的下降沿的延遲量。多路復用器406包括多個輸入線408、輸出線410和選擇線412。多個緩沖器414的每個輸出均耦合到多路復用器406的關聯(lián)輸入線。此外,時鐘輸入信號302直接耦合到多路復用器406的輸入線之一,而地(GND)416耦合到多路復用器406的另一輸入線。多路復用器406經配置以基于選擇線412的狀態(tài)選擇多個輸入線408之一以發(fā)送到輸出線410。選擇線412經配置以接收經配置以激活或停用延遲功能的延遲下降使能信號(DELAY_FALL)420以及經配置以選擇傳遞到輸出線410的下降延遲量的時鐘延遲信號404。將延遲下降使能信號420發(fā)送到耦合到選擇線412的鎖存器418。鎖存器418經配置以接收延遲下降使能信號420、在時鐘輸入信號302上升之前建立延遲下降使能信號420以及保持延遲下降使能信號420直到時鐘輸入信號302下降。注意在一些實施例中鎖存器418和426是高相位鎖存器。由解碼器422接收時鐘延遲信號404。解碼器422輸出經解碼的時鐘延遲信號,其與延遲下降使能信號420 —起作為輸入發(fā)送到AND門424。將AND門424的輸出發(fā)送到耦合到選擇線412的鎖存器426。鎖存器426經配置以接收時鐘延遲信號404、在時鐘輸入信號302下降之前建立時鐘延遲404以及保持時鐘延遲信號404直到時鐘輸入信號302上升。通過對時鐘延遲信號404和延遲下降使能信號420加以鎖存,在由多路復用器406進行選擇期間不發(fā)生信號的切換。因此,從多路復用器406輸出的毛刺可以消除。結合使用時鐘延遲信號404和延遲下降使能信號420以改變施加到時鐘輸入信號302的下降沿的下降延遲量。特別地,延遲下降使能信號420的狀態(tài)確定下降延遲是否施加到時鐘輸入信號302的下降沿。例如,在所示出的實施例中,當延遲下降使能信號420是0吋,則多路復用器406的輸入線4 (GND)被選擇,并且輸出線410被設置為GND (即,地),而時鐘輸入信號302的下降沿不被延遲。換言之,通過強制輸出線410為GND,可以旁路多路復用器406使得沒有延遲被添加到時鐘輸入信號302的下降沿。另ー方面,如果延遲下降使能信號420是1,那么延遲功能被激活,并且基于時鐘延遲信號404選擇延遲量。在所示出的實施例中,時鐘延遲信號404可以在以下四個不同的延遲步之間確定選擇:(I)使時鐘輸入信號302通過多路復用器406的延遲量;(2)使時鐘輸入信號302通過ー個緩沖器和多路復用器406的延遲量;(3)使時鐘輸入信號302通過兩個緩沖器和多路復用器406的延遲量;以及(4)使時鐘輸入信號302通過三個緩沖器和多路復用器406的延遲量。將所選擇的時鐘延遲(CKDLY)提供到多路復用器406的輸出線410。所選擇的時鐘延遲與時鐘輸入信號302 —起作為輸入發(fā)送到OR門428。從OR門428輸出時鐘輸出信號(CK0UT)430。時鐘輸出信號430相對于時鐘輸入信號302選擇性地發(fā)生偏移,以致當延遲下降使能信號420激活下降沿偏移邏輯214的延遲功能時下降沿包括下降延遲量。該配置使施加到時鐘輸入信號302的下降延遲量能夠根據多個緩沖器414而動態(tài)地改變。注意上述實施例僅僅是示例性的,并且應該理解在不脫離本公開的范圍的情況下可以實現其他配置。例如,多路復用器406可以具有不同數量的輸入,使得多于或少于可選擇以施加到上升沿的四個不同延遲量。圖5示意性地示出了時鐘整形電路210的實施例。時鐘整形電路210合并了圖3所示的上升沿偏移邏輯212和圖4所示的下降沿偏移邏輯214以使時鐘輸出信號(CKOUT)508相對于時鐘輸入信號302選擇性地發(fā)生偏移。上升沿偏移邏輯212和下降沿偏移邏輯214并行接收時鐘輸入信號302并同時操作。時鐘整形電路210包括含有輸入線504、輸出線506和選擇線508的多路復用器502。多路復用器502的輸入線504經配置以接收由上升沿偏移邏輯212所輸出的時鐘輸出信號(上升(RISE)) 330和由下降沿偏移邏輯214所輸出的時鐘輸出信號(下降(FALL))430。選擇線508經配置以接收時鐘輸入信號(CKIN) 302。當時鐘輸入信號302是高(匡ロ,O時,多路復用器502選擇由上升沿偏移邏輯212所輸出的時鐘輸出信號330以傳遞到輸出線506。當時鐘輸入信號302是低(S卩,O)時,多路復用器502選擇由下降沿偏移邏輯214所輸出的時鐘輸出信號430以傳遞到輸出線506。此外,時鐘整形電路210包括鎖存器510和512。鎖存器510經配置以接收延遲下降使能信號420、在時鐘輸入信號302上升之前建立延遲下降使能信號420以及保持延遲下降使能信號420直到時鐘輸入信號302下降。鎖存器512經配置以接收時鐘延遲信號404、在時鐘輸入信號302下降之前建立時鐘延遲404以及保持時鐘延遲信號404直到時鐘輸入302上升。為了在時鐘輸入信號302的上升和下降期間預防毛刺而鎖存信號。在該配置中,上升沿偏移邏輯212的輸出和下降沿偏移邏輯214的輸出比由多路復用器502的選擇線508所接收的時鐘輸入信號302傳播得更慢,并且上升沿偏移邏輯212和下降沿偏移邏輯214的輸出的過渡是單調的。因此,時鐘整形電路210的時鐘輸出信號508是無毛刺的。此外,因為上升沿偏移邏輯212經配置以動態(tài)地改變施加到時鐘輸入信號302的上升延遲量,而下降沿偏移邏輯214經配置以獨立于對上升沿的調整來動態(tài)地改變施加到時鐘輸入信號302的下降延遲量,所以時鐘整形電路210也可以用于為不同的應用而整形時鐘輸入信號或者整理時鐘輸入信號。例如,時鐘整形電路210可以在速度路徑調試應用中延遲上升沿或下降沿。在另一示例中,時鐘整形電路210可以在時鐘整理應用中延遲上升沿和下降沿二者。圖6示意性地示出了包括可變負載通路門602的上升沿偏移邏輯212的實施例。上升沿偏移邏輯212的部件可以實質上與圖3所示的那些相同并以相同方式識別,不再進一步描述。通路門602是可用于提供小于多個緩沖器314中任意一個的延遲步長的通路晶體管(B卩,開關)的網絡。通路門602可以用于對從輸出線310輸出的時鐘輸入信號302提供額外的中間(例如,1/2步)延遲以使時鐘偏移控制的粒度更精細。上升沿邏輯可以包括用于激活通路門602的額外延遲信號(ADDITIONAL_DELAY)608,以調整施加到輸出線510的額外延遲。將額外延遲信號608發(fā)送到鎖存器606。鎖存器606經配置以接收額外延遲信號608、在時鐘輸入信號302上升之前建立額外延遲信號608以及保持額外延遲信號608直到時鐘輸入信號302下降。通過在時鐘輸入信號的過渡過程中鎖存額外延遲信號,時鐘輸出信號330可以做到無毛刺。額外延遲信號608用于控制通路門602以改變施加到多路復用器306的輸出線310處的節(jié)點N的負載604的量。在一些實現方案中,負載604是門和/或線負載。負載604經由激活通路門602添加到節(jié)點N導致輸出線510上的信號更晚(例如,幾皮秒以后)上升。換言之,當將負載604施加到節(jié)點N時,時鐘輸入信號302的上升沿的延遲超出從多路復用器306輸出的延遲量。該配置僅僅用于說明目的而在上升沿偏移邏輯中示出,并且應該理解可以將通路門和對應的可編程負載添加到時鐘整形電路210的其他節(jié)點以提高延遲控制粒度。例如,可以將可編程負載添加到下降沿偏移邏輯以將更精細粒度的延遲添加到下降沿。圖7示意性地示出經配置以實施時鐘門控的上升沿偏移邏輯212的另一實施例。上升沿偏移邏輯212的部件可以實質上與圖3所示的那些相同并以相同方式識別,不再進一步描述。上升沿偏移邏輯212包括時鐘使能信號(CKEN) 702,其選擇性地禁用/使能上升沿偏移邏輯212的一部分,使得各種部件(例如,鎖存器)不需要頻繁切換狀態(tài)。通過減小上升沿偏移邏輯212的部件切換狀態(tài)的頻率,上升沿偏移邏輯212的功耗降低。上升沿偏移邏輯212包括耦合到鎖存器318的輸入的AND門704。AND門704經配置以接收延遲上升使能信號320和時鐘使能信號702。AND門704導致延遲上升使能信號320僅當使能(例如,上升)時鐘使能信號702時才使能多路復用器306的激活。此外,上升沿偏移邏輯212包括耦合到多路復用器306的多個輸入線308之一的鎖存器706。鎖存器706經配置以接收時鐘使能信號702。時鐘使能信號702的經鎖存版本取代電源(例如,VDD)連接,使得僅當由時鐘延遲信號304選擇經鎖存版本且使能(例如,上升)時鐘使能信號702時,才沒有延遲地傳遞時鐘輸入信號302。該配置僅僅用于說明的目的而在上升沿偏移邏輯中示出,并且應該理解可以將時鐘門控添加到時鐘整形電路210的其他部分以降低功耗。例如,可以將時鐘門控配置添加到下降沿偏移邏輯用于功耗的更大降低。圖8示意性地示出了級聯(lián)的多個時鐘整形電路800。多個時鐘整形電路800每個均可以與圖4所示的時鐘整形電路210相同或相似。相對于單個時鐘整形電路,多個時鐘整形電路800可以達到更寬范圍的偏移能力和/或更大數量的步用于更精細的粒度。相對于將可增加導致毛刺的可能性的額外的多路復用器級聯(lián)在一起,或者相對于利用具有可生成更多噪聲的額外選擇線的更大型多路復用器,級聯(lián)的時鐘整形電路可以提供更強健的配置,。在所示出的實施例中,兩個時鐘整形電路級聯(lián)在一起示出,盡管應該理解在不脫離本公開的范圍的情況下,多于兩個時鐘整形電路可以級聯(lián)在一起以達到任意合適范圍的偏移能力。第一時鐘整形電路802經配置以接收時鐘輸入信號302。第一時鐘整形電路802經配置以輸出時鐘輸出信號806,其相對于時鐘輸入信號302選擇性地發(fā)生偏移,以致上升沿包括上升延遲量、下降沿包括下降延遲量或者上升沿包括上升延遲量并且下降沿包括下降延遲量。第二時鐘整形電路804與第一時鐘整形電路802級聯(lián)。第二時鐘整形電路804經配置以通過進ー步増加時鐘輸出信號的上升延遲量、進ー步増加時鐘輸出信號的下降延遲量或者進ー步増加時鐘輸出信號的上升延遲量并且進一步增加時鐘輸出信號的下降延遲量來使時鐘輸出信號806相對于時鐘輸入信號302選擇性地發(fā)生偏移。第二時鐘整形電路804經配置以輸出進ー步相對于時鐘輸出信號806發(fā)生偏移的進ー步經延遲的輸出信號808。在一些實施例中,第一和第二時鐘整形電路可以具有相同或不同的延遲步數量。在一些實施例中,第一和第二時鐘整形電路可以具有相同或不同的步長。例如,在所示出的實施例中,第一時鐘整形電路802具有每個均具有四十皮秒步長的四個延遲步以及第ニ時鐘整形電路804具有每個均具有十二皮秒步長的四個延遲歩。圖9示出了用于動態(tài)地整形數字電路中時鐘信號的方法900的實施例。在ー個示例中,方法900可以由圖2所示的微處理器202的時鐘整形電路210實現。然而,應該理解方法900可以由具有時鐘信號的任意數字電路中的時鐘整形電路實施。在902處,方法900包括確定數字電路是否正在操作。如果數字電路正在操作,那么方法900移動到904。否則,方法900返回到902。
在904處,方法900包括在數字電路的操作期間接收時鐘輸入信號。在906處,方法900包括在不停止數字電路的操作的情況下延遲時鐘輸入信號的上升沿和下降沿之一或對此二者均加以延遲。如上所討論的,可以基于確定時鐘輸入信號的上升沿和/或下降沿是否應該被延遲以及延遲多少的時鐘延遲信號來延遲時鐘輸入信號。在一些情況下,延遲上升沿而不延遲下降沿。在一些情況下,延遲下降沿而不延遲上升沿。在一些情況下,延遲下降沿并且延遲上升沿。當延遲時鐘輸入信號的下降沿時,其獨立于對上升沿的調整被延遲。換言之,當延遲上升沿時不一定延遲下降沿。此外,在一些情況下延遲上升沿或下降沿以調整時鐘輸入信號的占空比。在一些操作條件下,不延遲上升沿和下降沿或者對兩個沿的延遲實質上都是O。例如,兩個邏輯部件可已經同步,使得不需要偏移調整來匹配邏輯部件之間的時鐘信號正時。在一些實施例中,基于在時鐘輸入信號上升之前被鎖存以及被保持直到時鐘輸入信號下降的時鐘延遲信號來實施延遲。因此,可以在不導致毛刺的情況下延遲時鐘輸入信號。在908處,方法900包括輸出相對于時鐘輸入信號發(fā)生偏移的時鐘輸出信號。基于時鐘延遲信號的狀態(tài),時鐘輸出信號的上升沿可以包括上升延遲量,時鐘輸出信號的下降沿可以包括下降延遲量,或者上升沿可以包括上升延遲量并且下降沿可以包括下降延遲量。應該理解在一些情況下上升延遲量可以設置為實質上是0以及下降延遲量可以設置為實質上是O。換言之,在一些情況下,時鐘輸出信號可以按要求相對于時鐘輸入信號不實質上發(fā)生偏移或被延遲。通過獨立地動態(tài)調整時鐘信號的上升沿和下降沿,可以調整時鐘信號以在不減慢計算系統(tǒng)整體性能的情況下為計算系統(tǒng)中的不同部件調節(jié)操作完成時間。此外,因為時鐘信號是動態(tài)地可編程的,所以后硅生產(即,后流片)時可以有利地調整時鐘信號以調試不同部件并對可要求比設計所指定的更多或更少的時間來完成的不同處理操作進行調節(jié)。在本說明書和所附權利要求中,術語“第一”、“第二”、“第三”等僅僅作為標簽使用,且并不意味著向其對象強加數字的或位置的要求。如本文所使用的,以單數敘述的以及用“一”開始的元素或步驟應該理解為不排除復數個所述元素或步驟,除非這樣的排除被明確聲明。此外,本發(fā)明對“一個實施例”的引用并不意圖解釋為排除還包含所敘述特征的額外實施例的存在。此外,除非明確地相反聲明,實施例“包含”、“包括”或“具有”具有特定屬性的元素或多個元素可以包括不具有該屬性的額外的此類元素。應該理解本文所述的配置和/或方法本質上是示例性的,并且這些具體的實施例或示例不應該視為限制的意義,因為大量的變化是可能的。本文所述的具體例程或方法可以表示一個或多個任意數量的處理策略。因此,所示出的各種行為可以以所示出的順序、以其他順序、并行地實施或者在一些情況下省略。同樣,上述過程的順序可以改變。本公開的主題包括本文所公開的各種過程、系統(tǒng)和配置、以及其他特征、功能、行為和/或屬性的所有新穎的和非顯而易見的組合和子組合,以及其任意的或所有的等同物。
權利要求
1.一種微處理器,包含: 一個或多個處理核心;以及 所述ー個或多個處理核心內的時鐘整形電路,其經配置以接收時鐘輸入信號,所述時鐘整形電路包括: 上升沿偏移邏輯,經配置以選擇性地延遲所述時鐘輸入信號的上升沿;以及 下降沿偏移邏輯,經配置以獨立于對所述上升沿的調整來選擇性地延遲所述時鐘輸入信號的下降沿,其中所述時鐘整形電路經配置以輸出相對于所述時鐘輸入信號選擇性地發(fā)生偏移的時鐘輸出信號,使得所述時鐘輸出信號的上升沿包括上升延遲量、所述時鐘輸出信號的下降沿包括下降延遲量、或者所述時鐘輸出信號的所述上升沿包括上升延遲量并且所述時鐘輸出信號的所述下降沿包括下降延遲量。
2.根據權利要求1所述的微處理器,其中所述時鐘輸入信號由所述時鐘整形電路發(fā)生偏移以匹配所述多個處理核心中的兩個或更多個之間的時鐘插入延遲。
3.根據權利要求1所述的時鐘整形電路,其中所述上升沿偏移邏輯經配置以動態(tài)地改變所述上升延遲量以及所述下降沿偏移邏輯經配置以動態(tài)地改變所述下降延遲量。
4.根據權利要求2所述的時鐘整形電路,其中所述上升延遲量根據多個緩沖器動態(tài)地改變以及所述下降延遲量根據多個緩沖器動態(tài)地改變。
5.根據權利要求1所述的時鐘整形電路,其中所述上升沿偏移邏輯包括(i)串聯(lián)耦合的多個緩沖器,其中所述多個緩 沖器中的第一緩沖器經配置以接收所述時鐘輸入信號;以及(ii)包含多個輸入線、輸出線和經配置以選擇所述多個輸入線之一來發(fā)送到所述輸出線的選擇線的第一多路復用器,其中所述多個緩沖器的每ー個的輸出均耦合到所述多個輸入線之一,并且所述選擇線經配置以接收時鐘延遲信號,所述時鐘延遲信號經配置以選擇傳遞到所述輸出線的所述上升延遲量,以及其中所述下降沿偏移邏輯包括(i)串聯(lián)耦合的多個緩沖器,其中所述多個緩沖器中的第一緩沖器經配置以接收所述時鐘輸入信號;以及(ii)包含多個輸入線、輸出線和經配置以選擇所述多個輸入線之一來發(fā)送到所述輸出線的選擇線的第二多路復用器,其中所述多個緩沖器的每ー個的輸出均耦合到所述多個輸入線之一,并且所述選擇線經配置以接收時鐘延遲信號,所述時鐘延遲信號經配置以選擇傳遞到所述輸出線的所述下降延遲量。
6.根據權利要求5所述的時鐘整形電路,其中所述第一多路復用器的所述多個輸入線之ー耦合到電源,并且當所述時鐘延遲信號指示不延遲所述時鐘輸出信號的所述上升沿時,所述選擇線經配置以選擇耦合到所述電源的所述輸入線;以及 其中所述第二多路復用器的所述多個輸入線之一耦合到地,并且當所述時鐘延遲信號指示不延遲所述時鐘輸出信號的所述下降沿時,所述選擇線經配置以選擇耦合到地的所述輸入線。
7.根據權利要求1所述的微處理器,其中所述時鐘整形電路是第一時鐘整形電路以及所述ー個或多個處理核心進ー步包含: 第二時鐘整形電路,與所述第一時鐘整形電路級聯(lián),其經配置以通過進ー步増加所述時鐘輸出信號的所述上升延遲量、進ー步増加所述時鐘輸出信號的所述下降延遲量、或者進ー步増加所述時鐘輸出信號的所述上升延遲量并且進一步增加所述時鐘輸出信號的所述下降延遲量,來使所述時鐘輸出信號相對于所述時鐘輸入信號選擇性地發(fā)生偏移。
8.根據權利要求7所述的微處理器,其中所述第二時鐘整形電路具有區(qū)別于所述第一時鐘整形電路的用于改變所述上升延遲量和所述下降延遲量的延遲步長。
9.一種用于動態(tài)地整形數字電路中的時鐘輸入信號的方法,包含: 在所述數字電路的操作期間,接收時鐘輸入信號; 在不停止所述數字電路的操作的情況下延遲所述時鐘輸入信號的上升沿和下降沿中的一個或對二者均加以延遲,其中獨立于對所述上升沿的調整而選擇性地延遲所述下降沿;以及 輸出相對于所述時鐘輸入信號發(fā)生偏移的時鐘輸出信號,使得所述時鐘輸出信號的上升沿包括上升延遲量、所述時鐘輸出信號的下降沿包括下降延遲量、或者所述上升沿包括上升延遲量并且所述下降沿包括下降延遲量。
10.根據權利要求9所述的方法,其中調整所述時鐘輸出信號的所述上升沿或所述時鐘輸出信號的所述下降沿中的一個或對二者均加以調整,以調整所述時鐘輸入信號的占空比。
11.根據權利要求9所述的方法,其中基于在所述時鐘輸入信號上升之前被鎖存并被保持直到所述時鐘輸入信號下降的時鐘延遲信號來實施延遲。
12.根據權利要求9所述的方法,進一步包含: 在操作狀態(tài)期間,將所述上升延遲量設置為大致是O并且將所述下降延遲量設置為大致是O。
13.一種經配置以接收時鐘輸入信號的時鐘整形電路,包含: 上升沿偏移邏輯,經配置 以選擇性地延遲所述時鐘輸入信號的上升沿;以及 下降沿偏移邏輯,經配置以獨立于對所述上升沿的調整來選擇性地延遲所述時鐘輸入信號的下降沿,其中所述時鐘整形電路經配置以輸出相對于所述時鐘輸入信號選擇性地發(fā)生偏移的時鐘輸出信號,使得所述時鐘輸出信號的上升沿包括上升延遲量、所述時鐘輸出信號的下降沿包括下降延遲量、或者所述時鐘輸出信號的所述上升沿包括上升延遲量并且所述時鐘輸出信號的所述下降沿包括下降延遲量。
14.根據權利要求13所述的時鐘整形電路,其中所述上升沿偏移邏輯經配置以動態(tài)地改變所述上升延遲量以及所述下降沿偏移邏輯經配置以動態(tài)地改變所述下降延遲量。
15.根據權利要求14所述的時鐘整形電路,其中所述上升延遲量根據多個緩沖器動態(tài)地改變以及所述下降延遲量根據多個緩沖器動態(tài)地改變。
16.根據權利要求13所述的時鐘整形電路,其中所述上升沿偏移邏輯包括(i)串聯(lián)耦合的多個緩沖器,其中所述多個緩沖器中的第一緩沖器經配置以接收所述時鐘輸入信號;以及(ii)包含多個輸入線、輸出線和經配置以選擇所述多個輸入線之一來發(fā)送到所述輸出線的選擇線的第一多路復用器,其中所述多個緩沖器的每一個的輸出均耦合到所述多個輸入線之一,并且所述選擇線經配置以接收時鐘延遲信號,所述時鐘延遲信號經配置以選擇傳遞到所述輸出線的所述上升延遲量,以及其中所述下降沿偏移邏輯包含(i)串聯(lián)耦合的多個緩沖器,其中所述多個緩沖器中的第一緩沖器經配置以接收所述時鐘輸入信號;以及(ii)包含多個輸入線、輸出線和經配置以選擇所述多個輸入線之一來發(fā)送到所述輸出線的選擇線的第二多路復用器,其中所述多個緩沖器的每一個的輸出均耦合到所述多個輸入線之一,并且所述選擇線經配置以接收時鐘延遲信號,所述時鐘延遲信號經配置以選擇傳遞到所述輸出線的所述下降延遲量。
17.根據權利要求16所述的時鐘整形電路,其中所述上升沿偏移邏輯進一步包括第一鎖存器,耦合到所述第一多路復用器的所述選擇線,所述第一鎖存器經配置以接收所述時鐘延遲信號、在所述時鐘輸入信號上升之前建立所述時鐘延遲信號以及保持所述時鐘延遲信號直到所述時鐘輸入信號下降,以及其中所述下降沿偏移邏輯進一步包括第二鎖存器,耦合到所述第二多路復用器的所述選擇線,所述第二鎖存器經配置以接收所述時鐘延遲信號、在所述時鐘輸入信號下降之前建立所述時鐘延遲信號以及保持所述時鐘延遲信號直到所述時鐘輸入上升。
18.根據權利要求17所述的時鐘整形電路,其中所述上升沿偏移邏輯進一步包含: 第一 AND門,耦合到所述第一鎖存器的輸入,其經配置以接收所述時鐘延遲信號和時鐘使能信號;以及 第三鎖存器,耦合到所述第一多路復用器的所述多個輸入線之一,其經配置以接收所述時鐘使能信號;以及 其中所述下降沿偏移邏輯進一步包含: 第二 AND門,耦合到所述第二鎖存器的輸入,其經配置以接收所述時鐘延遲信號和時鐘使能信號;以及 第四鎖存器,耦合到所述第二多路復用器的所述多個輸入線之一,其經配置以接收所述時鐘使能信號。
19.根據權利 要求16所述的時鐘整形電路,其中所述第一多路復用器的所述多個輸入線之一耦合到電源,并且當所述時鐘延遲信號指示不延遲所述時鐘輸出信號的所述上升沿時,所述選擇線經配置以選擇耦合到所述電源的所述輸入線;以及 其中所述第二多路復用器的所述多個輸入線之一耦合到地并且當所述時鐘延遲信號指示不延遲所述時鐘輸出信號的所述下降沿時,所述選擇線經配置以選擇耦合到地的所述輸入線。
20.根據權利要求16所述的時鐘整形電路,其中所述上升沿邏輯進一步包含: 第一通路門,耦合到所述第一多路復用器的所述輸出線,其經配置以接收改變所述第一通路門上的負載以選擇性地增加從所述第一多路復用器輸出的所述時鐘輸出信號的所述上升沿的所述上升延遲量的額外延遲信號;以及 第二通路門,耦合到所述第二多路復用器的所述輸出線,其經配置以接收改變所述第二通路門上的負載以選擇性地增加從所述第二多路復用器輸出的所述時鐘輸出信號的所述下降沿的所述下降延遲量的所述額外延遲信號。
全文摘要
在一個實施例中,微處理器包括一個或多個處理核心。至少一個處理核心包括經配置以接收時鐘輸入信號的時鐘整形電路。時鐘整形電路包括經配置以選擇性地延遲時鐘輸入信號上升沿的上升沿偏移邏輯和經配置以獨立于對上升沿的調整來選擇性地延遲時鐘輸入信號下降沿的下降沿偏移邏輯。
文檔編號G06F1/06GK103092255SQ20121043644
公開日2013年5月8日 申請日期2012年11月5日 優(yōu)先權日2011年11月3日
發(fā)明者C·K·李 申請人:輝達公司