2440的存储器控制器.doc

2440的存储器控制器.doc

2440的存储器控制器 作用 提供数据总线(data0~data31)、地址总线(addr0~addr26)、控制总线(CS、WE、RE),CPU使用这三类总线信号对连接到存储器控制器的存储器进行访问(读/写) GEC2440开发板上存储器控制器硬件设计 SDRAM NOR flash DM9000网络芯片 三、2440memory controller的特点 1、大小端格式选择:CP15协处理器中的寄存器C1 2、由nGCS0~nGCS7这8片选型号,将2440的地址空间分成8个bank 3、每个bank的大小是128MB:采用地址总线(addr0~addr26) 4、bank1~bank7: 8/16/32bits,需要软件设置(BWSCON) Bank0:16/32bits,硬件设置 bank0~bank5:SRAM、NOR flash,类似SRAM接口的芯片 bank6~bank7:SRAM、NOR flash,类似SRAM接口的芯片及SDRAM 6、 可以控制每个bank的访问周期 控制SDRAM的自刷新模式和省电模式 硬件设计 地址线“错位”问题 产生错位的原因: CPU地址线编址的单位和存储器编址的单位不对应。 CPU地址线编址的单位8bits(1B) 存储器的编址单位是该存储器的数据总线宽度(8/16/32bits) 硬件设计举例: 1)8bits norflash 2)16bits nor flash 3)16bits SRAM 4)32bits SDRAM SDRAM访问 SDRAM 1)总线频率 最大166MHZ,试验135MHz 2)行地址和列地址 行地址和列地址是复用地址线的,通过nCAS和nRAS来区分 引脚功能 计算SDRAM的大小 2**(行地址总数+列地址总数+bank地址总数)* 数据总线宽度 2**(13+9+2)*16bits = 16M*16bits。 硬件设计 为什么ADDR24接BA0、ADDR25接BA1 BA0和BA1是SDRAM的bank地址选择信号,该SDRAM内部分成了4bank,四个bank的寻址是由BA1和BA1完成。Bank内部的寻址由行地址(A0~A12)和列地址(A0~A8)来完成。 行地址A0~A12传送ARM的ADDR2~ADDR14 列地址A0~A8传送ARM的ADDR15~ADDR23 Bank地址BA0、BA1传送ARM的ADDR24/ADDR25 7)SDRAM的访问 ARM的ADDR1和ADDR0没有连接到SDRAM,这样ARM访问SDRAM的时候只能按照“字”来访问。????????? 上面结论不正确,该SDRAM可以访问到字节、半字、和字,因为SDRAM有字节掩码信号,该信号接到ARM的字节使能信号上。 ADDR0和ADDR1可以通过nWBE0、nWBE1、nWBE2和nWBE3来传输。

文档评论(0)

1亿VIP精品文档

相关文档