锁相环
鎖相迴路（PLL: Phase-locked loops）是利用反馈（Feedback）控制原理实现的频率及相位的控制系統，其作用是将电路输出的信號与其外部的参考信號保持同步，当参考信號的频率或相位发生改变时，鎖相迴路会检测到这种变化，并且通过其内部的反馈系统来调节输出频率，直到两者重新同步，这种同步又称为“鎖相”（Phase-locked）。
鎖相迴路有許多種，最簡單的鎖相迴路會包括以及鉴相器，形成反馈迴路。振盪器產生訊號，鉴相器比較輸出訊號和輸入週期訊號之間的相位，調整振盪器輸出，設法和輸入週期訊號同步。
若讓輸出訊號和輸入訊號之間的相位一致，則兩者的頻率也會一致。因此，鎖相迴路除了讓相位一致之外，也可以追蹤輸入訊號的頻率，或是產生頻率是輸入訊號整數倍的信號。此特性可以用在電腦時脈的同步、及。
鎖相迴路常用在无线电、电信、电子计算机及其他電子設備中。鎖相迴路也可以用來解調變訊號、從高雜訊的通訊頻道中恢復原始信號、產生頻率為輸入信號頻率整數倍的頻率（頻率合成）、或在數位電路（例如微处理器）中產生準確的時鐘脈衝。因為單一的集成电路即可提供完整的鎖相迴路機能，此技術已普遍使用在現在的電子設備中，輸出頻率從1Hz以下，到數GHz。 鎖相迴路可以用賽車來說明：考慮兩部車進行的繞圈賽車，一部車代表輸入信號，另一部車代表鎖相迴路的輸出，也就是壓控振盪器（VCO）頻率。每一圈代表一個完整的週期。每小時的圈數代表頻率，兩部車之間的距離代表信號之間的相位差。
大部份賽車的過程中，兩部車都可以超過對方或落過對方，這類似鎖相迴路的非鎖相狀態。
但若有事故，賽車場會出現黃色警告旗，此時，任何一部車輛都不允許超過其他的車，也不允許被其他的車超過。此時的兩部車就代表鎖相迴路在鎖相狀態下的輸入信號和輸出信號。每一個駕駛者都會量測其車輛和其他車輛的相位差。若和前車保持的距離太遠了，會設法加速使距離拉近，若和前車保持的距離太近了，會設法減速使距離拉遠。因此，兩部車會保持固定的距離。因為車輛不允許超過其他的車，因此在相同時間內，兩車繞的圈數會相同，因此兩個信號的頻率相同。
相位和時間成正比，因此相位差可以用時間差來表示。時鐘相對其他時鐘而言，某程度上會有鎖相（固定時間差），但準確度可能有些不同。
若讓時鐘自行運作，各時鐘計時的速率會有些微的差距。例如牆上的鐘每一小時可能會比國家標準技術研究所的鐘快了幾秒，隨著時間過去，時間差會越來越大。
若要讓牆上的鐘和參考時鐘同步，可以每一週比較牆上的鐘和參考時鐘的時間（相位比較），然後調整牆上的鐘。若沒有調整，牆上的鐘和參考時鐘的偏差會越來越大。
有些時鐘有計時調整功能，若比較時鐘和標準時鐘，發現時鐘太快了，會設法讓時鐘的計時慢一點，若時鐘太慢了，會設法讓時鐘的計時快一點。若順利的話，時鐘和標準時鐘的誤差會漸漸縮小。幾週後，時鐘就會準確的對應標準時鐘（在時鐘本身的穩定性範圍內，頻率和相位都和標準時鐘一致）。
早期电动机械学中也有鎖相迴路，例如1921年的。
荷兰物理學家克里斯蒂安·惠更斯早在1673年就發現弱耦合的摆钟會有自發性同步的情形。在19世紀時，瑞利男爵發現弱耦合的風琴管及音叉也有同步的情形。1919年時，和J. H. Vincent發現二個調諧到頻率略有差異的電子振盪器，若在諧振電路中耦合，會以相同的頻率共振。電子振盪器的自動同步是由爱德华·阿普尔顿在1923年發現的。
1925年時，布里斯托尔大学電機系的大衛·羅賓森（David Robertson）教授，在威尔斯纪念大楼Great George鐘敲鐘出聲的時鐘控制電路中，引入了锁相的概念。羅賓森教授設計的鐘有一個機電裝置可以調整擺鐘的振動速率，所用的修正訊號是來自一個比較電路，在每天上午格林威治時間10點時，比較格林威治天文台的電報脈衝以及擺鐘的相位。其中除了現在電子鎖相迴路中會有的每一個組件之外，羅賓森的設計還有一個特點，其相位比較器是用繼電器邏輯的方式實現相位/頻率比較的機能，一直到1970年代之後才在電子電路中看到類似的設計。羅賓森的研究比後來1932年提出，後來命名為「鎖相迴路」（phase-lock loop）的研究要早。1932年的研究是英國科學家設法想找到可以代替埃德温·霍华德·阿姆斯特朗的超外差收音机、或的方案。在同差系統中，會將調到想要的頻率，再乘上輸入的信號。所得的輸出信號會包括原始的調變資訊。原意是想發展一種調諧電路比超外差收音机要少的電路。因為本機振盪器的頻率會快速的飄移，會有自動修正信號加到振盪器上，使其頻率和相位和輸入信號相同。此技術是在1932年時，在Henri de Bellescize發表在法文期刊L'Onde Électrique的論文中所提及。
至少從1930年代起，類比電視接收器的鎖相迴路垂直掃描和水平掃描電路，都會和廣播信號的同步信號鎖相。 西格尼蒂克在1969年推出了具有完整鎖相迴路機能的單片集成电路（例如NE565），類似技術的應用就不斷的增加。後來RCA推出了CD4046互補式金屬氧化物半導體的微功率鎖相迴路IC，是當時廣為使用的積體電路。
一个鎖相迴路电路通常由以下模块构成：
每个模块的简单原理描述如下： 鎖相迴路的理想特性是是參考時脈和回授時脈的邊緣可以對正。在PLL已經鎖定時，兩者相位的平均誤差稱為靜態相位偏移（static phase offset）或穩態相位誤差（steady-state phase error）。二個相位之間的變異稱為追隨抖动。理想上，靜態相位偏移要是0，追隨抖动越小越好。
是鎖相迴路會有的另一種抖動，是因為振盪器本身以及振盪器的頻率控制電路元件所造成。在此一層面上，已有一些技術比其他技術的性能更好。最早的數位鎖相迴路是用（ECL）組成，不過其功耗很高。若要讓鎖相迴路有小的相位雜訊，最好避免使用電晶體－電晶體邏輯（TTL）或的互補式金屬氧化物半導體（CMOS）等飽和邏輯特性的零件。
鎖相迴路的另一個理想特性是在電源及地的電壓突然變化時,其產生的時脈頻率和相位不會受到影響。這稱為電源電壓抑制比，抑制比越高越好。
若要改善輸出的相位雜訊，其VCO可以用。
鎖相迴路常用在同步應用中，例如太空和門限擴展（threshold extension）的通訊、和符號同步。鎖相迴路也用在频率调制信號的解調變。在無線電發射機中，會用PLL來合成新的頻率，是參考頻率的倍數，和參考頻率有相同的穩定度。
其他的應用有： 有些資料流，特別是高速的串列資料流（例如硬碟磁頭讀到的原始資料流），在傳送時不會將其時脈信號一起送出。接收器利用類似的參考頻率來產生時脈，再利用PLL將其時脈和接收資料的相位鎖定同步。此程序稱為。為了時脈功能，資料流中必須有夠快的資料切換，以校正PLL振盪器的頻率飄移。一般而言，會使用一些线路码（例如8b/10b），讓二次資料切換時間間隔有一個明確的上限值
若時脈和資料一起傳送，會用時脈為準來進行資料取樣。因為時脈接收後需放大，才能驅動正反器取樣資料。時脈邊緣和接收的資料窗之間會有一個有限大小的時間延遲，長度隨過程、溫度、電壓而不同。此時間延遲會限制傳送資料的速率。有一種消除延遲的方式是在接收端加入一個偏移校正（deskew）的PLL，使得每一次資料正反器的時脈都接收到的時間同相位。此應用中，常會使用一種特殊的鎖相迴路，稱為（DLL）。
所有的電子系統都會發射一些不想要的無線電訊號。有許多的機構（例如美國的联邦通信委员会）會限制這些發射的能量，以及其帶來的干擾。發射的雜訊其頻率一般會有一個尖銳的頻譜峰值（一般是在元件的工作頻率，或是其幾倍的諧波）。系統設計者可以用展頻（spread-spectrum）PLL，將頻譜上的能量分散在其他頻段，使峰值降低，以減少對高Q值接收器的干擾。例如，將工作頻率略為往上或往下調整（約1%），工作在數百MHz的元件，可以將其干擾頻譜擴展到數MHz的頻寬範圍內，這可以大幅減少對调频广播頻道（其頻寬是數萬Hz）的干擾。
一般來說，晶片的參考時脈會驅動晶片中的鎖相迴路（PLL），接著驅動晶片內的時脈分配。時脈分配一般會以平衡分配，設法讓時脈可以同時到達晶片的各個端點。其中一個端點是鎖相迴路的回授輸入。鎖相迴路的功能是比較分配的時脈以及參考時脈，並且調整分配時脈的相位以及頻率，使其分配時脈的相位以及頻率和參考輸入同步。
鎖相迴路無所不在，包括在距離數公尺的系統時鐘校準，也用在晶片中的時脈裡。有時參考信號不一定是單純的時脈信號，也有可能是有夠快資料轉換的資料流，讓鎖相迴路可以從資料流中取得正常且夠快的時脈訊號。有時參考時脈的頻率和分配時脈相同，也有可能分配時脈的頻率和參考頻率之間有有理數的比例關係。
鎖相迴路可以同步的解調變調幅（AM）信號。鎖相迴路會從調幅信號的載波中還原頻率以及相位資料。VCO收到的相位會和載波差90度，因此會調整相位差使其同步，再送到乘法器中。乘法器的輸出包括頻率信號的和以及差，再經過低通濾波後取得解調變信號。因為PLL只會針對很接近VCO輸出的載波頻率有反應，因此PLL AM偵測器有高度的選擇性以及雜訊抑制能力，這是傳統峰值型解調變器作不到的。不過，若調幅訊號的調變深度到100%，鎖相迴路可能會無法鎖定（lose lock）。 在數位無線通訊系統（例如GSM、CDMA等）中，在傳輸時會用PLL針對本地振盪器進行上轉換（up-conversion），在接收時也會對本地振盪器進行。大部份的行動電話中，此一機能已整合到單一的積體電路中，以減小行動電話的成本及體積。在基地站，因為訊號需要的高性能，需要用分立元件來達到所需的性能。GSM本地振盪器模組一般會用積體電路及分立的共振腔壓控振盪器。
鑒相器會比較兩個輸入信號，並產生和其相位差成正比的誤差信號，誤差信號會經過低通濾波，之後驅動壓控振盪器（VCO），以產生輸出相位。此輸出會透過回授迴路（可能再加上除頻器）再成為系統的回授輸入，因此形成负反馈。若輸出相位偏移，誤差信號會增加，使壓控振盪器的相位往另一個方向變化，以減少相位誤差。因此輸出相位可以鎖定另一輸入信號（稱為參考信號）的相位。
類比的鎖相迴路是由類比的鑒相器、低通濾波器以及壓控振盪器組成，形成负反馈的組態。數位的鎖相迴路則會有數位的鑒相器，也可能在參考信號、反馈路徑（或兩者都有）加上除頻器，讓PLL輸出的頻率可以維持為參考信號頻率的有理数。若將反馈路徑的除以"N"除頻器改為可程式化的吞脉冲计数器，也可以讓輸出信號的頻率是參考信號的非整數倍。
振盪器會產生週期性的輸出信號。假設一開始振盪器的頻率幾乎和參考信號相同，若振盪器的相位落後參考信號，鑒相器會增加振盪器的控制電壓，使其頻率加快。若振盪器的相位領先參考信號，鑒相器會降低振盪器的控制電壓，使其頻率減慢。因為一開始振盪器的頻率可能會和參考信號的頻率差很多。實務上的鑒相器也會回應頻率差，目的是增加可允許輸入的鎖定範圍。依應用的不同，可能會用壓控振盪器的輸出作為PLL系統的輸出，也可能是以給振盪器的控制信號作為系統輸出。 鑒相器（phase detector，簡稱PD）會產生對應二信號相位差的電壓。在鑒相器中，鑒相器的信號輸入分別是參考輸入，以及壓控振盪器（VCO）輸出的回授信號。鑒相器的輸出可以用來控制壓控振盪器，使二信號之間的相位差可以調整為定值，因此整個系統是負回授系統
不同種類的鑒相器有不同的性能特性。
例如，混频器會產生諧波，因此會產生不希望出現的頻率邊帶，也稱為參考突波（reference spurs），若希望壓控振盪器（VCO）產生的是單一頻率的訊號，這就會增加設計的複雜性。在濾波器設計需求中，會因為這部份的濾波而降低捕獲範圍，或是拉長鎖定時間。在這些應用中會使用比較複雜的數位鑒相器，其輸出不會有嚴重的參考突波問題。而且在鎖波時，其輸入的穩態的相差會接近90度。
在鎖相迴路應用中，常需要知道鎖相迴路是否有失鎖（out of lock）的情形，比較複雜的數位鑒相器會有對應失鎖的輸出信號。
數位鎖相迴路中常會使用XOR 门當作簡易鑒相器。若對線路作一些簡單的修改，也可以用在類比鎖相迴路中。 鎖相迴路濾波器（多半是低通濾波器）一般會有兩種不同的功能。
第一個功能是決定迴路的動態特性（也稱為穩定性）。這是指迴路對擾動（例如參考頻率的變動、田回授除頻器的變化，或是啟動）的響應特性。常見的考量是迴路可以鎖定的範圍（pull-in範圍、鎖定範圍、捕獲範圍），迴路鎖定的速度（lock時間，lock-up時間或安定時間）、特性等。依應用的不同，濾波器可能會是以下幾種的一種或多種：單純的比例（P，增益或衰減量）、积分（I，低通濾波器）、导数（D，高通滤波器）。迴路的參數常會用波德圖及相位裕度進行檢驗。控制理论中的常用概念（包括PID控制器）用設計此功能。
第二個功能是限制參考信號的頻率能量範圍（漣波），這是鑒相器輸出以及VCO控制輸入上的信號。此信號上若有不希望出現的頻率邊帶，即為參考突波（reference spurs）。
此模組的設計可能主要會是上述二個功能中的一個，也有可能是比較複雜的模組，設法達到上述二功能。常見的取捨可能是增加系統頻寬，但是會降低穩定值，或是加入阻尼使穩定性變好，但是降低系統反應速度，增加安定時間。上述的調整也會影響相位雜訊。
所有的鎖相迴路都會有可以調整輸出頻率的振盪器，可以是由類比電路驅動的類比振荡器（類比鎖相迴路），或是像部份數位鎖相迴路（DPLL）的作法，使用數位類比轉換器（D-A converter）。若是全數位鎖相迴路（ADPLL），會用純數位的振荡器。 可以在PLL的振盪器和回授輸入之間加入除頻器，以進行。在無線電發射器的應用中常會用到可程式的除頻器，因為可以用穩定、準確但昂貴的單一頻率石英晶体谐振器產生許多不同的頻率。
有些PLL在參考時脈和給鑒相器的參考輸入之間加入除頻器。若回授回路有除formula_1的除頻器，而參考輸入有除formula_2的除頻器，可以讓PLL的頻率為參考頻率的formula_3倍。直接給鎖相迴路較低頻率的參考輸入似乎不難，不過有時參考頻率因為其他因素而受到限制，因此會改在參考時脈和給鑒相器的參考輸入之間加入除頻器。
乘頻率的PLL也可以用將电子振荡器的輸出鎖定在參考信號的"N"次諧波來實現。此時就不用單純的鑒相器，會用諧波混合器（harmonic mixer）。諧波混合器會將參考信號變成有許多諧波的脈衝序列，。VCO的輸出會大約調整到接近其中的一個諧波。因此，想要的諧波混合器輸出（表示"N"次諧波和VCO輸出的差異）落在濾波器通帶頻率範圍內。
回授迴路中也不一定只能用除頻器。回授迴路中也可以用乘頻器或頻率混合器。乘頻器會讓VCO的輸出是參考頻率的幾分之一。也可以是這些元件的組合。例如頻率混合器加上除頻器：這可以讓除頻器運作在很低的頻率，但不會影響迴路增益。
用類比乘法器作為鑒相器，使用線性濾波器的類比PLL，可以用以下方式來推導其方程式。令鑒相器的參考輸入為formula_4，VCO的輸出為formula_5，相位分別是formula_6和formula_7。formula_8和formula_9是各信號波形的函數。則鑒相器的輸出formula_10為
VCO頻率會是VCO輸入的函數formula_12 其中formula_14為VCO的靈敏度，其單位為Hz / V， formula_15是VCO的自由運行頻率。
迴路濾波器可以用以下線性微分方程系統來表示
其中formula_10是濾波器輸入 formula_12是輸波器輸出，formula_19是 formula_20維方陣， formula_21. formula_22是濾波器的初始狀態。星號表示共轭转置。
因此PLL的系統如下 其中formula_24是初始的相位偏差量。 考慮PLL的參考輸入formula_4和VCO的輸出 formula_5是高頻訊號。 則針對任何片段可微的formula_27週期函數 formula_28 and formula_9，存在一函數 formula_30使得濾波器formula_31的輸出 在相位域上漸近等於在時域模型中濾波器的輸出（formula_33的差值，相對頻率而言很小） 此處formula_30是鑒相器特性函數。
相位差標示為formula_35 則以下的动力系统可以描述PLL的行為
此處formula_38; formula_39 是參考振盪器的頻率（假設formula_15是定值）。 考慮弦波信號
以及作為濾波器的單極點RC電路。其時域模型如下
此信號的鑒相器特性等於
因此相位域模型如下
此系統方程式和單擺的數學方程式等效
鎖相迴路也可以進行拉普拉斯变换，當做控制系統來分析。其迴路響應可以寫為下式：
其中
迴路中可以加入不同的迴路濾波器，以控制迴路特性。最簡單的濾波器是一個極點的RC電路。其迴路傳遞函數如下
迴路響應為：
這是標準的諧振子型式。其分母和以下的二階系統有關：
其中formula_55是阻尼比，formula_56是迴路的自然頻率。
針對單極點的RC濾波器
迴路的自然頻率是量測迴路的響應時間，阻尼比則是和過沖和振鈴（ringing）有關。理想上，自然頻率越高越好，阻尼比應接近0.707（臨界阻尼）。不過針對單極點濾波器，自然頻率和阻尼比兩者無法個別獨立調整。考慮臨界阻尼
另外一種比較有效的濾波器，超前－滯後濾波器（lag-lead filter），其中有一個極點和一個零點，可以用二個電阻和一個電容實現，其傳遞函數為
此濾波器有二個時間常數
自然頻率和阻尼比和時間常數的關係如下
因此給定自然頻率和阻尼比，可以針算迴路濾波器的時間常數
真實應用中的迴路濾波器設計會更複雜，可能會使用高階的濾波器去降低特定來源的相位雜訊（可以參考以下D Banerjee的參考資料）。 數位鎖相迴路可以用硬體來實現，例如用像是CMOS 4046的積體電路。不過微處理器的速度越來越快，因此若鎖相的頻率沒有到MHz的等級，這類的應用（例如精準的控制馬達速度）可以用軟體來實現鎖相迴路。用軟體實現數位鎖相迴路有幾個好處，對於反饋迴路的客製比比較簡單（包括參考信號和輸出信號的除頻、倍頻或頻率比例關係）。而且，軟體實現容易瞭解，也容易作實驗。以下是一個用MATLAB實現的數位鉴相器，這類的鉴相器強健性高，而且容易實現。
% This example is written in MATLAB
% Initialize variables vcofreq = zeros(1, numiterations); ervec = zeros(1, numiterations); % Keep track of last states of reference, signal, and error signal qsig = 0; qref = 0; lref = 0; lsig = 0; lersig = 0; phs = 0; freq = 0;
% Loop filter constants (proportional and derivative) % Currently powers of two to facilitate multiplication by shifts prop = 1 / 128; deriv = 64;
for it = 1:numiterations end 在此例子中，假設tracksig陣列中有要追蹤的參考信號。振盪器是用計數器來實現，計數器的最高位元表示振盪器開啟或是關閉。程式模擬二個D型触发器，可以作為相位和頻率的比較器。不論參考信號或回授信號出現上緣時，對應的触发器會為高準位，當二個触发器都是高準位時，會將触发器重置。二個触发器中何者為高準位，表示參考信號領先回授信號或落後回授信號。誤差信號是這二個触发器值的差值。超前－滯後濾波器是用在濾波誤差信號中入誤差信號以及其導數所得。接下來要進行整合以找到其自然頻率。
在實務上，可以在鎖相迴路的回授中加入其他的動作。例如鎖相迴路是要實現倍頻器，則振盪信號可以先除頻，再和參考信號比較。