Lattice_DDR存储器设计规则(20140314更新).doc

DDR/DDR2/DDR3分立存储器设计规则 October 2012 DDR/DDR2/DDR3 SDRAM接口概述 DDR SDRAM接口通过时钟上升沿、下降沿传输数据。DDR2是DDR2 SDRAM的第二代,DDR3就是第三代。 DDR/DDR2/DDR3接口通过DQS(Data Strobe Signal)实现高速数据采样。比较典型的应用是每个DQS组包括8bit DQ数据线。实现一个16bit DQ接口就需要2个DQS,每个DQS对应8个DQ。 DQ、DQS都是双向信号,完成对memory存储器的读写操作。同样的,DDR/DDR2/DDR3 SDRAM在写操作时还需要一个数据掩码信号DM,当DM为高时表示当前周期写入的数据是无效的。DM对应一组8bit DQ,是单向的,读操作时不需要这个信号。 FPGA读取memory数据时,读数据与DQS是边沿对齐的。DQS移相90°后就可以采样DQ数据了。写memory操作时,DQS与DQ是中间对齐的。FPGA提供一对差分时钟给memory器件。读操作时,memory内部的DLL利用这个时钟产生了读DQS。下图描述了DQ与DQS的读写操作关系。 在读操作开始时DQS有效前,有一个前导期,就是从三态到低电平的这段时间。相对应的,读操作结束时,DQS从低电平跳变到三态的这段时间被称为后导期。这些都是为了保证读数据的正确采样。 DDR/DDR2/DDR3 SDRAM采用不同的电平标准。DDR接口采用单端DQS。DDR2采用单端或者差分DQS信号,当线速率比较大时建议使用差分信号,当线速率大于533Mbps时就必须使用差分信号。而DDR3是采用差分DQS。如下图所示。 另外,由于DDR3采用了穿越(fly-by)拓扑结构,DDR3 控制器需要支持读写调平(write/read leveling)功能以调整读写操作过程中由于穿越结构所导致的延迟。 DDR/DDR2/DDR3 SDRAM设计规则 对于使用莱迪思器件设计实现DDR/DDR2/DDR3 SDRAM需要遵循一些设计规则,这是由DDR/DDR2/DDR3 SDRAM器件以及FPGA特定结构决定的。比方说输入参考时钟,DQS、DQ、 DM、 CK、地址、命令管脚位置的选择,电平标准,匹配方式等等。我们还会介绍一些PCB layout方面的注意事项。这些规则有些是可选的,有些是一定要遵循,不可违背的。 需要说明的是,如果DDR2运行在533Mbps以下则参照DDR的设计规则,如果运行在533Mbps以上达到800Mbps则参照DDR3的设计规则。无论是那种速率标准DDR2的电平依然是LVTTL18。 Pinout设计规则 对于莱迪思器件为了保证DDR/DDR2/DDR3 SDRAM接口的最佳特性,使用专用管脚来实现。因此以下设计规则是必须满足的。 强烈推荐客户在完成PIN脚锁定后在画原理图之前使用lattice的软件进行评估是否满足要求。 当完成PCB LAYOUT后确保管脚锁定跟软件评估前没有变化,如有变化请更新管脚锁定重新采用软件评估。 DDR Pinout设计规则 DQ(通常为8bit)、DQS必须在同一个DQS组内。 DM必须与DQ、DQS在同一个组内,且DM[0]对应DQ[7:0],DQS[0],依次类推。 DQS必须使用专用引脚,对于DDR2如果采用差分DQS则DQS#管脚会被使用。第一,硬件上需要做相应连接,第二在源码端口信号列表里不需要指定这个信号,只要指定P端即可。软件会根据约束属性(SSTL18D)自动分配DQS#。这也就意味着DQS#不可以用作其他用途。 由于兼容性问题,DQS/DQS#不可以用作其他DDR功能。 PLL输入时钟必须使用专用时钟资源(PLL 专用输入,PCLK),输入时钟必须是差分的。 数据信号(DQ/DQS/DM)可以位于芯片左侧,右侧以及上部。 在芯片下部的bank6和bank3也可以实现地址、命令以及其他控制信号。这样可以节省出比较多的管脚资源实现DDR功能。 对于使用了DQ数据的bank, VREF1不能用作其他用途。VREF2是可以用作普通引脚的,但是不能将VREF1和VREF2进行连接。 对于DDR,需要在memory一侧对DQ/DQS/DM加匹配电阻上拉到VTT。推荐仿真来确定阻值。如果

文档评论(0)

1亿VIP精品文档

相关文档