王秋實, 張 杰, 孟少鵬
(中國電子科技集團公司第三十八研究所, 安徽合肥 230088)
DDR技術(shù)起始于2001年,之后廣泛應用于各類芯片并成為主流?;谶@個前提,雙倍數(shù)據(jù)率物理層接口(DDR PHY)技術(shù)應運而生。DDR PHY成為存儲控制器邏輯和DRAM顆粒物理接口間的通用規(guī)范接口,加速了DDR技術(shù)的發(fā)展。在芯片中,DDR PHY通常作為一個獨立模塊單獨設(shè)計[1]。
集成電路設(shè)計分為前端設(shè)計和后端設(shè)計。前端設(shè)計包含系統(tǒng)架構(gòu)設(shè)計、子模塊設(shè)計、硬件描述語言實現(xiàn)及功能仿真驗證等。后端設(shè)計是將前端設(shè)計映射到可加工的硅工藝的過程,包括綜合、布局、電源布線、標準單元擺放、時鐘樹綜合、繞線等[2]。
DDR PHY的物理設(shè)計流程與全芯片的物理設(shè)計流程相同。針對28 nm工藝的特殊性,我們特別定制了一些設(shè)計流程,包括在布局階段插入特殊的物理單元(Physical Cell)、時鐘樹繞線層(NDR)的選擇、繞線策略的更改等[3-4]。DDR PHY的物理設(shè)計的關(guān)鍵在于時序路徑的設(shè)計,時序路徑質(zhì)量的好壞將嚴重影響DDR系統(tǒng)的性能。
本文首先在第一節(jié)介紹所用DDR PHY的架構(gòu),第二節(jié)描述了DDR PHY的時序路徑及其后端設(shè)計的難點,第三節(jié)提出了基于Innovus工具的解決辦法,最后總結(jié)全文。
本文中的DDR PHY是我單位采購的商用“半硬核”IP,基于28 nm流片生產(chǎn)。它能夠提供與JEDEC標準的DDR3和DDR4 SDRAM通信的完整物理接口,最高數(shù)據(jù)率為1 400 Mbps。
之所以稱之為“半硬核”IP,是因為整個DDR PHY基于slice構(gòu)成,IP開發(fā)商提供已經(jīng)固化完成的slice模塊。slice模塊是DDR控制器和DRAM顆粒的“橋梁”,整個DDR PHY使用到的slice模塊種類包括:
(1) Data slice (8 DQ/1 DM/1 DQS),負責數(shù)據(jù)信號的串并轉(zhuǎn)換;
(2) Address/control slice (4 control/address),負責地址信號的轉(zhuǎn)換;
(3) Address/control master slice,負責控制各個Address/control slice;
(4) Memory clock slice,負責時鐘信號的轉(zhuǎn)換。
圖1是DDR PHY的結(jié)構(gòu)圖。除slice模塊之外,整個DDR PHY還包括一些數(shù)字模塊,稱之為soft module,包括DFI接口、配置接口、內(nèi)部寄存器等,構(gòu)成存儲控制器和slice模塊之間的電路。
圖1 DDR PHY的結(jié)構(gòu)圖
DDR PHY的輸出信號包括數(shù)據(jù)信號、地址信號、地址控制信號、時鐘信號等,每一條從時鐘輸入管腳到這些輸出信號的路徑都是需要重點關(guān)注的時序路徑。
歸納來說,DDR PHY中的時序路徑可以分為如下5段:
Stage 1:時鐘輸入端clk_ctrl到deskew PLL;
Stage 2:deskew PLL到slice模塊時鐘端;
Stage 3:slice模塊時鐘端到內(nèi)部寄存器CK端;
Stage 4:slice模塊內(nèi)部寄存器到slice模塊輸出端;
Stage 5:slice模塊輸出端到IO。
DDR PHY需要為存儲控制器邏輯和DRAM顆粒之間提供高速、穩(wěn)定、可靠的數(shù)據(jù)通信,這對時序路徑的整體延時、不同路徑之間的延遲差等設(shè)計指標提出了苛刻的要求。
時間預算就是在時序路徑中分配延時的過程。由于各個slice模塊已經(jīng)固化,因此Stage 3和Stage 4的延遲已經(jīng)固定。為保證達到設(shè)計目標,在設(shè)計初期需要時序路徑中其他階段的延時進行合理的規(guī)劃。
DDR的存取時間代表了讀取數(shù)據(jù)所延遲的時間,與時序路徑的整體延時直接相關(guān)。從設(shè)計指標上來說,存取時間越小則越優(yōu)。
在布局階段,通過將deskew PLL與slice模塊就近擺放來減小Stage 2的延時;通過將slice模塊與IO單元就近擺放來減小Stage 5的延時。
路徑對齊是DDR PHY時序路徑設(shè)計的最大難點。如圖2所示,在所有延遲角落下,路徑對齊要求如下:同一個data slice和同一個address slice的輸出信號間的延遲偏移均不能超過75 ps,同一個address control slice的輸出信號間的延遲偏移不能超過85 ps;memory clock slice的輸出信號的延遲要大于所有data slice和address slice的輸出信號間的延遲,且它們之間的延遲偏移不能超過125 ps;address slice、address control slice和memory clock slice的輸出信號間的延遲偏移不能超過150 ps;所有DDR PHY的輸出信號之間的延遲偏移不能超過170 ps。
圖2 DDR PHY路徑對齊要求
Innovus為CADENCE公司于2015年發(fā)布的全新后端物理設(shè)計平臺,基于該平臺可以進行從RTL到GDSII的全流程實現(xiàn),采用平臺內(nèi)嵌命令結(jié)合LINUX可以很方便地實現(xiàn)對數(shù)字電路網(wǎng)表文件的編輯[5]。
本節(jié)將結(jié)合項目實例從4個方面來闡述DDR PHY時序路徑設(shè)計難點的解決方法。
DCCK單元為專門設(shè)計的帶耦合電容的時鐘樹驅(qū)動單元,具有如下優(yōu)點:單元延遲經(jīng)過優(yōu)化,保證時鐘路徑的延遲盡可能的??;具有對稱的上升時間和下降時間,保證了延時鏈的精度;由于耦合電容的存在,使時鐘樹的時鐘延遲、傳輸時間、時鐘偏移等參數(shù)不易受電源波動影響。
項目選取DCCK單元中閾值電壓為LVT、驅(qū)動能力為X8/12/16的緩沖器(buffer)和反相器(inverter)作為DDR PHY時鐘路徑的驅(qū)動單元,方法如圖3所示。
圖3 使用DCCK單元的設(shè)置腳本
如前文中所說,各個slice模塊已經(jīng)固化,slice模塊時鐘輸入端到slice模塊內(nèi)部寄存器CK端的時鐘樹路徑(即Stage 3)已經(jīng)固定,項目使用insertion delay代表該部分時鐘樹的延遲。
項目使用create_ccopt_macro_model_spec命令將傳統(tǒng)cts引擎的macro model delays轉(zhuǎn)換成ccopt引擎中的insertion delay。需要注意的是,為了保證時鐘樹設(shè)計的精確性,需要在多模式多角落(MMMC)下設(shè)置insertion delay。圖4為使用insertion delay的部分設(shè)置腳本。
圖4 使用insertion delay的設(shè)置腳本
在ccopt中,skew group可以看作整個時鐘樹的子時鐘樹,用戶可以根據(jù)需要定制leaf pin、insertion delay、target skew等參數(shù)。
為了滿足2.3節(jié)提到的路徑對齊要求,項目創(chuàng)建不同的skew group來調(diào)整不同類別時序路徑的延時。主要進行延時調(diào)整的時序路徑為時鐘輸入管腳clk_ctrl到deskew PLL的時鐘樹路徑(即Stage 1)。圖5所示為將所有data slice的deskew PLL的參考時鐘輸入端創(chuàng)建skew group。
圖5 創(chuàng)建skew group腳本
為了使deskew PLL到slice模塊時鐘端(即Stage 2)的延時盡可能小,需要手工調(diào)整該段路徑上時鐘緩沖器的位置,使時鐘走線結(jié)果達到最優(yōu)。
在最終的設(shè)計結(jié)果仍然無法達到路徑對齊的要求但不是很大的情況下,可以根據(jù)靜態(tài)時序分析(STA)結(jié)果手工添加緩沖器來調(diào)整,主要進行手工調(diào)整的時序路徑為slice模塊輸出端到IO的數(shù)據(jù)路徑(即Stage 5)。
DDR PHY最終的PPA(Performance, Power, Area)結(jié)果為:
(1) 尺寸為:寬8.7 μm,高1.4 μm;
(2) 工作頻率700 MHz,速率1 400 Mbps;
(3) 功耗1.5 W,靜態(tài)電壓降1.3%。
圖6為DDR PHY完成物理設(shè)計后的結(jié)果局部圖。
圖6 DDR PHY物理設(shè)計結(jié)果圖
表1為延遲偏移最大的工藝角情況下各時序路徑的延時信息。從表中可以看出,所有DDR PHY的輸出信號之間的延遲偏移為122 ps,滿足170 ps的設(shè)計要求。
表1 時序路徑的時序預算
集成了該DDR PHY的一款工業(yè)級DSP已經(jīng)成功流片并通過測試,在測試板上,DDR系統(tǒng)能夠穩(wěn)定運行在1 400 Mbps速率上。測試結(jié)果進一步證明了本文提出的DDR PHY物理設(shè)計方法的可行性和有效性。另外,隨著工藝推進到12 nm及對DDR PHY的速率要求提升到3 200 Mbps,本文提出的物理設(shè)計方法還有進一步的提升空間。