亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

高分辨率相位檢測器的制造方法

文檔序號:7542850閱讀:184來源:國知局
高分辨率相位檢測器的制造方法
【專利摘要】提供了高分辨率相位檢測器。提供了用于時鐘相位檢測的方法和系統(tǒng)。生成第一時鐘信號的經(jīng)延遲版本的集合。第一時鐘的經(jīng)延遲版本的集合用來將第二時鐘信號采樣,在與第一時鐘信號相對應的域中產(chǎn)生采樣的序列。在采樣的序列內(nèi)定位至少一個邊沿指示。
【專利說明】高分辨率相位檢測器【技術領域】
[0001]本發(fā)明涉及電路,并且更具體地,涉及時鐘相位檢測。
【背景技術】
[0002]許多數(shù)字系統(tǒng)具有多個時鐘域。因此,當信號從一個時鐘域移動到另一個時鐘域時,其必須被同步以避免亞穩(wěn)定性和同步失敗。如果兩個時鐘具有固定的頻率,那么兩個時鐘之間的相位關系是周期性的,以兩個時鐘的拍頻。通過利用該周期性的相位關系,周期性的同步器能夠比不得不處置跨時鐘中的至少一個以可變頻率運行的時鐘域的同步器更簡單、具有更低時延和更低的故障概率。
[0003]當時鐘中的至少一個以可變頻率運行時,同步器的設計更復雜。典型地,使用異步的先入先出(FIFO)利用周期性的時鐘來同步時鐘域之間的信號傳遞。FIFO存儲器引發(fā)大量面積開銷。FIFO還添加延遲的若干循環(huán)作為格雷碼輸入,并且FIFO的輸出指針必須通過多個觸發(fā)器來同步以可靠地跨時鐘域傳送信號。
[0004]因此存在對于解決與現(xiàn)有技術相關聯(lián)的這些和/或其他問題的需求。

【發(fā)明內(nèi)容】

[0005]提供了用于時鐘相位檢測的方法和系統(tǒng)。生成第一時鐘信號的經(jīng)延遲版本的集合。第一時鐘的經(jīng)延遲版本的集合用來將第二時鐘信號采樣,在與第一時鐘信號相對應的域中產(chǎn)生第二時鐘采樣的序列。在第二時鐘采樣的序列內(nèi)定位至少一個邊沿指示。
【專利附圖】

【附圖說明】
[0006]圖1A示出根據(jù)一個實施例的、用于在時鐘信號采樣的序列內(nèi)定位邊沿指示的方法的流程圖。
[0007]圖1B示出根據(jù)一個實施例的、用于使用邊沿指示來檢測相位的方法的流程圖。
[0008]圖2A示出根據(jù)一個實施例的高分辨率相位檢測器。
[0009]圖2B示出根據(jù)一個實施例的、圖2A的時鐘延遲單元。
[0010]圖2C示出根據(jù)一個實施例的、圖2A的時鐘采樣單元。
[0011]圖2D示出根據(jù)一個實施例的、圖2A的邊沿檢測單元。
[0012]圖2E示出根據(jù)一個實施例的、圖2A的相位單元。
[0013]圖2F示出根據(jù)一個實施例的、圖2A的周期單元。
[0014]圖3A示出根據(jù)一個實施例的、兩個時鐘信號的波形。
[0015]圖3B示出根據(jù)一個實施例的、兩個時鐘信號的其他波形。
[0016]圖4示出根據(jù)一個實施例的、用于確定相位和周期的方法的流程圖。
[0017]圖5A示出根據(jù)一個 實施例的另一高分辨率相位檢測器。
[0018]圖5B示出根據(jù)一個實施例的、圖5A的開環(huán)時鐘延遲單元。
[0019]圖5C示出根據(jù)一個實施例的、圖5A的時鐘采樣單元。[0020]圖?示出根據(jù)一個實施例的、圖5A的周期計算單元。
[0021]圖5E示出根據(jù)一個實施例的、圖5A的相位單元。
[0022]圖5F示出根據(jù)一個實施例的、圖5A的周期單元。
[0023]圖5G示出根據(jù)一個實施例的、用于確定相位和周期的方法的另一流程圖。
[0024]圖6A示出其中可實現(xiàn)各先前實施例的各架構和/或功能性的示例性集成電路。
[0025]圖6B示出其中可實現(xiàn)各先前實施例的各架構和/或功能性的示例性系統(tǒng)。
【具體實施方式】
[0026]智能手機、平板電腦、膝上型電腦和其他移動設備中使用的處理器有時降低提供給一個或多個集成電路設備的供電電壓以降低功耗并延長電池再充電之間的時間。集成電路設備還可基于不同運行模式改變對設備內(nèi)的不同電路的電源電壓電平。隨著電源電壓電平的降低,取決于特定電源電壓電平的任何時鐘信號可以以較低頻率運行。當電源電壓電平增加時,時鐘信號的頻率也增加。因為時鐘頻率可根據(jù)電源電壓電平而變化,所以無法依靠依賴不同時鐘域之間的固定關系的常規(guī)同步技術用于在時鐘中的至少一個具有可變頻率的時鐘域之間傳送信號。
[0027]雖然時鐘頻率可響應于變化的電源電壓電平而變化,但是本文所描述的技術也可應用到時鐘頻率出于其他原因而變化的情況。例如,時鐘頻率可隨著溫度變化而變化或作為編程的結果而變化。
[0028]關于本描述,第一時鐘域是信號可從其中所采樣的任何類型的系統(tǒng)的時鐘域。例如,第一時鐘域可以是中央處理單元(CPU)、圖形處理單元(GPU)、存儲器控制器和/或具有時鐘域的任何其他系統(tǒng)的時鐘域。第一時鐘域可包括具有特定頻率或可以變化的頻率的第一時鐘信號。第二時鐘域可包括具有特定頻率或可以變化的頻率的第二時鐘信號。從第二域傳送到第一域的信號被同步到第一時鐘域。
[0029]低時延同步器可被設計為使用兩個時鐘域之間的相對相位,而不是使用使用異步的先入先出緩沖區(qū)(FIFO)在時鐘域之間傳遞信號的常規(guī)同步器。假定第一時鐘信號在接收時鐘域中并且第二時鐘信號在傳送時鐘域中,相對相位用來確定傳送時鐘域中的信號何時可在接收時鐘域中被采樣。本文所進一步描述的高分辨率相位檢測器可配置為當一個或兩個時鐘信號具有變化的頻率時跟蹤頻率瞬態(tài)并生成兩個時鐘域之間的相對相位和周期。高分辨率相位檢測器使用是本地或接收的時鐘(clkr)的第一時鐘信號并從傳送時鐘域(clkt)接受第二時鐘信號。高分辨率相位檢測器輸出將相位值(Phase)和周期值(Period)編碼的兩個信號。phase值表示在clkr單位區(qū)間(UI)從clkt上的最后的躍遷到clkr上的最后的躍遷的時間。period值表示在clkr UI在clkt上的最后兩次躍遷之間的時間。
[0030]圖1A示出根據(jù)一個實施例的、用于在時鐘信號采樣的序列內(nèi)定位邊沿指示的方法100的流程圖。在步驟105,生成第一時鐘信號的經(jīng)延遲版本的集合。第一時鐘信號的每個經(jīng)延遲版本是第一時鐘信號的不同相位。在步驟110,使用第一時鐘信號的經(jīng)延遲版本的集合將第二時鐘信號采樣以在第一時鐘域中產(chǎn)生采樣的序列。隨后,在步驟115,在采樣的序列內(nèi),至少一個邊沿指示被定位。邊沿指示是采樣的序列中的采樣的上升或下降的躍遷。至少一個邊沿指示可用來計算相位和周期值。
[0031]圖1B示出根據(jù)一個實施例的、用于使用邊沿指示檢測相位的方法130的流程圖。完成步驟105、110和115以提供至少一個邊沿指示。在步驟120,處理最新的邊沿指示以計算表示第二時鐘信號相對于第一時鐘信號的的相位的相位值。在步驟125,處理兩個最新的邊沿指示以計算表示第二時鐘信號和第一時鐘信號之間的相對周期的周期值。
[0032]圖2A示出根據(jù)一個實施例的高分辨率相位檢測器200。高分辨率相位檢測器200包括時鐘延遲單元210、時鐘采樣單元220、邊沿檢測單元230、相位單元240和周期單元250。高分辨率相位檢測器200接收第一時鐘信號Clk201以及第二時鐘信號Clk202,并生成兩個值,phase (相位)203和period (周期)204。phase203和period204值每個由多位信號編碼。phase203的值表不第二時鐘相對于第一時鐘的相位。period204的值表不第二時鐘和第一時鐘之間的相對周期。第一時鐘和第二時鐘中的至少一個可隨時間變化。高分辨率相位檢測器200被設計為隨著第一時鐘和/或第二時鐘的頻率變化連續(xù)地測量相位和周期。
[0033]圖2B示出根據(jù)一個實施例的、圖2A的時鐘延遲單元210。一系列N個延遲元件211產(chǎn)生N個均勻分布的不同時鐘相位、Clk201的經(jīng)延遲版本,具體為Clk_dO、Clk_dl、Clk_d2、Clk_d3、…Clk_dN。相位比較器215將延遲配置為延遲元件211按其延遲各自的輸入信號(Clk201和Clk201的經(jīng)延遲版本),以確保時鐘相位跨越Clk201的一個周期,即使得Clk201=Clk_d0與Clk_dN具有相同相位。因為相位比較器215控制由延遲元件211所引入的延遲,所以時鐘延遲單元210是閉環(huán)延遲電路??赏ㄟ^增加由時鐘延遲單元210所生成的Clk201的經(jīng)延遲版本的數(shù)目來增加高分辨率相位檢測器200的分辨率。
[0034]圖2C是根據(jù)一個實施例的、圖2A的時鐘采樣單元220。時鐘采樣單元220包括多個觸發(fā)器222和相對應的多個同步器224。時鐘采樣單元220接收由時鐘延遲單元210所生成的Clk201的經(jīng)延遲版本并在Clk201的域中產(chǎn)生第二時鐘信號Clk202的采樣的序列。Clk201的每個經(jīng)延遲版本,Clk_dO、Clk_dl、…Clk_dN用來將Clk202采樣,在觸發(fā)器222的輸出產(chǎn)生采樣的序列225。采樣225隨后被同步器224重新定時(以將采樣225與Clk201對齊)和同步(因為Cl`k202是異步信號),以產(chǎn)生Clk202的采樣的序列,Clk_sO、Clk_sl、Clk_s2、Clk_s3、…Clk_sN。同步器224典型地包括一個或多個觸發(fā)器、數(shù)量足夠多以達到低同步故障概率。例如,串行的4或5個觸發(fā)器使故障概率小于10_4°。
[0035]圖2D示出根據(jù)一個實施例的、圖2A的邊沿檢測單元230。邊沿檢測單元230包括AND (與)門231的陣列、邊沿標識單元232、和多個編碼器234。邊沿檢測單元230接收由時鐘采樣單元220所產(chǎn)生的采樣的序列Clk_sO、Clk_sl、…Clk_sN。采樣的序列Clk_s0、Clk_sl、…Clk_sN被輸入到AND門231的陣列以在采樣的序列內(nèi)定位邊沿指示,例如上升的躍遷。換句話說,AND門231的陣列檢測由第一時鐘信號Clk201所采樣的第二時鐘信號Clk202的上升沿。在一個實施例中,邊沿檢測單元230可配置為定位是下降的躍遷或下降和上升的躍遷二者的邊沿指示。
[0036]如果在Clk201的經(jīng)延遲版本elicit和Clldi之間出現(xiàn)Clk202的上升沿,那么躍遷信號233ti=Clk_si和~Clk_SH的一個或多個位為真,其中i范圍從O到 N。例如,對于i范圍從O到N=8,當在Clk_d3和Clk_d4之間出現(xiàn)Clk202的上升沿并且在Clk_d7和Clk_d8之間出現(xiàn)Clk202的下降沿時,Clk_Si信號是000011110并且躍遷信號233將值000010001編碼。如果位中的任何一個為真,那么躍遷信號233ti被輸入到邊沿標識單元232,邊沿標識單元232在躍遷信號233的序列中找到為真的第一位和為真的第二位(從tN開始)。為真的第一位和為真的第二位的獨熱(one-hot)編碼在依次被編碼器234編碼成m=log2 (N) -bit (位)的二進制信號 first235 和 second237 的信號 first_oh 和 second_oh上輸出。躍遷信號233和/或first_oh和second_oh信號可被視為邊沿指示。first235和seCond237值被編碼為信號并指示邊沿指示的定位,作為自tN的第一和第二躍遷分別出現(xiàn)的若干位位置。例如,當躍遷信號233將值000010001編碼時,first235和second237的值分別是000000001和000010000。信號分別將也由編碼器234所產(chǎn)生的值first_v236和second_v238編碼以指示是否找到第一和第二躍遷。
[0037]圖2E示出根據(jù)一個實施例的、圖2A的相位單元240。相位單元240從邊沿檢測單元230接收值first235和first_v236并生成相位203值。相位單元240包括相位寄存器244、增量器242和多路復用器246。如果檢測到躍遷,例如f irst_v236被確立(為真),那么first235等于相位值。first235是從Clk201的上升沿到Clk202的最新躍遷的測量(以時間為單位)。當first_v236被確立時,多路復用器246選擇first235值作為輸出一下一相位。當未檢測到躍遷時,例如first_v236未被確立,那么多路復用器246選擇incrementedphase (經(jīng)增量的相位)245作為下一相位。incremented phase245值由增量器242計算為相位203增量ONE。常量ONE表示Clk201的一個周期。
[0038]next_phase值輸入到輸出phase203信號的相位寄存器244??赊D譯下面的代碼(Verilog)以生成在相位單元240中示出的邏輯的至少一部分,具體來講,以將輸入(next_phase)提供給相位寄存器244:
[0039]assign next_phase=first_v?first:phase+'ONE;
[0040]圖2F示出根據(jù)一個實施例的、圖2A的周期單元250。周期單元250包括周期寄存器254、減法器252和兩個多路復用器256和258。周期單元250從邊沿檢測單元230接收 first235、first_v 236、second237 和 second_v238 并從相位單兀 240 接收 incrementedphase245并生成period204輸出信號。如果檢測到第二躍遷,例如second_v238被確立(為真),那么second235等于周期值。如果未檢測到躍遷,例如f irst_v236和second_v238均未被確立,那么next_period(和period204)不改變。否則,如果檢測到兩個躍遷,例如first_v236和second_v238均被確立,那么next_period通過從先前躍遷的相位second237減去first235來計算。如果僅檢測到一個躍遷,例如first_v236被確立,那么next_period通過從先前躍遷的相位incremented phase245減去f irst235來計算。換句話說,如果在Clk201的相同周期中檢測到第二躍遷,那么從最后躍遷的相位SeCond237中減去當前相位first235,否則,從最后躍遷的相位incremented phase245中減去當前相位first235。
[0041]當檢測到第二躍遷時,也檢測到第一躍遷。當SeCOnd_v238被確立時,多路復用器256選擇second237值作為減法器252的輸入。當未檢測到第二躍遷時,多路復用器256選擇incremented phase245作為減法器252的輸入。減法器從輸入減去first235值以生成輸出。當檢測到第一躍遷時,多路復用器258選擇減法器252的輸出作為下一周期。否則,多路復用器258選擇周期寄存器254的輸出作為下一周期并且periOd204值不改變。
[0042]可轉譯下面的Verilog以生成周期單元250中示出的邏輯的至少一部分,具體來講以將輸入(next_period)提供給周期寄存器254:
[0043]assign next—period=first_v?
[0044](second—v?second:(phase+'ONE))-first): period;[0045]next_period值被輸入到輸出period204信號的周期寄存器254。
[0046]在一個實施例中,當Clk201是IGHz并且延遲元件211可被跨工藝電壓溫度變化修整到62.5ns時,N=16并且m=4,并且常量ONE是010000。當N的值是2的冪時由邊沿檢測單元230所實施的計算被簡化。phase203和period204用二進制點右邊的m個位以固定點表示法(fixed-point notation)來表示。相位寄存器244和周期寄存器254需要包括足夠的位以將Clk202的最大可能周期編碼。例如,如果最慢可能Clk202具有比Clk201的周期長5倍的周期,那么要求二進制點左邊的三個位。
[0047]由于重新定時和同步所要求的延遲,phase203和period204的值反映已過去固定數(shù)目的Clk202循環(huán)的Clk201的相位和周期。例如當同步器224具有四個循環(huán)的延遲并且由觸發(fā)器222引入一個循環(huán)的重新定時延遲時,phase203和period204值表示已過去五個Clk201循環(huán)的Clk202的狀態(tài)。使用period204 (以及period204可能的衍生物)預測在Clk201的下一循環(huán)的、Clk202的相位的快速同步器設計一向前預測Clk201的六個循環(huán)。
[0048]圖3A示出根據(jù)一個實施例的、兩個時鐘信號Clk201和Clk202的波形。第二時鐘Clk202的頻率比第一時鐘Clk201的頻率快。信號從與Clk202相對應的第二時鐘域傳送到與Clk201相對應的第一時鐘域。如所示,Clk202的周期302比Clk201的周期301短。因此,應通過邊沿檢測單元230在每個時鐘周期301內(nèi)檢測用于Clk202的至少一個邊沿指示。如所示,Clk202的兩個邊沿出現(xiàn)在周期301內(nèi)。在時鐘201的最新的邊沿305,與周期301內(nèi)的第一邊沿指示相對應的first235值通過邊沿檢測單元230來計算。在時鐘201的最新的邊沿305,與周期301內(nèi)的第二邊沿指示相對應的SeCond237值也通過邊沿檢測單元230來計算。
[0049]在一個實施例中,邊沿檢測單元230配置為計算與第三邊沿指示相對應的第三值。第三值可用來計算當Clk201和Clk202中的至少一個正在平滑改變時相對周期的斜率。斜率可由同步單元用來預測未來相位和未來周期的更精確的值。提前一個或多個時鐘預測phase203和period204的值是有用的,因為由于高頻相位檢測器200的時延,當前phase203和period204對于過去的Clk201的若干時鐘循環(huán)是有效的。
[0050]圖3B示出根據(jù)一個實施例的、兩個時鐘信號Clk201和Clk202的波形的另一示例。傳送時鐘Clk202的頻率比接收時鐘Clk201的頻率慢。如所示,Clk202的周期312比Clk201的周期311長。因此,在Clk201的一些周期期間,邊沿檢測單元230可能檢測不到用于Clk202的邊沿指示。
[0051]在最舊的邊沿323,與在周期312的開始的第一邊沿指示相對應的first310值由邊沿檢測單元230來定位并且f irst235-B值由邊沿檢測單元230來計算。在該示例中假定first235-B值等于延遲211的7個單位。因此,下一相位由相位單元240設定為7并且下一周期被計算為與N=16加和的phase203和first310之間的差。phase203和period204在時鐘邊沿324更新。在下一邊沿324,沒有邊沿指示由邊沿檢測單元230來定位,并且下一相位由相位單元240更新為增加了 N=16的phase203,使得phase203更新到7+16=23。period204 未改變。
[0052]在最新的邊沿325,與在周期312的結束的另一第一邊沿指示相對應的first235-A值由邊沿檢測單元230來定位并且first235_A由邊沿檢測單元230來計算。在該示例中假定該附加的first235-A值等于延遲211的6個單位。因此,下一相位由相位單元240設定為6并且下一周期被計算為與N=16加和的phase203與first235_A之間的差,即 23+16-6=33。phase203 和 period204 在時鐘邊沿 325 更新。
[0053]圖4示出根據(jù)一個實施例的、用于確定phase203和period204的方法400的流程圖。在步驟405,Clk201的經(jīng)延遲版本的集合由時鐘延遲單元210來生成。在步驟410,由時鐘采樣單元220使用Clk201的經(jīng)延遲版本的集合來將Clk202采樣,以在Clk201的域中產(chǎn)生采樣的序列225。隨后,在步驟415,邊沿檢測單元230定位采樣的序列225內(nèi)的任何邊沿,例如上升、下降、或上升和下降。
[0054]在步驟420,相位單元240確定邊沿檢測單元230是否檢測到第一邊沿指示,并且如果否,那么在步驟425phase203更新到增加了 Clk201的一個周期的phase203,例如phase+ONE。當邊沿檢測單元230未檢測到第一邊沿指示時,period204不改變。否則,當檢測到第一邊沿指示時,在步驟430,相位單元240將phase203設定為等于由邊沿檢測單元230生成的first235信號。在步驟435,周期單元250確定邊沿檢測單元230是否檢測到第二邊沿指示,并且如果是,那么在步驟440周期單元250將period204設定為等于second237信號。否則,在步驟445,周期單元250將period204更新到phase203與Clk201的一個周期的和與first235信號之間的差。
[0055]圖5A示出根據(jù)一個實施例的高分辨率相位檢測器500。高分辨率相位檢測器500包括開環(huán)時鐘延遲單元510、時鐘采樣單元220、時鐘采樣單元520、邊沿檢測單元230、周期計算單元530、相位單元540以及周期單元550。高分辨率相位檢測器500接收第一時鐘Clk201以及第二時鐘Clk202,并生成兩個值phase503和period504。
[0056]圖5B不出根據(jù)一個實施例的、圖5A的開環(huán)時鐘延遲單兀510。與聞分辨率相位檢測器200相比,開環(huán)時鐘延遲單元510在高分辨率相位檢測器500中替換了時鐘延遲單元210。一系列的N個延遲元`件511產(chǎn)生N個時鐘相位,例如Clk202的經(jīng)延遲版本,具體為Clk_dO、Clk_dl、Clk_d2、Clk_d3、…Clk_dN。不同于時鐘延遲單元210,N個時鐘相位不必均勻分布,因為開環(huán)時鐘延遲單元510不包括相位比較器215來控制延遲元件511中的每一個將Clk202延遲的量以生成Clk202的經(jīng)延遲版本。延遲元件511的數(shù)目應足夠高,使得Clk202的至少一個周期被采樣。
[0057]圖5C示出根據(jù)一個實施例的、圖5A的時鐘采樣單元520。時鐘采樣單元520包括多個觸發(fā)器522。時鐘采樣單元520接收由時鐘延遲單元210生成的Clk201的經(jīng)延遲版本并產(chǎn)生第一時鐘信號Clk201的采樣的序列。實施將第一時鐘信號采樣來計算以由一個延遲元件511所引入的延遲為單位的Clk201的周期。每個時鐘相位Clk_d0、Clk_dl、…Clk_dN用來將Clk201采樣,在觸發(fā)器522的輸出產(chǎn)生第一時鐘采樣的序列,例如Clk_pl、Clk_p2、Clk_p3、…Clk_pN。
[0058]圖示出根據(jù)一個實施例的、圖5A的周期計算單元530。周期計算單元530包括AND門531的陣列、邊沿標識單元532以及編碼器534。周期計算單元530接收由時鐘采樣單元520所產(chǎn)生的第一時鐘采樣Clk_pl、Clk_p2、…Clk_pN的序列。第一時鐘采樣Clk_p1、Clk_p2、…Clk_pN的序列被輸入到AND門531的陣列,以定位第一時鐘采樣的序列內(nèi)的上升的躍遷,例如邊沿。換句話說,AND門531檢測由第一時鐘信號201的經(jīng)延遲版本所采樣的第一時鐘信號201的上升沿。AND門531生成可用來計算Clk201的周期的躍遷信號533。接收Clk_pl和Clk_p2中的至少一個的AND門531可被邊沿標識單元532忽略以確保不將亞穩(wěn)定的信號采樣。在一個實施例中,周期計算單元530可配置為定位下降的躍遷或下降和上升的躍遷二者。
[0059]如果Clk201的上升沿出現(xiàn)在Clk201的經(jīng)延遲版本CIIcIh和Clldi之間,那么躍遷信號SSSti=Cll^pi和~CII^Ph的一個或多個位為真,其中i范圍從O到N。躍遷信號533\被輸入到在躍遷信號533的序列中找到第一個I (其中I是為真的位)的邊沿標識單元532。在其處檢測到第一邊沿的位置的二進制編碼是rperiod535—以一個延遲511的延遲為單位的Clk301的周期。
[0060]圖5E示出根據(jù)一個實施例的、圖5A的相位單元540。相位單元540包括相位寄存器544、加法器542、多路復用器546以及相位除法器548。相位單元540從邊沿檢測單元230接收first235和first_v236并從周期計算單兀530接收rperiod535并生成phase503輸出信號。在相位單元540中使用值rperiod535代替相位單元240中的常量ONE。并且,由相位單元540所產(chǎn)生的相位的值除以rperiod535用于由快速周期性同步器使用。
[0061]first235是從Clk201的上升沿到Clk202的最新躍遷的測量(以時間為單位)。如果檢測到躍遷,例如first_v236被確立,那么first235給定相位值。當first_v236被確立時,多路復用器546選擇first235值作為輸出,即下一相位。當未檢測到躍遷時,例如first_v236未被確立,多路復用器546選擇incremented phase (經(jīng)增量的相位)545作為下一相位。incremented phase545值由加法器542計算為增加了 rperiod535的預除法器相位。
[0062]next_phase值被輸入到輸出預除法器相位信號的相位寄存器544。可轉譯下面的Verilog以生成相位單元540中示出的邏輯的至少一部分,具體來講以將輸入(next_phase)提供給相位寄存器544:
[0063]assign next_phase=first_v?first:`[0064]predivider_phase+rperiod;
[0065]相位寄存器544的輸出,例如預除法器相位,在相位除法器548內(nèi)除以rperiod535以產(chǎn)生phase503值。
[0066]圖5F示出根據(jù)一個實施例的、圖5A的周期單元550。周期單元550包括周期寄存器554、減法器557、兩個多路復用器556、多路復用器558以及除法器552。周期單元550從邊沿檢測單兀 230 接收 first235、first_v236、second237 以及 second_v238,從周期計算單兀530接收rperiod535,以及從相位單兀540接收incremented phase545并生成period504輸出信號。
[0067]如果沒有躍遷被檢測到,例如first_v236和second_v238 二者均未被確立,那么next_period (和period504)不改變。否則,如果檢測到兩個躍遷,例如first_v236和second_v 二者均被確立,那么通過從先前躍遷的相位second237減去first235來計算next_period。如果僅檢測到一個躍遷,例如first_v236被確立,那么通過從先前躍遷的相位即incremented phase545減去first235來計算next_period。換句話說,從最后躍遷的相位一如果在Clk201的相同周期中檢測到第二躍遷那么從SeCond237、否則從incremented phase545中減去當前相位first235。用于除法器548和552的位的數(shù)目通過rperiod535中的位的數(shù)目來確定,例如如果N=16則4位。注意,N可以是任何整數(shù)值。
[0068]當檢測到第二躍遷時,也檢測到第一躍遷。當SeCOnd_v238被確立時,多路復用器556選擇second237值作為到減法器557的輸入。當未檢測到第二躍遷時,多路復用器556選擇incremented phase245作為到減法器557的輸入。減法器從輸入減去first235值以生成輸出。當檢測到第一躍遷時,多路復用器558選擇減法器252的輸出作為下一周期。否貝丨J,多路復用器558選擇周期寄存器554的輸出作為下一周期并且period504值不改變。
[0069]可轉譯下面的Verilog以生成周期單元550中所示出的邏輯的至少一部分,具體來講以將輸入(next_peri0d)提供給周期寄存器554:
[0070]assign next_period=first_v?
[0071](second_v?second:(phase+rperiod))-first): period;
[0072]next_period值被輸入到周期寄存器544。周期寄存器544的輸出,例如預除法器周期,在周期除法器552內(nèi)除以rperiod535以產(chǎn)生period504值。
[0073]圖5G示出根據(jù)一個實施例的、用于使用開環(huán)高分辨率相位檢測器500確定phase503和period504的方法560的另一流程圖。在步驟565,Clk201的經(jīng)延遲版本的集合由開環(huán)時鐘延遲單元510來生成。在步驟570,由時鐘采樣單元220使用Clk201的經(jīng)延遲版本的集合來將Clk202采樣,以在Clk201的域中產(chǎn)生采樣的序列225。隨后,在步驟575,邊沿檢測單元230定位采樣的序列225內(nèi)的任何邊沿,例如上升、下降、或上升和下降。
[0074]在步驟572,由時鐘采樣單元520使用Clk201的經(jīng)延遲版本的集合將Clk201采樣,以在Clk201的域中產(chǎn)生第一時鐘采樣的序列525。隨后在步驟574,周期計算單元530定位第一時鐘采樣的序列525內(nèi)的邊沿,例如上升、下降、或上升和下降,并確定rperiod535,例如Clk201的周期。步驟572和574中的一個或多個可以與步驟570和575中的一個或多個并行地實施。
[0075]在步驟580,相位單元540確定邊沿檢測單元230是否檢測到第一邊沿指示,并且如果否,那么在步驟585,phase503更新到phase503增加Clk201的一個周期的和除以Clk201的一個周期,例如(phase+rperiod) /rperiod。當邊沿檢測單元230未檢測到第一邊沿指示時,period504不改變。否則,當檢測到第一邊沿指示時,在步驟590,相位單元540將phase503設定為等于由邊沿檢測單元230生成的first235信號除以rperiod535。在步驟595,周期單元550確定邊沿檢測單元230是否檢測到第二邊沿指示,并且如果是,那么在步驟598,周期單元550將period504設定為等于second237信號除以rperiod535。否則,在步驟598,周期單元550將period504更新到phase503和Clk201的一個周期的和與first235信號之間的差除以Clk201的一個周期(即rperiod535)。
[0076]圖6A示出其中可實現(xiàn)各先前實施例的各架構和/或功能性的示例性集成電路設備650。集成電路設備650包括邏輯單元655、同步器660以及邏輯單元665。邏輯單元655接收時鐘202并生成與時鐘202同步的輸出。輸出由同步器660所接收并使用由高分辨率相位檢測器200或500所計算的phase203和period204值從時鐘202的時鐘域被傳送到時鐘201的時鐘域。同步到時鐘201的時鐘域的經(jīng)傳送的輸出由邏輯單元665所接收。
[0077]圖6B示出其中可實現(xiàn)各先前實施例的各架構和/或功能性的示例性系統(tǒng)600。如所示,提供了系統(tǒng)600,其包括至少一個連接到通信總線602的中央處理器601??墒褂萌魏魏线m的協(xié)議來實現(xiàn)通信總線602,所述協(xié)議諸如PCI (外圍部件互連)、PC1-ExpreSS、AGP (加速圖形端口)、超傳輸、或任何其他總線或點對點通信協(xié)議。系統(tǒng)600還包括主存儲器604??刂七壿?軟件)和數(shù)據(jù)存儲在可采取隨機存取存儲器(RAM)形式的主存儲器604中。[0078]系統(tǒng)600還包括輸入設備612、圖形處理器606、以及顯示器608,即常規(guī)CRT (陰極射線管)、IXD (液晶顯示器)、LED (發(fā)光二極管)、等離子顯示器等等??蓮妮斎朐O備612例如鍵盤、鼠標、觸摸板、擴音器等等來接收用戶輸入。在一個實施例中,圖形處理器606可包括多個著色器模塊、光柵模塊等。前述模塊中的每一個實際上可位于單個半導體平臺以形成圖形處理單元(GPU)。
[0079]在本描述中,單個半導體平臺可以指唯一單一的基于半導體的集成電路或芯片。應注意的是,術語單個半導體平臺還可以指具有增加的連接性的多芯片模塊,其仿真片上操作并在利用常規(guī)中央處理單元(CPU)和總線實現(xiàn)方案上做出大量改進。當然,各模塊也可根據(jù)用戶意愿分開安置或以半導體平臺的各種組合來安置。圖6B中所示出的集成電路中的一個或多個可包括高分辨率相位檢測器200和/或500用于在不同時鐘域之間傳送信號。
[0080]系統(tǒng)600還可包括二級存儲610。二級存儲610包括例如硬盤驅(qū)動器和/或表示軟盤驅(qū)動器、磁帶驅(qū)動器、壓縮光盤驅(qū)動器、數(shù)字通用光盤(DVD)驅(qū)動器、記錄設備、通用串行總線(USB)閃存的可移動存儲驅(qū)動器。可移動存儲驅(qū)動器以公知的方式從可移動存儲單元讀或?qū)懙娇梢苿哟鎯卧?br> [0081]計算機程序或計算機控制邏輯算法可存儲在主存儲器604和/或二級存儲610中。這種計算機程序當被執(zhí)行時使能系統(tǒng)600實施各種功能。存儲器604、存儲610和/或任何其他存儲是計算機可讀介質(zhì)的可能的示例。
[0082]在一個實施例中,可在以下內(nèi)容的上下文中實現(xiàn)各種先前圖示的架構和/或功能性:中央處理器601、圖形處理器606、具有中央處理器601和圖形處理器606 二者的至少一部分能力的集成電路(未示出)、芯片集(即被設計為用于實施相關功能等的單元來工作和銷售的集成電路組)和/或就此而言的任何其他集成電路。
[0083]并且,可在以下內(nèi)容的上下文中實現(xiàn)各種先前圖示的架構和/或功能性:通用計算機系統(tǒng)、電路板系統(tǒng)、專用于娛樂目的的游戲控制臺系統(tǒng)、專用系統(tǒng)和/或任何其他期望的系統(tǒng)。例如,系統(tǒng)600可采取臺式計算機、膝上型計算機、服務器、工作站、游戲控制臺、嵌入式系統(tǒng)和/或任何其他類型的邏輯的形式。并且,系統(tǒng)600可采取各種其他設備的形式,包括但不限于個人數(shù)字助理(PDA )設備、移動電話設備、電視等。
[0084]進一步地,雖然未示出,但系統(tǒng)600可耦連到網(wǎng)絡(例如電信網(wǎng)絡、局域網(wǎng)(LAN)、無線網(wǎng)絡、諸如互聯(lián)網(wǎng)的廣域網(wǎng)(WAN)、對等網(wǎng)絡、電纜網(wǎng)絡等等)用于通信目的。
[0085]雖然上文已描述各種實施例,但應理解的是,僅通過示例而非限制的方式對其加以呈現(xiàn)。因此,優(yōu)選實施例的寬度和范圍不應被任何上文所描述的示例性實施例所限制,而僅應根據(jù)下面的權利要求及其等同物來加以限定。
【權利要求】
1.一種方法,包括: 生成第一時鐘信號的經(jīng)延遲版本的集合; 使用所述第一時鐘信號的經(jīng)延遲版本的集合將第二時鐘信號采樣,以在與所述第一時鐘信號相對應的域中產(chǎn)生第二時鐘采樣的序列;以及 在所述第二時鐘采樣的序列內(nèi)定位至少一個邊沿指示。
2.根據(jù)權利要求1所述的方法,其中所述第一時鐘信號的經(jīng)延遲版本的集合使用開路延遲環(huán)路來生成。
3.根據(jù)權利要求2所述的方法,進一步包括: 使用所述第一時鐘信號的經(jīng)延遲版本的集合將所述第一時鐘信號采樣,以在所述與所述第一時鐘信號相對應的域中產(chǎn)生第一時鐘采樣的序列;以及 在所述第一時鐘采樣的序列內(nèi)定位第一邊沿指示。
4.根據(jù)權利要求3所述的方法,進一步包括基于所述第一時鐘采樣的序列內(nèi)的所述第一邊沿指示計算所述第一時鐘信號的周期。
5.根據(jù)權利要求1所述的方法,進一步包括處理所述至少一個邊沿指示以計算表示所述第二時鐘信號相對于所述第一時鐘信號的相位的相位值。
6.根據(jù)權利要求5所述的方法,其中所述至少一個邊沿指示包括是最新的邊沿的第一邊沿,并且所述至少一個邊沿指示的所述處理包括將下一相位值設定到所述第一邊沿的定位。
7.根據(jù)權利要求5所述的方法,進一步包括: 生成所述第一時鐘信號的經(jīng)延遲版本的第二集合; 使用所述第一時鐘信號的經(jīng)延遲版本的第二集合將所述第二時鐘信號采樣,以在所述與所述第一時鐘信號相對應的域中產(chǎn)生第二時鐘采樣的第二序列;以及 將下一相位值計算為所述相位值加上第二集合中的所述第一時鐘信號的數(shù)個經(jīng)延遲版本。
8.根據(jù)權利要求1所述的方法,進一步包括處理所述至少一個邊沿指示以計算表示所述第二時鐘信號和所述第一時鐘信號之間的相對周期的周期值。
9.根據(jù)權利要求8所述的方法,其中所述至少一個邊沿指示包括第一邊沿和第二邊沿,其中所述第一邊沿比所述第二邊沿更新,并且所述至少一個邊沿指示以計算所述周期值的所述處理包括將下一周期值設定為所述第二邊沿的定位。
10.根據(jù)權利要求8所述的方法,其中所述至少一個邊沿指示包括僅第一邊沿,并且進一步包括: 處理所述至少一個邊沿指示以計算表示所述第二時鐘信號相對于所述第一時鐘信號的相位的相位值;以及 將下一周期值計算為所述相位值加上所述集合中的所述第一時鐘信號的數(shù)個經(jīng)延遲版本與所述第一邊沿的定位之間的差。
11.根據(jù)權利要求1所述的方法,其中所述第一時鐘信號的經(jīng)延遲版本的集合使用閉合延遲環(huán)路來生成。
12.根據(jù)權利要求1所述的方法,進一步包括處理第一邊沿指示和第二邊沿指示以計算表示所述第二時鐘信號和所述第一時鐘信號之間的相對周期的周期值。
13.根據(jù)權利要求1所述的方法,其中所述第一時鐘信號的頻率隨時間變化。
14.根據(jù)權利要求1所述的方法,其中所述第一時鐘信號的所述頻率響應于供電電壓的變化而變化。
15.根據(jù)權利要求1所述的方法,其中所述第二時鐘信號的頻率隨時間變化。
16.—種集成電路,包括: 第一電路,其運行在與第一時鐘信號相對應的第一時鐘域中; 第二電路,其運行在與第二時鐘信號相對應的第二時鐘域中; 相位檢測器,其配置為: 生成所述第一時鐘信號的經(jīng)延遲版本的集合; 使用所述第一時鐘信號的經(jīng)延遲版本的集合將所述第二時鐘信號采樣,以在與所述第一時鐘信號相對應的域中產(chǎn)生第二時鐘米樣的序列;以及在所述第二時鐘采樣的序列內(nèi)定位至少一個邊沿指示。
17.根據(jù)權利要求16所述的集成電路,其中所述相位檢測器包括配置為生成所述第一時鐘信號的經(jīng)延遲版本的集合的開路延遲環(huán)路。
18.根據(jù)權利要求16所述的集成電路,其中所述相位檢測器進一步配置為進一步處理所述至少一個邊沿指示以計算表示所述第二時鐘信號相對于所述第一時鐘信號的相位的相位值。
19.根據(jù)權利要求16所述的集成電路,其中所述相位檢測器進一步配置為處理所述至少一個邊沿指示以計算表示所述第二時鐘信號和所述第一時鐘信號之間的相對周期的周期值。
20.根據(jù)權利要求16所述的集成電路,其中所述相位檢測器包括配置為生成所述第一時鐘信號的經(jīng)延遲版本的集合的 閉合延遲環(huán)路。
【文檔編號】H03L7/085GK103812474SQ201310556324
【公開日】2014年5月21日 申請日期:2013年11月11日 優(yōu)先權日:2012年11月13日
【發(fā)明者】威廉·J·達利, 斯蒂芬·G·特爾 申請人:輝達公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1