全數(shù)字鎖相環(huán)的設(shè)計(jì)_第1頁
全數(shù)字鎖相環(huán)的設(shè)計(jì)_第2頁
全數(shù)字鎖相環(huán)的設(shè)計(jì)_第3頁
全數(shù)字鎖相環(huán)的設(shè)計(jì)_第4頁
全數(shù)字鎖相環(huán)的設(shè)計(jì)_第5頁
已閱讀5頁,還剩2頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、全數(shù)字鎖相環(huán)的設(shè)計(jì)鎖相環(huán)(pll)技術(shù)在眾多領(lǐng)域得到了廣泛的應(yīng)用。如信號處理,調(diào)制解調(diào),時(shí)鐘同步,倍頻,頻率綜合等都應(yīng)用到了鎖相環(huán)技術(shù)。傳統(tǒng)的鎖相環(huán)由模擬電路實(shí)現(xiàn),而全數(shù)字鎖相環(huán)(dpll)與傳統(tǒng)的模擬電路實(shí)現(xiàn)的pll相比,具有精度高且不受溫度和電壓影響,環(huán)路帶寬和中心頻率編程可調(diào),易于構(gòu)建高階鎖相環(huán)等優(yōu)點(diǎn),并且應(yīng)用在數(shù)字系統(tǒng)中時(shí),不需a/d及d/a轉(zhuǎn)換。隨著通訊技術(shù)、集成電路技術(shù)的飛速發(fā)展和系統(tǒng)芯片(soc)的深入研究,dpll必然會在其中得到更為廣泛的應(yīng)用。 這里介紹一種采用verilog硬件描述語言設(shè)計(jì)dpll的方案。 dpll結(jié)構(gòu)及工作原理一階dpll的基本結(jié)構(gòu)如圖1所示。主要由鑒相器

2、、k變??赡嬗?jì)數(shù)器、脈沖加減電路和除n計(jì)數(shù)器四部分構(gòu)成。k變模計(jì)數(shù)器和脈沖加減電路的時(shí)鐘分別為mfc和2nfc。這里fc是環(huán)路中心頻率,一般情況下m和n都是2的整數(shù)冪。本設(shè)計(jì)中兩個(gè)時(shí)鐘使用相同的系統(tǒng)時(shí)鐘信號。圖1 數(shù)字鎖相環(huán)基本結(jié)構(gòu)圖鑒相器常用的鑒相器有兩種類型:異或門(xor)鑒相器和邊沿控制鑒相器(ecpd),本設(shè)計(jì)中采用異或門(xor)鑒相器。異或門鑒相器比較輸入信號fin相位和輸出信號fout相位之間的相位差e=in-out,并輸出誤差信號se作為k變??赡嬗?jì)數(shù)器的計(jì)數(shù)方向信號。環(huán)路鎖定時(shí),se為一占空比50%的方波,此時(shí)的絕對相為差為90°。因此異或門鑒相器相位差極限為&#

3、177;90°。異或門鑒相器工作波形如圖2所示。圖2 異或門鑒相器在環(huán)路鎖定及極限相位差下的波形k變??赡嬗?jì)數(shù)器k變模可逆計(jì)數(shù)器消除了鑒相器輸出的相位差信號se中的高頻成分,保證環(huán)路的性能穩(wěn)定。k變??赡嬗?jì)數(shù)器根據(jù)相差信號se來進(jìn)行加減運(yùn)算。當(dāng)se為低電平時(shí),計(jì)數(shù)器進(jìn)行加運(yùn)算,如果相加的結(jié)果達(dá)到預(yù)設(shè)的模值,則輸出一個(gè)進(jìn)位脈沖信號carry給脈沖加減電路;當(dāng)se為高電平時(shí),計(jì)數(shù)器進(jìn)行減運(yùn)算,如果結(jié)果為零,則輸出一個(gè)借位脈沖信號borrow給脈沖加減電路。脈沖加減電路脈沖加減電路實(shí)現(xiàn)了對輸入信號頻率和相位的跟蹤和調(diào)整,最終使輸出信號鎖定在輸入信號的頻率和信號上,工作波形如圖3所示。圖3

4、脈沖加減電路工作波形除n計(jì)數(shù)器除n計(jì)數(shù)器對脈沖加減電路的輸出idout再進(jìn)行n分頻,得到整個(gè)環(huán)路的輸出信號fout。同時(shí),因?yàn)閒c=idclock/2n,因此通過改變分頻值n可以得到不同的環(huán)路中心頻率fc。dpll部件的設(shè)計(jì)實(shí)現(xiàn)了解了dpll的工作原理,我們就可以據(jù)此對dpll的各部件進(jìn)行設(shè)計(jì)。dpll的四個(gè)主要部件中,異或門鑒相器和除n計(jì)數(shù)器的設(shè)計(jì)比較簡單:異或門鑒相器就是一個(gè)異或門;除n計(jì)數(shù)器則是一個(gè)簡單的n分頻器。下面主要介紹k變??赡嬗?jì)數(shù)器和脈沖加減電路的設(shè)計(jì)實(shí)現(xiàn)。k變??赡嬗?jì)數(shù)器的設(shè)計(jì)實(shí)現(xiàn)k變??赡嬗?jì)數(shù)器模塊中使用了一個(gè)可逆計(jì)數(shù)器count,當(dāng)鑒相器的輸出信號dnup為低時(shí),進(jìn)行加法

5、運(yùn)算,達(dá)到預(yù)設(shè)模值則輸出進(jìn)位脈沖carry;為高時(shí),進(jìn)行減法運(yùn)算,為零時(shí),輸出借位脈沖borrow。count的模值ktop由輸入信號kmode預(yù)設(shè),一般為2的整數(shù)冪,這里模值的變化范圍是23-29。模值的大小決定了dpll的跟蹤步長,模值越大,跟蹤步長越小,鎖定時(shí)的相位誤差越小,但捕獲時(shí)間越長;模值越小,跟蹤步長越大,鎖定時(shí)的相位誤差越大,但捕獲時(shí)間越短。k變??赡嬗?jì)數(shù)器的verilog設(shè)計(jì)代碼如下(其中作了部分注釋,用斜體表示): module kcounter(kclock,reset,dnup,enable, kmode,carry,borrow);input kclock; /*系統(tǒng)

6、時(shí)鐘信號*/input reset; /*全局復(fù)位信號*/input dnup; /*鑒相器輸出的加減控制信號*/input enable; /*可逆計(jì)數(shù)器計(jì)數(shù)允許信號*/input 2:0kmode; /*計(jì)數(shù)器模值設(shè)置信號*/output carry; /*進(jìn)位脈沖輸出信號*/output borrow; /*借位脈沖輸出信號*/reg 8:0count; /*可逆計(jì)數(shù)器*/reg 8:0ktop; /*預(yù)設(shè)模值寄存器*/*根據(jù)計(jì)數(shù)器模值設(shè)置信號kmode來設(shè)置預(yù)設(shè)模值寄存器的值*/always (kmode)begincase(kmode)3'b001:ktop<=7;3&

7、#39;b010:ktop<=15;3'b011:ktop<=31;3'b100:ktop<=63;3'b101:ktop<=127;3'b110:ktop<=255;3'b111:ktop<=511;default:ktop<=15;endcaseend /*根據(jù)鑒相器輸出的加減控制信號dnup進(jìn)行可逆計(jì)數(shù)器的加減運(yùn)算*/always (posedge kclock or posedge reset)beginif(reset)count<=0; else if(enable)beginif(!dnup)

8、beginif(count=ktop)count<=0;elsecount<=count+1;end elsebeginif(count=0)count<=ktop;elsecount<=count-1;endendend /*輸出進(jìn)位脈沖carry和借位脈沖borrow*/assign carry=enable&(!dnup) &(count=ktop);assign borrow=enable&dnup& (count=0);endmodule 脈沖加減電路的設(shè)計(jì)實(shí)現(xiàn)脈沖加減電路完成環(huán)路的頻率和相位調(diào)整,可以稱之為數(shù)控振蕩器。當(dāng)沒有進(jìn)

9、位/借位脈沖信號時(shí),它把外部參考時(shí)鐘進(jìn)行二分頻;當(dāng)有進(jìn)位脈沖信號carry時(shí),則在輸出的二分頻信號中插入半個(gè)脈沖,以提高輸出信號的頻率;當(dāng)有借位脈沖信號borrow時(shí),則在輸出的二分頻信號中減去半個(gè)脈沖,以降低輸出信號的頻率。verilog設(shè)計(jì)代碼如下:module idcounter(idclock,reset,inc,dec,idout);input idclock; /*系統(tǒng)時(shí)鐘信號*/input reset; /*全局復(fù)位信號*/input inc; /*脈沖加入信號*/input dec; /*脈沖扣除信號*/output idout; /*調(diào)整后的輸出信號*/wire q1, qn

10、1, q2, qn2, q3, qn3;wire q4, qn4, q5, qn5, q6, qn6;wire q7, qn7, q8, qn8, q9, qn9;wire d7, d8; ffd ffd1(idclock, reset, inc, q1, qn1);ffd ffd2(idclock, reset, dec, q2, qn2); ffd ffd3(idclock, reset, q1, q3, qn3);ffd ffd4(idclock, reset, q2, q4, qn4); ffd ffd5(idclock, reset, q3, q5,qn5);ffd ffd6(idc

11、lock, reset, q4, q6,qn6);assign d7=(q9 & qn1 & q3) | (q9 & q5 & qn3);assign d8=(qn9 & qn2 & q4) | (qn9 & q6 & qn4);ffd ffd7(idclock, reset, d7, q7, qn7 );ffd ffd8(idclock, reset, d8, q8, qn8);jk ffjk(idclock, reset, qn7, qn8, q9, qn9);assign idout = (!idclock)|q9;endm

12、odule其中,ffd為d觸發(fā)器,jk為jk觸發(fā)器。當(dāng)環(huán)路的四個(gè)主要部件全部設(shè)計(jì)完畢,我們就可以將他們連接成為一個(gè)完整的dpll,進(jìn)行仿真、綜合、驗(yàn)證功能的正確性。dpll的fpga實(shí)現(xiàn)本設(shè)計(jì)中的一階dpll使用xilinx公司的foundation4.1軟件進(jìn)行設(shè)計(jì)綜合,采用xilinx的spartan2系列的xc2s15 fpga器件實(shí)現(xiàn),并使用modelsim5.5d軟件進(jìn)行了仿真。結(jié)果表明:本設(shè)計(jì)中dpll時(shí)鐘可達(dá)到120mhz,性能較高;而僅使用了87個(gè)lut和26個(gè)觸發(fā)器,占用資源很少。下面給出詳細(xì)描述dpll的工作過程。(1) 當(dāng)環(huán)路失鎖時(shí),異或門鑒相器比較輸入信號(datain

13、)和輸出信號(clockout)之間的相位差異,并產(chǎn)生k變??赡嬗?jì)數(shù)器的計(jì)數(shù)方向控制信號(dnup);(2) k變??赡嬗?jì)數(shù)器根據(jù)計(jì)數(shù)方向控制信號(dnup)調(diào)整計(jì)數(shù)值,dnup為高進(jìn)行減計(jì)數(shù),并當(dāng)計(jì)數(shù)值到達(dá)0時(shí),輸出借位脈沖信號(borrow);為低進(jìn)行加計(jì)數(shù),并當(dāng)計(jì)數(shù)值達(dá)到預(yù)設(shè)的k模值時(shí),輸出進(jìn)位脈沖信號(carry);(3) 脈沖加減電路則根據(jù)進(jìn)位脈沖信號(carry)和借位脈沖信號(borrow)在電路輸出信號(idout)中進(jìn)行脈沖的增加和扣除操作,來調(diào)整輸出信號的頻率;(4) 重復(fù)上面的調(diào)整過程,當(dāng)環(huán)路進(jìn)入鎖定狀態(tài)時(shí),異或門鑒相器的輸出dnup為一占空比50%的方波,而k變??赡嬗?jì)

14、數(shù)器則周期性地產(chǎn)生進(jìn)位脈沖輸出carry和借位脈沖輸出borrow,導(dǎo)致脈沖加減電路的輸出idout周期性的加入和扣除半個(gè)脈沖。有關(guān)一階dpll的一些討論“波紋”(ripple)消除在dpll工作過程中,環(huán)路鎖定時(shí),異或門鑒相器的輸出dnup是一個(gè)占空比50%的方波。因?yàn)樵赿pll的基本結(jié)構(gòu)中,k變模可逆計(jì)數(shù)器始終起作用。因此當(dāng)環(huán)路鎖定后,如果模數(shù)k取值較小,k變??赡嬗?jì)數(shù)器會頻繁地周期性輸出進(jìn)位脈沖信號carry和借位脈沖信號borrow,從而在脈沖加減電路中產(chǎn)生周期性的脈沖加入和扣除動作,這樣就在脈沖加減電路的輸出信號idout中產(chǎn)生了周期性的誤差,稱為“波紋”;如果模數(shù)k取值足夠大對于異

15、或門鑒相器,k應(yīng)大于m/4;對于邊沿控制鑒相器,k應(yīng)大于m/2,則這種“波紋”誤差通過除n計(jì)數(shù)器后,可以減少到n個(gè)周期出現(xiàn)一次,也就是說k變??赡嬗?jì)數(shù)器的進(jìn)位脈沖信號carry和借位脈沖信號borrow的周期是n個(gè)參考時(shí)鐘周期。為了消除“波紋”誤差,可以為k變??赡嬗?jì)數(shù)器產(chǎn)生一個(gè)計(jì)數(shù)允許信號enable,環(huán)路失鎖時(shí),此信號有效,允許計(jì)數(shù);環(huán)路鎖定時(shí),此信號無效,禁止計(jì)數(shù),則不會產(chǎn)生周期性的進(jìn)位和借位脈沖信號。“波紋”消除電路消除“波紋”誤差的同時(shí),也減小了dpll的鎖定范圍,環(huán)路的相位極限誤差(異或門鑒相器為±90°;ecpd為±180°)減小為原來的1/(1+1/2k),鑒相增益也減小到原來的1/2。使用dpll進(jìn)行fsk解調(diào)一個(gè)帶有邊沿控制鑒相器ecpd的dpll再加上一個(gè)d觸發(fā)器,就可以構(gòu)成一個(gè)fsk解調(diào)器,如圖4所示。圖4 fsk解調(diào)假設(shè)有一個(gè)輸入信號fin,它的頻率在f1和f2之間變化,dpll的中心頻率為fc,并且f1<fc<f2。如果輸入信號頻率為f1,則ecpd會產(chǎn)生一個(gè)負(fù)的相位誤差(fin落后于fout),則d觸發(fā)器的輸出始終為“1”;如果輸入信號頻率為f2

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論