[原创] SDRAM使用探讨于总结

tangguanglun   2011-9-25 11:34 楼主

我在使用IAR+ JTAG调试LM3过程,程序设定系统时钟为80M,然后对一些IO初始化,配置定时器,使用Uart0通过串口监测运行状态,主函数中定义一个unsigned long变量(Tmpe)用于计数,另外定一个unsigned short 指针,使其指向SDRAM。函数主循环判断系统计数,每隔一秒进行一次内存操作,并将结果通过Uart0发出。执行发现Tmpe都是正常的(每秒+1),而SDram内容却又1.3%的错误,也就是Tmpe加到256时,SDRAM的内少加了3次,出错的概率比较稳定。最好经过多次调试,把频率降下来就行了。我试过80MHz也是不爽,看来对SDRAM操作50MHz是安全极限。或者在超过此频率时EPI-SDRAM的设置得做调整,最后发现9b96的datasheet说了sdram最高只能运行在50M咧

附件是我使用的工程,使用时要另外加上TI

sdram.zip (488.37 KB)
(下载次数: 50, 2011-9-25 11:34 上传)
的驱动库目录。

回复评论 (10)

谢谢楼主分享。
点赞  2011-9-25 13:25
SDRAM 没玩过的
点赞  2011-9-25 13:31
楼主,请问一下,我现在9B92芯片运行在80M,如何让SDRAM允许在50M?谢谢!
点赞  2011-9-25 13:57

回复 楼主 tangguanglun 的帖子

好资料,谢谢分享。
点赞  2011-9-25 13:57
晶振为8MHz,把系统时钟配置为4分频可得50MHz

SysCtlClockSet(SYSCTL_XTAL_8MHZ
                |SYSCTL_SYSDIV_4
                |SYSCTL_OSC_MAIN
                |SYSCTL_USE_PLL);
点赞  2011-9-25 17:55

回复 6楼 tangguanglun 的帖子

那岂不是对于9B92内核来说,就不能工作于80M啦?如果200M,3分频,不足70M了
点赞  2011-9-26 18:27
你加8M16M什么都是一样的,因为PLL得输出都是200M,然后分频的。
点赞  2011-9-27 10:04
终于看到了。。晚上回去搞一下!哎..PLL
点赞  2011-10-29 10:20
这种测试的帖子对于后人来说意义重大!
点赞  2011-10-31 11:52

引用: 原帖由 zxq6 于 2011-9-26 18:27 发表 那岂不是对于9B92内核来说,就不能工作于80M啦?如果200M,3分频,不足70M了

 

lz都没搞清楚你的问题

点赞  2011-10-31 12:22
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复