專利名稱:一種累加分頻器的制作方法
技術領域:
本發明涉及信號系統技術領域,具體涉及該技術領域中一種累加分頻器。
背景技術:
數字累加器是一個供算術運算指令使用的寄存器,通常CPU內部結構中肯定會有累加器這個部件。累加器用于存放當前的結果,它也是雙目運算中的一個數據來源。在頻率一定的情況下,可以通過改變累加因子,提高或者減慢累加的速率。一個單純的累加器結構由加法器和寄存器組成。
現有技術中一般采用計數的方式實現分頻器,對于一些比較特殊的時鐘和精度要求非常高的時鐘,這種方式顯得力不從心。但是這種計數的數字分頻器在數字電路中應用得非常廣泛,基本上都是在分頻器中使用計數器來實現分頻。如圖1所示的分頻器,Counter是一個計數器,CLK是時鐘信號,每次采到一個時鐘的上升沿,Counter計數一次,Comb Logic是一個組合邏輯模塊,它利用計數器的輸出作為自己的輸入,然后輸出給寄存器,經過寄存器就是最后的分頻輸出。這種計數分頻方式通過計數器計數,當需要得到多少整數分頻數時,定義一個計數器,就能獲得準確的分頻數。
上述分頻器主要有兩個缺點其一是只能進行頻率的整數分頻,不能滿足特殊的時鐘分頻要求;其二是分頻精度不高,完全不能滿足高精度時鐘的要求。
發明內容
本發明要解決的技術問題是提供一種累加分頻器,克服現有技術的分頻器只能進行頻率的整數分頻,分頻精度不高的缺點。
本發明采用如下的技術方案這種累加分頻器,包括累加器,累加器包括至少一位比特的加法器,位寬與加法器相同的寄存器,加法器的輸出端及時鐘信號線與寄存器的輸入端相連,寄存器的輸出端與加法器的輸入端相連,進位輸出觸發器與加法器的進位輸出端及時鐘信號線相連,加法器用于對從累加分頻器外部輸入的加數及寄存器保持的值進行加法運算,并在時鐘信號的控制下,將低位比特到高位比特的運算結果輸出到寄存器的相應低位比特到高位比特,累加分頻器的輸出信號為寄存器的最高比特的輸出信號。
所述的累加分頻器,其中所述累加器還包括進位輸出觸發器,進位輸出觸發器與加法器相連,用于保持并輸出加法器的進位輸出信號,累加分頻器的輸出信號為進位輸出觸發器的輸出信號或者寄存器的最高比特的輸出信號。
所述的累加分頻器,其中還包括上升沿檢測電路,時鐘信號線以及進位輸出觸發器的輸出信號線或者寄存器的最高比特的輸出信號線與上升沿檢測電路的輸入端相連,上升沿檢測電路用于在時鐘信號的控制下,當檢測到輸入信號的上升沿時,產生一個脈沖信號,并輸出該脈沖信號。
所述的累加分頻器,其中所述累加器還包括前端觸發器組,前端觸發器組中的觸發器個數與加法器的比特位數相同,前端觸發器組的輸出端與累加器的輸入端口相連,前端觸發器組用于在時鐘信號的控制下接收加數,保持并向累加器輸出加數。
所述的累加分頻器,其中所述累加器還包括一個后端觸發器,后端觸發器的輸入端分別與上升沿檢測電路的輸出端以及時鐘信號線相連,經上升沿檢測電路輸出的信號設為時鐘信號的使能信號,累加分頻器的輸出信號為后端觸發器的一路輸出信號。
一種累加分頻器,包括至少兩個依順序串聯的累加器,累加器包括至少一位比特的加法器,位寬與加法器相同的寄存器,進位輸出觸發器,加法器的輸出端及時鐘信號線與寄存器的輸入端相連,寄存器的輸出端與加法器的輸入端相連,進位輸出觸發器與加法器的進位輸出端及時鐘信號線相連,加法器用于對從累加分頻器外部輸入的加數及寄存器保持的值進行加法運算,并在時鐘信號的控制下,將低位比特到高位比特的運算結果輸出到寄存器的相應低位比特到高位比特,進位輸出觸發器用于保持并輸出加法器的進位輸出信號,加數的低位比特到高位比特依順序輸入到前級累加器的加法器和后級累加器的加法器的低位比特到高位比特,前級累加器的進位輸出信號參與后級累加器的加法器最低位的加法運算,累加分頻器的輸出信號為最后一級累加器的進位輸出信號或者其寄存器的最高比特的輸出信號。
所述的累加分頻器,其中還包括上升沿檢測電路,時鐘信號線以及最后一級累加器的進位輸出信號線或者其寄存器的最高比特的輸出信號線與上升沿檢測電路的輸入端相連,上升沿檢測電路用于在時鐘信號的控制下,當檢測到輸入信號的上升沿時,產生一個脈沖信號,并輸出該脈沖信號。
所述的累加分頻器,其中每個累加器的前端還包括前端觸發器組,所述前端觸發器組的觸發器個數與相應累加器中的加法器的比特位數相同,所述前端觸發器組的輸出端與相應累加器的輸入端口相連,所述前端觸發器組用于在時鐘信號的控制下接收加數,保持并向相應累加器輸出加數。
所述的累加分頻器,其中還包括一個后端觸發器,后端觸發器的輸入端分別與上升沿檢測電路的輸出端以及時鐘信號線相連,經上升沿檢測電路輸出的信號設為時鐘信號的使能信號,累加分頻器的輸出信號為后端觸發器的一路輸出信號。
所述的累加分頻器,其中當所述寄存器的最高比特的輸出信號為累加分頻器的輸出信號時,累加分頻器滿足以下公式分頻因子×累加因子=2N;其中N是累加分頻器用于保持累加值的比特位數。
本發明的技術方案,大幅度提高了時鐘數字分頻后的精度,同時滿足高時鐘頻率的分頻要求;本發明的優化技術方案中采用串行分級累加器結構,完全滿足現有技術在芯片功耗、規模、延時等方面的條件要求,使數字分頻電路所需的速率要求和運算比特位數要求都能得到滿足。
本發明包括如下附圖圖1是現有技術分頻器示意圖;圖2是本發明頻率精度矢量圖;圖3是本發明包括累加器的累加分頻器示意圖;圖4是本發明包括累加器和上升沿檢測電路的累加分頻器示意圖;圖5是本發明包括觸發器組、累加器和上升沿檢測電路的累加分頻器示意圖;圖6是本發明串行分級累加器結構示意圖;圖7是本發明以累加器進位輸出作為累加分頻器信號輸出的實施例示意圖。
具體實施例方式
下面結合附圖和實施例對本發明作進一步詳細說明一般情況下的數字分頻模式可以得到所需要的分頻數,但是在精度方面將會大打折扣,很難滿足高精度時鐘的要求,本發明為了克服現有技術的缺點,提出了利用累加器進行分頻的技術。累加分頻器的基本結構包括一個多比特的累加器,根據所需分頻數和精度可以調整輸入的累加因子。為了得到高精度的分頻時鐘,整個分頻器電路一般工作在較高的時鐘頻率下。
下面首先對累加分頻器的工作原理進行闡述對于通過一個系統進行分頻,假設輸入信號頻率為fin,輸出信號頻率為fout,我們有fin=K×fout,其中K為分頻因子。
我們稱每次輸入給累加器的加數為累加因子(W),即累加器每次累加過程中的加數。
假設N為正整數,累加器內有進行N位比特加法的加法器,相應地有N位比特的寄存器,用于保持累加值,一個進位輸出觸發器保持加法器的進位輸出,則累加器所能保持的最大數是2N-1,再有加數輸入時,一定會產生進位輸出,因此我們可以把加法器的進位輸出(經進位輸出觸發器輸出)作為fout,或者寄存器的最高比特的輸出信號作為fout,則顯然K就是當累加器的加法器有進位輸出時對應的累加次數,即有K×W=2N。
通過上面的分析,我們得出當寄存器的最高比特的輸出信號作為fout時分頻因子×累加因子=2N;目標頻率fout=fin/K=fin×W/2N;
累加器有進位輸出的間隔時間,或者寄存器的最高比特從0到1再從1跳變到0的間隔時間由W和N來決定;顯然,對于位數一定的累加器,如果累加因子W比較大的話,有進位輸出的時間或者寄存器的最高比特從0到1再從1跳變到0的間隔時間肯定要短一些,W越大輸出的頻率越高。
我們可以任意改變W和N的值來調整目標頻率;同時可以計算出分頻后的時鐘精度,當寄存器的最高比特的輸出信號作為fout時分頻時鐘精度=fin×(W+1)/2N-fin×W/2N=fin×1/2N顯而易見,如果累加器的比特位越多,時鐘精度的范圍值就可以控制在較高的水平上。
如圖2所示,即使所需的目標頻率位于fin×W/2N和fin×(W+1)/2N之間,也可以通過增加N的值無限逼近目標頻率值。對于要求精度50ppm,輸入時鐘在200MHz左右的范圍,N值設定在21比特就完全能滿足要求,而且得到的目標頻率也能處于非常穩定的狀態。
本發明的累加分頻器主要包括三種結構形式,第一種結構形式如圖3所示,該結構包括加法器、寄存器(由虛框圍住的觸發器1、...觸發器N組成寄存器)、進位輸出觸發器,加法器的輸出端及時鐘信號線與寄存器的輸入端相連,寄存器的輸出端與加法器的輸入端相連,進位輸出觸發器與加法器的進位輸出端及時鐘信號線相連,Gene[X∶0]是一個多比特的累加因子(累加因子根據公式分頻因子×累加因子=2N,N為正整數,以及需要得到的分頻時鐘頻率計算出來), 累加器包括N位比特的加法器,相應地有N位比特的寄存器,寄存器用于保持累加值,進位輸出觸發器用于保持加法器的進位輸出,每個時鐘周期內加法器對寄存器保持的值和累加因子進行一次加法運算,即累加一次,累加后的數值由加法器按低位比特到高位比特輸出到寄存器的相應低位比特到高位比特進行保持(寄存器是時序邏輯,它保證累加器在每個時鐘來的時候累加一次),作為下一次累加的總量繼續累加。最終的輸出只是當累加值超過累加器所能保持的最大值時而產生的進位輸出,或者寄存器的最高比特(The Highest Bit)輸出的信號變化值,進位輸出(經過進位輸出觸發器輸出)或者The Highest Bit信號就是我們所需要的分頻后的輸出信號了。
第二種結構形式如圖4所示,相比第一種結構增加了一個上升沿檢測電路,時鐘信號線以及進位輸出觸發器的輸出信號線或者寄存器的最高比特的輸出信號線與上升沿檢測電路的輸入端相連,這個電路的主要作用是檢測到輸入信號的上升沿時,會產生一個脈沖信號DIV_CLK,這樣會減少信號毛刺可能引起的誤操作。輸出的DIV_CLK可以單獨作為分頻時鐘,或者結合CLK信號一起使用,此時在上升沿檢測電路的輸出口端設置后端觸發器,DIV_CLK信號和CLK信號作為后端觸發器的輸入信號,同時以DIV_CLK信號作為CLK信號的使能信號,從而達到分頻的目的。
第三種結構形式如圖5所示,第三種結構相比第二種結構在累加器的輸入端增加了一組觸發器,稱為前端觸發器組,前端觸發器組中的觸發器個數與加法器的比特位數相同,前端觸發器組的輸出端與累加器的輸入端口相連,輸入到累加器的累加因子先經過這組觸發器保持,這組觸發器的主要作用是提升時序控制,滿足信號的建立時間和保持時間要求。這種結構比第二種結構更容易滿足電路的時序要求。
如果想得到更高的分頻精度,累加器中的加法器的比特位數會非常高,如果頻率和加法器的比特位數過高,那么必須對電路采取一定的措施才能滿足要求。例如在0.18μm CMOS工藝中,兩個32比特的數直接相加,一般只能工作在100多兆赫茲以下。如果直接相加的位數增加,或者時鐘頻率提高,采用直接相加的方法就無法滿足后端的綜合要求。此時,我們可以采用一種流水線的模式,即串行分級累加器(SequentialHierarchical Accumulator,SHA)的技術。它的主要結構是將一個比特位數較多的累加器分拆成幾個比特位數較少的累加器,每個累加器包括加法器、寄存器、進位輸出觸發器,加法器的輸出端及時鐘信號線與寄存器的輸入端相連,寄存器的輸出端與加法器的輸入端相連,進位輸出觸發器與加法器的進位輸出端及時鐘信號線相連,寄存器用于保持累加值,進位輸出觸發器用于保持加法器的進位輸出,每個時鐘周期內加法器對寄存器保持的值和累加因子進行一次加法運算,即累加一次,如圖6所示,N+1比特累加器(N是正整數,累加器包括N位比特的寄存器)被分拆成k個(N/k)+1比特子累加器,同時輸入最大累加因子的信號線也必須根據累加器的分拆標準調整成輸入N/k比特的最大累加因子的信號線,分拆后的累加器比特位數比較低,能完全滿足后端綜合的要求,并且也能滿足時鐘分頻精度的要求。不過在設計中必須要注意分拆后的累加器只有N/K比特相加,上一級累加器的最高位的進位輸出信號,輸入給下一級的累加器,參與其最低位的加法運算,最后還是取最后一級的累加器的進位輸出信號或者其寄存器的最高比特輸出信號,即分拆前的累加器的進位輸出信號或者寄存器的最高比特輸出信號作為累加分頻器的輸出。
如圖6所示,每個累加器的前端包括一組觸發器,該組觸發器中的觸發器個數與相應累加器中的加法器的比特位數相同,該組觸發器的輸出端與相應累加器的輸入端口相連,該組觸發器用于在時鐘信號的控制下接收加數,保持并向相應累加器輸出加數。
串行分級累加器結構的累加分頻器還可以包括上升沿檢測電路,時鐘信號線以及最后一級累加器的進位輸出信號線或者其寄存器的最高比特的輸出信號線與上升沿檢測電路的輸入端相連,上升沿檢測電路用于在時鐘信號的控制下,當檢測到輸入信號的上升沿時,相應產生一個脈沖信號,并輸出該脈沖信號。
還可以包括一個后端觸發器,后端觸發器的輸入端分別與上升沿檢測電路的輸出端以及時鐘信號線相連,經上升沿檢測電路輸出的信號設為時鐘信號的使能信號,后端觸發器的一路輸出信號設為累加分頻器的輸出信號。
作為一個(N+1)比特[N∶0]的累加器,實際上[N-1∶0]比特部分為累加器的累加數,第[N]比特為累加器的進位部分。
如圖7所示對于一個8-bit的累加器[7∶0],最高bit[7]為累加器的進位部分,[6∶0]為累加數部分,累加因子為一個7-bit數據[6∶0]-Gene[6∶0],注意這里累加因子大小不能超過7個比特。
累加因子W——Gene[6∶0],分頻因子——27/W;fout=fin/分頻因子;通過這個等式我們就可以得出累加因子W。
加數部分[6∶0]中的最高比特可以作為分頻輸出,不過這部分的輸出占空比基本上為50%;進位部分[7]同樣也可以作為相同的分頻輸出,只是輸出為一個一個脈沖信號,占空比不為50%。
注意我們必須以加數部分的位寬大小作為分頻因子的指數部分;也就是對于N+1比特的累加器[N∶0],分頻因子=2N/W。
作為優選方案,本發明的每個累加器中的觸發器、后端觸發器和每個累加器前端的觸發器設為D觸發器。
雖然通過參照本發明的優選實施例,已經對本發明進行了圖示和描述,但本領域的普通技術人員應該明白,可以在形式上和細節上對其作各種各樣的改變,而不偏離所附權利要求書所限定的本發明的精神和范圍。
權利要求
1.一種累加分頻器,其特征在于包括累加器,累加器包括至少一位比特的加法器,位寬與加法器相同的寄存器,加法器的輸出端及時鐘信號線與寄存器的輸入端相連,寄存器的輸出端與加法器的輸入端相連,進位輸出觸發器與加法器的進位輸出端及時鐘信號線相連,加法器用于對從累加分頻器外部輸入的加數及寄存器保持的值進行加法運算,并在時鐘信號的控制下,將低位比特到高位比特的運算結果輸出到寄存器的相應低位比特到高位比特,累加分頻器的輸出信號為寄存器的最高比特的輸出信號。
2.根據權利要求1所述的累加分頻器,其特征在于所述累加器還包括進位輸出觸發器,進位輸出觸發器與加法器相連,用于保持并輸出加法器的進位輸出信號,累加分頻器的輸出信號為進位輸出觸發器的輸出信號或者寄存器的最高比特的輸出信號。
3.根據權利要求2所述的累加分頻器,其特征在于還包括上升沿檢測電路,時鐘信號線以及進位輸出觸發器的輸出信號線或者寄存器的最高比特的輸出信號線與上升沿檢測電路的輸入端相連,上升沿檢測電路用于在時鐘信號的控制下,當檢測到輸入信號的上升沿時,產生一個脈沖信號,并輸出該脈沖信號。
4.根據權利要求3所述的累加分頻器,其特征在于所述累加器還包括前端觸發器組,前端觸發器組中的觸發器個數與加法器的比特位數相同,前端觸發器組的輸出端與累加器的輸入端口相連,前端觸發器組用于在時鐘信號的控制下接收加數,保持并向累加器輸出加數。
5.根據權利要求4所述的累加分頻器,其特征在于所述累加器還包括一個后端觸發器,后端觸發器的輸入端分別與上升沿檢測電路的輸出端以及時鐘信號線相連,經上升沿檢測電路輸出的信號設為時鐘信號的使能信號,累加分頻器的輸出信號為后端觸發器的一路輸出信號。
6.一種累加分頻器,其特征在于包括至少兩個依順序串聯的累加器,累加器包括至少一位比特的加法器,位寬與加法器相同的寄存器,進位輸出觸發器,加法器的輸出端及時鐘信號線與寄存器的輸入端相連,寄存器的輸出端與加法器的輸入端相連,進位輸出觸發器與加法器的進位輸出端及時鐘信號線相連,加法器用于對從累加分頻器外部輸入的加數及寄存器保持的值進行加法運算,并在時鐘信號的控制下,將低位比特到高位比特的運算結果輸出到寄存器的相應低位比特到高位比特,進位輸出觸發器用于保持并輸出加法器的進位輸出信號,加數的低位比特到高位比特依順序輸入到前級累加器的加法器和后級累加器的加法器的低位比特到高位比特,前級累加器的進位輸出信號參與后級累加器的加法器最低位的加法運算,累加分頻器的輸出信號為最后一級累加器的進位輸出信號或者其寄存器的最高比特的輸出信號。
7.根據權利要求6所述的累加分頻器,其特征在于還包括上升沿檢測電路,時鐘信號線以及最后一級累加器的進位輸出信號線或者其寄存器的最高比特的輸出信號線與上升沿檢測電路的輸入端相連,上升沿檢測電路用于在時鐘信號的控制下,當檢測到輸入信號的上升沿時,產生一個脈沖信號,并輸出該脈沖信號。
8.根據權利要求7所述的累加分頻器,其特征在于每個累加器的前端還包括前端觸發器組,所述前端觸發器組的觸發器個數與相應累加器中的加法器的比特位數相同,所述前端觸發器組的輸出端與相應累加器的輸入端口相連,所述前端觸發器組用于在時鐘信號的控制下接收加數,保持并向相應累加器輸出加數。
9.根據權利要求8所述的累加分頻器,其特征在于還包括一個后端觸發器,后端觸發器的輸入端分別與上升沿檢測電路的輸出端以及時鐘信號線相連,經上升沿檢測電路輸出的信號設為時鐘信號的使能信號,累加分頻器的輸出信號為后端觸發器的一路輸出信號。
10.根據權利要求9所述的累加分頻器,其特征在于當所述寄存器的最高比特的輸出信號為累加分頻器的輸出信號時,累加分頻器滿足以下公式分頻因子×累加因子=2N;其中N是累加分頻器用于保持累加值的比特位數。
全文摘要
本發明公開了一種累加分頻器,包括累加器,累加器包括至少一位比特的加法器,位寬與加法器相同的寄存器,加法器的輸出端與寄存器的輸入端相連,寄存器的輸出端與加法器的輸入端相連,進位輸出觸發器與加法器的進位輸出端相連,加法器用于接收從累加分頻器外部輸入的加數及寄存器保持的值,對其兩者進行加法運算,并將低位比特到高位比特的運算結果輸出到寄存器的相應低位比特到高位比特,進位輸出觸發器用于保持并輸出加法器的進位輸出信號,累加分頻器的輸出信號為寄存器的最高比特的輸出信號。本發明的技術方案大幅度提高了時鐘數字分頻后的精度,同時滿足高時鐘頻率的分頻要求。
文檔編號G06F7/485GK1983814SQ20061006020
公開日2007年6月20日 申請日期2006年4月5日 優先權日2006年4月5日
發明者李波, 何坤, 譚亞偉 申請人:華為技術有限公司