DDR信號(hào)測(cè)量方法及信號(hào)完整性驗(yàn)證面臨的挑戰(zhàn)與建議
掃描二維碼
隨時(shí)隨地手機(jī)看文章
1. DDR概述
如今,存儲(chǔ)器件在計(jì)算機(jī)、汽車與消費(fèi)電子產(chǎn)品上可謂無所不在。其中DDR SDRAM(雙數(shù)據(jù)率同步動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器)是最常用的存儲(chǔ)器設(shè)計(jì)技術(shù)之一,而隨著該技術(shù)的發(fā)展,其傳輸速率在日益加快,功耗在日益降低。
傳輸速度加快使得此類存儲(chǔ)器的驗(yàn)證難度呈指數(shù)上升。存儲(chǔ)系統(tǒng)要準(zhǔn)確工作,其信號(hào)完整性必須滿足某種最低要求。因?yàn)樾盘?hào)完整性對(duì)系統(tǒng)互通性而言非常關(guān)鍵,或者說只有保持信號(hào)完整性才能保證不同廠商生產(chǎn)的器件在一起使用時(shí)能夠很好地結(jié)合。信號(hào)完整性問題會(huì)引發(fā)包括時(shí)序沖突、協(xié)議背離、時(shí)鐘抖動(dòng)以及由其他總線引發(fā)的錯(cuò)誤等其它問題。本文介紹了DDR信號(hào)的測(cè)量方法,DDR信號(hào)驗(yàn)證中面臨的挑戰(zhàn),并針對(duì)其調(diào)試方法給出了相關(guān)建議。文中提到的方法適用于DDR、DDR2、 DDR3 和 SDRAM這一類全緩沖的DIMM系統(tǒng)調(diào)試。為簡(jiǎn)單起見,這些內(nèi)存技術(shù)在下文中統(tǒng)稱為DDR。
2.測(cè)量方法
JEDEC規(guī)范定義了DRAM的引腳或球必須滿足的電氣與定時(shí)方面的要求。一些較新的DDR DRAM采用了精細(xì)球柵陣列(FBGA)封裝,此封裝下的焊接球很難接觸。因此,我們建議測(cè)量時(shí),探頭應(yīng)盡可能接近DRAM的球狀焊點(diǎn)。通常,我們可以在與焊接球相連的過孔上或與其相連的電阻靠近DRAM一側(cè)的焊盤上測(cè)量。
目前最高級(jí)的差分有源電壓探頭能在探頭頂端容性負(fù)載低于0.22pF的情況下達(dá)到高達(dá)13GHz的測(cè)量帶寬。此類工具對(duì)DDR信號(hào)(通常為單端信號(hào))的影響非常小,很適合DDR測(cè)量,強(qiáng)烈建議大家使用。由于DDR信號(hào)對(duì)噪聲非常敏感,因此建議在測(cè)量此類信號(hào)時(shí)采用帶寬足夠大的示波器,以避免示波器的噪聲影響測(cè)量。有些示波器具備帶寬壓縮功能,能調(diào)節(jié)至恰好適合測(cè)量的帶寬,以實(shí)現(xiàn)最精確和可重復(fù)的測(cè)量。圖1所示為13 GHz差分有源探頭連接到DDR2 DIMM的過孔上的情形。
3.信號(hào)驗(yàn)證所面臨的挑戰(zhàn)
同一根數(shù)據(jù)總線上的DDR數(shù)據(jù)傳輸是雙向的。這使DDR信號(hào)驗(yàn)證變得非常困難,因?yàn)槲覀兪紫缺仨毞蛛x數(shù)據(jù)總線上復(fù)雜的數(shù)據(jù)流才能對(duì)其進(jìn)行信號(hào)完整性測(cè)量。而要想獨(dú)立分析(由存儲(chǔ)控制器和DDR芯片驅(qū)動(dòng)的)信號(hào)完整性和定時(shí)關(guān)系,也必須分離數(shù)據(jù)流。
在探頭和數(shù)據(jù)總線上存在三種狀態(tài),讀操作(輸出信號(hào))、寫操作(輸入信號(hào))和高阻(空閑狀態(tài))。8條數(shù)據(jù)總線構(gòu)成一個(gè)數(shù)據(jù)群,這個(gè)數(shù)據(jù)群與一個(gè)選通信號(hào)實(shí)現(xiàn)源同步。讀信號(hào)與寫信號(hào)之間有一個(gè)重要差異:寫信號(hào)與選通信號(hào)的邊沿有90度相差,而讀信號(hào)與選通信號(hào)的邊沿是對(duì)齊的。
由于DDR信令比較復(fù)雜,因此為了能快速測(cè)試、調(diào)試和解決信號(hào)上的問題,我們希望能簡(jiǎn)單地分離讀/寫比特。此時(shí),最常用的是通過眼圖分析來幫助檢查DDR信號(hào)是否滿足電壓、定時(shí)和抖動(dòng)方面的要求。
圖1:13 GHz差分有源電壓探頭連接到DDR2 DIMM的過孔上。
3.1 利用前導(dǎo)寬度觸發(fā)器分離讀/寫信號(hào)
我們可以利用讀/寫前導(dǎo)的寬度來觸發(fā)示波器,實(shí)現(xiàn)讀/寫信號(hào)分離。根據(jù)JEDEC規(guī)范,讀前導(dǎo)的寬度為0.9到1.1個(gè)時(shí)鐘周期,而寫前導(dǎo)的寬度規(guī)定為大于0.35個(gè)時(shí)鐘周期,沒有上限。于是,我們?cè)谠O(shè)置觸發(fā)條件之前,首先要確定讀/寫前導(dǎo)的寬度。由于讀前導(dǎo)和寫前導(dǎo)各自有不同的寬度,因此可利用這一點(diǎn)分離讀出的數(shù)據(jù)和寫入的數(shù)據(jù)。
但這種方法在使用過程中也存在問題。首先,JEDEC規(guī)范中對(duì)前導(dǎo)寬度的定義比較松散,而且不同ASIC/DRAM廠商在這方面的定義也不盡相同。此外,由于寫前導(dǎo)的上限沒有定義,因此它也有可能與讀前導(dǎo)寬度相同,而如果二者的值過于接近,那么要想分離讀信號(hào)與寫信號(hào)就十分困難了。
第二,如果寫前導(dǎo)的寬度為0.5個(gè)時(shí)鐘周期,與一個(gè)數(shù)據(jù)比特的寬度相當(dāng),那么硬件觸發(fā)器就無法區(qū)分寫前導(dǎo)比特與正常數(shù)據(jù)比特。
第三,隨著DDR數(shù)據(jù)率變高,時(shí)鐘周期將變得越來越窄。而隨著時(shí)鐘周期變窄,寫信號(hào)的前導(dǎo)寬度也會(huì)大幅縮小。以DDR3-1600為例,其最小前導(dǎo)寬度只有大約200ps。示波器的硬件觸發(fā)器有可能無法被如此窄的脈寬觸發(fā)。
3.2 利用更大的信號(hào)幅度觸發(fā)方法分離讀/寫信號(hào)
通常,讀/寫信號(hào)的信號(hào)幅度是不同的,因此我們可以通過在更大的信號(hào)幅度上觸發(fā)示波器來實(shí)現(xiàn)兩者的分離。然而,幅度更大的信號(hào)并不一定是讀信號(hào)或是寫信號(hào),因此,我們雖然可以區(qū)分幅度更大的信號(hào),但卻無法控制所分析的是讀信號(hào)還是寫信號(hào)。當(dāng)讀/寫信號(hào)幅度接近時(shí)則會(huì)發(fā)生類似的問題。
圖2:利用DQS信號(hào)的前導(dǎo)位觸發(fā)來分離讀/寫信號(hào)。
圖3:利用MSO實(shí)現(xiàn)控制信號(hào)觸發(fā)并分離讀/寫信號(hào)。
圖4:解碼表。總線1為指令,總線2為控制總線和信號(hào)總線上傳送的數(shù)據(jù)。
3.3 有限的示波器通道問題
在進(jìn)行DDR測(cè)量時(shí)至少需要5到6個(gè)示波器通道,因此示波器通道有限這一事實(shí)會(huì)大大降低測(cè)量效率。至少需要3個(gè)通道才能保證控制信號(hào)能在讀操作或?qū)懖僮鲿r(shí)被觸發(fā),而時(shí)鐘信號(hào)、選通信號(hào)和數(shù)據(jù)信號(hào)又另外需要3個(gè)通道。時(shí)鐘信號(hào)、選通信號(hào)和數(shù)據(jù)信號(hào)之間的定時(shí)關(guān)系在JEDEC規(guī)范中十分重要,必須用3個(gè)探頭同時(shí)測(cè)量這三個(gè)信號(hào)才能檢查它們之間的定時(shí)關(guān)系是否符合規(guī)范。
4. 克服DDR信號(hào)驗(yàn)證挑戰(zhàn)的建議
新型示波器為我們解決當(dāng)前DDR信號(hào)驗(yàn)證方法中存在的問題提供了新的方法。
4.1 利用混合信號(hào)示波器(MSO)分離讀/寫周期并進(jìn)行協(xié)議解碼
DDR信號(hào)由一系列控制信號(hào)線組成,將這些控制信號(hào)連接到MSO的數(shù)字輸入口,就可以讓示波器在不同的工作狀態(tài)(讀、寫等)下觸發(fā)。每種狀態(tài)下不同控制信號(hào)線都有各自的標(biāo)識(shí)。因此,將示波器設(shè)置為在讀操作或?qū)懖僮魃嫌|發(fā)后,我們就可以觀察此時(shí)連接到示波器模擬輸入通道的選通信號(hào)和數(shù)據(jù)信號(hào)。
MSO示波器還有一個(gè)功能,就是幫助進(jìn)行協(xié)議解碼和分析定時(shí)沖突。MSO往往具備用戶可配置的總線解碼功能,因此可以輸入某種操作的解碼,這種解碼就代表了執(zhí)行該操作時(shí)總線上的數(shù)據(jù)。通過將控制信號(hào)集中到一條總線上,MSO還可以在信號(hào)傳輸過程中解碼DDR操作,因此無需再對(duì)操作進(jìn)行人工解碼。
MSO還允許將數(shù)字信號(hào)集中到4條不同的總線上,然后從解碼表中讀取總線信息。解碼表上顯示了每條總線上的數(shù)據(jù),如果在配置表中定義了解碼規(guī)則,解碼表上還會(huì)顯示解碼后的信息。利用這一功能,我們可以將控制信號(hào)和數(shù)據(jù)信號(hào)集中到2條總線上,控制總線顯示目前進(jìn)行的DDR操作,數(shù)據(jù)總線則顯示正在傳輸?shù)臄?shù)據(jù)。當(dāng)我們需要對(duì)每種操作狀態(tài)下的DDR協(xié)議沖突或定時(shí)沖突進(jìn)行調(diào)試時(shí),這一功能非常有用。
總的來說,MSO對(duì)DDR信號(hào)驗(yàn)證和調(diào)試而言是十分完美的一種解決方案。但由于MSO的模擬帶寬往往較低,因此只適合DDR1或較慢的DDR2信號(hào)測(cè)量。
4.2 區(qū)域觸發(fā)功能使DDR驗(yàn)證變得更輕松
區(qū)域觸發(fā)允許我們?cè)谑静ㄆ髌聊簧线x定并繪制一個(gè)區(qū)域以直觀地確定觸發(fā)事件的識(shí)別條件。利用區(qū)域觸發(fā)功能,我們可以根據(jù)信號(hào)波形是否與選定的區(qū)域有交叉來跟蹤我們感興趣的信號(hào)。
圖5:寫信號(hào)成功地從復(fù)雜的讀/寫波形中分離出來。
圖5中所示為示波器在無限保持模式下測(cè)量得到的一個(gè)獨(dú)特的讀/寫信號(hào)波形。$的是DQS信號(hào),綠色的是DQ信號(hào)。當(dāng)示波器設(shè)置為在DQS信號(hào)上觸發(fā)時(shí),DQ波形顯示,讀/寫信號(hào)波形相互重疊。因此,如果能夠在有特點(diǎn)的波形上設(shè)置恰當(dāng)?shù)挠|發(fā)區(qū)域,我們就能利用區(qū)域觸發(fā)功能輕松地分離讀/寫波形。至于如何使用區(qū)域觸發(fā)方法來分離讀/寫信號(hào),并沒有確切的規(guī)定,而應(yīng)根據(jù)信號(hào)特點(diǎn)決定。
有了這種區(qū)域觸發(fā)功能,驗(yàn)證DDR信號(hào)是否符合JEDEC規(guī)范就不再需要超過4個(gè)示波器通道了。
5. 本文小結(jié)
隨著DDR存儲(chǔ)技術(shù)的不斷發(fā)展,DDR信號(hào)的完整性問題也日益突出。要想在測(cè)量中得到最佳結(jié)果,必須采用恰當(dāng)?shù)臏y(cè)量方法。本文所建議的利用MSO分離讀/寫周期并進(jìn)行協(xié)議解碼,以及利用區(qū)域觸發(fā)功能分離讀/寫信號(hào)的方法在解決DDR信號(hào)完整性測(cè)量中的問題時(shí),一定會(huì)給大家?guī)砗艽髱椭?br />