專利名稱:雙沿m/n計數器的制作方法
背景技術:
發明領域本發明涉及數字電路和系統,尤其涉及計數器。
雖然參考特定應用的說明性的實施例在此描述了本發明,然而可以理解本發明并不局限于此。具有本領域的普通技能并使用這里提供的示教的人可以認知其范圍內的其它修改、應用和實施例以及本發明有重要用途的其它領域。
相關技術描述計數器被用于各種數字電路中以跟蹤事件。另外,計數器被用于合成時鐘信號和其它波形。通常,使用計數器從第一(較高)時鐘頻率合成第二(較低)時鐘頻率。一般而言,使用簡單的M/N D型計數器,其中M和N是整數,D是占空比,M是合成時鐘信號的期望頻率,N是信號源或參考時鐘的頻率。
該計數器一般是對來自第一時鐘頻率的脈沖進行計數并且周期性地輸出第二時鐘頻率下的脈沖的前沿計數器。也就是說,M/N計數器在計數了參考時鐘的N個前沿之后輸出M個脈沖。
當第一時鐘頻率是第二時鐘頻率的整數倍時,這是相對簡單的。然而,當第一時鐘不是第二時鐘的整數倍時,時鐘合成的任務變得稍微復雜。例如,根據常規的方法,如果參考時鐘是5兆赫茲(MHz)的時鐘,并且有必要合成1.5MHz的時鐘,則被設計為M=3、N=10的M/N計數器有效地用3/10乘以該參考時鐘,即對于參考時鐘的每十個時鐘脈沖輸出三個時鐘脈沖。傳統上,計數器的分辨率是一整個時鐘周期。說明中的該200納秒(ns)的誤差,即5MHz參考時鐘的一個時鐘周期,即為本領域技術人員所認為的抖動。因為常規的M/ND計數器從計數器序列中的相同點,即翻轉點,產生輸出時鐘邊沿,所以用常規M/ND合成的時鐘信號遭受過度的時鐘抖動。結果,由于理想輸出時鐘邊沿總是存在于計數器周期的最近一次時鐘邊沿和翻轉時鐘邊沿之間的某處,因此輸出時鐘抖動會在零到輸出參考時鐘的周期之間變化。
不幸的是,這種抖動對于某些高精確度的應用是不可接受的。一種這樣的應用是通用串行總線(USB)應用。在該系統中,由于抖動干涉了時鐘恢復操作,因此它是不可接受的。另一種說明性的系統是模擬到數字轉換的應用。對于這些及其它應用,M/ND計數器以高頻工作是非常重要的。然而,如本領域眾所周知的,M/ND計數器的輸入時鐘頻率與輸出時鐘中的抖動數直接關聯。
因此,本領域中需要一種帶有改進的抖動性能的改進了的M/N計數器。
發明摘要本發明的計數器針對本領域中的這種需求。在說明性的實施例中,發明的計數器包括第一計數級;連接到所述第一計數級的先行電路輸入;以及用于在所述第一計數級的輸出和所述先行電路的輸出之間選擇所述計數器的輸出的選擇電路。
在特定實施例中,第一計數級用于接收頻率為每秒X個周期的第一時鐘信號并且輸出頻率為每秒((M/N)*X)個周期的第二時鐘信號。第一計數級包括帶有其位置處的瞬時計數超出值(N-M)的翻轉點的累加器。
先行電路為當前時鐘周期預測前面一個時鐘周期的翻轉點。在特定的說明性實施例中,先行電路是用來確定第二時鐘信號的前沿或后沿中哪個更接近于該翻轉點并且輸出關于其指示的第二計數級。
可取的是,第一計數級是第一M/N計數器。在優選的實施例中,第二計數級是預先加載了值M的第二M/N計數器。在說明性的實施方式中,第二M/N計數器包括第一和第二加法器、多路復用器和累加器。第一加法器用來把預加載的值M與累加器的瞬時輸出相加,第二加法器用來把預加載的值-(N-M)與累加器的瞬時輸出相加。第一和第二加法器的輸出提供多路復用器的第一和第二輸入。預加載的值M提供多路復用器的第三輸入。第二加法器的輸出的最高有效位提供多路復用器的控制輸入。多路復用器的輸出是累加器的輸入而累加器的輸出被提供給比較器。最后,比較器輸出指示累加器的輸出是否處在M/2和M之間的信號。
用于抵抗第一和第二級的尖峰脈沖的電路和用于為常規時鐘合成器提供向后兼容的裝置一起被揭示。
附圖的簡要描述
圖1是本發明的雙沿M/N計數器的說明性實施例的框圖。
圖2是對于5MHz·1.5MHz的實例說明本發明的雙沿M/N計數器的工作的時序圖。
圖3是說明傳統M/N計數器和本發明的雙沿M/N計數器間的性能比較的時序圖。
發明的描述現在將參考附圖描述說明性的實施例和示例性的應用以揭示本發明的有利的原理。
圖1是本發明的雙沿M/N計數器的說明性實現的框圖。發明的計數器10包括第一計數級12、第二計數級14和抑制尖峰電路16。第一計數級12從第一移位寄存器15接收產生期望的合成時鐘頻率所需的第一計數(M)并且從第二移位寄存器17接收與信源即參考時鐘N和期望時鐘頻率M之差的負數相等的值(-(N-M))。(輸入M和(-(N-M))可以用本領域的普通技術人員所能理解的其它方法被硬編碼或被提供。)第一和第二移位寄存器15和17的輸入分別由接口13提供。
第一計數級12基本上是按照常規原理實現的M/N計數器。第一計數級12包括第一加法器18、第二加法器19、多路復用器20、D-Q觸發器22和比較器24。第一和第二加法器18和19分別接收來自第一和第二移位寄存器15和17的第一輸入。第二輸入由觸發器22提供給第一和第二加法器18和19。第一和第二加法器18和19的輸出分別提供多路復用器20的第一和第二輸入。另外,第二加法器19的輸出的最高有效位(MSB)提供多路復用器20的控制輸入。如下所詳細討論的,當MSB變高時,它通知多路復用器20選擇第二加法器19的輸出而非第一加法器18的輸出。
多路復用器20的輸出被連接到觸發器22的D輸入端。如上所述,觸發器22的輸出端被反饋到第一和第二加法器18和19,并且到比較器電路24。比較器電路24把觸發器22的輸出和已存儲的占空比閾值D相比較并且響應它而輸出指示正沿脈沖的檢測的信號。也就是說,比較器24在觸發器22的輸出低于占空比D時輸出正沿脈沖。當觸發器22的值大于或等于D時,輸出轉變為低電平狀態。值得注意的是,為了產生另一個正沿,輸出必須變回到低電平。
第二計數級14大致與第一計數級一致,除了以下兩點1)第二計數級14中的多路復用器30用于在三個輸入端而非兩個輸入端之間作出選擇,以及2)第二計數級14的比較器34核對以確定第二觸發器32的輸出是否大于M/2并小于M。第二計數級14分別包括第三和第四加法器26和28;多路復用器30;第二觸發器32;以及比較器34。第三和第四加法器26和28分別從第一和第二移位寄存器15和17接收輸入。第二和第三加法器的第二輸入都由第二觸發器32的輸出提供。按照第一計數級12中的加法器,第四和第三加法器28和26的輸出分別提供多路復用器30的第一和第二輸入。
多路復用器30的第三輸入由第一移位寄存器15的輸出提供。這使多路復用器30預加載了合成時鐘信號的期望計數(M)。注意到復位信號被施加于第一計數級12的第一觸發器22和第二計數級14的多路復用器30。該復位信號引起多路復用器30選擇到那里的第三輸入(即,第一移位寄存器15的輸出)。因此,在第二計數級14中,多路復用器30比第一計數級20中的多路復用器20早一個時鐘周期看到值M。
由于兩個計數級12和14的輸入和設計不相同,本領域的技術人員可以理解,多路復用器30的預加載允許第二計數級14起到先行計數器的作用。第二計數級14復位到M并且確定在一個周期前作出翻轉。
多路復用器30的輸出被施加于第二觸發器32。本領域的技術人員可以理解,實際中第一和第二觸發器22和32是比特帶寬由N的量化值確定的成排的觸發器(或一位移位寄存器)。第二觸發器32的輸出通過第二比較器電路34與兩個閾值相比較。第一閾值是計數M/2,第二閾值是計數M。如果第二觸發器32的輸出大于M/2并小于M,則第二比較器34輸出通知檢測到負沿的一個脈沖。如下詳細所述,比較器34指示合成脈沖的負沿是否比前沿更接近于翻轉點。翻轉點是計數器終止前一次計數而開始新的計數的點。
如下詳細所述,按照現有的學說,使用計數器14的翻轉點來確定哪一個輸入參考時鐘邊沿更接近于理想時鐘邊沿。如果翻轉點的值小于M/2,則翻轉時鐘邊沿較接近于理想輸出時鐘邊沿。如果翻轉點的值大于M/2,則在翻轉前沿前的負時鐘邊沿是較近的邊沿。當然,如果值恰好等于M/2,則任一選擇皆可。在抑制尖峰電路16中,第一和第二計數級12和14的輸出分別是第三和第四觸發器36和38的輸入。第四觸發器38的輸出是鎖存器40的輸入。按照現有的學說,第一和第二計數級12和14的觸發器、加法器和比較器以及第一和第二移位寄存器與參考時鐘48的前沿即正沿同步,鎖存器40與參考時鐘的后沿即負沿同步。從而,如本領域的任一普通技術人員所能理解的,鎖存器40把1/2時鐘周期的移位送入負沿信號。鎖存器40的輸出和第三觸發器36的輸出由或門42組合。或門的輸出即為理想合成時鐘信號。
為了向后兼容性,或門42的輸出作為第一輸入被提供給第三多路復用器44。第三多路復用器44的第二輸入由第三觸發器36的輸出提供。本領域的技術人員可以理解,由于在從時序和控制電路50接收到“僅有正沿的模式”的信號之后第二(先行)計數級14和鎖存器所提供的負沿檢測被取消,因此或門42和第三多路復用器44合作而產生一定程度的向后兼容性。
如本領域的普通技術人員所能理解的,時序和控制電路50可以用組合邏輯或其它適當的方法來實現。
圖2是說明本發明的M/N計數器的操作的時序圖。如上所述,在操作中,初始計數(M)被提供給第一和第三加法器18和26以及第二多路復用器30,翻轉值-(N-M)被提供給第二和第四加法器19和28。在這一點上,第一和第二觸發器22和32的輸出(q2和q1)為低電平。從而,第二和第四加法器19和28的輸出為低電平。因此,在參考時鐘48的第一前沿上,第一和第二多路復用器20和30選擇缺省的輸入。第一多路復用器20選擇第一加法器18的輸出,第二多路復用器30選擇移位寄存器15的輸出。然而,第一加法器18的存在使第一多路復用器20的初始值M的接收延遲一個時鐘周期。由此,如上所述,第二計數級14比第一計數級12早一個時鐘周期并起到先行電路的作用。
隨著參考時鐘的連續脈沖,初始值M最終由第一觸發器22輸出。多路復用器20執行帶符號的加法。隨著每個隨后的時鐘脈沖,初始值M由第一加法器18增加M。在觸發器22的輸出超出計數器的翻轉點(N-M)之前,該新的值由第一多路復用器20傳送到觸發器22。在這一點上,多路復用器20把零輸出到觸發器22的D輸入端,第一觸發器22的輸出返回為零且計數器12開始重新計數。在達到系統的占空比(D)之前,第一觸發器22的脈沖輸出由比較器傳送。
第二計數級14的操作與第一計數級12的操作大致相同,除了它比第一計數級12早一個時鐘周期工作并且檢查第二觸發器32的輸出以便由比較器34來確定該處的翻轉點與理想合成時鐘脈沖的前沿的近似程度。如果翻轉點處于M/2和M之間,則比較器34輸出一個脈沖以通知參考時鐘的負沿比合成時鐘的正沿更接近于理想邊沿。
最終,抑制尖峰電路16中的或門42輸出包括該負沿信號和正沿信號的合成時鐘信號。如上所述,由于電路總是在計數器序列中的相同點即翻轉點產生輸出時鐘邊沿,因此由常規M/ND計數器合成的時鐘信號遭受關于其理想時鐘頻率的過度的時鐘抖動。結果,由于理想輸出時鐘邊沿總是存在于計數器周期的上一個時鐘邊沿和翻轉時鐘邊沿之間的某處,因此輸出時鐘抖動會在零到輸入參考時鐘的周期之間變化。
然而,根據現有的學說,本發明的雙沿M/ND計數器10根據哪一半時鐘周期包含理想輸出時鐘邊沿而智能地選擇翻轉時鐘正沿或前一個負時鐘邊沿。假定輸入時鐘是占空比為50%的時鐘,則最大輸出時鐘抖動被降低到輸入參考時鐘的時鐘周期的二分之一。
一般而言,最大時鐘抖動被降低到時鐘周期的最長脈沖的持續時間。例如,占空比為40%的100MHz輸入時鐘會產生6納秒的最大周期間抖動。計數器的翻轉值指示哪一個輸入參考時鐘邊沿較接近于理想的輸出時鐘。如果翻轉值小于M/2,則翻轉時鐘邊沿較接近于理想的輸出時鐘邊沿。如果翻轉值大于M/2,則翻轉正沿前的負時鐘邊沿是較近的邊沿。當然,如果值恰好等于M/2,則可選擇任一邊沿。雙沿M/ND計數器使用了在計數器周期的上一個時鐘周期期間確定翻轉值的先行電路。知道該點的翻轉值允許輸出邏輯確定是否使用負的時鐘。這用下面圖2的時序圖進行說明。
圖3示出本發明的雙沿計數器比按照常規學說用5MHz·1.5MHz實例實現的計數器所改進了的性能的實例。在點1和2處,傳統M/N計數器的抖動為134納秒,然而由于理想邊沿較接近于翻轉點(5MHz參考時鐘的800納秒邊沿)前的正沿,因此本發明的雙沿MN計數器的抖動僅為34納秒。在點3和4處,由于理想邊沿接近于傳統MN翻轉點(1400納秒),因此兩種計數器具有相同的抖動67納秒。
因此,這里參考特定應用的特定實施例而描述了本發明。本領域的技術人員和可以理解現有學說的人可以認識到,其它的修改、應用和實施例也在本發明的范圍之內。
因此,意圖覆蓋任一或所有這樣的應用、修改和實施例的所附權利要求在本
權利要求
1.一種計數器,其特征在于包括第一裝置,用于接收頻率為每秒N個周期的第一時鐘信號并且輸出頻率為每秒M個周期的第二時鐘信號,每個周期具有一個上升沿和一個下降沿,所述第一裝置包括具有其瞬時計數超出值N-M的翻轉點的累加器;第二裝置,用于確定所述第二時鐘信號的所述上升沿還是所述下降沿更接近于所述翻轉點并且輸出關于該處的指示;以及第三裝置,用于使用所述指示來提供輸出信號。
2.如權利要求1所述的發明,其特征在于,所述第一裝置是第一M/N計數器。
3.如權利要求2所述的發明,其特征在于,所述第一M/N計數器是M/ND計數器,其中D為占空比。
4.如權利要求2所述的發明,其特征在于,所述第二裝置是先行電路。
5.如權利要求4所述的發明,其特征在于,所述先行電路對當前的時鐘周期確定前面一個時鐘周期的翻轉點。
6.如權利要求2所述的發明,其特征在于,所述第二裝置是第二M/N計數器。
7.如權利要求6所述的發明,其特征在于,所述第二M/N計數器用值M進行預加載。
8.如權利要求7所述的發明,其特征在于,所述第二M/N計數器包括第一和第二加法器、多路復用器和累加器。
9.如權利要求8所述的發明,其特征在于,所述第一加法器用于把預加載的值M與所述累加器的瞬時輸出相加,所述第二加法器用于把預加載的值-(N-M)與所述累加器的瞬時輸出相加。
10.如權利要求9所述的發明,其特征在于,所述第一和第二加法器的輸出提供了所述多路復用器的第一和第二輸入。
11.如權利要求10所述的發明,其特征在于,所述預加載的值M提供所述多路復用器的第三輸入。
12.如權利要求11所述的發明,其特征在于,所述第二加法器的輸出的最高有效位提供所述多路復用器的控制輸入。
13.如權利要求12所述的發明,其特征在于,所述多路復用器的輸出是所述累加器的輸入。
14.如權利要求13所述的發明,其特征在于,所述累加器的輸出被提供給比較器。
15.如權利要求14所述的發明,其特征在于,所述比較器輸出指示所述累加器的輸出是否處在M/2和M之間的信號。
16.如權利要求6所述的發明,其特征在于,所述第二M/N計數器是M/ND計數器。
17.權利要求1的發明還包括用于對所述第一裝置和所述第二裝置的輸出進行抑制尖峰的裝置。
18.權利要求1的發明還包括用于使所述計數器與常規計數器兼容的裝置。
19.一種計數器,其特征在于包括第一計數級;連接到所述第一計數級的先行電路輸入;以及選擇電路,用于在所述第一計數級的輸出和所述先行電路的輸出之間選擇所述計數器的輸出。
20.如權利要求19所述的發明,其特征在于,所述第一計數級用于接收頻率為每秒N個周期的第一時鐘信號并且輸出頻率為每秒M個周期的第二時鐘信號,每個周期具有一個上升沿和一個下降沿,所述第一計數級包括具有其瞬時計數超出值N-M的翻轉點的累加器;
21.如權利要求19所述的發明,其特征在于,所述先行電路中一第二計數級,該計數級用于確定所述第二時鐘信號的所述上升沿還是所述下降沿更接近于所述翻轉點并且輸出關于該處的指示。
22.如權利要求21所述的發明,其特征在于,所述第一計數級包括第一M/N計數器。
23.如權利要求22所述的發明,其特征在于,所述第一M/N計數器是M/ND計數器。
24.如權利要求21所述的發明,其特征在于,所述先行電路對當前的時鐘周期確定前面一個時鐘周期的翻轉點。
25.如權利要求21所述的發明,其特征在于,所述第二計數級是第二M/N計數器。
26.如權利要求25所述的發明,其特征在于,所述第二M/N計數器用值M進行預加載。
27.如權利要求26所述的發明,其特征在于,所述第二M/N計數器包括第一和第二加法器、多路復用器和累加器。
28.如權利要求27所述的發明,其特征在于,所述第一加法器用于把預加載的值M與所述累加器的瞬時輸出相加,所述第二加法器用于把預加載的值-(N-M)與所述累加器的瞬時輸出相加。
29.如權利要求28所述的發明,其特征在于,所述第一和第二加法器的輸出提供所述多路復用器的第一和第二輸入。
30.如權利要求29所述的發明,其特征在于,所述預加載的值M提供所述多路復用器的第三輸入。
31.如權利要求30所述的發明,其特征在于,所述第二加法器的輸出的最高有效位提供所述多路復用器的控制輸入。
32.如權利要求31所述的發明,其特征在于,所述多路復用器的輸出是所述累加器的輸入。
33.如權利要求32所述的發明,其特征在于,所述累加器的輸出被提供給比較器。
34.如權利要求33所述的發明,其特征在于,所述比較器輸出指示所述累加器的輸出是否處在M/2和M之間的信號。
35.一種用來合成時鐘信號的方法,其特征在于包括下列步驟接收頻率為每秒N個周期的第一時鐘信號并且輸出頻率為每秒M個周期的第二時鐘信號,每個周期具有一個上升沿和一個下降沿,使用具有瞬時計數超出值N-M的翻轉點的累加器;確定所述第二時鐘信號的所述上升沿還是所述下降沿更接近于所述翻轉點并且輸出關于該處的指示;以及使用所述指示來提供輸出信號。
全文摘要
一種用于合成具有最小抖動的信號的計數器。所發明的計數器具有第一計數級;連接到所述第一計數級的先行電路;以及用于在所述第一計數級的輸出和所述先行電路的輸出之間選擇所述計數器的輸出的選擇電路。在特定實施例中,第一計數級用于接收頻率為每秒N個周期的第一時鐘信號并且輸出頻率為每秒M個周期的第二時鐘信號。第一計數級包括具有其瞬時計數超出值N-M的翻轉點的累加器。先行電路對當前時鐘周期確定前面一個時鐘周期的翻轉點。先行電路是用于確定第二時鐘信號的上升沿還是下降沿更接近于所述翻轉點并且輸出關于該處的指示的第二計數級。
文檔編號H03K23/00GK1475046SQ01818697
公開日2004年2月11日 申請日期2001年9月12日 優先權日2000年9月14日
發明者S·J·霍特, S J 霍特 申請人:高通股份有限公司