摘要:介紹了一款可應用于DDR SDRAM控制器的基于標準單元的全數字延時鎖定環(DLL)。該DLL可集成性和工藝兼容性好,可以減少DLL的設計時間和設計復雜度,非常適合系統級芯片使用。該設計采用0.18um CMOS數字工藝實現最終版圖,工作頻率范圍達到200MHz至400MHz,無諧波鎖定出錯,且閉環特性可以跟蹤工藝、電壓、溫度(PVT)變化。仿真結果表明該設計能夠產生DDR SDRAM控制器規范所要求的一段固定延時(tSD)來保證DDR SDRAM控制器正確捕獲存儲器輸出數據(DQ)。
關鍵詞:全數字延時鎖定環;DDR SDRAM控制器;數據選擇脈沖(DQS)
中圖分類號:TP332文獻標識碼:A文章編號:1009-3044(2008)35-2171-03
Design and Implementation of an ALL-Digital Delay-Locked Loop for DDR SDRAM Controller Applications
LU Shun, HUANG Kai
(National ASIC System Engineering Research Center,Southeast University,Nanjing 210096,China)
Abstract:An all-digital,cell-based Delay-Locked Loop (DLL) for DDR SDRAM controller applications is designed.The all-digital DLL can easily be ported to different processes in a short time.Thus,it can reduce the design time and design complexity of the all-digital DLL,making it very suitable for system-on-chip applications.Fabricated in 0.18um CMOS technology,frequency operating range of the all-digital DLL ranges from 200MHz to 400MHz without the harmonic-locking issue and its close-loop characteristic tracks the process,voltage,temperature (PVT) variations.Simulation results show that the all-digital DLL can generate the required fixed timing delay(tSD)for DDR SDRAM controller to capture the output data (DQ) correctly.
Key words:all-digital DLL;DDR SDRAM controller;data strobe(DQS)
1 引言
延時鎖定環(DLL)基本思想是推遲輸出時鐘使它能與參考時鐘完全對齊或者產生移相輸出,它已廣泛應用于高速存儲器接口的時鐘同步、時鐘網絡的偏斜校準、串行通信的時鐘恢復、倍頻和多相時鐘生成器等電路中。DLL結構不會積累相位誤差,參考時鐘在某個時鐘節拍內的抖動或由MOS器件工作電壓或者襯底電位引入的噪聲將在延時終點消失。相對于鎖相環(PLL)結構中環振引入的固有抖動和相位誤差積累,DLL有更好的抑制抖動和跟蹤相位能力。就實現方式而言,用數字電路實現的DLL在可集成性、噪聲敏感度、低功耗、工藝兼容性等方面優于用模擬電路實現的DLL。
DLL是DDR SDRAM控制器中一個重要輔助校準設計[1]。理想情況下,數據選擇脈沖(DQS)信號和數據信號(DQ)是由DDR SDRAM存儲器芯片取邊沿一致同步發出。但是由于PCB板級和芯片PIN腳之間的延時造成DQS和DQ以不同時間抵達DDR SDRAM控制器,所以控制器內部必須延遲DQS一段固定延時(tSD),使DQS移相90°后上升沿盡量到DQ中心來保證正確采樣DQ[2]。該功能由DLL完成。DQS與存儲器芯片IO接口電路時鐘周期相等。因此tSD取值范圍大約是存儲器芯片IO接口電路時鐘周期的25%。
在本文中,設計了一款采用0.18um CMOS數字工藝且基于標準單元的全數字DLL。其工作頻率范圍是200MHz至400MHz,滿足DDR400/DDR2 667/DDR2 800規范。功能上實現自動跟蹤參考時鐘頻率、無諧波鎖定出錯、閉環系統跟蹤PVT變化、正確產生tSD延時。
2 結構設計
圖1中參考時鐘CLK_IN、DQS信號、系統復位信號RESET_SYS作為DLL輸入,輸出信號為反饋時鐘CLK_FB、DQS延時信號DQS_D、二組測試信號TESTCODE用于仿真。系統正確工作后CLK_FB應與CLK_IN同步且DQS延遲量滿足tSD,TESTCODE在若干時鐘周期后穩定不變,表征延時鎖定成功。
3 電路設計
3.1 可調延遲線
可調延遲線是系統中最重要的一個模塊。傳統的數控延遲線如級聯緩沖器與多級MUX門輸出結構,延遲線的本征延時正比于MUX門數。大的本征延時限制了最高工作頻率。本文中設計的粗調延遲線采用了圖2的平衡與非門結構[3],控制字CON為溫度計碼,即低位起必須為連續“1”。最小本征延時為一級粗調延時步進。本文使用的工藝庫在最好工藝角環境和最差工藝角環境之間延時范圍是110ps至150ps。為降低時鐘的上升沿和下降沿經過相同門的延時差異性,以及降低相同時鐘沿經過與非門不同輸入端的延時差異性,采用圖中所示連接關系和空接一個與非門。經推導,該結構的延時步進理論上為定值[3]。
圖2 粗調延遲線電路圖
微調延遲線由四個微調延時單元級聯。微調延時單元采用數控變容辦法[4],圖3利用溫度計碼控制字FCON來改變緩沖器輸出端的負載電容,引起延時的小范圍變化,線性變化特性較好。微調延遲線延時包含緩沖器本征延時和可微調延時兩部分,可微調延時要大于粗調延時步進,可微調延時步進要小于微調鑒相器的鎖定態范圍,它決定了整個可調延遲線的最高分辨率,在最差工藝角環境下可以達到25ps。
3.2 復制延遲線
復制延遲線由1/4長度的粗調延遲線和一個微調延時單元組成。該微調延時單元與微調延遲線共用控制字FCON。粗調延遲線控制碼舍去最低2位并單獨譯碼形成粗調復制延遲線的控制字DQSCON。
3.3 分頻器
簡單的D觸發器實現分頻。為了使控制字在CLK_IN低電平時改變和穩定,CLK_DIV由CLK_IN的下降沿觸發并且4分頻。仿真結果發現由于門延時的制約,工作頻率優先時采用4分頻,系統能穩定延時及正確鎖定。鎖定速度優先時可改采用2分頻。
3.4 鑒相器
粗調鑒相器是一個帶異步清零的D觸發器。時鐘端接CLK_IN,輸入端接CLK_FB,鑒相范圍±180°。輸出端為高(或低)電平時,表征CLK_FB超前(或滯后)于CLK_IN。
微調鑒相器是二個帶異步清零的D觸發器。CLK_IN和CLK_FB分別互接觸發器的時鐘端和輸入端,鑒相范圍±180°。時鐘端接CLK_IN的觸發器輸出UP信號,另一觸發器輸出DOWN信號。利用D觸發器建立和保持時間來區分鎖定態與非鎖定態,鎖定態范圍為2倍保持時間,本文使用的工藝庫在最好工藝角環境下為46ps。當UP=1且DOWN=0時表征CLK_FB超前于CLK_IN;當UP=0且DOWN=1時表征CLK_FB滯后于CLK_IN;當UP=0且DOWN=0(或UP=1且DOWN=1)時表征鎖定態。
3.5 粗調控制器
粗調控制器由復位邏輯、可變連續逼近寄存器(VSAR)邏輯、可逆計數器、二通道碼選擇器、譯碼器、失鎖判斷狀態機六部分電路構成。系統加電或復位后,控制器置初值并調整可調延遲線的延時到復位值。VSAR邏輯檢測粗調鑒相器輸出信號PDOUT來調整控制碼。當線上延時接近一個CLK_IN周期(誤差一定在一個粗調延時步進之內)時VSAR邏輯完成工作,系統進入閉環微調模式,由可逆計數器接管控制碼。
VSAR算法[3]是基于二分法算法和SAR算法[5]的改進,在速度上優于連續步進算法[6],在面積和功耗上優于時數轉換器電路[7],克服傳統二分法算法因諧波鎖定帶來的窄工作頻率范圍缺陷。本文中VSAR邏輯產生6位控制碼來控制64級粗調延時,最小初始值為000100(5級粗調延時)。初始值狀態下二分變碼結束,輸出當前控制碼和握手信號給失鎖判斷狀態機采樣。若失鎖則下一個初始值為001000(9級粗調延時),最大初始值100000(33級粗調延時)。自調節逐步增加初始延時可以避免高頻參考時鐘因初始化延時過大而產生諧波鎖定。
3.6 微調控制器
微調控制器包括可逆計數器、譯碼器、失鎖判斷狀態機組成。它受粗調控制器復位,進一步縮小相位差。若由于噪聲或PVT變化失鎖則輸出控制信號UP_C/DOWN_C給粗調控制器增減控制碼。
4 版圖實現與仿真結果
版圖見圖4。采用Design Compiler+Astro+Calibre后端物理設計平臺,將設計好的Verilog代碼進行基于Foundry的標準單元庫的邏輯綜合、自動布局布線、物理驗證,最終生成版圖及網表。用HSIM仿真器對版圖反抽出的網表進行動態仿真。
圖5仿真結果在初始化完畢之后系統便進行連續的延時調整,直至TESTCODE_C和TESTCODE_F不變化,表征系統鎖定延時。觀察圖6的鎖定態時波形,CLK_FB與CLK_IN同相,DQS移相90°生成DQS_D。仿真結果表明DLL在400MHz工作頻率時,最好工藝角環境下和最差工藝角環境下tSD延時分別為606ps和655ps;在200MHz工作頻率時分別為1240ps和1318ps。滿足tSD要求。
圖5 DLL在400MHz工作頻率時延時鎖定過程仿真波形 圖6 DLL在400MHz工作頻率時鎖定態仿真波形
5 結束語
該文設計的基于標準單元的全數字DLL可以用布局布線工具自動生成版圖,在縮短設計周期、可集成性和工藝兼容性方面有很大優勢。其工作頻率范圍較寬,功能上實現自動跟蹤參考時鐘頻率、無諧波鎖定出錯、可跟蹤PVT變化和正確產生tSD延時非常適合DDR SDRAM控制器應用,有一定的實用價值。
參考文獻:
[1] 陳昊.DDR存儲控制器的設計與應用[D].國防科學技術大學,2006:6-8.
[2] Ching-Che Chung,Pao-Lung Chen,Chen-Yi Lee.An All-Digital Delay-Locked Loop for DDR SDRAM Controller Applications[J]. International Symposium on VLSI Design,Automation and Test,2006(4):1-4.
[3] Rong-Jyi Yang,Shen-Iuan Liu.A 40-550 MHz Harmonic-Free All-Digital Delay-Locked Loop Using a Variable SAR Algorithm[J].IEEE Journal of Solid-State Circuits,2007,42(2):361-373.
[4] Pao-Lung Chen,Ching-Che Chung,Chen-Yi Lee.A Portable Digitally Controlled Oscillator Using Novel Varactors[J].IEEE Transactions on Circuits and Systems II:Express Briefs,2005,52(5):233-237.
[5] Guang-Kaai Dehng,June-Ming Hsu,Ching-Yuan Yang,Shen-Iuan Liu.Clock-Deskew Buffer Using a SAR-Controlled Delay-Locked Loop[J].IEEE Journal of Solid-State Circuits,2000,35(8):1128-1136.
[6] 羅翔鯤.全數字延時鎖定環及其應用[J].電子工程師,2004,30(6):22-24.
[7] Ching-Che Chung,Chen-Yi Lee.A New DLL-Based Approach for All-Digital Multiphase Clock Generation[J].IEEE Journal of Solid-State Circuits.2004,39(3):469-475.