天天看點

DDR調試不通?先别扔,這個操作可能幫你逆襲!

作者:一博高速先生

作者:一博科技高速先生成員 黃剛

相信大家過完一個美美的春節後,學習的熱情一定會暴漲,反正高速先生給大家分享技術文章的熱情是非常高漲的哈!打從推出這個系列的仿真和理論相結合的話題後,文章受到了很多忠實粉絲的喜愛,大家紛紛表示既能學到理論知識,還知道怎麼從仿真中去驗證,甚至有一些小夥伴們已經深深的陷入到仿真裡面去,無法自拔了。是以高速先生趁熱打鐵,在春節後再加推幾期,繼續圍繞着這個話題分享文章!

經過高速先生對粉絲文章喜愛度的研究發現,DDR方面的話題始終受到大家的熱捧,原因可能包括了大多數産品都會有DDR記憶體系統,然後DDR系統又是很關鍵且容易出問題的一個子產品,還有就是DDR的原理和應用特别讓人着迷等等吧。All right,那今天就再給大家分享一個DDR仿真和測試完美對應的經典案例吧!

不知道現在大家做的DDR4系統的名額是怎麼樣了?從高速先生和最近衆多客戶的配合來看,從一個通道的總容量和速率上都基本上拉到了極限,從單個顆粒的容量,很多已經從8Gb提升到了16Gb,運作速率也從typical的2400M拉到3200M了。下面要分享的這個案例就是這個的一個case!

DDR調試不通?先别扔,這個操作可能幫你逆襲!

這個客戶的一個DDR通道是1拖5的結構,每個顆粒的16Gb是容量,需要跑到的速率是3200M,通過這個描述,就知道這個系統的PCB設計不會很好做!這個項目是我司設計部門的同僚設計的,而且也有相關的内部指導可以遵照,是以設計完就去生産加工了。等闆子貼片回來後,客戶下載下傳程式去測試時,就猛然發現運作不到額定的3200M的速率!

客戶也測試了好幾片闆子,情況都差不多,大概隻能運作到2400M左右,再往上就不穩定了。由于我們和這個客戶合作比較久了,大家也都沒有太慌,經過和客戶詳細的溝通,我們把調試的方向轉到了主晶片的驅動配置上。這款型号主晶片客戶用得比較多,驅動配置的頁面,如下所示:

DDR調試不通?先别扔,這個操作可能幫你逆襲!

像這種一拖多的DDR系統,我們最先會把debug方向放在位址控制信号和CLK上面,這個原因在之前很多篇文章已經說過了。我們看到客戶已經周遊了上面紅框的驅動内阻,從可以選擇的40,48,60等多種驅動選出了較好的40歐姆内阻驅動,但是依然不能穩定的跑到3200M上。連驅動内阻的配置都周遊過,感覺好像沒有其他有效的設定了吧,真的要立馬重新改闆設計了?

先别慌,還好高速先生也對這款晶片灰常的了解,除了傳統的驅動内阻可以配置外,Slew Type也是一個很重要的點!沒錯,就是下面這個配置項!

DDR調試不通?先别扔,這個操作可能幫你逆襲!

該晶片有FAST,MEDIUM和SLOW三個配置可以選擇!而且我們也拿到了該晶片的仿真模型,模型比較齊全,也同樣有這幾項配置可以選,于是高速先生打算通過仿真去進行驗證,看看能不能順便把問題一并解決了。

于是我們迅速在仿真軟體把仿真拓撲搭起來,就是下面這樣的拓撲!

DDR調試不通?先别扔,這個操作可能幫你逆襲!

我們先按照客戶原始的配置,位址控制和時鐘CLK都是FAST模式,40歐姆内阻去選擇仿真模型,如下所示:

DDR調試不通?先别扔,這個操作可能幫你逆襲!

發現最差的顆粒信号品質的确是有問題,存在明顯的ring back,進而也導緻時鐘采樣出現問題,同時也能發現,時鐘采樣的時序本身沒有問題,隻是位址控制信号品質的問題。

DDR調試不通?先别扔,這個操作可能幫你逆襲!

這和客戶的測試結果也挺吻合的!

DDR調試不通?先别扔,這個操作可能幫你逆襲!

那我們就換成位址控制MEDIUM模式,時鐘CLK還是FAST模式仿真看看,結果就變成下面這樣了。好開森,位址控制信号的信号品質全部都沒問題了!!!

DDR調試不通?先别扔,這個操作可能幫你逆襲!

是不是在仿真中意味着就ok了,人往往在最開心的時候容易受到暴擊,的确,位址控制信号的信号品質都ok了,但是時鐘又出來搞事了!位址控制信号的品質都沒問題,

CLK時鐘的信号品質也沒問題,但是時序卻出錯了,從上升沿的采樣位置能明顯看到,建立時間裕量又不夠了!

DDR調試不通?先别扔,這個操作可能幫你逆襲!

但是我們還是壯着膽子讓客戶試試這種位址控制MEDIUM模式,時鐘CLK選FAST這樣的配置,果不其然,客戶很快就傳來了測試結果!

DDR調試不通?先别扔,這個操作可能幫你逆襲!

的确,從仿真結果來看,單純的位址和CLK的信号品質都是滿足要求的,隻是建立時間的時序裕量不足,我們知道,時序裕量問題的确也是可以通過降頻來彌補的,是以我們對仿真的精度有了更大的信心!

好!最後再試一種組合,一定要成功!就是位址控制信号和CLK時鐘都選用MEDIUM模式,我們先來看看仿真結果!這下厲害了,位址控制信号ok,上面的仿真已經知道,現在把CLK時鐘也變成MEDIUM後,時鐘本身滿足信号品質的同時,時序也變ok了,結果清單沒有出現裕量不足的提醒了,完美!

DDR調試不通?先别扔,這個操作可能幫你逆襲!

然後再回報到調試去,客戶終于傳來了好消息!

DDR調試不通?先别扔,這個操作可能幫你逆襲!

最後總結下,這又是一個仿真和測試互相配合驗證進而通過仿真指導調試來解決問題的經典案例,在初始配置調試不通過的時候要保持冷靜,找到入口去嘗試更多的晶片配置。從案例中我們展示了仿真和測試的配合,其實選擇配置的過程也是理論應用于實際的過程,有了理論的支撐,我們才能更好的去選擇仿真的配置和調試的配置,進而解決問題,大家都get到了吧!