SDRAM Calculation of capacity
Calculate the number of addressable locations (don’t think of bit/byte/word for now)
Number of address lines: 11 (A0-A10)
Number of banks : 2 (BA0-BA1)
Max number of rows = 11 (i.e., no. of address lines)
Max number of columns = 11 (i.e., no. of address lines)
Total locations in a bank = 211x 211
Total locations in the chip = (No. of banks) x (Total locations in a bank)
= 22 x 211 x 211
= 224
(摘自http://blog.minmanpro.com/2006/11/sdram-calculation-of-capacity.html)
-----------------------------------------------------------------------------------------------------------------------
简单翻译如下:
SDRAM容量计算
计算可寻址单元的数量(不考虑位/字节/字)
地址线数(管脚数):11(A0-A10)
bank线数:2(BA0-BA1)
最大行线数=11(例如地址线的编号)
最大列线数=11(例如地址线的编号)
一个bank中总单元数=211x 211
芯片中总单元数=(bank个数)×(一个bank中总单元数)
= 22 x 211 x 211
= 224
------------------------------------------------------------------------------------
例如一个32MB的SDRAM芯片中有4个Logic-bank(逻辑bank),位宽16bit(即每个单元是16bits),地址线13条,最大行线数13,最大列线数9。计算得:
一个bank的单元数= 213 x 29= 4194304(即4M)。
芯片总单元数=4Banks × 4M units = 16M units 。
芯片总位数=16M units × 16bits/per_unit = 256M bits 。
芯片总字节数=256M bits/8 = 32M Bytes 。
对应其pdf手册里的“4Banks x 4M x 16Bit”。
因为行线与列线上传输的数据是经过编码的,而不是直接的行号和列号,
也就是说每个bank里有213 个行和 29 个列,并非只有13行和9列。
所以要寻址的单元在第(2行线数据 )行,第( 2列线数据)列。
例如bank0,行线数据是0 0000 0010 0000,列线数据是0 0000 1000,
意思是要获取行32,列8的单元的数据,而不是行5,列3的数据。
如果行线数据是 0 0010 1101 0110,列线数据是0 0011 1010,意思是获取行726,列58的单元的数据。