基于FPGA的全數字鎖相環(huán)的設計
鎖相環(huán)(PLL)的理論與研究日趨完善,應用范圍遍及整個電子技術領域,如信號處理,調制解調.時鐘同步,倍頻,頻率綜合等都應用到了鎖相環(huán)技術。隨著集成電路技術的發(fā)展,集成鎖相環(huán)和數字鎖相環(huán)技術日趨成熟,不僅能夠制成頻率較高的單片集成鎖相環(huán)路,還可以把整個系統(tǒng)集成到一個芯片上去,實現所謂的片上系統(tǒng)SOC。因此,可以把全數字鎖相環(huán)路(ADPLL)作為一個功能模塊嵌入SOC,構成片內鎖相環(huán)。這里在簡單介紹片內全數字鎖相環(huán)系列結構的同時,給出一種智能控制捕獲范嗣中全數字鎖相環(huán)(ADPLL)的設計方法,并進行仿真和實踐驗證。
2 ADPLL的結構及工作原理
圖1給出全數字鎖相環(huán)(ADPLL)的基本結構。主要由數字鑒相器DPD,數字環(huán)路濾波器DLF,數控振蕩器DC0,分頻器4部分組成,其中心頻率為fc。DPLL是一種通過相位反饋來控制系統(tǒng)的電路結構。根據輸入信號Fin和本地時鐘輸出信號Fout之間的相位誤差信號送入數字環(huán)路濾波器,并對相對誤差進行平滑濾波,生成控制信號carry和bor—row,數字振蕩器根據控制信號調節(jié)反饋,使輸出信號Fout的相位逐漸跟蹤輸入信號Fin的相位,最終達到鎖定。
3 ADPLL各模塊的功能和具體實現方法
3.1 數字鑒相器
常用的鑒相器有2種類型:異或門(X0R)鑒相器和邊沿控制鑒相器(ECPD),設計中采用異或門鑒相器。異或門鑒相器用于比較輸入信號Fin和輸出信號Fout之間的相位差,并輸出誤差信號Dout,Dout作為計數的方向信號輸入給下一級。
3.2 數字環(huán)路濾波器
數字環(huán)路濾波器(DLF)由一個模值為變量K的可逆計數器來實現。其作用首先用于消除數字鑒相器輸出的相位誤差信號Dout中的高頻分量,保證鎖相環(huán)路性能的穩(wěn)定性和準確性:其次K變模計數器再根據鑒相器的相位誤差信號Dout來進行加減運算。若Dout是高電平時,計數器進行加運算,直到相加結果達到預設模制K,則環(huán)路濾波器輸出一個進位脈沖信號carry給數控振蕩器;若Dout是低電平時,計數器在模值K的基礎上進行減運算,直到為零,并輸出一個借位信號borrow給數控振蕩器:當環(huán)路鎖定或只有隨機干擾脈沖時,Dout是一個占空比為50%的方波,即計數器的加減數目基本相等,計數結果在K附近上下徘徊,不會產生進位或借位脈沖,大大減少了由隨機噪聲引起的對鎖相環(huán)路的誤控。也就是說,采用K計數器作為濾波器,有效的濾除了噪聲對環(huán)路的干擾。
上述代碼經過在Quartus II上編譯仿真后其波形如圖2所示。
設計中適當選取K值特別的重要。如果K值偏大,這樣計數器對少量噪聲干擾不可能計滿,就不會有進位或者借位脈沖,有利于抑制隨機噪聲;但就會使捕捉帶減小,導致環(huán)路進入鎖定的時間變長;如果K值偏小,可使環(huán)路盡快進入鎖定狀態(tài),但會減弱對噪聲的抑制能力,導致環(huán)路頻繁的產生進位或借位脈沖,造成整個系統(tǒng)不穩(wěn)定,產生相位抖動問題。所以要適當選取K值。
3.3 數控振蕩器
數控振蕩器采用的是脈沖加減電路。時鐘為2Nfc。當沒有進位/借位信號時,其輸出對外部時鐘進行二分頻;當有進位信號carry輸入時,則在原信號中插入半個脈沖,以提高原有信號的頻率;當有借位信號borrow輸入時,則減去半個脈沖,以降低原有信號的頻率。
3.4 可變分頻器
可變分頻器實際上就是一個除N計數器,是把脈沖加減電路的輸出信號再做N分頻,通過不斷調整N值的大小,使分頻器的輸出信號能與輸入信號的相位保持同步,以達到鎖相環(huán)的鎖定。
由鎖相環(huán)的整個工作過程可知,全數字鎖相環(huán)經過一些特定改良后,可在某些情況下作為滿足一定頻率要求的信號發(fā)生器使用。
4 FPGA片內系統(tǒng)結構
為了平衡系統(tǒng)的穩(wěn)定性和捕獲帶寬之間的矛盾,就要找到一個最佳的K值,使系統(tǒng)在最大可能消除干擾的前提下,捕捉帶達到最大,捕獲時間最短,其整個過程由CPU來控制。CPU的選擇主要有2種方案:①FPGA片內實現CPU;②與片外系統(tǒng)共用CPU。這里主要介紹第一種。
對于片內CPU,這里采用Ahera公司推出的NiosⅡ嵌入式軟核處理器予以實現。在系統(tǒng)中,片內寄存器,全數字鎖相環(huán)以及檢測電路均作為外設嵌入到FPGA芯片中。片內寄存器,全數字鎖相環(huán),檢測電路通過系統(tǒng)總線相連接,受到片內的NiosⅡ軟核處理器的控制,使得全數字鎖相環(huán)中的數字環(huán)路濾波器部分在工作中的參數得到優(yōu)化。此種結構使得NiosⅡ處理器和全數字鎖相環(huán)2部分集成在一塊FPGA器件中,大大提高了系統(tǒng)的穩(wěn)定性和可靠性。罔3給出片內全數字鎖相環(huán)系統(tǒng)結構框圖。
5 試驗仿真結果分析
整個系統(tǒng)經過軟硬件調試后,就對該鎖相環(huán)進行測試和驗證,采用Quartus II軟件中集成的仿真器進行仿真。圖4給出仿真波形。
可見,在有進位/借位信號輸出時,波形中自動加入/減去半個脈沖,經過幾次調整后系統(tǒng)達到鎖定狀態(tài)。
6 結語
通過在單片FPGA中實現智能全數字鎖相環(huán),NiosⅡ嵌入式處理器隨時檢測鎖相環(huán)的狀態(tài),適時調整鎖相環(huán)的參數,從而能縮短鎖相環(huán)鎖定時間,提高效率;并逐漸改進其輸出頻率的抖動特性。解決了鎖定時間與相位抖動之間的矛盾,提高了信息的傳輸效率和質量。全數字鎖相環(huán)在數字通信,數字信號處理,電力系統(tǒng)自動化等眾多領域有著極為廣泛的應用,隨著片內數字鎖相環(huán)系統(tǒng)研究的不斷深入與發(fā)展,其性能會不斷提高,其意義重大,前景廣闊。