基于FPGA的雙模前置小數分頻器的設計簡介
頻率合成技術是現代通訊系統(tǒng)的重要組成部分,他將一個高穩(wěn)定和高準確度的基準頻率,經過四則運算,產生同樣穩(wěn)定度和基準度的頻率。分頻器是集成電路中最基礎也是最常用的電路。整數分頻器的實現比較簡單,可采用標準的計數器或可編程邏輯器件設計實現。但在某些場合下,時鐘源與所需的頻率不成整數倍關系,此時可采用小數分頻器進行分頻。本文利用VerilogHDL硬件描述語言的設計方式,通過ModelSimSE開發(fā)軟件進行仿真,設計基于FPGA的雙模前置小數分頻器。隨著超大規(guī)模集成電路的發(fā)展,利用FPGA小數分頻合成技術解決了單環(huán)數字頻率合成器中高鑒相頻率與小頻間隔之間的矛盾。
1 雙模前置小數分頻原理
小數分頻器的實現方法很多,但其基本原理一樣,即在若干個分頻周期中采取某種方法使某幾個周期多計或少計一個數,從而在整個計數周期的總體平均意義上獲得一個小數分頻比,設要進行分頻比為K的小數分頻,K可表示為:
式中:n,N,X均為正整數;n為到X的位數,即K有n位小數。另一方面,分頻比又可以寫成:
式中:M為分頻器輸入脈沖數;P為輸出脈沖數。
令P=10n,則:
以上是小數分頻器的一種實現方法,即在進行10n次N分頻時,設法多輸入X個脈沖。
2 電路組成
每個周期分頻N+10-n.X,其電路雙模前置小數分頻器電路由÷N/N+1雙模分頻器、控制計數器和控制邏輯3部分組成。當a點電平為1時,進行÷N分頻;當a點電平為0時進行÷N+1分頻。適當設計控制邏輯,使在10n個分頻周期中分頻器有X次進行÷N+1分頻,這樣,當從fo輸出10n個脈沖時,在fi處輸入了X.(N+1)+(10n-X).N個脈沖,也就是10n.N+X個脈沖,其原理如圖1所示。
3 小數分頻器的Verilog-HDL設計
現通過設計一個分頻系數為8.7的分頻器來給出使用VerilogHDL語言設計數字邏輯電路的一般設計方法。這里使用÷8/9雙模前置分頻器,按照前面的分析,可以通過計數器計數先做3次8分頻,后做7次9分頻,即可得到平均分頻系數8.7。由于從N分頻切換到N+1分頻和從N+1分頻切換到N分頻都會產生一個隨時間增長的相位移,如果簡單的先進行3次8分頻后做7次9分頻將會產生很大的相位波動。考慮到該小數分頻器要進行多次8分頻和9分頻,那么就設法將兩種分頻混合均勻,這種“均勻”工作是通過計數器來完成的,在這里只討論一位小數的情況,下面簡要介紹這種混合的方法:
每進行一次分頻,計數值為10減去分頻系數的小數部分,各次計數值累加。若累加結果小于10,則進行N+1分頻,若大于10或等于10,則進行N分頻。該例中計數值為(10-7)=3,前3次累加結果都小于10,所以為9分頻,第四次累加結果為12,則去掉十位數后累加結果變?yōu)?,同時進行8分頻,表1給出了該分頻器的分頻過程。
若分頻系數后為兩位小數,則用100減去分頻系數的小數部分。用VerilogHDL設計÷8/9雙模前置分頻器的描述程序如下:
評論