您的位置:首页 > 产品设计 > UI/UE

Cstyle的札记,R&D必读手册,第1篇 SDRAM

2014-03-10 22:15 288 查看

     EM48AM1684VTE-6F这次来说说SDRAM,它是台湾森富产的一款SDRAM,网址:http://www.eorex.com,来看下它的各项参数。 它是一颗SDRAM容量大小为4Meg words x 4 banks by 16 bits,工作在3.3V电压下,兼容LVTTL,支持power safing/power down
模式。

1.由于是同步RAM,所有的操作都是以时钟信号的上升沿来作为同步参考。
2.支持工作电压3.3V ±0.3V
3.兼容LVTTL
4.可编程的突发长度:1,2,4,8,page
5.可编程的CAS 延时 C/L: 2 or 3
6.支持 Data Mask (DQM) for Read / Write Masking
7.可编程的Wrap Sequence
    – Sequential (B/L = 1/2/4/8/full Page)
    – Interleave (B/L = 1/2/4/8)
8.Burst Read with Single-bit Write Operation
9.Auto Refresh and Self Refresh
10. 8192 Refresh Cycles / 64ms (7.8us)
11.封装TSOPII 54P 400mil
12.工作温度,消费级0 ~ +70摄氏度

 EM48AM1684VTE有不少的细分型号,TQ的板子用的是下面这款 ,可以看出它是支持最高166MHz的,位宽是16bit所以如果我们需要32bit的位宽的话需要两片并联。





同样是上图:



                   

 
    信号部分,需要注意的就有,32bit的总线设计,必须保持host端的addr0和addr1悬空,从addr2开始连接RAM的addr0,还有就是采取两片组成32bit的总线的话,刚好是64MByte的容量,所以我们就
使用host端的addr24/addr25分别连接RAM的BA0,BA1,CS端连接host端的nGCS6这样刚好保持地址的连续性RAM的地址空间就是0x30000000~0x33ffffff刚好是连续的64MB空间,这个地址我们之后会经常用到。
其他的电源以及其他的SDRAM的信号只需要按照host端的信号意义顺次连接起来就行了。这还是提出一点比较诡异的事情,我的TQ的板子是使用2片 EM48AM1684VTE-6F来组成32bit模式的64MB的RAM空间,按理来说两片IC的链接应该使用同一个CLK才对,但是我看到的电路图上的两片SDRAM却是使用的不同的CLK一个是SCLK0,另外一个是SCLK1,但是系统看起来工作也是正常的,有人说是为了保证时钟信号的驱动能力,每个CLK驱动一颗IC,但是这样会不会有时钟不同步的情况出现就不得而知了,个人感觉这里的设计有待考证,或许又是运气好刚刚能正常工作也说不准。
    这里还要提到一点就是DQM信号,这个信号在host是否被允许是 可以通过相关的寄存器BWSCON来设置的,可以选择为:不使用,nWBE[3:0],nBE[3:0]具体的设置成什么模式可能还是需要对比host端于SDRAM IC端的相关的时序图来做最后的确定。

下面是芯片工作的最大的极限参数,包括供电电源,工作环境温度,最大功耗等,可以看出消费级和工业级还是有差别的。



        在有一点说明的是刷新周期,TQ的板子使用的cpu刷新周期计算公式如下:
我们的这颗IC的刷新周期刚好是7.8us所以适合下面的计算公式,到时候需要在内存控制器里面填入底下计算得到的刷新计数值。
Refresh period = (211-refresh_count+1)/HCLK

Ex) If refresh period is 7.8 us and HCLK is 100MHz,
the refresh count is as follows:
Refresh count = 211 + 1 - 100x7.8 = 1269

    其他的DC、AC详细数据,时序参数,封装等,暂时先不考虑,暂时先到这里。

转载请注明出处
Cstyle.z.zhou@gmail.com  //  http://blog.csdn.net/CStyle_0x007
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息