国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

以SDR SDRAM 為例,DRAM Device 與 Host 端的接口描述

西西 ? 來源:蝸窩科技 ? 作者:codingbelief ? 2020-09-22 15:34 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

在前面的文章中,介紹了 DRAM Cell 和 Memory Array。 本文則以 SDR SDRAM 為例,描述 DRAM Device 與 Host 端的接口,以及其內部的其他模塊,包括 Control Logic、IO、Row & Column Decoder 等。

1. SDRAM Interface

SDR SDRAM 是 DRAM 的一種,它與 Host 端的硬件接口如下圖所示:

總線上各個信號的描述如下表所示:

Symbol Type Description
CLK Input 從 Host 端輸出的同步時鐘信號
CKE Input 用于指示 CLK 信號是否有效,SDRAM 會根據此信號進入或者退出 Power down、Self-refresh 等模式
CS# Input Chip Select 信號
CAS# Input Column Address Strobe,列地址選通信
RAS# Input Row Address Strobe, 行地址選通信號
WE# Input Write Enable,寫使能信號
DQML Input 當進行寫數據時,如果該 DQML 為高,那么 DQ[7:0] 的數據會被忽略,不寫入到 DRAM
DQMH Input 當進行寫數據時,如果該 DQMH 為高,那么 DQ[15:8] 的數據會被忽略,不寫入到 DRAM
BA[1:0] Input Bank Address,用于選擇操作的 Memory Bank
A[12:0] Input Address 總線,用于傳輸行列地址
DQ[15:0] I/O Data 總線,用于傳輸讀寫的數據內容

1.1 SDRAM Operations

Host 與 SDRAM 之間的交互都是由 Host 以 Command 的形式發起的。一個 Command 由多個信號組合而成,下面表格中描述了主要的 Command。

Command CS# RAS# CAS# WE# DQM BA[1:0] & A[12:0] DQ[15:0]
Active L L H H X Bank & Row X
Read L H L H L/H Bank & Col X
Write L H L L L/H Bank & Col Valid
Precharge L L H L X Code X
Auto-refresh L L L H X X X
Self-refresh L L L H X X X
Load Mode Register L L L L X REG Value X

1.1.1 Active

Active Command 會通過 BA[1:0] 和 A[12:0] 信號,選中指定 Bank 中的一個 Row,并打開該 Row 的 wordline。在進行 Read 或者 Write 前,都需要先執行 Active Command。

1.1.2 Read

Read Command 將通過 A[12:0] 信號,發送需要讀取的 Column 的地址給 SDRAM。然后 SDRAM 再將 Active Command 所選中的 Row 中,將對應 Column 的數據通過 DQ[15:0] 發送給 Host。

Host 端發送 Read Command,到 SDRAM 將數據發送到總線上的需要的時鐘周期個數定義為 CL。

1.1.3 Write

Write Command 將通過 A[12:0] 信號,發送需要寫入的 Column 的地址給 SDRAM,同時通過 DQ[15:0] 將待寫入的數據發送給 SDRAM。然后 SDRAM 將數據寫入到 Actived Row 的指定 Column 中。

SDRAM 接收到最后一個數據到完成數據寫入到 Memory 的時間定義為 tWR (Write Recovery)。

1.1.4 Precharge

在進行下一次的 Read 或者 Write 操作前,必須要先執行 Precharge 操作。(具體的細節可以參考DRAM Storage Cell章節)

Precharge 操作是以 Bank 為單位進行的,可以單獨對某一個 Bank 進行,也可以一次對所有 Bank 進行。如果 A10 為高,那么 SDRAM 進行 All Bank Precharge 操作,如果 A10 為低,那么 SDRAM 根據 BA[1:0] 的值,對指定的 Bank 進行 Precharge 操作。

SDRAM 完成 Precharge 操作需要的時間定義為 tPR。

1.1.5 Auto-Refresh

DRAM 的 Storage Cell 中的電荷會隨著時間慢慢減少,為了保證其存儲的信息不丟失,需要周期性的對其進行刷新操作。

SDRAM 的刷新是按 Row 進行,標準中定義了在一個刷新周期內(常溫下 64ms,高溫下 32ms)需要完成一次所有 Row 的刷新操作。

為了簡化 SDRAM Controller 的設計,SDRAM 標準定義了 Auto-Refresh 機制,該機制要求 SDRAM Controller 在一個刷新周期內,發送 8192 個 Auto-Refresh Command,即 AR, 給 SDRAM。

SDRAM 每收到一個 AR,就進行 n 個 Row 的刷新操作,其中,n = 總的 Row 數量 / 8192 。
此外,SDRAM 內部維護一個刷新計數器,每完成一次刷新操作,就將計數器更新為下一次需要進行刷新操作的 Row。

一般情況下,SDRAM Controller 會周期性的發送 AR,每兩個 AR 直接的時間間隔定義為 tREFI = 64ms / 8192 = 7.8 us。

SDRAM 完成一次刷新操作所需要的時間定義為 tRFC, 這個時間會隨著 SDRAM Row 的數量的增加而變大。

由于 AR 會占用總線,阻塞正常的數據請求,同時 SDRAM 在執行 refresh 操作是很費電,所以在 SDRAM 的標準中,還提供了一些優化的措施,例如 DRAM Controller 可以最多延時 8 個 tREFI 后,再一起把 8 個 AR 同時發出。

更多相關的優化可以參考《大容量 DRAM 的刷新開銷問題及優化技術綜述》文中的描述。

1.1.6 Self-Refresh

Host 還可以讓 SDRAM 進入 Self-Refresh 模式,降低功耗。在該模式下,Host 不能對 SDRAM 進行讀寫操作,SDRAM 內部自行進行刷新操作保證數據的完整。通常在設備進入待機狀態時,Host 會讓 SDRAM 進入 Self-Refresh 模式,以節省功耗。

更多各個 Command 相關的細節,可以參考后續的DRAM Timing章節。

1.2 Address Mapping

SDRAM Controller 的主要功能之一是將 CPU 對指定物理地址的內存訪問操作,轉換為 SDRAM 讀寫時序,完成數據的傳輸。
在實際的產品中,通常需要考慮 CPU 中的物理地址到 SDRAM 的 Bank、Row 和 Column 地址映射。下圖是一個 32 位物理地址映射的一個例子:

2. SDRAM 內部結構

如圖所示,DRAM Device 內部主要有 Control Logic、Memory Array、Decoders、Reflash Counter 等模塊。在后續的小節中,將逐一介紹各個模塊的主要功能。

2.1 Control Logic

Control Logic 的主要功能是解析 SDRAM Controller 發出的 Command,然后根據具體的 Command 做具體內部模塊的控制,例如:選中指定的 Bank、觸發 refresh 等的操作。

Control Logic 包含了 1 個或者多個 Mode Register。該 Register 中包含了時序、數據模式等的配置,更多的細節會在DRAM Timing章節進行描述。

2.2Row & Column Decoder

Row Decoder 的主要功能是將 Active Command 所帶的 Row Address 映射到具體的 wordline,最終打開指定的 Row。同樣 Column Decoder 則是把 Column Address 映射到具體的 csl,最終選中特定的 Column。

2.3 Memory Array

Memory Array 是存儲信息的主要模塊,具體細節可以參考DRAM Memory Orgization章節的描述。

2.4 IO

IO 電路主要是用于處理數據的緩存、輸入和輸出。其中 Data Latch 和 Data Register 用于緩存數據,DQM Mask Logic 和 IO Gating 等則用于輸入輸出的控制。

2.5 Refresh Counter

Refresh Counter 用于記錄下次需要進行 refresh 操作的 Row。在接收到 AR 或者在 Self-Refresh 模式下,完成 一次 refresh 后,Refresh Counter 會進行更新。

3. 不同類型的 SDRAM

目前市面上在使用的 DRAM 主要有 SDR、DDR、LPDDR、GDDR 這幾類,后續小節中,將對各種類型的 DRAM 進行簡單的介紹。

3.1 SDR 和 DDR

SDR(Single Data Rate) SDRAM 是第一個引入 Clock 信號的 DRAM 產品,SDR 在 Clock 的上升沿進行總線信號的處理,一個時鐘周期內可以傳輸一組數據。

DDR(Double Data Rate) SDRAM 是在 SDR 基礎上的一個更新。DDR 內部采用 2n-Prefetch 架構,相對于 SDR,在一個讀寫周期內可以完成 2 倍寬度數據的預取,然后在 Clock 的上升沿和下降沿都進行數據傳輸,最終達到在相同時鐘頻率下 2 倍于 SDR 的數據傳輸速率。(更多 2n-Prefetch 相關的細節可以參考 《Micron Technical Note - General DDR SDRAM Functionality》文中的介紹)

Prefetch 的基本原理如下圖所示。在示例 B 中,內部總線寬度是 A 的兩倍,在一次操作周期內,可以將兩倍于 A 的數據傳輸到 Output Register 中,接著外部 IO 電路再以兩倍于 A 的頻率將數據呈現到總線上,最終實現兩倍 A 的傳輸速率。

DDR 后續還有 DDR2、DDR3、DDR4 的更新,基本上每一代都通過更多的 Prefetch 和更高的時鐘頻率,達到 2 倍于上一代的數據傳輸速率。

DDR SDRAM Standard Bus clock (MHz) Internal rate (MHz) Prefetch (min burst) Transfer Rate (MT/s) Voltage
DDR 100–200 100–200 2n 200–400 2.5/2.6
DDR2 200–533.33 100–266.67 4n 400–1066.67 1.8
DDR3 400–1066.67 100–266.67 8n 800–2133.33 1.5
DDR4 1066.67–2133.33 133.33–266.67 8n 2133.33–4266.67 1.05/1.2

Transfer Rate (MT/s)為每秒發生的 Transfer 的數量,一般為 Bus Clock 的 2 倍 (一個 Clock 周期內,上升沿和下降沿各有一個 Transfer)
Internal rate (MHz)則是內部 Memory Array 讀寫的頻率。由于 SDRAM 采用電容作為存儲介質,由于工藝和物理特性的限制,電容充放電的時間難以進一步的縮短,所以內部 Memory Array 的讀寫頻率也受到了限制,目前最高能到 266.67 MHz,這也是 SDR 到 DDR 采用 Prefetch 架構的主要原因。
Memory Array 讀寫頻率受到限制,那就只能在讀寫寬度上做優化,通過增加單次讀寫周期內操作的數據寬度,結合總線和 IO 頻率的增加來提高整體傳輸速率。

3.2 LPDDRx

LPDDR,即 Low Power DDR SDRAM,主要是用著移動設備上,例如手機、平板等。相對于 DDR,LPDDR 采用了更低的工作電壓、Partial Array Self-Refresh 等機制,降低整體的功耗,以滿足移動設備的低功耗需求。

3.3 GDDRx

GDDR,即 Graphic DDR,主要用在顯卡設備上。相對于 DDR,GDDR 具有更高的性能、更低的功耗、更少的發熱,以滿足顯卡設備的計算需求。

4. 參考資料

Memory Systems - Cache Dram and Disk

大容量 DRAM 的刷新開銷問題及優化技術綜述 [PDF]

Micron Technical Note - General DDR SDRAM Functionality [PDF]

Everything You Need To Know About DDR, DDR2 and DDR3 Memories [WEB]

記憶體10年技術演進史 [WEB]

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • DRAM
    +關注

    關注

    41

    文章

    2393

    瀏覽量

    189136
  • SDRAM
    +關注

    關注

    7

    文章

    457

    瀏覽量

    57682
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    DRAM動態隨機存取存儲器DDR2 SDRAM內存解決方案

    在半導體存儲領域,DRAM動態隨機存取存儲器始終是電子設備性能的核心支撐。作為存儲解決方案的重要組成部分,DDR2 SDRAM內存解決方案憑借其高效的數據處理能力和穩定的運行表現,廣泛應用于通信設備、工業控制及嵌入式系統等領域。
    的頭像 發表于 02-28 16:31 ?495次閱讀

    256Mb SDRAM:高性能存儲解決方案的深度剖析

    256Mb SDRAM是一款高速CMOS動態隨機存取存儲器,它包含268,435,456位,內部配置四體DRAM,采用同步接口
    的頭像 發表于 02-03 17:25 ?1041次閱讀

    256Mb x4、x8、x16 SDRAM特性解析與應用指南

    動態隨機存取存儲器,內部包含268,435,456位,采用四體(quad - bank)DRAM架構,并配備同步接口,所有信號都在時鐘信號CLK的上升沿進行寄存。它有三種
    的頭像 發表于 02-02 16:05 ?348次閱讀

    DDRX SDRAM中的預取技術說明

    DDRX SDRAM外部接口數據傳輸率需要不斷提高(從DDR到DDR5),內存芯片內部的DRAM存儲單元(電容陣列)的物理訪問速度有上限,無法隨著接口速度的線性增長。
    的頭像 發表于 01-13 11:39 ?1565次閱讀
    DDRX <b class='flag-5'>SDRAM</b>中的預取技術說明

    如何評估SDRAM的有效帶寬

    在進行電子系統設計時,我們經常會用到SDRAM(SDR SDRAM或者DDRX SDRAM)作為緩沖單元,但是如何評估SDRAM的有效帶寬呢
    的頭像 發表于 01-12 09:17 ?335次閱讀
    如何評估<b class='flag-5'>SDRAM</b>的有效帶寬

    DRAM和SRAM、SDRAM相比有什么特點?

    DRAM利用電容存儲數據,由于電容存在漏電現象,必須通過周期性刷新來維持數據。此外,DRAM采用行列地址復用設計,提高了存儲密度,但增加了控制復雜性。它廣泛用于大容量、低成本存儲場景,如計算機內存。
    的頭像 發表于 11-18 11:49 ?712次閱讀

    Xilinx高性能NVMe Host控制器IP+PCIe 3.0軟核控制器IP,純邏輯實現,AXI4和AXI4-Stream DMA接口,支持PCIe 3.0和4.0

    ,具備獨立的數據寫入和讀取AXI4接口,不但適用高性能、順序訪問的應用,也適用于隨機訪問的應用,同時結合外部存儲器(比如DDR),使得Host的數據訪問管理更加靈活。NVMe是基于PCIe之上的協議
    發表于 11-14 22:40

    使用nRF52840芯片的USB Host 功能參考例程

    Host 開發的核心,需重點關注: USB Host 控制器初始化(nrf_usb.h 或 Zephyr 的 usb.h); 設備枚舉流程(設備連接檢測、描述符解析); 接口配置與端
    發表于 10-31 12:47

    NICE協處理器接口信號解讀--demo

    總體介紹 ?關于NICE各個接口信號的介紹文檔的鏈接如下: https://doc.nucleisys.com/hbirdv2/core/core.html#nice ??接口信號總共可以分為4個
    發表于 10-31 08:01

    CherryUSB Host必須要DMA而Device就可以選擇是否使用DMA?

    因為從ST F4的USB協議棧遷移到CherryUSB,在看兩個協議棧的代碼時發現CherryUSB作為HOST使用時,只能使用HS,因為HS支持DMA,但是作為Device時卻不需要,故有
    發表于 09-10 06:58

    嵌入式接口通識知識之SDIO接口

    物理接口之上,所以引腳信息也是相對應的。 SDIO總線有兩,一是主機(HOST,另一
    發表于 08-21 16:53

    示波器如何設置延遲功能? 橫河DL950

    誠然在測量途中延遲的出現固然會引起不必要的誤差,但如果我們能換個思路就會發現延遲亦不失衡量測試精度的一大標尺。橫河示波器DL950,作為一款備受好評的高精度示波器其delay功
    的頭像 發表于 07-08 16:43 ?1752次閱讀
    示波器如何設置延遲功能? <b class='flag-5'>以</b>橫河DL950<b class='flag-5'>為</b><b class='flag-5'>例</b>

    如何區分usb-typec是插入電腦還是插入其他電源?

    ./canaan-camera.sh start otg0這個腳本嗎? 默認情況下,K230 板 USB Host 模式運行。當有 USB 設備插入 K230 的 USB Host 接口
    發表于 04-24 08:23

    DDR3 SDRAM配置教程

    DDR3 SDRAM(Double-Data-Rate ThreeSynchronous Dynamic Random Access Memory)是DDR SDRAM的第三代產品,相較于DDR2,DDR3有更高的運行性能與更低的電壓。
    的頭像 發表于 04-10 09:42 ?4168次閱讀
    DDR3 <b class='flag-5'>SDRAM</b>配置教程

    DeepSeek企業級部署服務器資源計算 raksmart裸機云服務器

    RakSmart裸機云服務器,針對DeepSeek企業級部署的服務器資源計算指南,涵蓋GPU/CPU/內存/存儲/網絡等核心維度的詳細計算方法與配置推薦,主機推薦小編為您整理發布
    的頭像 發表于 03-21 10:17 ?1077次閱讀