《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 可編程邏輯 > 業(yè)界動態(tài) > 一種基于VHDL語言的全數(shù)字鎖相環(huán)的實現(xiàn)

一種基于VHDL語言的全數(shù)字鎖相環(huán)的實現(xiàn)

2009-06-25
作者:范寒柏1,陶 杰1,,王 欣2

  摘 要: 介紹一種基于VHDL語言的全數(shù)字鎖相環(huán)實現(xiàn)方法,,并用這種方法在FPGA中實現(xiàn)了全數(shù)字鎖相環(huán),作為信號解調(diào)的位同步模塊,。
  關(guān)鍵詞: VHDL;全數(shù)字鎖相環(huán),;位同步,;FPGA

?

  隨著集成電路技術(shù)的不斷進步,,數(shù)字化應(yīng)用逐漸普及,,在數(shù)字通信、電力系統(tǒng)自動化等方面越來越多地運用了數(shù)字鎖相環(huán),。它的好處在于免去了模擬器件的繁瑣,,而且成本低,、易實現(xiàn),、省資源。本文綜合以上考慮,,在一片F(xiàn)PGA中以Quartus II為平臺用VHDL實現(xiàn)了一個全數(shù)字鎖相環(huán)功能模塊,,構(gòu)成了片內(nèi)鎖相環(huán),。
  數(shù)字鎖相環(huán)是一種相位反饋控制系統(tǒng),。在數(shù)字鎖相環(huán)中,,由于誤差控制信號是離散的數(shù)字信號而不是模擬信號,與之相對應(yīng),,受控的輸出相位的改變是離散的而不是連續(xù)的;此外,,環(huán)路組成的部件也全由數(shù)字電路實現(xiàn),,故名“數(shù)字鎖相環(huán)”[1],。常用的數(shù)字鎖相環(huán)原理如圖1所示。

1 數(shù)字鎖相環(huán)的結(jié)構(gòu)及工作原理
  如圖1所示,,數(shù)字鎖相環(huán)主要由鑒相器,、K變??赡嬗嫈?shù)器、脈沖加減器,、N分頻器構(gòu)成,。
  鑒相器其實就是一個異或門,,它將輸入信號Din與位同步脈沖輸出信號Dout相異或,,比較它們之間的相位差,并輸出相位誤差信號作為K變??赡嬗嫈?shù)器的計數(shù)方向的控制信號CS。當(dāng)環(huán)路鎖定時,,這個控制信號為占空比是50%的方波。
  K變??赡嬗嫈?shù)器根據(jù)相差信號CS的變化,向不同的方向計數(shù),。當(dāng)CS為邏輯“1”時,,計數(shù)器向下計數(shù),,如果計到0,則輸出一個借位脈沖給脈沖加減器,;當(dāng)CS為邏輯“0”時,計數(shù)器向上計數(shù),,如果計到模值,,則輸出一個進位脈沖給脈沖加減器,。
  脈沖加減器是根據(jù)K變模可逆計數(shù)器輸出的進位,、借位脈沖來不斷地對本地時鐘進行調(diào)整。當(dāng)有進位脈沖時,,脈沖加減器就在本地時鐘上加入一個周期的時鐘信號;當(dāng)有借位脈沖時,脈沖加減器就在本地時鐘上扣除一個周期的時鐘信號,。如此反復(fù)不斷地對本地時鐘進行調(diào)整,,最終達到準(zhǔn)確確定出輸入信號時鐘的目的,從而實現(xiàn)位同步[2],。
  N分頻器是將脈沖加減器輸出的經(jīng)過調(diào)整以后的時鐘信號進行分頻,以減小同步誤差,。N值越大得到的同步誤差越小,。
2 數(shù)字鎖相環(huán)各部分的VHDL實現(xiàn)
  K變??赡嬗嫈?shù)器根據(jù)預(yù)設(shè)模值Kmode來設(shè)置對應(yīng)的模值寄存器的值,也即當(dāng)預(yù)設(shè)模值范圍在0~15變化時,,與之相對應(yīng)的Ktop的變化范圍為20~215,。模值的大小直接決定了數(shù)字鎖相環(huán)鎖定時間的長短,,模值越大鎖定時間越長,,反之越小。但鎖定時間越長,,鎖定時的相位誤差越小,,反之越大。這部分的VHDL設(shè)計程序[3]如下:

  有了K變??赡嬗嫈?shù)器產(chǎn)生的進位,、借位脈沖,,脈沖加減器就可以按照這兩種脈沖對本地高頻時鐘進行不斷地調(diào)整,,如圖2所示。

?


  N分頻器的設(shè)計相對簡單,,其功能是將脈沖加減器輸出的經(jīng)過了調(diào)整的本地時鐘進行N分頻,,以減小同步脈沖輸出誤差。本例暫時用32分頻代替,,其VHDL設(shè)計程序如下:

  

  按照圖1數(shù)字鎖相環(huán)原理框圖的設(shè)計理念,,設(shè)計出各個主要的功能塊,并將它們各自進行仿真,。在確認無誤后再連接起來進行綜合仿真,,以驗證設(shè)計的正確性。在綜合仿真的過程中一個最關(guān)鍵的問題就是分析各個功能塊的時序關(guān)系,、頻率關(guān)系,。
3 頻率關(guān)系、時序分析
  假設(shè)輸入信號的頻率為fi=1 200 Hz,,則位同步輸出信號頻率fo=1 200 Hz,,脈沖加減器輸出信號頻率fm2=N×fo,則其時鐘頻率fm1=2×fm2,;K變??赡嬗嫈?shù)器工作時鐘可設(shè)為M fo。這里的M,、N值一般均為2的整數(shù)次冪,,他們之間的具體關(guān)系需根據(jù)fi確定。綜合仿真的時序圖如圖3所示,。

?


  由圖3可以看出,,CS控制信號逐漸變成了占空比為50%的方波,這也從側(cè)面反映出了鎖定過程,。當(dāng)鎖相環(huán)鎖定后,,信號CODEIN出現(xiàn)連“0”和連“1”時,,也能準(zhǔn)確實現(xiàn)位同步。鎖定時間約為15.8 ms,。通過以上仿真,,驗證了設(shè)計的正確性。對于不同的設(shè)計,,只需要計算好頻率關(guān)系,、修改一下N分頻器的N值,就可以實現(xiàn)不同輸入信號的同步,。
  本文介紹的這種以VHDL語言實現(xiàn)的全數(shù)字鎖相環(huán),,是在ALTERA公司的Cyclone系列FPGA—EP1C12Q240C8上實現(xiàn)的。它僅僅需要FPGA的95個邏輯單元,,對于擁有12 060個邏輯單元的EP1C12來說,消耗的資源微乎其微,,但卻是信號的差分相干解調(diào)過程中不可或缺的重要部分,。通過以上方法介紹、仿真的實現(xiàn),,再一次體現(xiàn)了用硬件描述語言在可編程器件中實現(xiàn)數(shù)字電路的優(yōu)越性,。


參考文獻
[1] 胡春華.數(shù)字鎖相環(huán)路原理與應(yīng)用[M].上海:上海科技出版社,,1990.
[2] Phase Locked Loop(PLL) in High Speed Designs.Lattice Semiconductor Corporation[J],,AN8017~01,1997.
[3] 候伯亭,,顧新.VHDL硬件描述語言與數(shù)字邏輯電路設(shè)計[M].西安:西安電子科技大學(xué)出版社,,2003.

本站內(nèi)容除特別聲明的原創(chuàng)文章之外,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,,并不代表本網(wǎng)站贊同其觀點,。轉(zhuǎn)載的所有的文章、圖片,、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有,。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無法一一聯(lián)系確認版權(quán)者。如涉及作品內(nèi)容,、版權(quán)和其它問題,,請及時通過電子郵件或電話通知我們,以便迅速采取適當(dāng)措施,,避免給雙方造成不必要的經(jīng)濟損失,。聯(lián)系電話:010-82306118;郵箱:[email protected],。