筆者剛開始學習 fpga 由於專案需要用到了一片 ddr2 晶元,不知道怎麼計算大小,看了很多教程比較亂,在這裡簡單總結一下。
首先說明一下這裡用到的 ddr2 型號為 mt47h64m16
。
以下是正文。
目錄
一、內部儲存結構
二、了解晶元資訊
1. 查詢晶元資訊
2. 計算大小
關於儲存空間的計算涉及的主要概念就是邏輯 bank,簡單來說,ddr2 內部是乙個儲存陣列,就像乙個**,如下圖所示。
既然了解了它的內部結構,那麼怎麼計算它的大小呢。
在知道晶元型號的前提下,去 google or baidu 找到晶元的 datasheet。
從前面我們可以看到,晶元大小資訊在型號中以 123m8 顯示。
在很多記憶體產品介紹文件中,都會用 m × n 的方式來表示晶元的容量(或者說是晶元的規格/組織結構)。m 是該晶元中儲存單元的總數,單位是兆(英文簡寫 m ),n 代表每個儲存單元的容量,也就是晶元的位寬(width),單位是bit。計算出來的晶元容量也是以 bit 為單位,但使用者可以採用除以 8 的方法換算為位元組(byte)。
那麼這款晶元 128m × 8,是乙個 8bit 位寬晶元,有128m個儲存單元,總容量是 1024mbit(128mbyte 簡寫 128mb)。
以上,希望對你有幫助。
附:mbit、mbyte的含義
它們是計算機(pc)中的一種資料儲存單位或資料傳輸的單位。資料的單位一般採用mbyte或mbit,尤其在內部資料上官方資料中更多的採用mbit為單位。
mbit(英文簡寫mb)的含義是「兆位元」,mbit是指位元位數。
mbyte(英文簡寫mb)的含義是「兆位元組」,mbyte是指位元組數量。
mbyte中的「byte」雖然與mbit中的「bit」翻譯一樣,都是位元,也都是資料量度單位,但二者是完全不同的。byte是「位元組數」,bit是「位數」,在計算機中每 8 位為一位元組,也就是 1byte = 8bit,是1:8的對應關係。因此在在書寫單位時一定要注意b字母的大小寫和含義,尤其有些人把mbit誤認為是mbyte。
參考:1. sdram容量大小表示方法
2. ssram、sdram和flash簡要介紹
關於DDR2的功耗計算
現以ddr為例進行功耗計算,此過程可以推廣到sdram和ddr2功耗計算。dram器件功耗難以準確計算的原因是由於該類器件工作狀態繁多,且系統執行過程這些狀態還不斷切換,這些都為功耗的計算造成了阻礙。具體計算記憶體的功耗不是很容易的事,我們計算的結果只是乙個假定工作條件下的平均值。為了估算記憶體晶元...
如何計算C 中結構體的儲存空間
include stdafx.h include struct a test a struct b test b struct c test c struct d test d int main 輸出的結果為24 16 6 32 對於這樣的乙個結果感到一些困惑,在網上查了相關的資料之後發現,原來是這...
ucos任務棧大小計算,如何高效定義棧空間大小!
在使用ucos時,首先需要建立任務,但是如果微控制器ram空間有限的情況下,如何能確保建立的任務棧既能滿足任務需求,又避免任務棧浪費呢?其實ucos在設計的時候,考慮到了這一點。ucos自帶兩個任務,其優先順序分別為最低和次低,分別為idle任務和statistics任務,其中statistics任...