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