s3c2416 sdram初始化各寄存器设置

来源:互联网 发布:数据恢复实验室 编辑:程序博客网 时间:2024/05/03 15:16

****************************************************************************************************

硬件平台:TQ2416

软件平台:无

记录日期:2015-07-14

调试工具:H-Jtag、J-link结合

文档记录:该文档用来为U-boot中的sdram初始化做的研究笔记

其他备注:无

****************************************************************************************************

主题:s3c2416x的外部sdram的初始化寄存器配置详细解释

1.1 BANKCFG

1.2 BANKCFG的配置说明

RASBW0:BANK0上的设置 这一位决定了sdram区域的BANK0域的行地址选通的位宽,根据你用的sdram的芯片的手册上的参数来确定,举例:若是A0~A13那就是14个bit。RASBW1:BANK1上的设置 原理同RASBW0,只不过它确定的是BANK1的,设置原理同上面。CASBW0:BANK0上的设置 这一位决定了BANK0的列地址宽度,根据你用的sdram的芯片的手册上的参数来确定,举例子:若是A0~A9 那就是10bit。CASBW1:BANK1上的设置 同CASBW0,它决定的是BANK1上外接的sdram的列地址ADDRCFG0:BANK0上的设置 内存的地址配置,就是怎么样去将一个数据从cpu写到某个内存地址,或者怎么样从一个内存地址读一个数据。通常sdram的芯片都是BA->RAS->CAS,也就是先确定那个逻辑bank(通过BA来确定),然后发送行地址(RAS),最后发送列地址(CAS)ADDRCFG1:BANK1上的设置 同上面,它决定的是BANK1上的参数MEMCFG:你用的什么类型的dram,你就对应着设置,比如我用的Mobile DDR(又称mDDR),所以选择110BW:外部内存的数据总线的位宽,这个简单,看你的开发板内存的数据总线的接线,16bit你就选1,32的你就选0
针对TQ2416开发板,BANKCFG的值就应该设置成:
BANKCFG = (1 << 0 )| ( 6 << 1 )|(0 << 4)|(2 << 8)|(2 << 11)|(3 << 11)|(3 << 17)
未完待续...

0 0