- 当选择Nor Flash启动时,CPU发出的指令的地址范围处于0x0000000 - 0x06000000,内存控制器就会使nGCS0处于低电平(片选引脚被选中),Nor Flash被选中。
- 当CPU发出的指令的地址范围处于0x20000000 - 0x26000000,内存控制器就会使nGCS4处于低电平(片选引脚被选中),网卡被选中。
- 当CPU发出的指令的地址范围处于0x30000000 - 0x36000000,内存控制器就会使nGCS6处于低电平(片选引脚被选中),SDRAM被选中。
内存控制器根据不同的地址地址范围,发出不同的片选引脚,只有被片选引脚选中的芯片才能正常工作,不被选中的芯片就像不存在一样,不工作。
GPIO/门电路接口、协议类接口、内存类接口都属于CPU的统一编址。对于Nand Flash,在原理图上它的地址线并没有连接到CPU,因此它不参与CPU的统一编址。但它的数据线也接到了数据总线上,为了防止干扰,它也有一个片选信号(CE)。当CPU访问Nand Flash时,Nand Flash控制器才会片选Nand Flash,让其接收数据总线上的数据。

再来看下Nor Flash的空间,0x00000000 * 0x06000000,为128M,即每一个片选信号可以选择的空间是128M=2^27,也就需要A0、A1……A26,共27根地址线。CPU发出的32位地址线,内存控制器根据地址范围,片选上相应的bank,并将地址转化为27位。

参考2440芯片手册,可以看到内存接口与8-bit ROM连接时,2440的A0与外部芯片的A0相连。

当与两个8-bit ROM拼接成的一个16-bit ROM连接时,2440的A1与外部芯片的A0相连。
