SDRAM程序编写小计
0赞今天把SDRAM程序编写心得写下,程序的功能很简单,看框图↖(^ω^)↗
初始化搞了好久,各种名词不懂,各种晕
初始化过程:
1.SDRAM上电要经过200us的稳定期,命令选择NOP(给SDRAM的各个端口赋值);
2.接下来就是对所有L-Bank预充电,怎么操作呢?首先给端口赋一个周期的预充电命令,然后给端口赋NOP等待18ns(预充电有效周期),则预充电完成;
3.接下来是第一个刷新周期,首先给端口赋一个周期的自动刷新命令,然后给端口赋NOP等待60ns(查看pdf,Trc=Trfc,Trfc=行刷新时间),则一个刷新完成,接下来的7个周期进行一样的操作就可以了;
4.接下来就可以进行工作了,但是要记住每过 15us(64ms/4096=15us)就要自动刷新一次,刷新操作和上面的一样,当然刷新操作不能和读写SDRAM冲突,也就是时间一样,可以把刷新操作的等级设为最高;为了防止读写请求信号因为碰上了SDRAM在刷新而被忽略掉,可以把读写请求信号有效时间设的比刷新时间长一点点,但是比一个读写操作短。发送完读命令,在下一个周期就可以进行读了;
? ?
? ?
? ?
? ?
? (+﹏+)~狂晕 ?
? ?
? ?
? ?
?
?
?
?
?
?
?
?
?
但是如果要写sdram,要在发送写命令前一个时钟周期开始写,也就是在正常写的前两个时钟周期就要开始写了??????这是为什么呢,在pdf上找了半天,硬是没有发现为什么,或者我看到了,但是没认出来。╭∩╮(︶︿︶)╭∩╮


![clip_image001[5] clip_image001[5]](http://files.chinaaet.com/images/blog/2013/02/04/1077236208526.gif)

