K9F2G08U0B 存储单元组织结构图:

K9F2G08U0B 的地址分类:

K9F2G08U0B 地址可分为3类:列地址(Column Address)、页地址(Page Address)和块地址(Block Address)。


其中:
列地址:A0A11A_0 sim A_{11},用于在一个页内寻址,其值范围为:[0,2047][0,2047]

由于涉及到备份区域64B,所以才有了12位,否则211=20482^{11}=2048无法访问到备份区域;

页地址:A12A17A_{12} sim A_{17},用于在一个块内寻址,其值范围为:[0,63][0,63]
块地址:A18A28A_{18} sim A_{28},用于在一个芯片内块的寻址,其值范围为:[0,2047][0,2047]

换算举例

1、由物理地址 推 块、页和列号

假设:物理地址为 0x00020000,对应的二进制: 0010 0000 [0000 0000 0000]
那么起始列号为:0
页号:注意这里是将0010 0000 0000 0000 0000 >> 11位,那么就是去掉了0010 0000 0[000 0000 0000]括号中的部分(这里一定要注意:不要和A0A11A_0sim A_{11}搞混了。因为右移的时候,从1开始编号。位编号和右移编号不是一一对应的关系,右移是一种运算),那么剩下的就是:0010 0000 0,重新划分就是:0 01[00 0000],其中方括号中即是页号;
块号:也就是上面右移11位之后,再右移6位剩下的 1 啦;

注:
我上面说的列号、页号、块号也就是前面提到的列地址、页地址、块地址,它们均从0开始编号;

2、由块、页和列号 推 物理地址

假设:块号为1、页号为0、列号为0,问对应的物理地址?
先将块号1左移6位,然后和页号相加得到Page地址(我看有的教材将块号BA和页号合在一起叫:Page地址,无论怎么叫法,我们只要知道它最终想告诉我们所指即可),最后再将Page地址左移11位再和列号相加即得到物理地址(二进制):
10000001000000000000000001000000 o 10000000 0000000000

编程举例:

请移步至: http://www.softool.cn/docs/s3c2416_development/s3c2416_development-1aofljin3tf28