無論高級靜態時序分析(STA)工具如何成型,運行GLS仍然有很多優勢,因為它能夠發現很多隱藏的設計問題,這些問題在RTL中很難找到模擬。它清晰地展示了設計在所需頻率下的行為方式,并確實存在實際延遲。因此,盡管GLS有其自身的一系列挑戰(例如設置問題,長時間運行等),但它仍然是簽核過程的一部分,并且充當了設計質量的信心助推器。
JEDEC標準為DDR存儲器定義了許多時序參數,需要遵循這些參數以確保正確操作。時序要求嚴格,需要謹慎實施。例如,數據選通信號(通常稱為DQS)的占空比要求約為45-55%;如果在寫入期間(存儲器控制器將選通信號驅動到外部存儲器)或讀取(存儲器驅動選通信號的位置)中違反此規范,則我們無法確保數據的健全性。物理實現本身就是一個挑戰,因為設計人員必須注意各種時序參數沒有偏離標準。 DDR實施很困難,因為它也涉及許多自定義程序。因此,在DDR的情況下我們不能僅僅依靠STA工具,并且運行GLS成為“必須”以確保設計的正確物理實現。運行GLS for DDR接口具有挑戰性,因為它涉及各種測試平臺設置問題,多個時序檢查,偏斜檢查,各種數據傳輸模式(突發長度-4,8),各種符合標準(如DDR3,DDR3L,LPDDR2等) 。)等等。
本文將嘗試強調通過運行DDR的門級仿真可以找到的各種類型的問題,如何在設計中正確修復和實現它們以及應該如何物理設計/STA團隊可以避免此類問題。
DDR存儲器接口的門級仿真 - 示例問題,挑戰和解決方案
進入DDR內存控制器的時鐘占空比
進入DDR控制器的時鐘質量是一個重要參數,因為控制器驅動大多數信號(如DDR時鐘,數據選通等)都是從這個時鐘本身導出的。
具有DDR控制器的SoC的通用圖
進入外部存儲器的時鐘占空比應在47-53%的范圍內。確保正確操作。如果占空比超出源本身(即進入控制器的時鐘)的范圍,則必須看到時鐘的高周期和低周期之間存在巨大差異,這可能導致違反各種參數,如tdqsh_min ,tdqsl_min等.STA對此進行檢查,但是有任何錯誤;不匹配可能導致寫入/讀取失敗。
WRITE的失敗看起來非常明顯,但這個問題也可能導致READ操作失敗!重要的是要知道在READ期間,由DDR存儲器驅動的DQS內部源自它接收的DDR時鐘。因此,如果存儲器正在獲得具有不良占空比的時鐘,則它在讀取期間生成的DQS可能違反讀取后同步周期(trpst)等規范。
因此,設計人員必須確保來自時鐘源(例如 - PLL)輸出到控制器輸入時鐘的輸入應在時鐘的高低周期引入最小時滯。
讀取DQS門控問題
讀取DQS門控是一種功能,其中DQS被門控到控制器的讀取電路,直到讀取操作實際開始。這樣做是為了防止控制器的讀取FIFO損壞。讀取DQS門控在READ開始時禁用,并在讀取操作結束時再次啟用。見下面的例子:
第一個信號是門控讀取DQS信號,第二個是來自PAD的非門控DQS信號,n_52是讀取的使能信號DQS門控。從上面的波形可以清楚地看出,在讀取結束時延遲啟用讀取DQS選通導致在門控讀取DQS信號上捕獲“x”。
此外,由于它是異步事件,完成控制器的正確軟件編程,以便在正確的時間禁用讀取DQS門控。
如果讀取DQS門控與其他DQS相比遲到特定DQS字節,則可能導致缺少該字節的完整讀取DQS脈沖。見下面的例子:
前4個信號對應DQS0,后4個信號對應DQS1。由于讀取DQS門控后來被DQS0禁用,因此導致完全錯過一個DQS脈沖(“rd_dqs”有4個脈沖而“rd_dqs_gated”只有3個)。另一方面,對于DQS1(低4個信號),DQS門控啟用/禁用正確發生。
因此,時序團隊必須確保讀取DQS門控禁用信號的延遲對所有人來說都是相同的字節。對讀取前導碼應該有讀取DQS門控解除斷言時間的時序檢查。
在未使用讀取DQS門控功能的情況下讀取電路損壞
如果未使用讀取DQS門控,則在DQS焊盤上使用下拉來保護讀取電路在寫入操作期間不被損壞。通常,在寫操作結束時,DQS焊盤的輸出路徑被禁用,輸入路徑被啟用。但是,如果輸入路徑稍微提前啟用(在寫入結束時),則可能導致DQS焊盤輸入路徑上的“x”損壞,從而破壞控制器的讀取電路。因此,時序團隊必須確保DQS焊盤的輸入路徑僅在寫入操作完成后才會啟用。
環回操作時的注意事項
在環回的情況下,沒有外部存儲器連接到SoC。數據從DDR焊盤循環回存儲在讀FIFO中。環回功能用于確保讀/寫路徑的正確操作,并可用于測試目的。在環回的情況下,每當向控制器發送WRITE命令時,它都啟用輸出路徑以及DQS焊盤的輸入路徑。但由于圖片延遲,數據末尾可能會出現爭用。時序團隊必須確保DQS焊盤的“ibe”(焊盤的輸入路徑使能)的解除斷言僅在讀取電路完全捕獲數據時發生,否則可能導致輸入“x”損壞在環回期間讀取數據時DQS填充路徑或完全丟失數據。請參見下面的示例:
信號ipp_ibe_DDR0_DQS1是DQS1焊盤的輸入緩沖器使能,ipp_obe_DDR0_DQS1是輸出緩沖器使能。對于環回操作,兩者都是“1”。 DDR0_DQS1是焊盤信號,ipp_do_DDR0_DQS1是焊盤的輸出路徑,ipp_ind_DDR0_DQS1是輸入路徑。由于ibe解除斷言比焊盤上數據的下降沿更早發生,因此導致焊盤輸入路徑損壞(ipp_ind_DDR0_DQS1變為“x”)。
PAD電平的微調和微調選項
DDR電極板有多種微調選項 - 比如微調信號的占空比,控制信號的交叉點差分焊盤(DQS& CLK)的情況,控制焊盤輸出路徑的延遲等。但是,在GLS期間必須以最小的方式使用這些修整選項,并且必須通過定時本身來滿足大多數條件。這很重要,因此我們在沒有任何修整松弛的情況下完全強調設計。
關注DDR內存模型發出的各種時序違規行為
重要的是要審查GLS模擬中由DDR內存模型發出信號的每個警告/錯誤。當實際延遲在GLS中出現時,模型會響應違反各種時序參數的情況,這些參數本質上看起來微不足道,但重要的是讓它們得到解決。例如,WRITE突發操作的結束稱為寫后同步周期(twpst)。一般的理解是寫可累計周期應大于twpst_min參數。但是,僅當twpst_min小于tdqsl_min(最小DQS低周期)時才會出現這種情況。在dqsl_min> twpst的情況下,對于寫后同步周期應該滿足tdqsl_min時間。通過這種方式,我們在實現中維護tdqsl_min和twpst_min參數。
-
DDR
+關注
關注
11文章
716瀏覽量
65590 -
仿真
+關注
關注
50文章
4134瀏覽量
134113 -
PCB打樣
+關注
關注
17文章
2968瀏覽量
21874 -
華強PCB
+關注
關注
8文章
1831瀏覽量
27990 -
華強pcb線路板打樣
+關注
關注
5文章
14629瀏覽量
43216
發布評論請先 登錄
相關推薦
電感元件的各種類型及其常見用法討論
三相異步電動機加壓啟動的各種類型
如何辨別各種類型的接口
了解各種類型IC的封裝在PCB設計時準確選擇IC
C51各種類型的大小
![C51<b class='flag-5'>各種類型</b>的大小](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
如何選擇各種類型逆變器電路中的MOS管
為電路設計執行各種類型的SPICE仿真
![為電路設計執行<b class='flag-5'>各種類型</b>的SPICE<b class='flag-5'>仿真</b>](https://file1.elecfans.com/web2/M00/8A/87/wKgaomSWZ0GAJRHYAAAfVj7tU1w445.png)
評論