2440 Nor Flash启动和Nand Flash启动

时间:2024-03-16 14:30:59

2440的启动可以是从Nor Flash地址启动也可以从Nand Flash启动

2440 Nor Flash启动和Nand Flash启动
通过设置 Bus Controlller寄存器的OM[1:0]bit位可以设置2440的启动模式,00为Nand启动,01或10为外接Nor Flash的Nor启动。
1.Nor Flash启动
Nor Flash启动模式下,Nor Flash的基地址是0地址,片内RAM的0地址的0x40000000,Nor Flash直接与CPU传输数据,不需要通过片内RAM的中转。
2.Nand Flash启动
Nand Flash启动模式下,片内RAM的基地址是从0地址开始,数据传输时,Nand Flash先把4K字节的内容放到RAM上,RAM传输给CPU,接着再去取下面的数据内容。
2440 Nor Flash启动和Nand Flash启动
3.CPU的地址访问
1)访问ROM芯片
2440 Nor Flash启动和Nand Flash启动
2440 Nor Flash启动和Nand Flash启动
2)访问SRAM芯片
2440 Nor Flash启动和Nand Flash启动
2440 Nor Flash启动和Nand Flash启动
3)访问SDRAM芯片
2440 Nor Flash启动和Nand Flash启动
2440 Nor Flash启动和Nand Flash启动
不管是对ROM、SRAM、SDRAM的内存控制,CPU与外部内存芯片的内存接口都有这样的规律:
注:地址总线(A) 数据总线(D)
8bit位宽下 ,CPU A0->芯片A0,CPU A1->芯片A1,…,CPU A15->芯片A15
16bit位宽下, CPUA1->芯片A0,CPU A2->芯片A1,…
32bit位宽下,CPUA2->芯片A0,CPU A3->芯片A1,…
这样设计的目的是:以2进制来解释的话比较好,A2A1A0对应二进制的B2B1B0,
当8bit位宽时,CPU的A2A1A0地址都与芯片地址相连,内存的访问都是以8bit(即一个字节来访问),符合8bit位宽。当16bit位宽是,由于CPU的A0没有与芯片的地址线相连,内存的访问都是以2字节访问的,相同,32bit位宽就是以4字节访问的。

内存的访问地址范围 = 片选信号端基地址+内存大小