傳統的模擬鎖相環(APLL)有較短的鎖定時間,可以保證參考時鐘源和輸出時鐘的穩態相差。但其中心頻點受VCO的限制而范圍較小,環路帶寬較寬;當參考源出現瞬斷或者參考時鐘源切換時,VCO輸出時鐘頻率會出現較大的相位瞬變。
隨著數字電路技術的發展,特別FPGA技術的普遍應用,采用FPGA實現全數字鎖相環(ADPLL)的應用越來越多。ADPLL設計簡單、應用方便。本文介紹一種采用FPGA實現的ADPLL,該ADPLL用于產生SDH設備的外同步輸出時鐘。該鎖相環具備傳統的APLL的俘獲時間短、有穩定的相差的優點,同時也具備DPLL的中心頻點可編程調整、能夠實現平滑源切換的優點。
1、體結構及基本工作原理
外同步輸出時鐘產生的整體結構框圖如下圖1所示:
圖1 ADPLL的整體結構框圖
方案的主體部分為一個ADPLL。ADPLL和傳統的PLL一樣,環路主要由鑒相器(PD)、濾波器(LF)、數字控制時鐘輸出(DCCO)3部分組成。PD將參考時鐘clk_ref和clk_div(由clk_out進行N分頻得到,環路鎖定后頻率和clk_ref一致)進行相差鑒別,輸出up或者down信號指示時鐘相位的超前、滯后關系。LF模塊將up和down,用高速時鐘clk_h進行相差計數,并采用數字濾波算法,給出相位調整指示adjust。DCCO模塊,由高速時鐘clk_h在相位調整指示adjust的作用下進行受控分頻得到。環路通過負反饋調整,實現輸出時鐘clk_out和clk_ref的同步。
ADPLL工作的高速時鐘(即圖1中的clk_h)采用SDH設備的系統時鐘155.52MHz,輸出的外同步時鐘clk_out頻率為2.048MHz,DCCO模塊采用受控小數分頻設計。外同步時鐘根據用戶需要可以從多路參考源中任選1路,由參考源選擇模塊實現。設計中,所有參考源的時鐘頻率都分頻到100Hz進行鑒相,即clk_ref和clk_div的頻率都為100Hz。
2、 全數字鎖相環路的詳細設計實現
輸入的各路參考源的相差是不確定的,當參考源切換時,選擇后的信號clk_ref必然會出現相位的突變;這種相位的突變最大可能達半個clk_ref周期,即源切換后瞬間,clk_ref和clk_div的相差最大可能達±5ms。源切換產生的相位跳變,在APLL中會導致壓控電壓突變,導致輸出時鐘的頻率突變,無法實現平滑源切換。而在DPLL中,可以通過調整濾波算法,逐步改變壓控電壓,保證輸出時鐘頻率的緩慢變化。
這里設計的ADPLL,我們通過2個方面來保證平滑源切換環路:1、負反饋時鐘采用初始受控分頻設計,當參考源切換時,通過受控分頻保證了clk_ref和clk_div的初始相差小于半個clk_out時鐘周期。2、通過環路濾波算法,逐步改變adjust的調整頻率,保證源切換時輸出時鐘頻率平滑變化。
2.1 初始受控分頻設計
當源切換時,輸出至少1個clk_div時鐘周期的1電平信號ref_change,指示當前參考源進行了源切換。當ref_change為1時,clk_div信號重新由clk_out在clk_ref的受控下分頻得到;同時,屏蔽掉該鑒相周期的up和down輸出,避免adjust出現誤調整。
采用如下圖2的電路邏輯設計初始受控分頻,可以保證初始分頻后,clk_div和clk_ref的相差小于半個clk_out時鐘周期,即小于244ns。清零信號clr_div只在ref_change為1時使能;鎖相環正常跟蹤情況下,clk_div為自由分頻得到。
圖2 相差小于半周的初始受控分頻設計電路
在參考源切換后,clk_out與clk_ref的初始相位關系有2種可能:clk_out超前或者滯后。當clk_out相位超前時,則上圖中ref_dly_n將clk_ref的沿踩中;當clk_out相位滯后時,則上圖中ref_dly_p將clk_ref的沿踩中;2種情況,最后都在下同一個clk_out周期取clk_ref的上沿,然后進行受控分頻。按此設計的受控分頻設計,可以保證初始受控分頻后,產生的clk_div和clk_ref的相差總在半個clk_out周期以內。
2.2 環路濾波設計
這里,我們完全采用數字電路邏輯實現環路濾波算法。環路濾波設計中,相位調整指示adjust由頻率調整控制adjust_f和相位調整控制adjust_p兩部分共同組成。
頻率調整控制adjust_f的產生:
1)、鎖相環開始工作時的初始值adjust_f[0]=0。
2)、根據當前鑒相周期鑒出的相差phase[n](用155M時鐘對up和down進行計數綜合得到),和上一個鑒相周期鑒出的相差phase[n-1]進行比較:
當(phase[n]-phase[n-1]) 》 1,則adjust_f[n]=adjust_f[n-1] – 1;
當(phase[n]-phase[n-1]) 《 -1,則adjust_f[n]=adjust_f[n-1] + 1;
其他情況,adjust_f[n]=adjust_f[n-1],保持不變。
3)、adjust_f[n]的范圍控制在±127以內。
4)、當|phase[n]-phase[n-1]|大于1000,即相差突跳了6.4us時,說明參考源可能出現突跳,此時輸出源抖動指示,重新進行初始受控分頻。
頻率調整控制,保證了輸出時鐘頻率和參考源頻率的一致。該濾波設計,保證了adjust_f的緩慢變化;參考源切換后,adjust[n]的調整也是在之前基礎上逐步變化,這可靠的保證了輸出時鐘頻率的平滑。
相位調整控制adjust_p的產生:
1)、根據當前鑒相周期鑒出的相差phase[n]來給出相位調整控制:
phase[n] 》 0,則adjust_p[n] = -1;
phase[n] 《 0,則adjust_p[n] = 1;
其他情況,則adjust_p[n] = 0;
相位調整控制的作用下,可靠的保證了鎖定情況下的穩態相差小于1個clk_h時鐘周期。
adjust[n] = adjust_f[n] + adjust_p[n]。在環路正常跟蹤或者源切換的過程中,|adjust[n] - adjust[n-1]|總是會小于2,即輸出時鐘的頻率突變小,保證了輸出時鐘clk_out的頻率穩定。
adjust》0時,DCCO需要進行相位正調整;而當adjust 《 0時,DCCO需要進行相位負調整。需要調整的adjust,在下個鑒相周期(100Hz)中平均分配。由于adjust調整值最大不超過128,所以adjust的調整頻率最大為12.8KHz。
2.3 DCCO的設計實現
155.52M為2.048M的75.9375倍,為非整數倍;同時DCCO受adjust的調整控制。即clk_out需要由clk_h進行小數受控分頻得到。
注意到2.048M的76倍頻為155.648M,和155.52M相差128K。所以2.048M可以這樣產生:155.52M時鐘在76分頻的過程中,每128K時鐘周期固定進行相位負調整1次。顯然,固定相位調整頻度遠大于 adjust相位調整頻度。
小數分頻的固定相位調整設計和adjust的相位調整控制可以綜合起來考慮:1、每128K頻率的固定相位負調整,和adjust的正調整控制信號都在128K時鐘信號的上沿位置進行。當需要進行一次正相位調整時,直接去掉1次固定負調整即可達到目的。2、而adjust的負調整在128K時鐘信號的下沿位置進行,和固定負調整錯開,避免某一個clk_out周期進行了2次負調整。
經過這種綜合調整控制后,任意一個clk_out時鐘周期,可能為clk_h的76分頻、或者75分頻。這樣,產生的clk_out時鐘的cycle-cycle固有抖動為1個clk_h周期(p-p峰峰值),即6.4ns。
3、 實際應用及鎖相環特性測試
3.1 設計實例
由于該ADPLL同時具有平滑源切換及穩態相差的優點,我們在開發SDH設備的時鐘板時,直接采用該方案設計實現2.048M外同步輸出時鐘。該設計中,FPGA芯片采用了Altera公司提供的EP1C4F400芯片,該ADPLL部分總邏輯資源占用約300個LE(1個LE包括1個4輸入的查找表和1個D觸發器)。
3.2 環路特性分析及實際測試結論
1)、頻率俘獲帶
也稱為牽引范圍。即clk_h和clk_ref頻率偏差到環路無法鎖定時的最大值。
根據環路濾波設計,每100Hz最大調整128個clk_h周期,即鎖相環路最大可調整的頻率為100Hz×128×6.4ns= 81.92ppm。即環路的牽引范圍為±81.92ppm。
采用如下圖5所示的方法進行牽引范圍的測試:
SDH設備的系統155.52M時鐘,通過一路APLL和時鐘基準源保持同步。環路的100Hz時鐘由信號發生器產生。用示波器測量鎖相環路的clk_ref1和clk_out的鎖定情況;通過信號發生器逐步改變參考時鐘clk_ref1的頻偏, 觀察能夠鎖定的最大頻偏。測試得到的牽引范圍為±80ppm左右。
2)、穩態相差
多次復位鎖相環路后,用示波器測量環路鎖定情況下圖5中的clk_ref1和clk_out時鐘相差,均在±12ns以內。
3)、輸出時鐘的cycle-cycle抖動
根據2.3節的分析,輸出時鐘抖動的p-p為6.4ns。采用示波器測試2.048MHz輸出時鐘,如下圖6所示,抖動的峰-峰值就是6.4ns,和分析一致。
圖6 clk_out的p-p抖動測試
4)、平滑源切換
按圖5,給鎖相環路提供2路同頻不同相的參考源clk_ref1和clk_ref2。用clk_ref2作觸發源,示波器設置為長余輝和快俘的模式;通過CPU接口將環路的參考源由clk_ref1更改為clk_ref2。通過示波器可以看到參考源切換過程中clk_out的相位瞬變如下圖7所示:
從圖7中可以看到,源切換過程中相位瞬變的幅度小于半個2.048M周期,這里為140ns。瞬變過程中,輸出時鐘和參考源的相差按6.4ns的粒度,逐步調整,直到最后鎖定。
從上述測試結果來看,輸出時鐘的穩態相差較小,Cycle-cycle抖動較小,有較寬的牽引范圍,能夠實現平滑源切換,完全滿足SDH設備外同步輸出時鐘的要求。
4、 總結
本文設計的全數字鎖相環獨到之處在于:該鎖相環具備數字鎖相環的平滑源切換、牽引范圍可調等優點,同時還具備模擬鎖相環的快速俘獲和有穩態相差等優點。通過實踐驗證,利用該鎖相環產生的SDH設備外同步輸出時鐘,可以很好的實現平滑源切換,俘獲時間快,同時保證了環路的穩態相差,各項時鐘指標良好。
責任編輯:gt
評論
查看更多