一区二区三区日韩精品-日韩经典一区二区三区-五月激情综合丁香婷婷-欧美精品中文字幕专区

分享

DDR的Bank Group機(jī)制

 AMS1117LIB 2024-03-19 發(fā)布于上海

DDR4 SDRAM 中使用的bank group(后文簡(jiǎn)稱“BG”)功能是從 GDDR5 圖形存儲(chǔ)器中借用的。 為了理解對(duì) BG的需求,必須了解 DDR SDRAM 預(yù)取的概念。 預(yù)取表示每次使用 DDR 存儲(chǔ)器執(zhí)行列命令時(shí)提取word的數(shù)量。 因?yàn)?DRAM 的內(nèi)核比接口慢得多,所以會(huì)通過并行訪問信息然后將其從接口串行化輸出來彌補(bǔ)時(shí)鐘頻率差。 例如,DDR3 預(yù)取 8 個(gè)word,這意味著每次執(zhí)行讀取或?qū)懭氩僮鲿r(shí),都會(huì)處理8 個(gè)word的數(shù)據(jù),并在4個(gè)時(shí)鐘周期的8個(gè)時(shí)鐘沿上burst進(jìn)或出 SDRAM??梢哉J(rèn)為, DDR3 的 8 預(yù)取,使得接口比 DRAM 內(nèi)核快 8 倍。

預(yù)取的缺點(diǎn)是它固定了 SDRAM 的最小突發(fā)長(zhǎng)度。例如,在 DDR3 的預(yù)取為 8 的情況下,很難實(shí)現(xiàn)4 個(gè)word的突發(fā)長(zhǎng)度。BG功能允許設(shè)計(jì)人員在提高性能的同時(shí)保持較小的預(yù)取。

由于 DRAM 的核心速度在一代與一代之間沒有顯著變化,因此每代 DDR 都增加預(yù)取,以提供更高的 SDRAM 接口速度。然而,繼續(xù)使用 DDR4 的趨勢(shì)將需要 DDR4 采用 16 的預(yù)取。線的增多顯然將使 DRAM 更大。設(shè)計(jì)人員的設(shè)計(jì)目標(biāo)是不使用16預(yù)取。更重要的是,16 word預(yù)取與當(dāng)今計(jì)算機(jī)中常見的 64 字節(jié)cache行大小(line size)不匹配。在使用 64 字節(jié)cache行的典型環(huán)境中,使用 64 位或 72 位接口,預(yù)取 8 和突發(fā)長(zhǎng)度 8匹配得更好。任何此類cache行大小和突發(fā)長(zhǎng)度的不對(duì)齊都會(huì)對(duì)嵌入式系統(tǒng)的性能產(chǎn)生負(fù)面影響。

DDR4 Prefetch & Performance

了解預(yù)取如何影響性能之前,先來了解 SDRAM 隨著時(shí)間的推移發(fā)生了什么。圖 1 顯示了與最大列周期相比,每一代 SDRAM 的最大數(shù)據(jù)速率。隨著時(shí)間的推移,SDRAM 的內(nèi)核(等同列周期?)并沒有變得更快,這主要是因?yàn)檩^小工藝帶來的任何好處都被更大的 SDRAM 所抵消,因?yàn)樗哂懈蟮娜萘俊?設(shè)計(jì)人員最終要與不斷增加的容量作斗爭(zhēng),而工藝的小型化對(duì)此進(jìn)行了補(bǔ)充。 但是,每一代的 I/O 始終更快。怎么做到呢,這就是預(yù)取的用武之地。

Figure 1: SDRAM Performance Scaling

原始的 SDR SDRAM不需要預(yù)取。 每次執(zhí)行一個(gè)列周期時(shí),它訪問一個(gè)word數(shù)據(jù),并將其推出 SDRAM。 現(xiàn)在,雖然 SDRAM 實(shí)際上確實(shí)有一個(gè)稱為 2N 規(guī)則的東西,它可以容納 2 的預(yù)取,但 2N 被視為規(guī)范的限制性部分,所有最終成為商品設(shè)備的 SDRAM 設(shè)備都具有 1 的預(yù)取。然而,引入 DDR SDRAM后,內(nèi)核就無法跟上 SDRAM 所需的帶寬。這是引腳上的最大數(shù)據(jù)速率與內(nèi)部列周期之間分離的開始,如圖 2 所示。

Figure 2: SDRAM Performance Scaling Enabled by Prefetch

這種分離隨著時(shí)間的推移而擴(kuò)大。DDR2 使用預(yù)取 4 ,DDR3使用預(yù)取 8, DDR4 仍然使用預(yù)取8,但引入了bank group的概念,以避免更大的預(yù)取帶來的負(fù)面影響。

圖 3 顯示了從 SDR SDRAM 到 DDR3 SDRAM 的四代 SDRAM 預(yù)取是如何演變的。對(duì)于任何單列操作(例如,讀或?qū)懀?,一次訪問的word數(shù)由存儲(chǔ)器陣列的數(shù)量以及將這些word從存儲(chǔ)器跟SDRAM的核心之間進(jìn)或出所需的大致周期時(shí)間 (MHz) 表示。

在 90 年代中期,內(nèi)存陣列速度與 I/O 速度相匹配。很快,DDR 的 2N 預(yù)?。ㄒ策m用于 LPDDR)被引入,以實(shí)現(xiàn)比 SDRAM 內(nèi)核更高的數(shù)據(jù)速率。下圖第二行所示的多路mux可以訪問2個(gè)word,然后它們?cè)诮涌谏蠌?fù)用,在時(shí)鐘的一個(gè)上升沿和一個(gè)下降沿。DDR3/LPDDR3 的8N 預(yù)取也是同理。

Figure 3: Historical DRAM Prefetch

DDR4 and Bank Groups

問題變成了:這如何應(yīng)用于 DDR4 及其 8N 預(yù)取? 如果 DDR4 遵循圖 3的趨勢(shì),則 DDR4 將具有 16 個(gè)預(yù)取,這是不可取的。 DDR4 通過引入BG的概念避免了這個(gè)問題。 對(duì)于BG,一組8的預(yù)取在一個(gè)BG中執(zhí)行,另一組8的預(yù)取可以在另一個(gè)獨(dú)立的BG中執(zhí)行。BG是獨(dú)立的實(shí)體,因此它們?cè)试S在一個(gè)BG內(nèi)完成一個(gè)列循環(huán),但該列循環(huán)不會(huì)影響另一個(gè)BG中正在發(fā)生的事情。 實(shí)際上,DDR4 SDRAM 可以時(shí)分復(fù)用其內(nèi)部BG,以隱藏內(nèi)部 SDRAM 內(nèi)核周期時(shí)間比接口上需要的 8 個(gè)突發(fā)所需的時(shí)間更長(zhǎng)的事實(shí)。 圖 4 顯示了該過程如何尋找具有兩個(gè)bank group的 x16 DDR4 SDRAM,這通常用于嵌入式應(yīng)用程序。Effectively, the DDR4 SDRAM can time division multiplex its internal bank groups in order to hide the fact that the internal SDRAM core cycle time takes longer than a burst of eight requires on the interface. Figure 4 shows how this process looks for a x16 DDR4 SDRAM with two bank groups, which are often used in embedded applications.

Figure 4: DDR4 Solution to Prefetch of Eight

New Bank Groups Specifications

DDR4 的新規(guī)范引入BG。兩個(gè)關(guān)鍵規(guī)格是 tCCD_S 和 tCCD_L。 “CCD” 代表“column to column delay”或“command to command delay” on the column side. “_S”代表“短”,“_L”代表“長(zhǎng)”。

當(dāng)一個(gè)命令在一個(gè)具有 8N 預(yù)取的BG中啟動(dòng)時(shí),必須允許預(yù)取完成,需要該group的整個(gè)周期時(shí)間才能完成。從一個(gè)BG轉(zhuǎn)到另一個(gè)BG則沒有約束。使用tCCD_S規(guī)范就是這種情況,它在四個(gè)時(shí)鐘周期內(nèi)不受限制, 類似于 DDR3。

然而,有一個(gè)大問題。在同一個(gè)BG內(nèi)執(zhí)行命令到命令需要注意 DDR4 的新tCCD_L 規(guī)范,該規(guī)范通常大于四個(gè)時(shí)鐘周期。圖 5 突出顯示了 tCCD_S 和 tCCD_L 之間的區(qū)別。

Figure 5: tCCD_L and tCCD_S in DDR4 Bank Groups

New tCCD Specifications, Big Impact

如圖 6 所示,使用 DDR4 在不同的BG之間傳輸需要四個(gè)時(shí)鐘周期的延遲。四個(gè)時(shí)鐘周期與 8 個(gè)突發(fā)長(zhǎng)度相匹配。因?yàn)樗膫€(gè)時(shí)鐘周期是八個(gè)時(shí)鐘邊沿,包括上升沿和下降沿,所以 8 個(gè)突發(fā)長(zhǎng)度在這四個(gè)時(shí)鐘周期內(nèi)的每個(gè)時(shí)鐘沿上非常有效地輸出或接收數(shù)據(jù)。在這種情況下,不會(huì)浪費(fèi)總線帶寬。一個(gè)命令可以跟隨另一個(gè)命令,而不會(huì)在沒有傳輸數(shù)據(jù)的總線上浪費(fèi)任何周期。

Figure 6: Bank Group Defines tCCD Parameters Differently Between the Same Bank Group and a Different Bank Group

但在同一個(gè) BG中,速率提升到1600 Mbps后,tCCD_L 規(guī)范需要四個(gè)以上的時(shí)鐘。1,600 和 1,866 Mbps 需要 5 個(gè)時(shí)鐘,而 2,133 Mbps 需要 6 個(gè)時(shí)鐘。 圖 6下方的時(shí)序圖顯示,在不同的 BG之間進(jìn)行訪問可以在訪問點(diǎn)之間有四個(gè)時(shí)鐘周期。在同一個(gè)BG中,以2,133 Mbps為例,需要在列命令之間有六個(gè)時(shí)鐘周期。 但是,傳輸數(shù)據(jù)只需要 4 個(gè)時(shí)鐘周期,即33% 的總線帶寬被浪費(fèi)。

Scheduling Traffic for Efficient Bank Group Use

圖 7 中的時(shí)序圖顯示了 DDR4 的BG在 1600 Mbps中的影響。 tCCD_L 長(zhǎng)規(guī)格為 5 意味著在同一 BG內(nèi)的列命令之間需要 5 個(gè)時(shí)鐘周期。圈起的區(qū)域可以看出:當(dāng)使用五個(gè)時(shí)鐘周期時(shí),有一個(gè)時(shí)鐘周期被浪費(fèi),沒有任何數(shù)據(jù)。在更高的數(shù)據(jù)速率下,浪費(fèi)越來越厲害。 在八個(gè)的情況下,試圖留在同一個(gè)BG內(nèi)浪費(fèi)了一半的帶寬。

Figure 7: Potential Wasted Clock Cycles Between Column Commands1

原文鏈接:

DDR4 Bank Groups | Interface IP | DesignWare IP | Synopsys

What are DDR4 SDRAM Bank Groups?

LPDDR5/5X BG mode,8B mode和16B mode

BANK架構(gòu)概述

總體說明

LPDDR5/5X 器件,協(xié)議上支持多個(gè)bank架構(gòu)可靜態(tài)配置;配置在MR3:
在這里插入圖片描述

幾個(gè)模式簡(jiǎn)要描述:

模式說明協(xié)議要求速率要求BL
BG模式每CH 4BG, 4BALPDDR5/5X>3200MbpsBL16 & 32
8B模式每CH 8BALPDDR5任何速率BL32
16B模式每CH 16BALPDDR5/5X<=3200MbpsBL16 & 32

三種模式的示意圖

BG模式圖示

在這里插入圖片描述
如圖,可以看出:

  • LPDDR 單通道16bit,即2Byte;

  • BANK是per byte劃分的,每個(gè)byte都有其bank存儲(chǔ)資源,每個(gè)bank一行一列選中8bit;

  • 每個(gè)byte預(yù)取資源是128bit,對(duì)應(yīng)BL = 128bit / x8 = 16;(為啥BG模式能支持BL32? 后面會(huì)講);

  • 由于BG和BA都單獨(dú)尋址,所以單byte而言,一次僅操作一個(gè)特定bank;

  • 不得不說,這只是一個(gè)示意圖,一般情況下,x16模式下,一個(gè)bank選中一行一列的數(shù)據(jù)位寬就是16bit, 況且address mapping章節(jié)也會(huì)講,x16模式,BG模式的器件,4個(gè)Bg,4個(gè)bank;這個(gè)圖有兩種理解:1,上圖中BG0,Bank0對(duì)應(yīng)兩個(gè)框框,兩個(gè)框是一個(gè)物理BANK; 2,兩個(gè)框框就是兩個(gè)物理bank,只是device邏輯上把他們拼成了一個(gè)bank。 本文以第二種理解方式展開描述。

8B模式圖示

在這里插入圖片描述

  • 每個(gè)byte預(yù)取資源是256bit,對(duì)應(yīng)BL = 32, 所以此模式僅支持BL32的應(yīng)用;

  • 由于沒有BG, 當(dāng)我們指定一個(gè)bank地址時(shí),其實(shí)是在并發(fā)操作兩個(gè)BA(單byte而言),這兩組BA都有128bit預(yù)取資源;

16B模式圖示

在這里插入圖片描述

  • 每個(gè)byte而言,預(yù)取128bit, 對(duì)應(yīng)BL=16;

  • 每個(gè)byte而言,16個(gè)bank都是可以單獨(dú)尋址的,單次操作僅針對(duì)一個(gè)特定bank;

  • 由于只有bank,沒有BG,所以對(duì)于高速應(yīng)用,個(gè)人猜測(cè)可能bank切換不及時(shí)導(dǎo)致數(shù)據(jù)存在氣泡,所以僅支持低速應(yīng)用場(chǎng)景;

burst操作波形,以讀為例

BG模式 BL16 4:1模式的讀波形

在這里插入圖片描述

  • BG交織訪問,數(shù)據(jù)無氣泡

BG模式 BL32 4:1模式的讀波形

在這里插入圖片描述

  • BG交織訪問呢,命令間隔適用BL/n = 2;

  • 由于上面框圖中的預(yù)取資源僅夠burst16, 所以BL32實(shí)際上需要兩個(gè)讀命令的數(shù)據(jù)以BL16交織的形式出現(xiàn);

  • 第三次讀由于沒人跟他交織,所以中間空了8tWCK的時(shí)序;

  • BL16和BL32的讀命令可以混發(fā),但是要注意BL32數(shù)據(jù)出來的時(shí)序,防止DQ線多驅(qū);

8B模式 BL32 4:1模式的讀波形

在這里插入圖片描述

  • 由于8B模式配置,本身就有256bit預(yù)取,對(duì)應(yīng)BL = 32, 所以讀數(shù)據(jù)BL32直接吐出來,無需和其他讀命令交織;

16B模式 BL16 4:1模式的讀波形

在這里插入圖片描述

  • 沒啥特別的,標(biāo)準(zhǔn)的數(shù)據(jù)背靠背操作;

16B模式 BL32 4:1模式的讀波形

在這里插入圖片描述

  • 這里為啥128bit預(yù)取可以實(shí)現(xiàn)BURST32, 是因?yàn)樗俾时容^低,這里BL32其實(shí)就相當(dāng)于兩次背靠背的BL16讀;

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多

    日韩日韩欧美国产精品| 精品日韩中文字幕视频在线| 日本淫片一区二区三区| 欧美成人免费夜夜黄啪啪| 国产av一二三区在线观看| 日韩精品在线观看完整版| 国产在线观看不卡一区二区| 久久精品国产亚洲av久按摩| 白丝美女被插入视频在线观看| 欧美日韩国产欧美日韩| 亚洲妇女黄色三级视频| 特黄大片性高水多欧美一级| 国产专区亚洲专区久久| 五月天六月激情联盟网| 亚洲欧洲在线一区二区三区| 国产精品亚洲综合天堂夜夜| 日本特黄特色大片免费观看| 色婷婷丁香激情五月天| 国产一区二区不卡在线视频| 成人精品国产亚洲av久久| 国产不卡最新在线视频| 国产熟女一区二区精品视频| 亚洲国产欧美久久精品| 国产色第一区不卡高清| 欧美尤物在线观看西比尔| 国产真人无遮挡免费视频一区| 国产精品国产亚洲看不卡| 色偷偷亚洲女人天堂观看| 久久热麻豆国产精品视频| 好吊一区二区三区在线看| 五月婷婷综合激情啪啪| 中文字幕在线区中文色 | 午夜福利92在线观看| 日韩无套内射免费精品| 好吊妞视频这里有精品| 五月综合激情婷婷丁香| 大屁股肥臀熟女一区二区视频| 亚洲综合伊人五月天中文| 91偷拍裸体一区二区三区| 五月天综合网五月天综合网| 国产亚洲欧美自拍中文自拍|