存储器综述 在过去的数年里,
电子市场,确切地说是存储器市场,经历了巨大的变化。在2000年电子工业低迷时期之前,电子系统设计师很少考虑他们下一个设计中
元器件的成本,而更关注它们能够达到的性能。
今天,竞争的加剧以及利润率的下降迫使系统设计师在降低下一代产品成本的同时,保持、甚至提高系统的性能。作为这种转变的结果,有一个工业部门经历了实质性的增长,它就是DRAM存储器,尤其是双倍数据速率(DDR) SDRAM存储器。
DDR存储器初是一种高性能、低成本的存储器解决方案,主要用于个人计算机和其它成本敏感的消费品市场。近来,由于施加在整个电子工业上的经济压力,非消费产品也开始采用DDR存储器了(图 1)。
图 1 Insights DDR是一种基于SDRAM的革命性的存储器技术。DDR SDRAM的存取速度是SDRAM的两倍,因为DDR的数据传送发生在时钟的所有两个边沿。而SDRAM仅在时钟的上升沿传送数据。因此,DDR能够传送数据的速度高达2133MB/s。与传统的SDRAM相比,DDR还具有更低的功耗。它的工作电压是直流2.5V,而SDRAM是直流3.3V。
市场分析表明,在当今所有的电子系统中,超过50%采用了DDR存储器,并且预计在接下来的几年中将增长到80%。DDR不是,并且永远也不会是一种针对所有设计的技术。DDR存储器非常适用于那些高读写比率的设计。而诸如四倍数据速率存储器,适用于50%读写比率的应用。图2确定了多种的存储器技术以及它门各自所属的读/写曲线。
图 2 不同存储器类型的读/写率的比较 如上所述,每个系统有各自独特的存储器要求。在服务器应用的例子中,读写趋于较高的比率,表示需要DDR。在网络处理器与支持大数据包的MAC的接口例子中,在处理之前,这些数据包需要进行缓冲和存储,接近1:1的读写比率,表明QDR是一个合适的存储器结构。
图3展示了一个通用通信线卡印刷电路板的例子。基于系统设计者的要求,这张结构图上指出了在哪里一些通用存储器类型可以被采用。在很多系统中采用了相似的决策过程,从而选择合适的存储器结构。
图 3 下面的目录指出了针对不同的系统和功能的合适的存储器结构。这些选择基于系统结构和各自的性能/成本综合要求。
·查找-快速的开关/访问时间 -临界延时,以读取为导向,较小的总线宽度(32/64位)
-存储器选择:ZBT (<10Gb/s) -> QDR/DDR (>10Gb/s)
-操作: 地址转换
·查找-大型、高吞吐量(路由器) -需要奇偶的:宽的I/O(>64)
-带宽和的要求是重要的
-存储器选择:SDR (<10Gb/s) -> DDR/FCRAM (10Gb/s) -> RLDRAM/DDR II (10Gb/s-40Gb/s)
-操作: 地址转换
·队列/包的管理 -延时 #1,随机读和写-无法预测的数据模式
-存储器选择:ZBT -> QDR
-操作:队列管理和流程控制
·流量整形/管理 -以突发为导向、窄的 I/O总线 (x18/x36)
-存储器选择:ZBT -> QDR
-操作:基于管理的路由表
·统计 -随机读/写,读操作占优势的,窄的 I/O总线 (x18/x36)
-存储器选择:ZBT -> QDR
-操作:为信息包跟踪数据,流量统计
·信息包单元缓冲器 -大的间隔尺度,宽的I/O总线 (>64bit)
-带宽为首要目标
-成本敏感的
-存储器选择:SDR -> DDR/FCRAM->RLDRAM/DDR II
-操作:处理不同尺寸的IP包(128B)
DDR接口设计的实现 至此,我们讨论了不同的存储器结构以及它们适用于系统中的哪些部分。由于DDR在增长着的多种的数字设计中相对较高的认可率,本文剩余的部分将致力于DDR存储器,以及在FPGA中的DDR接口的实现。
在许多系统设计中,工程师将选用FPGA作为存储控制器(图 4)。选用FPGA的优势在于它固有的灵活性。不考虑协议和
微处理器,FPGA结构通常能够提供DDR存储控制及其所需的电气接口。采用FPGA作为存储控制器时,一个常见的挑战是高速接口的需求,如同DDR所要求的一样。由于许多FPGA布线资源的不确定性和有限的I/O速度,因此所要求的I/O速度和相关的时钟经常是设计的挑战。当DDR速度高于200Mbps时,诸如温度和电压等环境因素也将影响必需的I/O性能。DDR存储器双倍于标准SDRAM数据率的数据传送能力并不总是福音。DDR I/O的高速度和非常短的DDR数据窗口,形成了重要的挑战。存储控制器可靠地工作所需的速度(200MHz通过FR-4 PCB走线)使得PCB布局成为挑战。而且,将一个DDR接口置入一个灵活的FPGA结构,使得设计者在一个固有的不确定的布线结构中满足极为临界和紧绷的时序的工作变得相对复杂。当试图在FPGA中实现一个高速的DDR接口时,习惯于FPGA的高速和灵活性的设计者经常会惊讶地发现他们有可能遇到了困难。这些困难不是来自功能性的问题,而是来自在FR4和FPGA布线中信号传播速度的数量级下和数据窗口打交道的自然结果。由工艺、温度和电压引起的不同逻辑速度使得这些时序要求更为复杂。与通用时钟信号相比,需要对选通信号进行控制和预处理使得DDR设计的实现进一步复杂化。设计工程师不能再指望简单地将数据和地址线连接起来得到一个可靠的高速存储器接口了。