找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 8026|回復: 0
打印 上一主題 下一主題
收起左側

鎖相環(huán)(PLL)的MATLAB仿真設計論文

[復制鏈接]
跳轉到指定樓層
樓主
ID:341983 發(fā)表于 2018-5-31 10:25 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
鎖相環(huán)的MATLAB仿真

目錄
中文摘要 3
英文摘要 4
前言 6第一章 緒論7
1.1 鎖相環(huán)的發(fā)展及國內外研究現(xiàn)狀7
1.2 本文的主要內容組織9
第二章 鎖相環(huán)的基本理論10
  2.1鎖相環(huán)的工作原理 11
    2.1.1鑒相器 11
    2.1.2 低通濾波器13
    2.1.3 壓控振蕩器15
  2.2鎖相環(huán)的工作狀態(tài)15
    2.3鎖相環(huán)的非線性工作性能分析 17
      2.3.1跟蹤性能18
      2.3.2捕獲性能18
      2.3.3失鎖狀態(tài)19
  2.4鎖相環(huán)的穩(wěn)定性20
  2.5信號流程圖21
  2.6鎖相環(huán)的優(yōu)良特性21
  2.7鎖相環(huán)的應用22
    2.7.1鎖相環(huán)在調制和解調中的應用22
    2.7.2鎖相環(huán)在頻率合成器中的應用23
2.8本章小結23
第三章鎖相環(huán)的噪聲分析24
  3.1鎖相環(huán)的輸入噪聲24
  3.2壓控振蕩器的噪聲24
  3.3相位噪聲的抑制26
  3.4本章小結27
第四章 二階鎖相環(huán)仿真及結果28
  4.1仿真介紹28
  4.2程序代碼28
  4.3仿真結果34
  4.4本章小結36
結   論38
致謝39
參考文獻40
畢業(yè)設計小結41

摘 要

鎖相環(huán)電路是使一個特殊系統(tǒng)跟蹤另外一個系統(tǒng),更確切的說是一種輸出信號在頻率和相位上能夠與輸入?yún)⒖夹盘柾降碾娐罚悄M及數(shù);旌想娐分械囊粋基本的而且是非常重要的模塊。由于鎖相環(huán)具有捕獲、跟蹤和窄帶濾波的作用,因此被應用在通信、微處理器、以及衛(wèi)星等許多領域。鎖相環(huán)是通信電路里時鐘電路的一個重要模塊。

本文詳細介紹了鎖相環(huán)設計中所涉及的各項指標計。論文首先對鎖相環(huán)的發(fā)展歷史和研究現(xiàn)狀做了介紹,然后從其基本工作原理出發(fā),以傳統(tǒng)鎖相環(huán)的結構為基礎,得到了鎖相環(huán)的數(shù)學模型,對鎖相環(huán)的跟蹤性能、捕獲性能、穩(wěn)定性以及噪聲性能等各種性能進行了分析,對鎖相環(huán)的各項指標參數(shù)進行了詳細推導,得出了鎖相環(huán)數(shù)學分析的結論。本文詳細描述了鎖相環(huán)的整體電路以及鑒頻鑒相器、環(huán)路濾波器、壓控振蕩器、分頻器等電路模塊。在分析和設計的同時,也采用MATLAB軟件對電路進行了仿真。由于MATLAB仿真軟件適合多學科、多種工作平臺且功能強大、界面友好、方便快捷、語言自然并且開放性強的大型優(yōu)秀應用軟件,已經(jīng)也已成為國內外高等院校高等數(shù)學、數(shù)值分析、數(shù)字信號處理、自動控制理論以及工程應用等課程的基本教學工具。使用Matlab對鎖相環(huán)仿真的實現(xiàn)是方便快捷的。仿真結果表明,鎖相環(huán)電路達到了設計指標要求。


前  言

    鎖相環(huán)(PLL)是一個能夠跟蹤輸入信號相位的閉環(huán)自動控制系統(tǒng)。它在無線電技術的各個領域得到了很廣泛的應用。最初,DeBellescize于1932年提出同步檢波理論,首次公開發(fā)表了對鎖相環(huán)路的描述,但并未引起普遍關注。直至1947年,鎖相環(huán)路才第一次應用于電視接收機水平和垂直掃描的同步。從此,鎖相環(huán)路開始得到了應用。由于技術上的復雜性以及較高的成本,應用鎖相環(huán)路的領域主要集中于航天方面,包括軌道衛(wèi)星的測速定規(guī)和深空探測等。性能要求較高的精密測量儀器和通信設備有時也用到它。到70年代,隨著集成電路技術的發(fā)展,逐漸出現(xiàn)了集成的環(huán)路部件、通用單片集成鎖相環(huán)路以及多種專用集成鎖相環(huán)路,鎖相環(huán)逐漸變成了一個成本低、使用簡單的多功能組件,這就為鎖相技術在更廣闊的領域應用提供了條件。隨著數(shù)字技術的發(fā)展,相應出現(xiàn)了各種數(shù)字鎖相環(huán),它們在數(shù)字信號傳輸?shù)妮d波同步、位同步、相干解調等方面發(fā)揮了重要的作用。

    在鎖相環(huán)的開發(fā)、設計研究領域,目前已經(jīng)探索出多種途徑。Lindsey和Chie 講述了到1981年他們在該領域出色完成的理論研究和實驗工作。不過,大量的研究都致力于通過不同的方式實現(xiàn)環(huán)路鑒相器的機械化,而對于環(huán)路濾波器的設計研究則較少。典型的設計方法只是簡單地實現(xiàn)了在模擬鎖相環(huán)中應用廣泛的離散式環(huán)路濾波器。這種方法存在缺陷,因為在設計過程中沒有考慮到在任何采樣數(shù)據(jù)系統(tǒng)中都固有的計算延遲。這些延遲會使環(huán)路帶寬比根據(jù)連續(xù)時間方程計算出的結果更寬,指定帶寬和動態(tài)下的穩(wěn)態(tài)相位誤差也會更大,進而降低整個環(huán)路的穩(wěn)定性。

    長久以來,鎖相環(huán)一直是相位相干通信系統(tǒng)的基石。模擬鎖相環(huán)一直占據(jù)著統(tǒng)治地位。隨著微電子學領域的快速發(fā)展,具備巨大優(yōu)勢的數(shù)字化系統(tǒng)開始取代相應的模擬系統(tǒng)。目前的趨勢是用數(shù)字化方式設計和實現(xiàn)鎖相環(huán)。

第一章 緒 論

1.1 鎖相環(huán)的發(fā)展及國內外研究現(xiàn)狀

    鎖相環(huán)(PLL-Phase Locked L00P)是自動頻率控制和自動相位控制技術的融合。人們對鎖相環(huán)的最早研究始于20世紀30年代,其在數(shù)學理論方面的原理,30年代無線電技術發(fā)展的初期就己出現(xiàn)。1930年建立了同步控制理論的基礎,1932年法國工程師貝爾賽什(Bellescize)發(fā)表了鎖相環(huán)路的數(shù)學描述和同步檢波論,第一次公開發(fā)表了對鎖相環(huán)路的數(shù)學描述【1】。鎖相技術首先被用在同步接收中,為同步檢波提供一個與輸入信號載波同頻的本地參考信號,同步檢波能夠在低信噪比條件下工作,且沒有大信號檢波時導致失真的缺點,因而受到人們的關注,但由于電路構成復雜以及成本高等原因,當時沒有獲得廣泛應用。

    到了1943年鎖相環(huán)路第一次應用于黑白電視接收機水平同步電路中,它可以抑制外部噪聲對同步信號的干擾,從而避免了由于噪聲干擾引起的掃描隨機觸發(fā)使畫面抖動的象,使熒光屏上的電視圖像穩(wěn)定清。隨后,在彩色電視接收機中鎖相電路用來同步彩色脈沖串。從此,鎖相環(huán)路開始得到了應用,迅速發(fā)展。

五十年代,隨著空間技術的發(fā)展,由杰費(Jaffe)和里希廷(Rechtin)研制成功利用鎖相環(huán)路作為導彈信標的跟蹤濾波器,他們第一次發(fā)表了含有噪聲效應的鎖相環(huán)路線性理論析文章,并解決了鎖相環(huán)路最佳設計化問題【2】?臻g技術的發(fā)展促進了人們對鎖相環(huán)路及其理論的進一步探討,極大地推動了鎖相技術的發(fā)展。

六十年代初,維特比(Viterbi)研究了無噪聲鎖相環(huán)路的非線性理論問題, 發(fā)表了相干通信原理的論文。最初的鎖相環(huán)都是利用分立元件搭建的,由于技術和成本方面的原因,所以當時只是用于航天、航空等軍事和精密測量等領域。集成電路技術出現(xiàn)后,直到1965年左右,隨著半導體技術的發(fā)展,第一塊鎖相環(huán)芯片出現(xiàn)之后【3】,鎖相環(huán)才作為一個低成本的多功能組件開始大量應用各種領域。最初的鎖相環(huán)是純模擬的(APLL),所有的模塊都由模擬電路組成,它大多由四象限模擬乘法器來構建環(huán)路中的鑒相器,環(huán)路濾波器為低通濾波器(由電阻R電容C組成),壓控振蕩器的結構多種多樣。由于APLL在穩(wěn)定工作時,各模塊都可以認為是線性工作的,所以也稱為線性鎖相環(huán)LPLL(Linear Phase.hckedbop)。APLL對正弦特性信號的相位跟蹤非常好,它的環(huán)路特性主要由鑒相器的特性決定。其主要用于對信號的調制。   

70年代,林特賽(Undsy)和查理斯(Chanes)在做了大量實驗的基礎上進行了有噪聲的一階、二階及高階PLL的非線性理論分析。隨著人們對鎖相技術的理論和應用進行的深入廣泛的研究,伴隨著數(shù)字電路的發(fā)展,鑒相器部分開始由數(shù)字電路代替,其它部分仍為模擬電路,這種鎖相環(huán)就是最初的數(shù)字鎖相環(huán)(DPLL),準確的名稱為數(shù);旌湘i相環(huán)(Mixed-single PLL)。隨著數(shù);旌湘i相環(huán)技術和理的不斷發(fā)展和完善,其成為了鎖相環(huán)的主流。

現(xiàn)在隨著通信行中對低成本、低功耗、大帶寬、高數(shù)據(jù)傳輸速率的需求, 集成電路不斷朝著高集成度、低功耗的方向發(fā)展【4】。低功耗、高工作頻率、低電壓的鎖相環(huán)設計中,主要的挑戰(zhàn)是設計合適的壓控振蕩器和高頻率的分頻器,針對這方面的研究,設計師們不斷提出不同的技術,如壓控振蕩器和分頻器由原來的串接改為堆疊結構、DH-PLL結構等,隨著設計人員的不斷努力,鎖相壞的性能不斷提高,現(xiàn)在已經(jīng)有工作頻率達50GHz的鎖相環(huán),同時也在通信和航空航天等領域中發(fā)揮著越來越重要的作要。

國外自第一個鎖相環(huán)集成產品問世以來,幾十年問發(fā)展極為迅速,產品種類繁多,工藝日新月異。目前,除某些特殊用途的鎖相環(huán)路外,幾乎全部集成了,已生產出數(shù)百個品種,F(xiàn)在,鎖相技術己經(jīng)成為一門系統(tǒng)的理論科學,它在通信、雷達、航天、精密測量、計算機、紅外、激光、原子能、立體聲、馬達控制以及圖像等技術部門獲得了廣泛的應用。

   美國國家半導體(Nation Semi Conductor)于2003年6月宣布推出的LMx243x系列鎖相環(huán)芯片,其操作頻率高達3GHz以上,適用于無線局域網(wǎng)、5.8GHz室內無繩電話、移動電話及基站等應用方案。低功耗、超低的相位噪聲(正;辔辉胍艨蛇_到—219dBcmz)使其突顯優(yōu)勢。

國內的浩凱微電子(上海)有限公司于2007年底研發(fā)出具有完全自主知識產權的高性能時鐘鎖相環(huán)IP系列產品,目前該系列產品已經(jīng)過MPW硅驗證。該鎖相環(huán)系列采用全新的結構,獨特的電荷泵和差分VCO的設計,可以抑制電源和襯底噪聲對VCO的影響以確保PLL有非常低的噪聲,差分VCO的獨特設計可以輸出時鐘維持50%占空比且與VCO同頻,由于不需要倍頻振蕩,VCO本身的功耗可降為常規(guī)設計的四分之一,有效降低了功耗。相比國外而言,我國國內的IC設計水平相對比較落后,模擬設計環(huán)節(jié)更是薄弱,PLL的技術幾乎被國外壟斷,國內很少有企業(yè)掌握高性能PLL核心技術, 產品更是少。CPPLL作為應用最廣泛的一種鎖相環(huán),雖然它的理論己經(jīng)比較成熟,但是它的設計與實現(xiàn)涉及到信號與系統(tǒng)、集成電子學、版圖、半導體工藝和測試等方面,難度比較大。

1.2 本文的主要內容組織

   第一章對鎖相環(huán)的發(fā)展和國內外研究現(xiàn)狀進行了介紹,說明了本課題研究的

重要意義。

   第二章介紹了鎖相環(huán)的基本原理,介紹了鎖相環(huán)的基本構成、數(shù)學模型、工作狀態(tài)及、信號流程應用及信號流程。

   第三章分析了了鎖相環(huán)噪聲的產生原因,并在數(shù)學模型上作了說明,并給出了設計建議。

   第四章是二階環(huán)仿真源程序代碼及仿真結果。

第二章 鎖相環(huán)的基本理論

鎖相環(huán)作為一個系統(tǒng),主要包含三個基本模塊:鑒相器(Phase Detector:PD)、低通濾波器(LowPass Filter:LPF),亦即環(huán)路濾波器(L00P Filter:LF),和壓控振蕩器(Voltage Controlled Oscillator:VCO)。這三個基本模塊組成的鎖相環(huán)為基本鎖相環(huán),亦即線形鎖相環(huán)(LPLL),如圖2.1所示。

圖2.1鎖相環(huán)原理圖

     當鎖相環(huán)開始工作時,輸入?yún)⒖夹盘柕念l率與壓控振蕩器的固有振蕩頻率總是不相同的,即,這一固有頻率差必然引起它們之間的相位差不斷變化,并不斷跨越角。由于鑒相器特性是以相位差為周期的,因此鑒相器輸出的誤差電壓總是在某一范圍內擺動。這個誤差電壓通過環(huán)路濾波器變成控制電壓加到壓控振蕩器上,使壓控振蕩器的頻率趨向于參考信號的頻率,直到壓控振蕩器的頻率變化到與輸入?yún)⒖夹盘柕念l率相等,并滿足一定條件,環(huán)路就在這個頻率上穩(wěn)定下來。兩個頻率之間的相位差不隨時間變化而是一個恒定的常數(shù),這時環(huán)路就進入“鎖定”狀態(tài)。

當環(huán)路已處于鎖定狀態(tài)時,如果輸入?yún)⒖夹盘柕念l率和相位發(fā)生變化,通過環(huán)路的控制作用,壓控振蕩器的頻率和相位能不斷跟蹤輸入?yún)⒖夹盘栴l率的變化而變化,使環(huán)路重新進入鎖定狀態(tài),這種動態(tài)過程稱為環(huán)路的“跟蹤”過程。而環(huán)路不處于鎖定和跟蹤狀態(tài),這個動態(tài)過程稱為“失鎖”過程。

    從上述分析可知,鑒相器有兩個主要功能:一個是頻率牽引,另一個是相位鎖定。實際中使用的鎖相環(huán)系統(tǒng)還包括放大器、分頻器、混頻器等模塊,但是這些附加的模塊不會影響鎖相環(huán)的基本工作原理,可以忽略。

2.1 鎖相環(huán)的工作原理

    鎖相環(huán)作為一個系統(tǒng),主要包含三個基本模塊:鑒相器【4】、低通濾波器,亦即環(huán)路濾波器,和壓控振蕩器。在本節(jié)首先分析鑒相器、環(huán)路濾波器和壓控振蕩器.

2.1.1 鑒相器

    鎖相環(huán)中的鑒相器(PD)通常由模擬乘法器組成,利用模擬乘法器組成的鑒相器電路如圖示:

                  

圖2.2 模擬鑒相器電路

鑒相器的工作原理是:設外界輸入的信號電壓和壓控振蕩器輸出的信號電壓分別為:

                 (2.1)     

                  (2.2)

式中的為壓控振蕩器在輸入控制電壓為零或為直流電壓時的振蕩角頻率,稱為電路的固有振蕩角頻率。則模擬乘法器的輸出電壓為:

                 (2.3)

鑒相器的傳輸特性為:

圖2.3 鑒相器的傳輸特性

鑒相器有兩個主要功能:一個是頻率牽引,另一個是相位鎖定。實際中使用的鎖相環(huán)系統(tǒng)還包括放大器、分頻器、混頻器等模塊,但是這些附的模塊不會影響鎖相環(huán)的基本工作原理,可以忽略。

鑒相器的電路種類很多,大致可以分為四種常用類型:

    1.乘法鑒相器。一般應用在模擬鎖相環(huán)(LPLL)中,即線性鎖相環(huán),鑒相的范圍是[+90°,-90°];

    2.異或門鑒相器。較多應用于數(shù)字鎖相環(huán)中,鑒相范圍同為[+90°,-90°]中,要考慮鑒相器輸入的兩個信號是對稱的還是非對稱的,如是非對稱還要考慮其對PLL增益及鎖相寬度的影響;

    3.JK觸發(fā)器型鑒相器。這種鑒相器由邊沿觸發(fā),利用邊沿間的間隔進行鑒相,相位誤差為[+180°,-l80°];

    4.鑒頻鑒相器(phase—frequency detector)。其優(yōu)勢就在于失鎖時,它的角頻率容易描述。這種角頻率的描述就可以實現(xiàn)鑒頻的功能。鑒相范圍為[+360°,-360°]。

2.1.2低通濾波器

    低通濾波器(LF)的將上式2.3中的和頻分量濾掉,剩下的差頻分量作為壓控振蕩器的輸入控制電壓。即為:

           (2.4)

式中的為輸入信號的瞬時振蕩角頻率,分別為輸入信號和輸出信號的瞬時位相,根據(jù)相量的關系可得瞬時頻率和瞬時位相的關系為:

   

即   

                                         (2.5)                                  則,瞬時相位差

               (2.6)

                                          

對兩邊求微分,可得頻差的關系式為:

         (2.7)

上式2.7等于零,說明鎖相環(huán)進入相位鎖定的狀態(tài),此時輸出和輸入信號的頻率和相位保持恒定不變的狀態(tài),為恒定值。當上式不等于零時,說明鎖相環(huán)的相位還未鎖定,輸入信號和輸出信號的頻率不等,隨時間而變。其數(shù)學模型為:

圖2.4 環(huán)路濾波器模型

環(huán)路濾波器的分類:

1.RC積分濾波器。這是結構最簡單的低通濾波器,它具有低通特性,且相位滯后。當頻率很高的時候,幅度趨于零,相位滯后接近于

    2.無源比例積分濾波器;

3.有源比例積分濾波器。它由運算放大器組成,高增益的有源比例積分濾波器又稱為理想積分濾波器。

2.1.3壓控振蕩器

    壓控振蕩器(VCO)【6】的壓控特性如圖2.5所示:

2.5壓控振蕩器特性

該特性說明壓控振蕩器的振蕩頻率以為中心,隨輸入信號電壓線性地變化,變化的關系如下:  

                          (2.8)

     上式說明當隨時間而變時,壓控振蕩器(VCO)的振蕩頻率也隨時間而變,鎖相環(huán)進入“頻率牽引”,自動跟蹤捕捉輸入信號的頻率,使鎖相環(huán)進入鎖定的狀態(tài),并保持的狀態(tài)不變。

2.2鎖相環(huán)的工作狀態(tài)

鎖相環(huán)有四種工作狀態(tài),即鎖定狀態(tài)、失鎖狀態(tài)、捕獲過程和跟蹤過程【7】。

    1.鎖定狀態(tài):整個環(huán)路己經(jīng)達到輸入信號相位的穩(wěn)定狀態(tài)。它指輸出信號相位等于輸入信號相位或者是兩者存在一個固定的相位差,但頻率相等。在鎖定狀態(tài)時,壓控振蕩器的電壓控制信號接近平緩。

    2.失鎖狀態(tài):環(huán)路的反饋信號與鎖相環(huán)輸入信號的頻率之差不能為零的穩(wěn)狀態(tài)。當環(huán)路的結構設計有問題,或者是輸入信號超出了鎖相環(huán)的應用范圍的時候都會進入失鎖狀態(tài)。這個狀態(tài)意味著壞路沒有正常工作。

    3.捕獲過程:指環(huán)路由失鎖狀態(tài)進入鎖定狀態(tài)的過程。這個狀態(tài)表明環(huán)路已經(jīng)開始進入正常工作,但是還沒有達到鎖定的穩(wěn)態(tài)。此過程應該是一個頻率和相位誤差不斷減小的過程。

     4.跟蹤過程:是指在PLL環(huán)路處于鎖定狀態(tài)時,若此時輸入信號頻率或相位因其它原因發(fā)生變化,環(huán)路能通過自動調節(jié),來維持鎖定狀態(tài)的過程。由于輸入信號頻率或者相位的變化引起的相位誤差一般都不大,環(huán)路可視作線性系統(tǒng)。PLL的這四種狀態(tài)中,前兩個狀態(tài)稱為靜態(tài),后兩個狀態(tài)稱為動態(tài)【8】。優(yōu)秀的設計可以使PLL在上電后立刻進入捕獲狀態(tài),從而快速鎖定。

    一般用四個參數(shù)指標來描述PLL的系統(tǒng)頻帶性能:

    1.同步帶:它指的是環(huán)路能保持靜態(tài)鎖定狀態(tài)的頻率范圍。當環(huán)路鎖定時,逐步增大輸入頻率,環(huán)路最終都能保持鎖定的最大輸入固有頻差。

    2.失鎖帶:鎖相環(huán)路穩(wěn)定工作時的動態(tài)極限。也就是說PLL在穩(wěn)定工作狀態(tài)時,輸入信號的跳變要小于這個參數(shù),PLL才能快速鎖定。若輸入信號的跳變大于該參數(shù)而小于捕獲帶,則環(huán)路還是能鎖定,但是需要較長的時間。

    3.捕獲帶:只要反饋信號和輸入信號的頻差在這一范圍內,環(huán)路總會通過捕獲而再次鎖定,隨著捕獲過程的進行,反饋信號的頻率向著輸入信號頻率方向靠近,經(jīng)過一段時間后,環(huán)路進入快捕帶過程,最終達到鎖定。

   4.快捕帶:在此頻差范圍內,環(huán)路不需要經(jīng)歷周期跳躍就可達到鎖定,實現(xiàn)捕獲過程。

2.6鎖相環(huán)不同帶寬捕獲示意圖【5】

     當相關頻率變化比較小時,相位誤差e大小將與頻率的變換量成比例。而如果頻率偏移達到某一特定值時,稍有變換PLL將失去捕獲相位的能力,最終失鎖。這一特定值就稱作PLL的同步帶。這個頻率范圍也稱作PLL穩(wěn)定的靜態(tài)極限范圍。在失鎖時,相位誤差將無限增加下去,同步帶內,信號的捕獲時間也是最長的。捕獲的穩(wěn)定性也較差。

    頻率階躍信號作為輸入信號進入PLL時(時刻頻率階躍的大小是),如果此階躍信號引起PLL的失鎖,那么就稱這個頻率階躍值為鎖出頻率值,這個范圍叫做鎖相環(huán)出鎖頻率。這個階躍信號頻差值小于PLL的同步帶。在這里,同步帶可以看作是頻率緩慢變化到此范圍使鎖相環(huán)失鎖的極值;而出鎖頻率是突然變化到此階躍值而引起PLL失鎖。而且出鎖范圍也可以理解為PLL穩(wěn)定的動態(tài)范圍,在頻率階躍信號的跳變不超過出鎖范圍時PLL是滿足穩(wěn)定條件的。

如果有一頻差值使得平均相位誤差的斜率變小,且VCO輸出的頻率值會越來越接近輸入信號的頻率,最終環(huán)路系統(tǒng)將重新鎖定,這一關鍵值稱作入鎖頻率。   

假如輸入信號頻率與輸出信號頻率的偏移量低于捕獲帶,則PLL將要鎖定。這個過程稱作快捕過程,它快于入鎖過程,而這個捕獲范圍也小于入鎖范圍。

PLL捕獲的過程包含頻率捕獲與相位捕獲兩個過程,通常頻率捕獲過程所需要的時間稱為頻率捕獲時間(或頻率牽引時間);相位捕獲過程所需要的時間稱為快捕時間(或相位捕獲時間)。一般頻率捕獲時間總是大于相位捕獲時間的,所以常說的捕獲時間就是指頻率捕獲時間,不考慮相位捕獲時間的影響。

2.3鎖相環(huán)的非線性工作性能分析

    當鎖相環(huán)的相位誤差大于時,正弦鑒相器將不再能夠線性化,環(huán)路成為非線性系統(tǒng),其非線性性能表現(xiàn)為以下三種情況:已處于鎖定狀態(tài)的鎖相環(huán),當輸入信號頻率或壓控振蕩器自由振蕩頻率變化過大或變化速度過快時,使環(huán)路相位誤差增大到鑒相器的非線性區(qū),這種非線性環(huán)路的性能為非線性跟蹤性能【9】;從接通到鎖定的捕獲過程中,相位誤差的變化范圍是很大的,環(huán)路處于非線性狀

態(tài);失鎖狀態(tài)時環(huán)路的頻率牽引現(xiàn)象。

2.3.1跟蹤性能

    環(huán)路非線性跟蹤性能指標包括穩(wěn)態(tài)相位誤差見、同步帶和最大同步掃描速,在這里從環(huán)路動態(tài)方程對其進行分析。輸入固定頻率信號的條件下,鎖相環(huán)路的動態(tài)方程可變?yōu)椋?/font>

                       (2.9)            

環(huán)路鎖定時瞬時相差等于零,且鑒相器輸出誤差信號和壓控振蕩器控制信號均為直流,由此可得環(huán)路的穩(wěn)態(tài)相位誤差為:

                      (2.10)

上式2.10中為環(huán)路濾波器的直流增益。理想二階環(huán)的,其穩(wěn)態(tài)相位誤差為:對于已經(jīng)鎖定的環(huán)路,緩慢增加其固有頻率,環(huán)路如果還能保持鎖定,則有解。使上式有解的環(huán)路固有頻差的最大值就是環(huán)路的同步帶,即:

                          (2.11)

則可得理想二階環(huán)路的同步帶:

                               (2.12)

上式2.12成立的前提是環(huán)路濾波器和壓控振蕩器都有無限大的線性工作范圍,這是不符合實際的。理想二階環(huán)的同步帶是有限的,它往往受限于壓控振蕩器的最大控制范圍。理想二階環(huán)可以跟蹤頻率斜升信號,其穩(wěn)態(tài)相位誤差為。加大頻率斜升信號的斜率R,就可能使環(huán)路進入非線性跟蹤狀態(tài)。進一步加大R,環(huán)路就可能失鎖。使環(huán)路不致失鎖的尺的最大值就是最大同步掃描速率。在輸入頻率斜升信號的條件下有:

                    (2.13)

把理想二階壞的傳輸算子代入上式2.13可得鎖定時壞路的相位誤差為:

                          (2.14)

上式無解,意味著環(huán)路失鎖,因此理想二階環(huán)的最大同步掃描速率為:

                                      (2.15)

2.3.2捕獲性能

    實際工作過程中,鎖相環(huán)初始狀態(tài)往往是失鎖狀態(tài)。環(huán)路經(jīng)由失鎖進入鎖定狀態(tài),需要經(jīng)歷一個捕獲過程。捕獲過程分為頻率捕獲和相位捕獲兩個過程。在相位捕獲中環(huán)路相位誤差不會發(fā)生周期跳躍,捕獲時間比較短,因此相位捕獲也叫做快捕。與相位捕獲相比,頻率捕獲時間較長,它構成了捕獲時間的主要部分。一般而言,捕獲過程中環(huán)的瞬時相差將在大范圍內變化,使捕獲過程表現(xiàn)為一種非線性現(xiàn)象。要想獲得環(huán)路捕獲性能的全部結果,需要求解環(huán)路非線性動態(tài)方程,二階環(huán)路的動態(tài)方程是二階非線性微分方程,在數(shù)學上是無法精確求解的,只能用近似求解的方法求解。理想二階環(huán)的方程為:

       (2.16)

設環(huán)路輸入信號頻率固定,則

                                    (2.17)

代入并簡化,可得理想二階環(huán)軌跡方程:


             (2.18)   


由上式可得到理想二階環(huán)的捕獲特性,如下表

2.6理想二階環(huán)的捕獲特性

捕獲帶

快補帶

捕獲時間

快補時間

最大捕獲掃描率

   

實際情況中環(huán)路的捕獲帶不會為無窮大【10】,它受到壓控振蕩器最大頻率范圍的限制。

2.3.3失鎖狀態(tài)

    鎖相環(huán)失鎖時,具有頻率牽引現(xiàn)象。當環(huán)路失鎖時,環(huán)路中誤差電壓為上下不對稱的周期性差拍信號,此差拍電壓的直流分量使壓控振蕩器的平均頻率向輸入信號頻率靠近,從而使環(huán)路輸出信號的平均頻差小于環(huán)路固有頻差。

2.4鎖相環(huán)的穩(wěn)定性

    鎖相環(huán)是一個負反饋系統(tǒng),要工作正常,首先必須穩(wěn)定,不穩(wěn)定就不能實現(xiàn)相位的自動調節(jié)。通常的系統(tǒng)穩(wěn)定性,是指系統(tǒng)在有限輸入的作用下輸出有限響應。        

對于線形系統(tǒng)而言,其穩(wěn)定性與輸入信號的大小無關,只取決于系統(tǒng)傳遞函數(shù)極點的位置。線形系統(tǒng)穩(wěn)定的必要和充分條件,是系統(tǒng)閉環(huán)傳遞函數(shù)的所有點都具有負實部,或者說都位于s平面的左半部。

鎖相環(huán)路本質是一個非線性系統(tǒng),它的穩(wěn)定性是一個非線性問題。非線性系統(tǒng)的穩(wěn)定性取決于系統(tǒng)本身和輸入。因此,通常把非線性系統(tǒng)的穩(wěn)定性分為強干擾作用下和弱干擾作用下的穩(wěn)定性問題,或者叫大穩(wěn)定性和小穩(wěn)定性問題。對于鎖相環(huán)來說,前者相當于環(huán)路失鎖而處于捕獲狀態(tài),后者相當于同步狀態(tài)。對于大穩(wěn)定性問題,主要研究環(huán)路的捕捉問題。同步狀態(tài)是環(huán)路的線形工作狀態(tài),所以小穩(wěn)定性問題實際上是一個線形系統(tǒng)的穩(wěn)定性問題。

判斷系統(tǒng)穩(wěn)定性的方法,通常叫巴克豪森準則【11】。對于一個反饋系統(tǒng),如果其環(huán)路增益超過1,同時環(huán)路相移超過,即同時滿足起振的振幅條件和位條件,那么此反饋系統(tǒng)是不穩(wěn)定的,巴克豪森準則判斷系統(tǒng)穩(wěn)定性的條件是:


                                    (2.19)


    公式2.19中是增益臨界頻率,為開環(huán)增益達到0dB時的頻率。相位臨界頻率,為開環(huán)相移達到萬時的頻率。

對于閉環(huán)不穩(wěn)定的環(huán)路必有對于閉環(huán)穩(wěn)定的環(huán)路,必有ωT>ωK;閉環(huán)臨界的情況為。在工程中,閉環(huán)臨界的穩(wěn)定情況實際是不穩(wěn)定的,因為實際電路中總有引起各種參數(shù)變化的因素,產生附加相移,這些都會使一個臨界穩(wěn)定的壞路不穩(wěn)定。所以,實際使用的環(huán)路不但是穩(wěn)定的而且要遠離臨界條件。這就是“相位裕度”的問題,定義為丌環(huán)增益降至OdB時開環(huán)相移量與π的差值,此概念可以說明環(huán)路穩(wěn)定的程度。

    在實際的鎖相環(huán)電路中,不可避免地存在一些寄生相移,它們引入了額外的高頻極點,不利于環(huán)路的穩(wěn)定性。環(huán)路相位裕度的理論值太小,考慮到寄生相移的影響,則實際相位裕度可能更小,會使環(huán)路不穩(wěn)定。

2.5信號流程圖

     鎖相環(huán)的原理框圖如下:

2.7鎖相環(huán)原理框圖

其工作過程如下:

    1壓控振蕩器的輸出Uo經(jīng)過采集并分頻;

   2.輸出和基準信號同時輸入鑒相器;

    3.鑒相器通過比較上述兩個信號的頻率差,然后輸出一個直流脈沖電壓Ud;

    4.Ud進入到濾波器里面,濾除高頻成分后得到信息Ue;

    5.Ue進入到壓控震蕩器VCO里面,控制頻率隨輸入電壓線性地變化;

    6.這樣經(jīng)過一個很短的時間,VCO的輸出就會穩(wěn)定于某一期望值。

2.6鎖相環(huán)的優(yōu)良特性

    鎖相環(huán)廣泛應用于無線領域,是其自身具有較好的特性:

    1.載波跟蹤特性。無論輸入鎖相環(huán)的信號是已調制好的或未調制的,只要信號中包有載波 頻率成分就可將環(huán)路設計成一個窄帶跟蹤濾波器,跟蹤輸入信號載波成分的頻率與相位變化,環(huán)路輸出信號就是需要提。ɑ驈椭疲┑妮d波信號。這就是環(huán)路的載波跟蹤特性。

載波跟蹤特性包含這三重含義:一是窄帶。環(huán)路可以有效地濾除輸入信號伴隨的噪聲和干擾。環(huán)路主要是利用環(huán)路濾波器的低通特性來實現(xiàn)輸入信號的載頻上的窄帶帶通特性的,這比制作普通的窄帶帶通濾波器容易得多。在高載頻上,用鎖相環(huán)路可將通帶做到幾赫茲那么窄,這是普通帶通濾波器難以實現(xiàn)的。二是跟蹤。環(huán)路可以在保持窄帶特性的情況下跟蹤輸入載波頻率的漂移。普通帶通濾波器的頻率特性是固定的,為了能接收載頻漂移的輸入信號,濾波器的通帶帶寬必須設計漂移范圍,因而無法利用窄帶特性來過濾噪聲與干擾。三是可將弱輸入載波信號放大到強信號輸出。因為環(huán)路輸出的是壓控振蕩器的信號,它是輸入弱載波信號頻率與相位的真實復制品,其幅度則比輸入信號強的多。

    2.調制跟蹤特性。只要讓環(huán)路有適當寬度的低頻通帶,壓控振蕩器輸出信號的頻率與相位就能跟蹤輸入調頻或調相信號的頻率與相位的變化,即得到輸入角調制信號的復制品,這就是調制跟蹤特性。利用環(huán)路的調制跟蹤特性,可以制成角調制信號的調制器與解調器。

    3.低門限特性。鎖相環(huán)路不像一般非線性器件那樣,門限取決于輸入信噪比,而是由環(huán)路信噪比決定的。一般環(huán)路的通頻帶總比環(huán)路輸入端的前置通頻帶窄的多,因而環(huán)路信噪比明顯高于輸入信噪比,環(huán)路能在低輸入信噪比條件下工作,即具有低門限的優(yōu)良特性。這樣,只要將環(huán)路設計成窄帶,就可把淹沒在噪聲中的微弱信號提取出來。這樣的環(huán)路用于解調調頻、調相信號時,可取得門限擴展的效果;用于解調數(shù)字調制信號時,可使誤碼率降低。

2.7鎖相環(huán)的應用

2.7.1.鎖相環(huán)在調制和解調中的應用

調頻波的特點是頻率隨調制信號幅度的變化而變化。壓控振蕩器的振蕩頻率取決于輸入電壓的幅度。當載波信號的頻率與鎖相環(huán)的固有振蕩頻率相等時,壓控振蕩器輸出信號的頻率將保持不變。若壓控振蕩器的輸入信號除了有鎖相環(huán)低通濾波器輸出的信號外,還有調制信號,則壓控振蕩器輸出信號的頻率就是以為中心,隨調制信號幅度的變化而變化的調頻波信號。由此可得調頻電路可利用鎖相環(huán)來組成,由鎖相環(huán)組成的調頻電路組成框圖下圖所示。

2.8鎖相環(huán)組成的調頻電路

根據(jù)鎖相環(huán)的工作原理和調頻波的特點可得解調電路組成框圖如圖2.8所示。

2.7.2.鎖相環(huán)在頻率合成電路中的應用

在現(xiàn)代電子技術中,為了得到高精度的振蕩頻率,通常采用石英晶體振蕩器。但石英晶體振蕩器的頻率不容易改變,利用鎖相環(huán)、倍頻、分頻等頻率合成技術,可以獲得多頻率、高穩(wěn)定的振蕩信號輸出。輸出信號頻率比晶振信號頻率大的稱為鎖相倍頻器電路;輸出信號頻率比晶振信號頻率小的稱為鎖相分頻器電路。鎖相倍頻和鎖相分頻電路的組成框圖下圖所示。

2.8鎖相倍頻和鎖相分頻電路

圖中的N大于1時,為分頻電路;當時,為倍頻電路。

2.8本章小結

    本章對鎖相環(huán)系統(tǒng)的基本原理及組成部件進行了概括介紹,對鎖相環(huán)系統(tǒng)的捕獲、跟蹤性能,動態(tài)特性以及鎖相環(huán)的自身特性等一些基本性能、概念給出了相關說明,指出鎖相環(huán)路所以能夠得到如此廣泛的應用,是由其獨特的優(yōu)良性能所決定的。它具有載波跟蹤特性,作為一個窄帶跟蹤濾波器,提取淹沒在噪聲之中的信號,在深空測控中有著廣泛的應用。

第三章鎖相環(huán)的噪聲分析

鎖相環(huán)的輸入信號和各個模塊都包括了噪聲源,其輸出信號必然包含噪聲。噪聲是鎖相環(huán)的重要特性,設計中必須考慮。本章節(jié)主要分析了輸入信號的噪聲和壓控振蕩器的噪聲。在實際的工作過程中,壓控振蕩器的相位噪聲是鎖相環(huán)最主要的噪聲。

31鎖相環(huán)的輸入噪聲

    如下所示,以采用RC積分濾波器的鎖相環(huán)為例。設輸入和輸出信號。則由前面章節(jié)可得出傳輸函數(shù)為:

                  (3.1)

    如果輸入相位偏差不隨時間變化,即為純正弦信號。當時,。同樣,假設變化緩慢,則上式的分母會接近,所以仍然等于1,這表明輸出相位跟隨輸入相位,或者說是輸出頻率跟隨輸入頻率。

    如果變化非?,上式表明輸出相位偏差氣,減小并最終為零,使得“,即輸入相位或者頻率變化太快,鎖相環(huán)不能跟蹤輸信號。輸入信號的相位噪聲被壞路中的低通濾波器整形最后出現(xiàn)在輸出端。為了減小噪聲,環(huán)路帶寬應該盡量小,但這以降低鎖定范圍、限制捕獲范圍、降低穩(wěn)定性為代價。

32壓控振蕩器的噪聲

    VCO的相位噪聲可以被認為是一個外加信號,如下圖3.1所示。在此假設,是不相關的。假設=0,即表示輸入信號的相位偏差為零,輸入信號為一個嚴格的周期信號。得到從的傳遞函數(shù):

                   (3.2)

由上所得的輸入噪聲和傳遞函數(shù)有相同的極點,但是它包括了兩個零點,具有高通性。

    原點上的零點表示,如果變化緩慢,則很小。因為在鎖定條件下,VC0的相位變化通過PD變成了電壓,加到VCO的控制輸入端,使相位朝相反的方向變化。由于VCO的電壓相位轉變對緩慢變化的控制電壓有無窮的增益,負反饋抑制了輸出相位變化。

PLL可以簡化為下圖結構:一個理想的積分器位于負反饋環(huán)中,在輸入端

產生了一個“虛地’,因此,對于緩慢變化的。,則=0。

3.1圖簡單的鎖相環(huán)VCO噪聲模擬

假設變化很快,則的大小,以及環(huán)路增益都相應減小,這樣,也會使“虛地”產生變化。當變化接近,環(huán)路增益由于低通濾波器而減小。

從公式(3.2)可知,當s→∞時,有。即當變化非?鞎r環(huán)路相當于開環(huán)狀態(tài)。

利用壓控振蕩器傳遞函數(shù):,將電源加一個很小的階躍q,則輸出為:

     (3.3)

由上式有時間常數(shù)為1/。為了使PLL有快的鎖定特性,盡量將取大。

為了減小VCO的相位噪聲的影響,環(huán)路帶寬應該盡量取大,而這與抑制輸入相位噪聲將環(huán)路噪聲帶寬盡量減小相矛盾。實際工程中,輸入信號主要來自晶體振蕩器,噪聲非常小,所以,PLL的輸入相位噪聲主要來自內部的VCO,因此可以將環(huán)路帶寬適當取大。

3.3相位噪聲的抑制

鎖相環(huán)的抖動主要是由相位噪聲或邊帶引起的。而產生隨機抖動和相位噪聲的原因,可以簡單認為是電源噪聲、襯底噪聲和器件噪聲。邊帶則基本上是由控制路徑上的周期性擾動引起的。

結合實際,抖動產生的原因如有:

1.電源噪聲和襯底噪聲,引起了受電壓影響的電容(如MOS管的Cgd)的變化,導致振蕩器頻率的變化?梢园央娫春鸵r底也作為VCO的控制電壓來分析VCO的頻率特性;

2.襯底噪聲,襯底噪聲會導致器件閾值電壓的改變;

3.器件噪聲(熱噪聲、閃爍噪聲),閃爍噪聲隨著振蕩器(VCO)的頻率慢慢變化,它能夠通過增加PLL的帶寬來抑制。熱噪聲可以通過版圖的方法減小。減小噪聲要增加器件面積。

    在PLL設計過程中,應當盡量遵循以下原則來減小抖動:

    1.將緩沖控制電壓(buffered control voltage)作為電源電壓。

    2.用緩沖控制電壓去產生偏置電流,電流源隔離。

    3.采用Cascode電流源或鏡像電流源,可以將敏感性降到O.5%。

    4.用阱器件來做電流源和環(huán)路濾波電容。

    5.將控制電壓做在阱上面(避免襯底的影響)。

  • 控制電壓僅與阱器件連接,不與引腳直接連接。

3.4本章小結

本章對鎖相環(huán)系統(tǒng)噪聲進行了概括介紹,對鎖相環(huán)系統(tǒng)的輸入噪聲,相位噪聲給出了相關說明及減小噪聲的一些措施,指出鎖相環(huán)路設計中應該盡可能的減小噪聲帶來的影響,實際意義很重要。

第四章二階鎖相環(huán)仿真及結果

4.1仿真介紹

    仿真使用的軟件是MATLAB7.0。由于MATLAB仿真軟件適合多學科、多種工作平臺且功能強大、界面友好、方便快捷、語言自然并且開放性強的大型優(yōu)秀應用軟件,已經(jīng)也已成為國內外高等院校高等數(shù)學、數(shù)值分析、數(shù)字信號處理、自動控制理論以及工程應用等課程的基本教學工具。使用Matlab對鎖相環(huán)仿真的實現(xiàn)是方便快捷的。

仿真所采有的是二階鎖相環(huán)。這是由于我們實際應用中的絕大多數(shù)PLL,或者是二階的,或者是通過忽略高階效應(至少在初步設計時)而被設計成近似的二階環(huán)路。鑒于二階鎖相環(huán)在實際應用的意義,所以在仿真采用了二階鎖相環(huán)。



  1. % File: c6_nltvde.m
  2. w2b=0; w2c=0;                                                                      % initialize integrators
  3. yd=0; y=0;                                                                                    % initialize differential equation
  4. tfinal = 50;                                                                           % simulation time
  5. fs = 100;                                                                                    % sampling frequency
  6. delt = 1/fs;                                                                           % sampling period
  7. npts = 1+fs*tfinal;                                              % number of samples simulated
  8. ydv = zeros(1,npts);                                               % vector of dy/dt samples
  9. yv = zeros(1,npts);                          % vector of y(t) samples
  10. %
  11. % beginning of simulation loop
  12. for i=1:npts
  13.    t = (i-1)*delt;                                                            % time
  14.    if t<20
  15.       ydd = 4*exp(-t/2)-3*yd*abs(y)-9*y;                % de for t<20
  16.    else
  17.       ydd = 4*exp(-t/2)-3*yd-9*y;                                            % de for t>=20
  18.    end
  19.    w1b=ydd+w2b;                                                                                                                % first integrator - step 1
  20.    w2b=ydd+w1b;                                                                                                                % first integrator - step 2
  21.    yd=w1b/(2*fs);                                                                                                     % first integrator output
  22.    w1c=yd+w2c;                                                                                                                % second integrator - step 1
  23.    w2c=yd+w1c;                                                                                                                % second integrator - step 2
  24.    y=w1c/(2*fs);                                                                                                      % second integrator output
  25.    ydv(1,i) = yd;                                                                                                     % build dy/dt vector
  26.    yv(1,i) = y;                                                                                                                   % build y(t) vector  
  27. end                                                                                                                                                % end of simulation loop
  28. plot(yv,ydv)                                                                                                                       % plot phase plane            
  29. xlabel('y(t)')                                                                                                                       % label x axis
  30. ylabel('dy/dt')                                                                                                                    % label y zxis
  31.                                             % End of script file.
  32.                                            % File: pllpost.m
  33.                                            %
  34. kk = 0;
  35. while kk == 0
  36. k = menu('Phase Lock Loop Postprocessor',...
  37.         'Input Frequency and VCO Frequency',...
  38.         'Input Phase and VCO Phase',...
  39.         'Frequency Error','Phase Error','Phase Plane Plot',...
  40.         'Phase Plane and Time Domain Plots','Exit Program');
  41.         if k == 1
  42.                 plot(t,fin,'k',t,fvco,'k')
  43.                 title('Input Frequency and VCO Freqeuncy')
  44.                 xlabel('Time - Seconds');ylabel('Frequency - Hertz');pause
  45.         elseif k ==2
  46.                 pvco=phin-phierror;plot(t,phin,t,pvco)
  47.                 title('Input Phase and VCO Phase')
  48.                 xlabel('Time - Seconds');ylabel('Phase - Radians');pause
  49.         elseif k == 3
  50.                 plot(t,freqerror);title('Frequency Error')
  51.                 xlabel('Time - Seconds');ylabel('Frequency Error - Hertz');pause
  52.         elseif k == 4
  53.                 plot(t,phierror);title('Phase Error')
  54.                 xlabel('Time - Seconds');ylabel('Phase Error - Radians');pause
  55.         elseif k == 5
  56.                                        ppplot
  57.         elseif k == 6  
  58.                                        subplot(211);phierrn = phierror/pi;
  59.                 plot(phierrn,freqerror,'k');grid;
  60.                 title('Phase Plane Plot');xlabel('Phase Error /Pi');
  61.                 ylabel('Frequency Error - Hertz');subplot(212)
  62.                 plot(t,fin,'k',t,fvco,'k');grid
  63.                 title('Input Frequency and VCO Freqeuncy')
  64.                 xlabel('Time - Seconds');ylabel('Frequency - Hertz');subplot(111)
  65.         elseif k == 7
  66.                 kk = 1;
  67.         end   
  68. end                                    % End of script file.
  69.                                       % File: pllpre.m
  70.                                      %
  71. clear all                                                                                               % be safe
  72. disp(' ')                               % insert blank line
  73. fdel = input('Enter the size of the frequency step in Hertz > ');
  74. fn = input('Enter the loop natural frequency in Hertz > ');
  75. lambda = input('Enter lambda, the relative pole offset > ');
  76. disp(' ')
  77. disp('Accept default values:')
  78. disp(' zeta = 1/sqrt(2) = 0.707,')
  79. disp(' fs = 200*fn, and')
  80. disp(' tstop = 1')
  81. dtype = input('Enter y for yes or n for no  > ','s');
  82. if dtype == 'y'
  83.    zeta = 1/sqrt(2);
  84.    fs = 200*fn;
  85.    tstop = 1;
  86. else         
  87. zeta = input('Enter zeta, the loop damping factor > ');
  88. fs = input('Enter the sampling frequency in Hertz > ');
  89. tstop = input('Enter tstop, the simulation runtime > ');
  90. end                                  %
  91. npts = fs*tstop+1;                     % number of simulation points
  92. t = (0:(npts-1))/fs;                      % default time vector
  93. nsettle = fix(npts/10);                    % set nsettle time as 0.1*npts
  94. tsettle = nsettle/fs;                       % set tsettle
  95.         % The next two lines establish the loop input frequency and phase
  96.           % deviations.
  97. fin = [zeros(1,nsettle),fdel*ones(1,npts-nsettle)];
  98. phin = [zeros(1,nsettle),2*pi*fdel*t(1:(npts-nsettle))];
  99. disp(' ')                                 % insert blank line
  100.        % end of script file pllpre.m     
  101.                                        % File: pll2sin.m
  102. w2b=0; w2c=0; s5=0; phivco=0;                                                        %initialize
  103. twopi=2*pi;                                                                                                                              % define 2*pi
  104. twofs=2*fs;                                                                                                                              % define 2*fs
  105. G=2*pi*fn*(zeta+sqrt(zeta*zeta-lambda));                  % set loop gain
  106. a=2*pi*fn/(zeta+sqrt(zeta*zeta-lambda));                 % set filter parameter
  107. a1=a*(1-lambda); a2 = a*lambda;                                                        % define constants
  108. phierror = zeros(1,npts);                                                                           % initialize vector
  109. fvco=zeros(1,npts);                                                                                                  % initialize vector
  110. % beginning of simulation loop
  111. for i=1:npts
  112.         s1=phin(i) - phivco;                                                             % phase error
  113.         s2=sin(s1);                                     % sinusoidal phase detector
  114.         s3=G*s2;
  115.         s4=a1*s3;
  116.         s4a=s4-a2*s5;                                 % loop filter integrator input
  117.         w1b=s4a+w2b;                                                                                    % filter integrator (step 1)
  118.         w2b=s4a+w1b;                                                                                    % filter integrator (step 2)                                         
  119.         s5=w1b/twofs;                                                                                    % generate fiter output
  120.         s6=s3+s5;                                     % VCO integrator input
  121.         w1c=s6+w2c;                                                                                                  % VCO integrator (step 1)
  122.         w2c=s6+w1c;                                                                                                  % VCO integrator (step 2)
  123.         phivco=w1c/twofs;                                                                      % generate VCO output
  124.         phierror(i)=s1;                                                                                    % build phase error vector
  125.         fvco(i)=s6/twopi;                                                                      % build VCO input vector
  126. end
  127.                                        % end of simulation loop
  128. freqerror=fin-fvco;                                                                                                                % build frequency error vector
  129.                                             % End of script file.
  130. function [] = pplane(x,y,nsettle)
  131.                        % Plots the phase plane with phase in the range (-pi,pi)
  132. ln = length(x);
  133. maxfreq = max(y);
  134. minfreq = min(y);
  135. close                                   % Old figure discarded
  136. axis([-1 1 1.1*minfreq 1.1*maxfreq]);         % Establish scale
  137. hold on                                 % Collect info for new fig
  138. j = nsettle;
  139. while j < ln
  140.     i = 1;
  141.     while x(j) < pi & j < ln
  142.         a(i) = x(j)/pi;
  143.         b(i) = y(j);
  144.         j = j+1;
  145.         i = i+1;
  146.     end
  147.     plot(a,b,'k')
  148.     a = [];
  149.     b = [];
  150.     x = x - 2*pi;
  151. end
  152. hold off
  153. title('Phase-Plane Plot')
  154. xlabel('Phase Error / Pi')
  155. ylabel('Frequency Error in Hertz')
  156. grid                                          % End of script file.
  157.                                              % File: ppplot.m
  158.                  % ppplot.m is the script file for plotting phase plane plots. If the
  159. % phase plane is constrained to (-pi,pi) ppplot.m calls pplane.m.
  160. kz = 0;
  161. while kz == 0
  162.     k = menu('Phase Plane Options',...
  163.         'Extended Phase Plane',...
  164.         'Phase Plane mod(2pi)',...
  165.         'Exit Phase Plane Menu');
  166.     if k == 1
  167.         phierrn = phierrn/pi;
  168.         plot(phierrn,freqerror,'k')
  169.         title('Phase Plane Plot')
  170.         xlabel('Phase Error /Pi')
  171.         ylabel('Frequency Error - Hertz')
  172.         grid
  173.         pause
  174.      elseif k == 2
  175.          pplane(phierrn,freqerror,nsettle+1)
  176.          pause
  177.      elseif k == 3
  178.          kz = 1;
  179.      end   end                                    % End of script file.
復制代碼

43仿真結果

圖4.1 鎖相環(huán)處理框

上圖是利用MATLAB提供的函數(shù)將計算結果圖形化功能建立的。在運行程序后,就會出現(xiàn)上面的對話框,點擊點擊其中的任何一項就會出現(xiàn)相應的仿真圖形。上圖中包含了輸入頻率和VCO頻率,輸入相位和VCO相位,頻率誤差,相位誤差,相位空間波特圖,相位空間和時域,退出程序等選項。

運行程序后出現(xiàn)如下指令:

Accept the tentative values:
the first loop frequency is 5            第一循環(huán)頻率
                   Enter y for yes or n for no > y
                   Enter the loop gain >40               輸入環(huán)路增益為40
Enter the sampling frequency in Hertz > 1200         輸入采樣頻率
Enter tstop, the simulation runtime > 5       仿真時間為5秒
設置好參數(shù)后運行程序,由上我們可知環(huán)路增益為40,仿真時間為5s,采樣頻率為1200Hz。接著點擊上圖4.1中的菜單,就能得到如下仿真圖像。其中我們主要觀察輸入相位和VCO相位。
     
       圖4.2 輸入相位和VCO相位         圖4.3 相位誤差圖

圖4.2中藍線為輸入相位,綠線代表VCO相位,從圖中可以看見隨著時間的變化輸入信號相位為線性,而VCO相位則是經(jīng)歷了一段曲線后斜率與輸入信號相位斜率相同,輸出相位跟隨輸入相位,達到穩(wěn)定。圖4.3中VCO的相位也是先經(jīng)歷了一段時間的曲線后變?yōu)橐粭l直線達到穩(wěn)定。根據(jù)鎖相環(huán)的基本原理我們可知鎖相環(huán)是個反饋網(wǎng)絡,它是由輸出信號(VCO產生)與參考頻率在頻率和相位上保持同步或者保持常數(shù)。由此我們可以看出鎖相環(huán)工作后,在最初的一段時間中鎖相環(huán)開始工作,輸入信號經(jīng)過鑒相器,環(huán)路慮波器后,將輸出相位反饋給VCO壓控振蕩器,使壓控振蕩器與輸入頻率逐步實現(xiàn)同步,保持一個常數(shù),實現(xiàn)鎖定。其中經(jīng)歷了鎖相環(huán)的失鎖、跟蹤、捕獲、鎖定,從而達到最后達到穩(wěn)定狀態(tài)。從開始到達到穩(wěn)定的這段時間則為做捕獲時間。

                                        圖4.4 頻率差圖                     圖4.5 輸入頻率和VCO頻率圖

圖4..4與圖4.5也顯示了鎖相環(huán)工作后從失鎖、跟蹤、捕獲、鎖定的過程,過程。從不停的擺動到最后的直線狀態(tài),這個過程稱為鎖定過程。其中我們可以發(fā)現(xiàn)在捕捉過程中隨著捕捉次數(shù)的增加,捕捉過程也變得較慢,這說明此時的的鎖相環(huán)工作平率處在穩(wěn)定工作的動態(tài)界限內,工作正常。

4.4本章小結

本章介紹了仿真的環(huán)境以及二階鎖相環(huán)的仿真過程,并對其仿真結果進行了分析。在前三章的理論基礎上,通過使用MATLAB7.0進行了仿真。實驗結果表明:用MATLAB進行的二階鎖相環(huán)仿真達到了最初的設想,鎖相環(huán)的失鎖、跟蹤、捕獲、鎖定各個階段均有體現(xiàn)。達到了最初仿真的要求。

結   論

本文在閱讀一些文獻和對鎖相環(huán)有一定程度了解的基礎上,運用MATLAB進行了仿真。本文完成了以下工作:

  • 在掌握了鎖相環(huán)的基本原理并對文獻研究的基礎上,對鎖相環(huán)的工作原理進行了深入的分析,深入了解鎖相環(huán)技術的數(shù)學分析方法,應用此方法得到鎖相環(huán)技術的數(shù)學模型,用這些理論指導實際中的設計工作。
  • 在對基本原理和電路結構確定的基礎上,將鎖相環(huán)的整體電路進行層次化分解,即鑒頻鑒相器、低通濾波器、壓控振蕩器,并對各個模塊的工作原理和性能進行了比較詳細的分析。
  • 用MATLAB軟件對設計的鎖相環(huán)電路進行了模擬仿真,驗證了電路功能的正確與否,以及鎖相環(huán)的設計目標是否達到。

由于時間和條件的限制,在設計工作中有些工作沒有做到,留待進一步的完善,后續(xù)工作是:

  • 在運用MATLAB設計鎖相環(huán)時,并沒有引入噪聲對鎖相環(huán)的影響及相應的分析,也未對鎖相環(huán)的各項參數(shù)進行深入的討論。
  • 僅限于對鎖相環(huán)理論的研究與分析上,并沒有針對其實際中的應用研究相關的了解。
  • 在此次仿真中只對二階鎖相環(huán)進行了仿真,并沒有對其他鎖相環(huán)進行仿真和研究,也沒有進行硬件實現(xiàn)。

    目前鎖相環(huán)技術在通信中早已成熟,隨著科技的發(fā)展,目前的鎖相環(huán)都是基于半導體工藝的集成電路。對于未來而言,用鎖相環(huán)的集成化設計減小相應噪聲、提高鎖相環(huán)的頻率預測精度、硬件系統(tǒng)的運算速率以及降低干擾也是其研究的一個重要方向。



完整的Word格式文檔51黑下載地址:
鎖相環(huán)與MATLAB仿真.doc (508 KB, 下載次數(shù): 50)


分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏1 分享淘帖 頂1 踩
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網(wǎng)

快速回復 返回頂部 返回列表