幸运武林

基于FPGA的全數字延時鎖相環的設計

2019-04-04 03:17:40 現代電子技術2019年6期

李銳 田帆 鄧賢君 單長虹

關鍵詞: 全數字延時鎖相環; 鎖相精度; 時鐘延時; Quartus Ⅱ; 現場可編程門陣列; 電路仿真

中圖分類號: TN402?34 ? ? ? ? ? ? ? ? ? ? ? ? ? 文獻標識碼: A ? ? ? ? ? ? ? ? ? ? 文章編號: 1004?373X(2019)06?0069?03

Abstract: In allusion to the problems such as low phase?locking accuracy, slow phase?locking speed and low integration level of the traditional analog delay?locked loop (DLL), an all?digital DLL is proposed. The DLL is designed by using the electronic design automation technology. The editing and analysis of the DLL are conducted by using the Quartus Ⅱ software. The simulation results show that the DLL can perform quick lock with high precision, has strong portability, and is suitable for various application fields such as microprocessor, memory and general IC designs.

Keywords: all?digital DLL; phase?locking accuracy; clock delay; Quartus Ⅱ; FPGA; circuit simulation

0 ?引 ?言

延遲鎖相環(DLL)是通過負反饋回路,將一段延遲線的延遲鎖定在一個特定的值上。延遲鎖相環是圍繞著一條延遲可控的延遲線的負反饋系統,相對而言,鎖相環(PLL)則是圍繞著頻率可控振蕩器的負反饋系統[1],其已被廣泛用作片上系統(SoC)微處理器的時鐘發生器[2?3]。DLL與PLL的主要區別是DLL用壓控延遲線(VCDL)取代了PLL中的數控振蕩器(DCO),由于這個區別,DLL能快速對信號進行鎖定,而且抗干擾能力強、抗抖動性能好。所以DLL越來越多地被引入芯片中,作為生成穩定的延遲或多相位的時鐘信號[4]。現實中,一般將DLL分為模擬型DLL和數字型DLL。模擬DLL抗抖動的能力雖然強于數字DLL,但是其鎖定時間較長,需要反復調整才能實現鎖定。而對于數字延遲鎖相環來說,在保持足夠高的鎖相精度情況下,經過數次延時的調整就可以實現同步。

另外,模擬DLL設計較復雜,可移植性差,隨著工藝的改變,其功耗也隨之增加[5]。針對模擬DLL鎖相精度不高、鎖相速度慢、集成度低等問題,本文提出一種全數字延遲鎖相環,闡述了其工作原理,介紹了系統的電路結構以及各個模塊的設計方法,并利用Modelsim進行了仿真驗證。

1 ?全數字延遲鎖相環的系統結構與工作原理

全數字延遲鎖相環主要由鑒頻鑒相器模塊、相位測量模塊、相位調節模塊和移相輸出模塊構成,其結構見圖1。

圖1中:Clkin為給定的時鐘信號;Clkfb為經過系統內部的時鐘網絡所產生的時鐘偏移信號;鑒頻鑒相器檢測輸入信號Clkin和反饋信號Clkfb的相位差,可產生超前或滯后的相位差信息。當相位超前信號up是高電平時,對其進行計數得到超前相位差值upnum;當相位滯后信號dn是高電平時,對其進行計數得到滯后相位差值dnnum。

同時,測量Clkin的頻率,并產生一個同頻率的時鐘。相位測量模塊根據超前或者滯后信號選擇粗調或者精調,并產生相位調節的延時級數信息。相位調節模塊在同頻時鐘的作用下,根據超前或者滯后的相位差值,通過調節延時級數來調整相位的大小,最終達到相位鎖定的目的。相移輸出模塊可以將鎖定后的信號移相90°,180°,270°,得到多種相位的輸出信號,以滿足不同用途的需求。

2 ?相位調節模塊的設計

相位調節模塊主要由延時控制器構成,其結構框圖如圖2所示。

控制器根據相位測量模塊所產生的延時級數信息,分別對粗調或精調電路模塊進行延遲控制。當輸入信號超前于反饋信號時,其延時時間調整為輸入時鐘周期T減去相位超前信號up為高電平的持續時間,調整方式為粗調加精調;而當反饋信號超前于輸入信號時,只采用精調來實現延時調節。粗調一次延時[12]時鐘周期,精調分4層,每層16級。根據采樣定律,每級最多延時輸入信號的[T2],一共可以調4次,可以精確地對延時進行調整。延時鏈主要由D觸發器構成,每經過一個D觸發器可延時一個時鐘周期,粗調和精調的電路模塊中都有64級延時單元。

3 ?各個模塊的設計與仿真

3.1 ?鑒頻鑒相器模塊

鑒頻鑒相器采用Verilog語言進行設計,其實現原理是通過檢測輸入與反饋信號的上升沿,判斷其相位差,并生成超前或者滯后信號,同時對輸入信號進行計數,生成一個與輸入信號同頻率的時鐘。圖3為仿真波形。

當輸入信號 clock_in超前于反饋信號clock_fb時,產生超前信號up;當輸入信號 clock_in滯后于反饋信號clock_fb時,產生滯后信號dn。由于外部時鐘信號進入系統內部可能產生亞穩態,故需要使作用于相位調節模塊的時鐘信號與輸入信號同頻,這主要是通過采樣與變換電路來產生一個與輸入信號同頻異相的時鐘信號clockgen_out。

3.2 ?相位測量模塊

本方案是基于計數器思想的延時設計方法,延遲模塊以數字信號的上升沿和下降沿作為觸發信號分別控制輸出高低電平[6?7]。

相位測量模塊的波形圖如圖4所示,當up信號為高電平時,進行計數,輸出超前相位差值upnum;當dn信號為高電平時,進行計數,輸出滯后相位差值dnnum。其中up_cnt為相位超前時需要調節的延時級數;dn_cnt為滯后時需要調節的延時級數。

3.3 ?相位調節模塊

相位調節模塊的仿真波形如圖5所示,clk_d為經過延時鏈的時鐘,其頻率與輸入信號相同。Sel為選擇超前或者滯后信號。相位調節模塊分為粗調和精調[8],當up為高電平時,啟用粗調,粗調分為64級,然后啟用精調,精調分4層,每層16級,一共調4次。當dn為高電平時,啟用精調。該延時模塊取代了傳統DLL中的壓控延遲線,改用全數字延時模塊,使其可控性更高,受溫度的影響更小,且易于集成。

3.4 ?相移模塊

相移模塊中時鐘周期測量電路將輸入信號的周期轉化為延遲單元數N,然后,相移電路根據周期測量結果將相位鎖定后的電路輸出信號分別延遲[N4],[N2],[3N4]個單元,即分別延遲[14]周期、 [12]周期、[34]周期。得到4個時鐘相位,4個不同相位時鐘的相位差均為90°。

4 ?整體設計和仿真

全數字延時鎖相環的系統設計采用自頂向下的方法,首先,利用Verilog語言設計各個模塊,然后將各模塊的端口連接,其電路圖如圖6所示。為防止外部信號進入系統內部可能產生的亞穩態,在輸入和反饋端口后接兩個三級D觸發器clock_i與clock_f。圖中:phase_detect為鑒頻鑒相器;phase_measure為相位測量模塊;clockgen為測頻模塊;ctl_delay_link為相位調節模塊;clock_out為移相模塊。

本系統設計完成后,在輸入信號的頻率范圍5~100 MHz內取值,分別進行了系統仿真。仿真實驗證明,輸入信號在該頻率范圍內,其鎖定時間為12個輸入信號周期,鎖定精度為20 ps。以輸入頻率取5 MHz和25 MHz為例,給出了系統仿真波形如圖7和圖8所示。

圖中:clk為系統時鐘;rst_n為復位信號;clock_in為輸入信號;clock_fb為反饋信號;clock_out1,clock_out2,clock_out3,clock_out4分別為移相0°,90°,180°,270°后的系統輸出信號。

與傳統鎖相環的設計方法相比較[9],本文所提出的全數字延遲鎖相環不僅在性能上有了較大的提高,而且其延遲單元數目也大大減少,既提高了鎖相環的鎖定精度和鎖定速度,也簡化了電路結構、降低了功耗。

5 ?結 ?語

本文提出的全數字延遲鎖相環,其鎖定時間為12個輸入信號周期,鎖相范圍為5~100 MHz,鎖相精度為20 ps。仿真結果表明,該全數字延遲鎖相環具有鎖相速度快、鎖相精度高、電路結構簡單、可移植性好和易于集成的特點,可廣泛應用于系統時鐘管理,滿足不同用途的需求。

注:本文通訊作者為單長虹。

參考文獻

[1] 張剛.CMOS集成鎖相環電路設計[M].北京:清華大學出版社,2013.

ZHANG Gang. Design of CMOS integrated phase?locked loops [M]. Beijing: Tsinghua University Press, 2013.

[2] CHEN X, YANG J, SHI L. A fast locking all?digital phase?locked loop via feed?forward compensation technique [J]. IEEE transactions on very large scale integration systems, 2011, 19(5): 857?868.

[3] FAISAL M, WENTZLOFF D D. An automatically placed?and?routed ADPLL for the medradio band using PWM to enhance DCO resolution [C]// Proceedings of IEEE Radio Frequency Integrated Circuits Symposium. Seattle: IEEE, 2013: 115?118.

[4] 保慧琴,尹國福.快速鎖定的全數字延遲鎖相環研究[J].微處理機,2016,37(1):11?14.

BAO Huiqin, YIN Guofu. A fast?locking all?digital delay?locked loop [J]. Microprocessors, 2016, 37(1): 11?14.

[5] 張健.基于數字DLL時鐘發生器的設計[D].西安:西安電子科技大學,2013.

ZHANG Jian. Design of digital DLL clock generator [D]. Xian: Xidian University, 2013.

[6] 邱有剛,黃建國,李力.基于FPGA數字延遲單元的實現和比較[J].電子測量技術,2011,34(9):65?68.

QIU Yougang, HUANG Jianguo, LI Li. The implementation and comparison of DDL based on FPGA [J]. Electronic measurement technology, 2011, 34(9): 65?68.

[7] BRANDONISIO F, KENNEDY M P. First order noise shaping in all digital PLLs [C]// Proceedings of IEEE International Symposium of Circuits and Systems. Rio de Janeiro: IEEE, 2011: 161?164.

(上接第71頁)

[8] 羅寧,陳原聰,趙野.應用于全數字鎖相環的高性能數控振蕩器設計[J].微電子學與計算機,2015,32(12):59?62.

LUO Ning, CHEN Yuancong, ZHAO Ye. Design of high performance digitally controlled oscillator for all?digital phase?locked?loop application [J]. Microelectronics & computer, 2015, 32(12): 59?62.

[9] NGUYEN A T, JOSE S. Fast?locking DLL circuit and method with phased output clock: 6501312B1 [P]. 2002?12?31.

[10] 趙雯,尹軍艦,趙瀟騰,等.PLLFS快速鎖定方法的研究與設計[J].電子設計工程,2017,25(9):162?166.

ZHAO Wen, YIN Junjian, ZHAO Xiaoteng, et al. Analysis and design of fast?lock methods for PLLFS [J]. Electronic design engineering, 2017, 25(9): 162?166.

?
幸运武林