我從內部看記憶體

2021-08-06 05:37:41 字數 1711 閱讀 1796

1.記憶體分類

記憶體由於具備訪問速度快,訪問方式簡單等優點,成為了c或者是嵌入式硬體平台上不可或缺的元件。在開始學習如何使用記憶體之前,非常有必要先了解一下記憶體的分類:

dram:它的基本原件是小電容,電容可以在兩個極板上保留電荷,但是需要定期的充電(重新整理),否則資料會丟失。缺點:由於要定期重新整理儲存介質,訪問速度較慢。

sram:它是一種具有靜止訪問功能的記憶體,不需要定期重新整理電路就能儲存它內部儲存的資料。其優點:訪問速度快;但是缺點是:功耗大,成本高。常用作儲存容量不高,但訪問速度快的場合,比如steppingstone.

1.2 dram分類

在嵌入式硬體體系中,除了cpu內部的」墊腳石」採用sram外,板載記憶體一般會採用dram,而dram又可以分

sdram,ddr,ddr2

1.2 sdram

sdram(synchronous dynamic random accessmemory):同步動態隨機儲存器.

同步: 記憶體工作需要有同步時鐘,內部的命令的傳送與資料的傳輸都以該時鐘為基準。

動態:儲存陣列需要不斷的重新整理來保證資料不丟失。

備註:2440開發板上使用的記憶體通常是sdram.

1.2 ddrddr2

ddr (double data ratesdram),即「雙倍速率同步動態隨機儲存器」。與早期的sdram相比,ddr除了可

以在時鐘脈衝的

上公升沿傳輸資料,還可以在

下降沿傳輸訊號,這意味著在相同的工作頻率下,ddr的理論傳輸速率

sdram的兩倍。ddr2則在ddr的基礎上再次進行了改進,使得資料傳輸速率在ddr的基礎上再次翻倍。

備註:6410開發板通常採用ddr記憶體,210開發板通常採用ddr2記憶體

2.記憶體內部結構

2.1表結構

記憶體的內部如同**,資料就存放在每個單元格中。資料讀寫時,先指定行號(行位址),再指定列號(列位址) ,我們就可以準確地找到所需要的單元格。而這張**的稱為:

logical bank(l-bank).

2.2 l-bank

由於技術、成本等原因,一塊記憶體不可能把所有的單元格都做到乙個l-bank,現在記憶體內部基本都會分割成4l-bank

2.3定址資訊

1.l-bank選擇訊號

2.行位址

3.列位址

推導記憶體容量計算公式: 晶元容量 = 4 * 單元格數目 * 單元格容量

然而在晶元手冊中卻是:

256m (16mx16bit) hynix sdram memory

這個256m其實應該是 4*4m*16bit = 256mbit(帶bit的)如果要轉換成普通的記憶體。就需要256/8bit = 32mb(這個byte是位元組的意思)

0

給主人留下些什麼吧!~~

國嵌攻略 039 我從內部看記憶體

記憶體分類 1.dram 動態ram 它的基本原件是小電容,電容可以在兩極板上保留電荷,但是需要定期的重新整理,否則資料會丟失。缺點是由於要定期重新整理儲存介質,訪問速度較慢 dram分類 1.1.sdram 同步動態隨機儲存器 同步 記憶體工作時需要有同步時鐘,內部的命令的傳送與資料的傳輸都是以該...

從類記憶體看虛表

結合文章看 情形一 單繼承,派生類中只有乙個虛表 include stdafx.h using namespace std include 基類a 單繼承中我們可以看出,派生類中只有乙個虛表,是從基類繼承過來的虛表,基類的虛表裡的內容先儲存到虛表中,接著如果派生類重寫了基類的虛函式則重新覆蓋更新基類...

C語言從記憶體上看指標

從下圖知道指標也是有位址的 在來看指標與變數的的記憶體塊 紅線是指標的位址 藍線是指標指向變數的位址ps 我把變數賦了初值 從上圖可以看出指標的位址裡面的值為 00 fe 6f 00 h x86的指標大小是4 因為大小端問題要從高位址向下 所以指標的值應該是 00 6f fe 00 h 而指標位址裡...