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