完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>
標簽 > SDRAM
SDRAM:Synchronous Dynamic Random Access Memory,同步動態隨機存儲器,同步是指內存工作需要同步時鐘,內部的命令的發送與數據的傳輸都以它為基準
SDRAM:Synchronous Dynamic Random Access Memory,同步動態隨機存儲器,同步是指內存工作需要同步時鐘,內部的命令的發送與數據的傳輸都以它為基準;動態是指存儲陣列需要不斷的刷新來保證數據不丟失;隨機是指數據不是線性依次存儲,而是自由指定地址進行數據讀寫。
SDRAM:Synchronous Dynamic Random Access Memory,同步動態隨機存儲器,同步是指內存工作需要同步時鐘,內部的命令的發送與數據的傳輸都以它為基準;動態是指存儲陣列需要不斷的刷新來保證數據不丟失;隨機是指數據不是線性依次存儲,而是自由指定地址進行數據讀寫。
演變
SDRAM從發展到現在已經經歷了五代,分別是:第一代SDR SDRAM,第二代DDR SDRAM,第三代DDR2 SDRAM,第四代DDR3 SDRAM,第五代,DDR4 SDRAM。
第一代SDRAM采用單端(Single-Ended)時鐘信號,第二代、第三代與第四代由于工作頻率比較快,所以采用可降低干擾的差分時鐘信號作為同步時鐘。
SDR SDRAM的時鐘頻率就是數據存儲的頻率,第一代內存用時鐘頻率命名,如pc100,pc133則表明時鐘信號為100或133MHz,數據讀寫速率也為100或133MHz。
之后的第二,三,四代DDR(Double Data Rate)內存則采用數據讀寫速率作為命名標準,并且在前面加上表示其DDR代數的符號,PC-即DDR,PC2=DDR2,PC3=DDR3。如PC2700是DDR333,其工作頻率是333/2=166MHz,2700表示帶寬為2.7G。
DDR的讀寫頻率從DDR200到DDR400,DDR2從DDR2-400到DDR2-800,DDR3從DDR3-800到DDR3-1600。
很多人將SDRAM錯誤的理解為第一代也就是 SDR SDRAM,并且作為名詞解釋,皆屬誤導。
SDR不等于SDRAM。
Pin:模組或芯片與外部電路連接用的金屬引腳,而模組的pin就是常說的“金手指”。
SIMM:Single In-line Memory Module,單列內存模組。內存模組就是我們常說的內存條,所謂單列是指模組電路板與主板插槽的接口只有一列引腳(雖然兩側都有金手指)。
DIMM:Double In-line Memory Module,雙列內存模組。是我們常見的模組類型,所謂雙列是指模組電路板與主板插槽的接口有兩列引腳,模組電路板兩側的金手指對應一列引腳。
RIMM:registered DIMM,帶寄存器的雙線內存模塊,這種內存槽只能插DDR或Rambus內存。
SO-DIMM:筆記本常用的內存模組。
工作電壓:
SDRAM:3.3V
DDR:2.5V
DDR2:1.8V
DDR3:1.5V
DDR4:1.2V
SDRSDRAM內存條的金手指通常是168線,而DDR SDRAM內存條的金手指通常是184線的。
幾代產品金手指的缺口數及缺口位置也不同有效防止反插與錯插,SDR SDRAM有兩個缺口,DDR只有一個缺口。
關系
結構、時序與性能的關系一、影響性能的主要時序參數所謂的影響性能是并不是指SDRAM的帶寬,頻率與位寬固定后,帶寬也就不可更改了。但這是理想的情況,在內存的工作周期內,不可能總處于數據傳輸的狀態,因為要有命令、尋址等必要的過程。但這些操作占用的時間越短,內存工作的效率越高,性能也就越好。非數據傳輸時間的主要組成部分就是各種延遲與潛伏期。通過上文的講述,大家應該很明顯看出有三個參數對內存的性能影響至關重要,它們是tRCD、CL和tRP。每條正規的內存模組都會在標識上注明這三個參數值,可見它們對性能的敏感性。以內存最主要的操作——讀取為例。tRCD決定了行尋址(有效)至列尋址(讀/寫命令)之間的間隔,CL決定了列尋址到數據進行真正被讀取所花費的時間,tRP則決定了相同L-Bank中不同工作行轉換的速度。現在可以想象一下讀取時可能遇到的幾種情況(分析寫入操作時不用考慮CL即可):1.要尋址的行與L-Bank是空閑的。也就是說該L-Bank的所有行是關閉的,此時可直接發送行有效命令,數據讀取前的總耗時為tRCD+CL,這種情況我們稱之為頁命中(PH,Page Hit)。2.要尋址的行正好是前一個操作的工作行,也就是說要尋址的行已經處于選通有效狀態,此時可直接發送列尋址命令,數據讀取前的總耗時僅為CL,這就是所謂的背靠背(Back to Back)尋址,我們稱之為頁快速命中(PFH,Page Fast Hit)或頁直接命中(PDH,Page Direct Hit)。3.要尋址的行所在的L-Bank中已經有一個行處于活動狀態(未關閉),這種現象就被稱作尋址沖突,此時就必須要進行預充電來關閉工作行,再對新行發送行有效命令。結果,總耗時就是tRP+tRCD+CL,這種情況我們稱之為頁錯失(PM,Page Miss)。顯然,PFH是最理想的尋址情況,PM則是最糟糕的尋址情況。上述三種情況發生的機率各自簡稱為PHR——PH Rate、PFHR——PFH Rate、PMR——PM Rate。因此,系統設計人員(包括內存與北橋芯片)都盡量想提高PHR與PFHR,同時減少PMR,以達到提高內存工作效率的目的。二、增加PHR的方法顯然,這與預充電管理策略有著直接的關系,目前有兩種方法來盡量提高PHR。自動預充電技術就是其中之一,它自動的在每次行操作之后進行預充電,從而減少了日后對同一L-Bank不同行尋址時發生沖突的可能性。但是,如果要在當前行工作完成后馬上打開同一L-Bank的另一行工作時,仍然存在tRP的延遲。怎么辦? 此時就需要L-Bank交錯預充電了。VIA的4路交錯式內存控制就是在一個L-Bank工作時,對下一個要工作的L-Bank進行預充電。這樣,預充電與數據的傳輸交錯執行,當訪問下一個L-Bank時,tRP已過,就可以直接進入行有效狀態了。目前VIA聲稱可以跨P-Bank進行16路內存交錯,并以LRU算法進行預充電管理。有關L-Bank交錯預充電(存取)的具體執行在本刊2001年第2期已有詳細介紹,這里就不再重復了。L-Bank交錯自動預充電/讀取時序圖(可點擊放大):L-Bank 0與L-Bank 3實現了無間隔交錯讀取,避免了tRP對性能的影響。三、增加PFHR的方法無論是自動預充電還是交錯工作的方法都無法消除tRCD所帶來的延遲。要解決這個問題,就要盡量讓一個工作行在進行預充電前盡可能多的接收多個工作命令,以達到背靠背的效果,此時就只剩下CL所造成的讀取延遲了(寫入時沒有延遲)。如何做到這一點呢?這就是北橋芯片的責任了。在上文的時序圖中有一個參數tRAS(Active to Precharge Command,行有效至預充電命令間隔周期)。它有一個范圍,對于PC133標準,一般是預充電命令至少要在行有效命令5個時鐘周期之后發出,最長間隔視芯片而異(基本在120000ns左右),否則工作行的數據將有丟失的危險。那么這也就意味著一個工作行從有效(選通)開始,可以有120000ns的持續工作時間而不用進行預充電。顯然,只要北橋芯片不發出預充電(包括允許自動預充電)的命令,行打開的狀態就會一直保持。在此期間的對該行的任何讀寫操作也就不會有tRCD的延遲。可見,如果北橋芯片在能同時打開的行(頁)越多,那么PFHR也就越大。需要強調的是,這里的同時打開不是指對多行同時尋址(那是不可能的),而是指多行同時處于選通狀態。我們可以看到一些SDRAM芯片組的資料中會指出可以同時打開多少個頁的指標,這可以說是決定其內存性能的一個重要因素。Intel 845芯片組MCH的資料:其中表明它可以支持24個頁面同時處于打開狀態但是,可同時打開的頁數也是有限制的。從SDRAM的尋址原理講,同一L-Bank中不可能有兩個打開的行(S-AMP只能為一行服務),這就限制了可同時打開的頁面總數。以SDRAM有4個L-Bank,北橋最多支持8個P-Bank為例,理論上最多只能有32個頁面能同時處于打開的狀態。而如果只有一個P-Bank,那么就只剩下4個頁面,因為有幾個L-Bank才能有同時打開幾個行而互不干擾。Intel 845的MHC雖然可以支持24個打開的頁面,那也是指6個P-Bank的情況下(845MCH只支持6個P-Bank)。可見845已經將同時打開頁數發揮到了極致。不過,同時打開頁數多了,也對存取策略提出了一定的要求。理論上,要盡量多地使用已打開的頁來保證最短的延遲周期,只有在數據不存在(讀取時)或頁存滿了(寫入時)再考慮打開新的指定頁,這也就是變向的連續讀/寫。而打開新頁時就必須要關閉一個打開的頁,如果此時打開的頁面已是北橋所支持的最大值但還不到理論極限的話,就需要一個替換策略,一般都是用LRU算法來進行,這與VIA的交錯控制大同小異。
SDRAM基礎知識
在學習SDRAM之前,必須先了解“SDRAM”這個概念性的東西,并有感性的認識轉變到一種理性的認識,所謂理性的認識就是實質性的東西……。不多說,相信你已經迫不急待了。那我們就開始了。
初識SDRAM
SDRAM的全稱是:Synchronous Dynamic Random Access Memory,同步動態隨機存儲器,同步是指 Memory工作需要同步時鐘,內部的命令的發送與數據的傳輸都以它為基準;動態是指存儲陣列需要不斷的刷新來保證數據不丟失;隨機是指數據不是線性依次存儲,而是自由指定地址進行數據讀寫。
相信通過這段話,你已經知道什么是SDRAM了,這里面有幾個概念性的東西需要我們好好了解:同步、動態、隨機。
同步:這個詞在FPGA設計之中我們經常會遇到它,它反映了驅動sdram必須遵守一種時序原則,就是數據/命令和時鐘在時間上同時的概念,也是在驅動sdram時要十分注意的一點。
動態:RAM這中存儲結構會掉電丟失,在上電的時候也會丟失。為什么?因為SDRAM內部存儲的數據是二進制數據,非0則1。用來存儲該二進制數據的電路是由電容構成的,由于電容這種器件會隨著時間而慢慢放電,就像人的記憶一樣,有些記憶會隨著時間的流逝而淡忘了。很簡單,如果你不想讓某些事某些人淡忘,怎么辦?就只有時不時地去回憶。那SDRAM不想“忘”了它的數據,怎么辦,一樣,也只有不斷地回憶,就是不斷地去刷新里面的存儲電路。
隨機:隨機就是不指定為一次連續,也就是可以對SDRAM里面的隨意地址進行讀寫操作。
SDRAM的歷史
SDRAM從發展到現在已經經歷了四代,分別是:第一代SDR SDRAM,第二代DDR SDRAM,第三代DDR2 SDRAM,第四代DDR3 SDRAM.
第一代SDRAM采用單端(Single-Ended)時鐘信號,第二代、第三代與第四代由于工作頻率比較快,所以采用可降低干擾的差分時鐘信號作為同步時鐘。
SDR SDRAM的時鐘頻率就是數據存儲的頻率,第一代內存用時鐘頻率命名,如pc100,pc133則表明時鐘信號為100或133MHz,數據讀寫速率也為100或133MHz。
之后的第二,三,四代DDR(Double Data Rate)內存則采用數據讀寫速率作為命名標準,并且在前面加上表示其DDR代數的符號,PC-即DDR,PC2=DDR2,PC3=DDR3。如PC2700是DDR333,其工作頻率是333/2=166MHz,2700表示帶寬為2.7G。
DDR的讀寫頻率從DDR200到DDR400,DDR2從DDR2-400到DDR2-800,DDR3從DDR3-800到DDR3-1600。
實驗中要操作的SDRAM就是第一代SDRAM,雖然SDRAM經歷了這么多次的更新換代,但其內部的架構還是相差無幾,更多的是在速率和存儲數量上的不同。
實驗的SDRAM介紹
通過上面的兩節,相信你已經對SDRAM已經有了大致的了解。現在就以實驗中用到的SDRAM--HY57V641620ET-H(海力士的SDRAM)為一個例子對SDRAM的內部結果進行一個詳細的介紹
HY57V641620ET-H的內部結構
通過上圖可以看到SDRAM的“五臟六腑”,下面就來一一剖析:
SDRAM指令接口模塊,這些信號組成了SDRAM的控制指令,控制指令通過“state machine”進行譯碼,由此產生了一系列的控制動作。
SDRAM地址線,其中包括塊地址線、行地址線、列地址線,至于會有這么多線,是因為用到了總線復用,其行線和列線分時復用,從而節省了總線資源,又可以操作到SDRAM的全部存儲單元。至于塊地址線,下面會講到。
SDRAM存儲塊和數據接口:HY57V641620ET-H內部存儲由四個一模一樣的存儲塊組成,至于怎么識別這四個存儲塊,必須要有兩條地址線,所以就用到了上面的那兩條地址線。
動作電路模塊:這幾個模塊主要是根據“state machine”的譯碼結果進行工作的、包括行列地址的編碼、自刷新定時和自刷新操作。
模式寄存器解碼和突發操作模塊:在對SDRAM的寄存器進行配置的時候,是通過地址線對SDRAM進行配置的,SDRAM中有一種突發操作模式,該模式由寄存器進行配置,所以該電路中包含一個突發操作的計數器。至于突發操作的原理下面會涉及到。
相信看到這里,你已經對SDRAM由感性的認識升級到實質性的認識,恭喜你,哈哈…。
HY57V641620ET-H的存儲量
看到這之前相信你應該了解過不少SDRAM的資料,也相信很多資料中從未講過SDRAM名稱的問題,現在我就來幫你解析這個SDRAM
HY:代表是海力士的SDRAM存儲器
57:代表這是SDRAM芯片
V:代表這個SDRAM芯片工作電壓是3.3V
641620:代表這個SDRAM芯片的存儲容量
ET:代表SDRAM的塊反應時間和封裝
H:代表SDRAM的速度等級
下面我們來計算下這個芯片的存儲容量:
存儲容量由存儲深度和存儲寬度決定,這是任何存儲芯片存儲容量的定義;
存儲深度:HY57V641620ET-H內部有4個塊,每個塊有行地址12bit,列地址8bit
所以每個塊就有2^12*2^8 = 4096*256=1048576個存儲單元,4個塊就有4*1048576=4194304個存儲單元。
存儲寬度:該SDRAM的數據位寬為16bit
存儲容量:4194304*16bit = 67108864bit,就是64M
DDR4 SDRAM(Double Data Rate Fourth Synchronous Dynamic Random Access Memory)...
DDR SDRAM,全稱為Double Data Rate Synchronous Dynamic Random Access Memory,即雙數據率...
DRAM(Dynamic Random Access Memory),即動態隨機存取存儲器,是計算機系統中廣泛使用的內存類型之一。它以其高速、大容量和相...
同步動態隨機存儲器(Synchronous Dynamic Random Access Memory,簡稱SDRAM)是一種基于同步時鐘的DRAM。
SDRAM(Synchronous Dynamic Random Access Memory,同步動態隨機訪問內存)是一種廣泛應用于計算機系統和服務器中...
FeRAM,全稱Ferroelectric RAM(鐵電隨機存取存儲器),是一種基于鐵電材料特性的非易失性存儲器技術。它類似于傳統的SDRAM(同步動態...
SDRAM(Synchronous Dynamic Random Access Memory),即同步動態隨機存取存儲器,是計算機系統中使用最廣泛的內存...
類別:IC datasheet pdf 2022-12-05 標簽:SDRAMDDR4
帶有SDRAM開發板的SE PYRAMIDS Cortex M4F立即下載
類別:電子資料 2022-11-17 標簽:控制器SDRAMCortex-M4F
DDR內存與SDRAM的區別 DDR4內存與DDR3內存哪個好
DDR內存與SDRAM的區別 1. 定義與起源 SDRAM (Synchronous Dynamic Random Access Memory) :同步...
康盈半導體推出DDR嵌入式存儲芯片涵蓋DDR3(L)和DDR4
只要出去吃飯、逛街,我們都會詢問是否有WiFi,密碼是多少。Wi-Fi早已成為人們生活和工作中必不可少的最基本的需求之一,WiFi6被認為是與5G平起平...
寫了這么多FPGA的文章卻從來沒有涉及過國產FPGA,很多網友甚至不知道還有國產FPGA。下面列舉一些國產FPGA公司以及產品。
全志A40和A50的區別 全志是一家致力于開發和銷售中小尺寸智能多媒體芯片的公司,其在市場上推出了眾多的芯片產品,其中包括全志A40和A50。這兩款處理...
存儲器靜態隨機存取(SRAM)只要這種內存保持通電,內部存儲的數據就可以保持不變。當電力供應終止時,SRAM存儲的數據仍將消退,這與切斷電源后可以存儲資...
MIMXRT1176支持8位列地址的SDRAM器件W9864G6
MIMXRT1176的開發板配套的 SDRAM是W9825G6KH,對應的列地址是9位的。
編輯推薦廠商產品技術軟件/工具OS/語言教程專題
電機控制 | DSP | 氮化鎵 | 功率放大器 | ChatGPT | 自動駕駛 | TI | 瑞薩電子 |
BLDC | PLC | 碳化硅 | 二極管 | OpenAI | 元宇宙 | 安森美 | ADI |
無刷電機 | FOC | IGBT | 逆變器 | 文心一言 | 5G | 英飛凌 | 羅姆 |
直流電機 | PID | MOSFET | 傳感器 | 人工智能 | 物聯網 | NXP | 賽靈思 |
步進電機 | SPWM | 充電樁 | IPM | 機器視覺 | 無人機 | 三菱電機 | ST |
伺服電機 | SVPWM | 光伏發電 | UPS | AR | 智能電網 | 國民技術 | Microchip |
開關電源 | 步進電機 | 無線充電 | LabVIEW | EMC | PLC | OLED | 單片機 |
5G | m2m | DSP | MCU | ASIC | CPU | ROM | DRAM |
NB-IoT | LoRa | Zigbee | NFC | 藍牙 | RFID | Wi-Fi | SIGFOX |
Type-C | USB | 以太網 | 仿真器 | RISC | RAM | 寄存器 | GPU |
語音識別 | 萬用表 | CPLD | 耦合 | 電路仿真 | 電容濾波 | 保護電路 | 看門狗 |
CAN | CSI | DSI | DVI | Ethernet | HDMI | I2C | RS-485 |
SDI | nas | DMA | HomeKit | 閾值電壓 | UART | 機器學習 | TensorFlow |
Arduino | BeagleBone | 樹莓派 | STM32 | MSP430 | EFM32 | ARM mbed | EDA |
示波器 | LPC | imx8 | PSoC | Altium Designer | Allegro | Mentor | Pads |
OrCAD | Cadence | AutoCAD | 華秋DFM | Keil | MATLAB | MPLAB | Quartus |
C++ | Java | Python | JavaScript | node.js | RISC-V | verilog | Tensorflow |
Android | iOS | linux | RTOS | FreeRTOS | LiteOS | RT-THread | uCOS |
DuerOS | Brillo | Windows11 | HarmonyOS |