基于FPGA的高階全數(shù)字鎖相環(huán)的設(shè)計(jì)與實(shí)現(xiàn)
掃描二維碼
隨時(shí)隨地手機(jī)看文章
鎖相環(huán)在通信、雷達(dá)、測(cè)量和自動(dòng)化控制等領(lǐng)域應(yīng)用極為廣泛,已經(jīng)成為各種電子設(shè)備中必不可少的基本部件。隨著電子技術(shù)向數(shù)字化方向發(fā)展,需要采用數(shù)字方式實(shí)現(xiàn)信號(hào)的鎖相處理。因此,對(duì)全數(shù)字鎖相環(huán)的研究和應(yīng)用得到了越來越多的關(guān)注。
傳統(tǒng)的數(shù)字鎖相環(huán)系統(tǒng)是希望通過采用具有低通特性的環(huán)路濾波器,獲得穩(wěn)定的振蕩控制數(shù)據(jù)。對(duì)于高階全數(shù)字鎖相環(huán),其數(shù)字濾波器常常采用基于DSP 的運(yùn)算電路。這種結(jié)構(gòu)的鎖相環(huán),當(dāng)環(huán)路帶寬很窄時(shí),環(huán)路濾波器的實(shí)現(xiàn)將需要很大的電路量,這給專用集成電路的應(yīng)用和片上系統(tǒng)SOC(system on chip)的設(shè)計(jì)帶來一定困難。另一種類型的全數(shù)字鎖相環(huán)是采用脈沖序列低通濾波計(jì)數(shù)電路作為環(huán)路濾波器,如隨機(jī)徘徊序列濾波器、先N 后M 序列濾波器等。這些電路通過對(duì)鑒相模塊產(chǎn)生的相位誤差脈沖進(jìn)行計(jì)數(shù)運(yùn)算,獲得可控振蕩器模塊的振蕩控制參數(shù)。由于脈沖序列低通濾波計(jì)數(shù)方法是一個(gè)比較復(fù)雜的非線性處理過程,難以進(jìn)行線性近似,因此,無法采用系統(tǒng)傳遞函數(shù)的分析方法確定鎖相環(huán)的設(shè)計(jì)參數(shù)。不能實(shí)現(xiàn)對(duì)高階數(shù)字鎖相環(huán)性能指標(biāo)的解藕控制和分析,無法滿足較高的應(yīng)用需求。
本文提出了一種基于比例積分(PI)控制算法的高階全數(shù)字鎖相環(huán)。給出了該鎖相系統(tǒng)的具體結(jié)構(gòu),建立了系統(tǒng)數(shù)學(xué)模型,并對(duì)其系統(tǒng)性能進(jìn)行了理論分析。采用MATLAB 軟件對(duì)系統(tǒng)進(jìn)行了仿真實(shí)驗(yàn)。應(yīng)用EDA 技術(shù)設(shè)計(jì)了該鎖相系統(tǒng),并用FPGA 予以實(shí)現(xiàn)。
2 全數(shù)字鎖相環(huán)的結(jié)構(gòu)及工作原理
基于比例積分控制算法的三階全數(shù)字鎖相環(huán)的系統(tǒng)結(jié)構(gòu)如圖1 所示。該系統(tǒng)由數(shù)字鑒相器(DPD)、數(shù)字環(huán)路濾波器(DLF)和數(shù)控振蕩器(DCO)三個(gè)部件組成。
圖1 三階全數(shù)字鎖相環(huán)系統(tǒng)結(jié)構(gòu)圖
本鎖相系統(tǒng)中由于數(shù)控振蕩器采用累加器的結(jié)構(gòu),因此,累加器輸出的并行碼就是數(shù)控振蕩器的輸出相位碼B,它反映了輸入信號(hào)和輸出信號(hào)之間的瞬時(shí)相位差。鑒相器中的寄存器是由一組D 觸發(fā)器構(gòu)成。DCO 的輸出相位碼B 并行送到D 觸發(fā)器的D 端,在輸入信號(hào)的正向過零點(diǎn)對(duì)D 觸發(fā)器采樣,D 觸發(fā)器組的輸出E 就表示該采樣時(shí)刻的瞬時(shí)相位差,從而完成了數(shù)字鑒相功能。
數(shù)字環(huán)路濾波器的主要作用是抑制噪聲及高頻分量,并且控制著環(huán)路相位校正的速度與精度。為了提高鎖相系統(tǒng)的性能,設(shè)計(jì)了基于PI 控制算法的二階數(shù)字濾波器。其工作原理是對(duì)鑒相器輸出的相位誤差信號(hào)經(jīng)一階積分環(huán)節(jié)、二階積分環(huán)節(jié)和比例環(huán)節(jié)調(diào)節(jié)后,分別產(chǎn)生積分控制參數(shù)NP1 和NP2,以及比例控制參數(shù)NI,然后取這三個(gè)控制參數(shù)之和作為數(shù)控振蕩器的控制參數(shù)。為使DLF 輸出的控制碼組在同一瞬間并行送入DCO,在這兩個(gè)環(huán)路部件之間接入一緩沖寄存器。
數(shù)控振蕩器是由全加器和寄存器構(gòu)成的累加器組成。若累加器位長(zhǎng)為N,則低位輸入端NL 接DLF的控制碼組G,高位NH 接DCO 自由振蕩頻率0 f 的控制碼組C(該參數(shù)可由設(shè)計(jì)者設(shè)定)。當(dāng)控制碼組G 均為‘0’時(shí),DCO 輸出端最高位AN 的輸出信號(hào)的頻率便是DCO 的自由振蕩頻率f0 。在環(huán)路鎖定過程中,控制碼組G 不是全為零,此時(shí)累加器的累加結(jié)果將進(jìn)位而改變累加器的分頻系數(shù),從而改變DCO 輸出信號(hào)的頻率,實(shí)現(xiàn)比例積分控制參數(shù)對(duì)本地估算信號(hào)的控制作用,最終達(dá)到鎖相的目的。
3 數(shù)字鎖相環(huán)系統(tǒng)性能的理論分析
3.1 鎖相環(huán)的系統(tǒng)結(jié)構(gòu)
若采樣周期很短,并且把數(shù)字鑒相器、數(shù)字環(huán)路濾波器和數(shù)控振蕩器的增益系數(shù)歸并到環(huán)路總增益一起考慮,可畫出鎖相環(huán)在Z 域的系統(tǒng)結(jié)構(gòu)如圖2 所示。
圖2 中θi(Z)為鎖相環(huán)的輸入信號(hào);θo(Z)? 為鎖相環(huán)的輸出信號(hào); K 為環(huán)路總增益; Ka 為比例環(huán)節(jié)系數(shù); Kb 為一階積分環(huán)節(jié)系數(shù); Kc 為二階積分環(huán)節(jié)系數(shù)。
由圖2 可以分別寫出該鎖相環(huán)開環(huán)、閉環(huán)和誤差Z 域傳遞函數(shù):
3.2 鎖相環(huán)系統(tǒng)的穩(wěn)態(tài)分析
3.2.1 系統(tǒng)的穩(wěn)定性
由離散系統(tǒng)的奈奎斯特判據(jù)可知,環(huán)路系統(tǒng)穩(wěn)定的充分必要條件是閉環(huán)傳遞函數(shù)的特征根必須全部位于Z 平面的單位圓內(nèi),只要有一個(gè)在單位圓外,系統(tǒng)就不穩(wěn)定。由式(2)可得環(huán)路的特征方程為:
利用朱例(Jury)穩(wěn)定判據(jù),可以根據(jù)系統(tǒng)閉環(huán)特性方程的系數(shù)來判別特征根是否位于Z 平面的單位圓內(nèi),從而判別系統(tǒng)是否穩(wěn)定。經(jīng)分析推導(dǎo)可得,該三階數(shù)字鎖相環(huán)系統(tǒng)穩(wěn)定的所有條件為:
3.2.2 系統(tǒng)跟蹤誤差
由系統(tǒng)誤差傳遞函數(shù)可以計(jì)算環(huán)路在各種不同輸入信號(hào)作用下的穩(wěn)態(tài)跟蹤誤差,即:
θi(Z) 為輸入信號(hào), He(Z) 為鎖相系統(tǒng)誤差傳遞函數(shù)。由式(6)所求得的本系統(tǒng)對(duì)應(yīng)于各種典型相位輸入信號(hào)的穩(wěn)態(tài)跟蹤誤差列于表1。
由表1 可知,本鎖相系統(tǒng)對(duì)于相位階躍、頻率階躍和頻率斜升輸入信號(hào)的穩(wěn)態(tài)跟蹤誤差為零。
4 鎖相系統(tǒng)的設(shè)計(jì)實(shí)現(xiàn)與仿真
依據(jù)圖1 鎖相環(huán)系統(tǒng)的結(jié)構(gòu),利用Xilinx 公司的ISE 設(shè)計(jì)軟件,采用自頂向下的模塊化設(shè)計(jì)方法,用VHDL 對(duì)全數(shù)字鎖相環(huán)的各個(gè)部件分別進(jìn)行編程設(shè)計(jì),然后對(duì)該系統(tǒng)做綜合設(shè)計(jì)和仿真。最后,采用Xilinx 公司的sparnⅡ系列的FPGA 器件實(shí)現(xiàn)了鎖相系統(tǒng)的硬件功能。
本鎖相系統(tǒng)的設(shè)計(jì)參數(shù)如下:鑒相器中D 觸發(fā)器的位長(zhǎng)為16;DLF 內(nèi)二個(gè)積分環(huán)節(jié)中累加器的位長(zhǎng)均為16;DCO 中累加器的位長(zhǎng)為24,累加器的時(shí)鐘頻率fclk 為8MHz,比例積分控制碼組的字長(zhǎng)G=14,自由振蕩頻率 f0 控制碼組的字長(zhǎng)C=10。
選擇不同的比例系數(shù)Ka 和積分系數(shù)Kb 、Kc ,可以改變K1 、K2 、K3 的參數(shù)值,進(jìn)而可根據(jù)本鎖相系統(tǒng)的穩(wěn)定條件式(5),判斷系統(tǒng)是否穩(wěn)定。表2 列出了幾種典型參數(shù)所對(duì)應(yīng)的鎖相系統(tǒng)穩(wěn)定性分析結(jié)果。
表2 中設(shè)
根據(jù)本系統(tǒng)在Z 域的傳遞函數(shù)和表2 中的設(shè)計(jì)參數(shù)K1 、K2 、K3 ,應(yīng)用MATLAB 軟件進(jìn)行分析,得到三階全數(shù)字鎖相環(huán)在單位階躍信號(hào)作用下的系統(tǒng)仿真曲線如圖3 所示。
從圖3 中系統(tǒng)仿真曲線可以看出,仿真實(shí)驗(yàn)與理論分析的結(jié)果是一致的。調(diào)節(jié)比例和積分系數(shù)不僅能夠控制鎖相系統(tǒng)的穩(wěn)定性,還可以控制系統(tǒng)的鎖相速度。顯然,在保持系統(tǒng)穩(wěn)定的條件下,圖3(d)設(shè)計(jì)參數(shù)所對(duì)應(yīng)的系統(tǒng)鎖相速度較快。
根據(jù)本系統(tǒng)在Z 域的誤差傳遞函數(shù)和實(shí)際設(shè)計(jì)參數(shù),可以分別得到系統(tǒng)在相位階躍、頻率階躍和頻率斜升信號(hào)作用下的響應(yīng)曲線如圖4 所示。從圖4 中可以看到,系統(tǒng)對(duì)于上述信號(hào)的穩(wěn)態(tài)跟蹤誤差均為零。這與理論分析所得出的結(jié)論也是一致的。綜合考慮鎖相系統(tǒng)的穩(wěn)定性、穩(wěn)態(tài)相差和鎖相速度等性能指標(biāo), 最終選擇設(shè)計(jì)參數(shù)K1 = 2-3 , K2 = 2-6, K3 = 2-11。
圖5 給出了采用EDA 技術(shù)設(shè)計(jì)的三階全數(shù)字鎖相環(huán)的系統(tǒng)仿真波形,圖中clkin 為系統(tǒng)時(shí)鐘信號(hào),clr 為系統(tǒng)復(fù)位信號(hào), ui 為輸入信號(hào), uo 為輸出信號(hào), uo1 為二倍頻輸出信號(hào), uo2 為四倍頻輸出信號(hào)。從圖5 中可見,本鎖相系統(tǒng)可以同時(shí)得到倍頻輸出信號(hào)。
圖6 給出了用FPGA 實(shí)現(xiàn)的三階全數(shù)字鎖相環(huán)的硬件電路測(cè)試波形。系統(tǒng)仿真與硬件測(cè)試結(jié)果都表明,該系統(tǒng)能夠?qū)崿F(xiàn)鎖相功能。
4 結(jié)論
本文提出了一種基于PI 控制算法的三階全數(shù)字鎖相環(huán),采用EDA 技術(shù)進(jìn)行系統(tǒng)設(shè)計(jì),并用可編程邏輯器件予以實(shí)現(xiàn)。該鎖相環(huán)具有電路結(jié)構(gòu)簡(jiǎn)單、控制靈活、跟蹤精度高、環(huán)路性能好、易于集成的特點(diǎn)。在鎖相速度和穩(wěn)定性方面優(yōu)于已有的采用脈沖序列低通濾波計(jì)數(shù)方法實(shí)現(xiàn)的數(shù)字鎖相系統(tǒng)。理論分析和仿真實(shí)驗(yàn)表明,改變比例積分控制參數(shù),可以很方便地調(diào)節(jié)鎖相系統(tǒng)的鎖相速度和穩(wěn)定性,因而簡(jiǎn)化了設(shè)計(jì)過程。硬件測(cè)試結(jié)果證實(shí),應(yīng)用EDA 技術(shù)設(shè)計(jì)的高階全數(shù)字鎖相環(huán)能夠?qū)崿F(xiàn)其鎖相功能。該鎖相環(huán)可作為功能模塊嵌入SoC 內(nèi),為各種控制系統(tǒng)提供快速、穩(wěn)定和高精度的同步信號(hào)。