关于内存颗粒的地址映射

即便从软件角度,抛开地址译码器讨论内存颗粒中指定位置处的地址(DDR中的指定位置的电容)也是没有意义的。晶体管没有绝对地址,就如同地理测量中测定位置前需要确定坐标系一样,同一个位置在不同的坐标系中的地址描述可以是完全不同的。

所以,我们不能指着内存条上的某个芯片问,这颗存储颗粒的地址范围是多少,它和内存控制器的参数以及主控的编址策略有关,比如访问粒度, interleave方式,访问通道数等因素都有关系。在确定这些参数前,讨论一个存储单元的地址是没有意义的,下图用一个例子说明原理。

通过对地址线重新排序,逻辑地址从A2A2A0变为A1A0A2,不改变地址译码器的结构,右侧存储颗粒上会产生完全不同的存储单元的编址,从顺序访问变成了interleave模式,在这两种地址策略下,这些编址都是对的。

无论哪种地址解码方式,寻址都有某种程度的对称性,这是很自然的,三个地址线随便交换,一定在一组置换群中,具有某种对称性。

关于内存颗粒的地址映射_第1张图片

关于内存颗粒的地址映射_第2张图片

关于内存颗粒的地址映射_第3张图片


 结束

你可能感兴趣的:(内存管理,嵌入式系统,Linux,linux)