江苏集团网站建设,自助建站之星,wordpress免登录发文章,中国建筑资讯网本文主要目的是记录一下S3C2440扩展SDRAM的一些知识#xff0c;方便以后查阅。
通过查阅手册我们知道#xff0c;2440有8个可以用来扩展内存的BANK#xff0c;其中第6和第7还可用来扩展SDRAM 下面我们来看一下2440扩展SDRAM需要设置哪些寄存器。
一、BWSCON寄存器 该寄存器… 本文主要目的是记录一下S3C2440扩展SDRAM的一些知识方便以后查阅。
通过查阅手册我们知道2440有8个可以用来扩展内存的BANK其中第6和第7还可用来扩展SDRAM 下面我们来看一下2440扩展SDRAM需要设置哪些寄存器。
一、BWSCON寄存器 该寄存器我们只需要设置和SDRAM有关的bank7和bank6我的开发板的SDRAM是连接到bank6的我们需要配置bank6相关位不过一般我们bank6和bank7都设置为一样我记得两者好像是有共用什么来着不记得了需要查手册再去看才能想起ST6位里的UB/LB一般是用于SRAM的我用的是SDRAM配置为0WS6配置为disable,因为我的开发板扩展了两片16位的SDRAM相当于一片32位的SDRAMDW6选择32bit。bank7配置和bank6一样所以我们配置BWSCON 0X22000000; 二、BANKCON6、BANKCON7 对于MT因为我们用的是SDRAM所以配置为11配置为SDRAM模式后还需要配置Trcd和SCAN,Trcd是RAS行地址发出时间到CAS列地址发出时间的时间间隔我们可以直接在我们的SDRAM芯片手册里查找一下Trcd,结果如下图 因为我的板子上的SDRAM是-6G的所以最小为18ns,因为2440内存控制器的时钟为HCLK我配置为100M所以Trcd配置为002 clocks至于列地址数我们可以查看我们的SDRAM芯片的手册得到以下结果所以SCAN配置为9个列地址即把BANKCON6、BANKCON7配置为0X00018001。 三、REFRESH寄存器 因为SDRAM需要不断地刷新才能保存住里面的数据所以REFEN必须使能TREFMD配置为自动模式Trp直接在我们的SDRAM芯片手册里查找得知-6型号的芯片为18所以配置为2个clocksTsrc在芯片手册里找不到但我们可以查找Trc-6型号的Trc为60ns所以Tsrc等于60-18等于42我们配置为5个clocks配置Refresh Counter需要在SDRAM手册里查找Refresh period我的芯片是64ms/8k,根据公式算出Refresh count等于1269所以REFRESH配置为0X8404F5。 四、BANKSIZE寄存器 我们使能突发访问可一次连续访问多个字节和休眠模式所以bit5和7都配置为1bit4采用推荐值1因为我们相当于扩展了一片64M的SDRAM所以BK76MAP配置为64MB所以BANKSIZE配置为0XB1。 五、MRSRB6、MRSRB7 这个寄存器只有CL是可设置的其他都为Fixed,因为SDRAM这种内存芯片其实性能不是很好我们在发送完地址后一般需要等待2或3个时钟周期才有数据返回CL正是设置这一点的我们的SDRAM芯片可配置为2或者3我们配置为2所以MRSRB6和MRSRB7配置为0X20。