李銳 田帆 鄧賢君 單長(zhǎng)虹
關(guān)鍵詞: 全數(shù)字延時(shí)鎖相環(huán); 鎖相精度; 時(shí)鐘延時(shí); Quartus Ⅱ; 現(xiàn)場(chǎng)可編程門陣列; 電路仿真
中圖分類號(hào): TN402?34 ? ? ? ? ? ? ? ? ? ? ? ? ? 文獻(xiàn)標(biāo)識(shí)碼: A ? ? ? ? ? ? ? ? ? ? 文章編號(hào): 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
延遲鎖相環(huán)(DLL)是通過(guò)負(fù)反饋回路,將一段延遲線的延遲鎖定在一個(gè)特定的值上。延遲鎖相環(huán)是圍繞著一條延遲可控的延遲線的負(fù)反饋系統(tǒng),相對(duì)而言,鎖相環(huán)(PLL)則是圍繞著頻率可控振蕩器的負(fù)反饋系統(tǒng)[1],其已被廣泛用作片上系統(tǒng)(SoC)微處理器的時(shí)鐘發(fā)生器[2?3]。DLL與PLL的主要區(qū)別是DLL用壓控延遲線(VCDL)取代了PLL中的數(shù)控振蕩器(DCO),由于這個(gè)區(qū)別,DLL能快速對(duì)信號(hào)進(jìn)行鎖定,而且抗干擾能力強(qiáng)、抗抖動(dòng)性能好。所以DLL越來(lái)越多地被引入芯片中,作為生成穩(wěn)定的延遲或多相位的時(shí)鐘信號(hào)[4]?,F(xiàn)實(shí)中,一般將DLL分為模擬型DLL和數(shù)字型DLL。模擬DLL抗抖動(dòng)的能力雖然強(qiáng)于數(shù)字DLL,但是其鎖定時(shí)間較長(zhǎng),需要反復(fù)調(diào)整才能實(shí)現(xiàn)鎖定。而對(duì)于數(shù)字延遲鎖相環(huán)來(lái)說(shuō),在保持足夠高的鎖相精度情況下,經(jīng)過(guò)數(shù)次延時(shí)的調(diào)整就可以實(shí)現(xiàn)同步。
另外,模擬DLL設(shè)計(jì)較復(fù)雜,可移植性差,隨著工藝的改變,其功耗也隨之增加[5]。針對(duì)模擬DLL鎖相精度不高、鎖相速度慢、集成度低等問(wèn)題,本文提出一種全數(shù)字延遲鎖相環(huán),闡述了其工作原理,介紹了系統(tǒng)的電路結(jié)構(gòu)以及各個(gè)模塊的設(shè)計(jì)方法,并利用Modelsim進(jìn)行了仿真驗(yàn)證。
全數(shù)字延遲鎖相環(huán)主要由鑒頻鑒相器模塊、相位測(cè)量模塊、相位調(diào)節(jié)模塊和移相輸出模塊構(gòu)成,其結(jié)構(gòu)見(jiàn)圖1。
圖1中:Clkin為給定的時(shí)鐘信號(hào);Clkfb為經(jīng)過(guò)系統(tǒng)內(nèi)部的時(shí)鐘網(wǎng)絡(luò)所產(chǎn)生的時(shí)鐘偏移信號(hào);鑒頻鑒相器檢測(cè)輸入信號(hào)Clkin和反饋信號(hào)Clkfb的相位差,可產(chǎn)生超前或滯后的相位差信息。當(dāng)相位超前信號(hào)up是高電平時(shí),對(duì)其進(jìn)行計(jì)數(shù)得到超前相位差值upnum;當(dāng)相位滯后信號(hào)dn是高電平時(shí),對(duì)其進(jìn)行計(jì)數(shù)得到滯后相位差值dnnum。
同時(shí),測(cè)量Clkin的頻率,并產(chǎn)生一個(gè)同頻率的時(shí)鐘。相位測(cè)量模塊根據(jù)超前或者滯后信號(hào)選擇粗調(diào)或者精調(diào),并產(chǎn)生相位調(diào)節(jié)的延時(shí)級(jí)數(shù)信息。相位調(diào)節(jié)模塊在同頻時(shí)鐘的作用下,根據(jù)超前或者滯后的相位差值,通過(guò)調(diào)節(jié)延時(shí)級(jí)數(shù)來(lái)調(diào)整相位的大小,最終達(dá)到相位鎖定的目的。相移輸出模塊可以將鎖定后的信號(hào)移相90°,180°,270°,得到多種相位的輸出信號(hào),以滿足不同用途的需求。
相位調(diào)節(jié)模塊主要由延時(shí)控制器構(gòu)成,其結(jié)構(gòu)框圖如圖2所示。
控制器根據(jù)相位測(cè)量模塊所產(chǎn)生的延時(shí)級(jí)數(shù)信息,分別對(duì)粗調(diào)或精調(diào)電路模塊進(jìn)行延遲控制。當(dāng)輸入信號(hào)超前于反饋信號(hào)時(shí),其延時(shí)時(shí)間調(diào)整為輸入時(shí)鐘周期T減去相位超前信號(hào)up為高電平的持續(xù)時(shí)間,調(diào)整方式為粗調(diào)加精調(diào);而當(dāng)反饋信號(hào)超前于輸入信號(hào)時(shí),只采用精調(diào)來(lái)實(shí)現(xiàn)延時(shí)調(diào)節(jié)。粗調(diào)一次延時(shí)[12]時(shí)鐘周期,精調(diào)分4層,每層16級(jí)。根據(jù)采樣定律,每級(jí)最多延時(shí)輸入信號(hào)的[T2],一共可以調(diào)4次,可以精確地對(duì)延時(shí)進(jìn)行調(diào)整。延時(shí)鏈主要由D觸發(fā)器構(gòu)成,每經(jīng)過(guò)一個(gè)D觸發(fā)器可延時(shí)一個(gè)時(shí)鐘周期,粗調(diào)和精調(diào)的電路模塊中都有64級(jí)延時(shí)單元。
3.1 ?鑒頻鑒相器模塊
鑒頻鑒相器采用Verilog語(yǔ)言進(jìn)行設(shè)計(jì),其實(shí)現(xiàn)原理是通過(guò)檢測(cè)輸入與反饋信號(hào)的上升沿,判斷其相位差,并生成超前或者滯后信號(hào),同時(shí)對(duì)輸入信號(hào)進(jìn)行計(jì)數(shù),生成一個(gè)與輸入信號(hào)同頻率的時(shí)鐘。圖3為仿真波形。
當(dāng)輸入信號(hào) clock_in超前于反饋信號(hào)clock_fb時(shí),產(chǎn)生超前信號(hào)up;當(dāng)輸入信號(hào) clock_in滯后于反饋信號(hào)clock_fb時(shí),產(chǎn)生滯后信號(hào)dn。由于外部時(shí)鐘信號(hào)進(jìn)入系統(tǒng)內(nèi)部可能產(chǎn)生亞穩(wěn)態(tài),故需要使作用于相位調(diào)節(jié)模塊的時(shí)鐘信號(hào)與輸入信號(hào)同頻,這主要是通過(guò)采樣與變換電路來(lái)產(chǎn)生一個(gè)與輸入信號(hào)同頻異相的時(shí)鐘信號(hào)clockgen_out。
3.2 ?相位測(cè)量模塊
本方案是基于計(jì)數(shù)器思想的延時(shí)設(shè)計(jì)方法,延遲模塊以數(shù)字信號(hào)的上升沿和下降沿作為觸發(fā)信號(hào)分別控制輸出高低電平[6?7]。
相位測(cè)量模塊的波形圖如圖4所示,當(dāng)up信號(hào)為高電平時(shí),進(jìn)行計(jì)數(shù),輸出超前相位差值upnum;當(dāng)dn信號(hào)為高電平時(shí),進(jìn)行計(jì)數(shù),輸出滯后相位差值dnnum。其中up_cnt為相位超前時(shí)需要調(diào)節(jié)的延時(shí)級(jí)數(shù);dn_cnt為滯后時(shí)需要調(diào)節(jié)的延時(shí)級(jí)數(shù)。
3.3 ?相位調(diào)節(jié)模塊
相位調(diào)節(jié)模塊的仿真波形如圖5所示,clk_d為經(jīng)過(guò)延時(shí)鏈的時(shí)鐘,其頻率與輸入信號(hào)相同。Sel為選擇超前或者滯后信號(hào)。相位調(diào)節(jié)模塊分為粗調(diào)和精調(diào)[8],當(dāng)up為高電平時(shí),啟用粗調(diào),粗調(diào)分為64級(jí),然后啟用精調(diào),精調(diào)分4層,每層16級(jí),一共調(diào)4次。當(dāng)dn為高電平時(shí),啟用精調(diào)。該延時(shí)模塊取代了傳統(tǒng)DLL中的壓控延遲線,改用全數(shù)字延時(shí)模塊,使其可控性更高,受溫度的影響更小,且易于集成。
3.4 ?相移模塊
相移模塊中時(shí)鐘周期測(cè)量電路將輸入信號(hào)的周期轉(zhuǎn)化為延遲單元數(shù)N,然后,相移電路根據(jù)周期測(cè)量結(jié)果將相位鎖定后的電路輸出信號(hào)分別延遲[N4],[N2],[3N4]個(gè)單元,即分別延遲[14]周期、 [12]周期、[34]周期。得到4個(gè)時(shí)鐘相位,4個(gè)不同相位時(shí)鐘的相位差均為90°。
全數(shù)字延時(shí)鎖相環(huán)的系統(tǒng)設(shè)計(jì)采用自頂向下的方法,首先,利用Verilog語(yǔ)言設(shè)計(jì)各個(gè)模塊,然后將各模塊的端口連接,其電路圖如圖6所示。為防止外部信號(hào)進(jìn)入系統(tǒng)內(nèi)部可能產(chǎn)生的亞穩(wěn)態(tài),在輸入和反饋端口后接兩個(gè)三級(jí)D觸發(fā)器clock_i與clock_f。圖中:phase_detect為鑒頻鑒相器;phase_measure為相位測(cè)量模塊;clockgen為測(cè)頻模塊;ctl_delay_link為相位調(diào)節(jié)模塊;clock_out為移相模塊。
本系統(tǒng)設(shè)計(jì)完成后,在輸入信號(hào)的頻率范圍5~100 MHz內(nèi)取值,分別進(jìn)行了系統(tǒng)仿真。仿真實(shí)驗(yàn)證明,輸入信號(hào)在該頻率范圍內(nèi),其鎖定時(shí)間為12個(gè)輸入信號(hào)周期,鎖定精度為20 ps。以輸入頻率取5 MHz和25 MHz為例,給出了系統(tǒng)仿真波形如圖7和圖8所示。
圖中:clk為系統(tǒng)時(shí)鐘;rst_n為復(fù)位信號(hào);clock_in為輸入信號(hào);clock_fb為反饋信號(hào);clock_out1,clock_out2,clock_out3,clock_out4分別為移相0°,90°,180°,270°后的系統(tǒng)輸出信號(hào)。
與傳統(tǒng)鎖相環(huán)的設(shè)計(jì)方法相比較[9],本文所提出的全數(shù)字延遲鎖相環(huán)不僅在性能上有了較大的提高,而且其延遲單元數(shù)目也大大減少,既提高了鎖相環(huán)的鎖定精度和鎖定速度,也簡(jiǎn)化了電路結(jié)構(gòu)、降低了功耗。
本文提出的全數(shù)字延遲鎖相環(huán),其鎖定時(shí)間為12個(gè)輸入信號(hào)周期,鎖相范圍為5~100 MHz,鎖相精度為20 ps。仿真結(jié)果表明,該全數(shù)字延遲鎖相環(huán)具有鎖相速度快、鎖相精度高、電路結(jié)構(gòu)簡(jiǎn)單、可移植性好和易于集成的特點(diǎn),可廣泛應(yīng)用于系統(tǒng)時(shí)鐘管理,滿足不同用途的需求。
注:本文通訊作者為單長(zhǎng)虹。
參考文獻(xiàn)
[1] 張剛.CMOS集成鎖相環(huán)電路設(shè)計(jì)[M].北京:清華大學(xué)出版社,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] ?;矍?,尹國(guó)福.快速鎖定的全數(shù)字延遲鎖相環(huán)研究[J].微處理機(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] 張健.基于數(shù)字DLL時(shí)鐘發(fā)生器的設(shè)計(jì)[D].西安:西安電子科技大學(xué),2013.
ZHANG Jian. Design of digital DLL clock generator [D]. Xian: Xidian University, 2013.
[6] 邱有剛,黃建國(guó),李力.基于FPGA數(shù)字延遲單元的實(shí)現(xiàn)和比較[J].電子測(cè)量技術(shù),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頁(yè))
[8] 羅寧,陳原聰,趙野.應(yīng)用于全數(shù)字鎖相環(huán)的高性能數(shù)控振蕩器設(shè)計(jì)[J].微電子學(xué)與計(jì)算機(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快速鎖定方法的研究與設(shè)計(jì)[J].電子設(shè)計(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.