DRAM、SDRAM和下一代存储器
在分析系统对存储器的需求时,所需考虑的不外乎速度、容量和成本三个因素。太注重其中一个就会牺牲另外两个。DRAM用户在注意这三个因素的同时还必须考虑第四个因素,即存储器的控制协议。
DRAM一般要求多条控制线,而且时序要准确。只有确信能够控制存储器时才能选用合适的DRAM芯片。设计者有两种选择:自己解决控制问题(采用ASIC或者FPGA),或者购买专用的DRAM控制芯片。DRAM控制器曾经是单独的芯片,但现在高端处理器已将DRAM控制功能集成进去。
实际应用表明,存储器控制和存储器本身是密不可分的。从各种DRAM的性能表现可以看到这一点。
普通DRAM的存取速度大致为60ns,与4MHz总线(周期250ns)匹配不成问题。而要与100MHz总线匹配就会出现问题,因为总线的周期为10ns,控制器须等待6个周期才能将数据存储到所需的存储器。显然,需要更快速的存储器。
同步DRAM(SDRAM)解决了上述问题,它按额定的频率存取数据,可与总线时钟同步。虽然SDRAM需要设置时间,而且可能存在一些等待状态,但是大部分数据是按额定频率存取的。把100MHz的SDRAM接到100MHz的总线上,会得到一个匹配良好的高速系统。
有存取请求时,标准DRAM才启动存取过程,然后要等待存储器准备就绪。而SDRAM在每个时钟周期都可存取数据,它由两块存储器组成,当一块被读取时,另外一块预先写入。
双数据速率(DDR) SDRAM的名字来自其双倍于SDRAM存取数据的能力。DDR是SDRAM的进化,它在时钟信号的上升沿和下降沿都可以存取数据,因此在相同时钟下,其吞吐量是SDRAM的两倍。
DDR SDRAM存取能力翻番的代价是价格的翻番。64M SDRAM的价格是4美元,而相同容量的DDR SDRAM是8美元。目前,没几家公司生产DDR SDRAM。尽管该芯片的制造合格率是可接受的,但DDR在市场上能否立足尚不得而知。英特尔公司在开始研制奔腾4时,就将DDR SDRAM排除在计划之外。虽然该公司已于去年7月下旬撤回这一决定,但要转向DDR SDRAM不但要考虑技术和价格前景,还要考虑是否有生产商愿意生产。
DDR SDRAM的主要竞争对手是Rambus DRAM(也称RDRAM)。RDRAM是完全不同的技术。它是一种系统级接口,有自己的协议。其速度特别快,最高可达833MHz。它很难大批量生产,因而价格一直居高不下。另外,使用Rambus还需要额外支付许可费用,这进一步抬高了价格。
一般来说,存储器按应用领域分为三类:中档应用、高速网络及与最新CPU芯片配合用于桌面PC的应用。下面将把它们与现有技术做一比较。
新一代DRAM和EDO DRAM
如果你曾见过儿童触摸图标就可发声的触摸屏计算机,那么,你差不多也已见到我正在设计的一种通信装置。虽然它不像桌面PC那么复杂,但是比烤面包机要复杂得多。
该设备可让儿童尽量快地表达出他们的想法。为了实现这一目标,该设备做了很多预测。如果儿童想说“我想要蓝色的......”,该机器就将所有她曾描述为蓝色的东西准备好。实现这一预测功能的数据结构存储在DRAM中。
至今为止,EDO(扩展数据输出)DRAM一直在应用。其速度可达83MHz,但是需要等待时序,这是其固有特性。SDRAM来势凶猛,EDO SRAM的日子已屈指可数,在新设计中已不再推荐使用EDO。但目前的设备仍在使用EDO DRAM,我们只能在下一代产品中采用更新的DRAM。
设计工程师会考虑SDRAM、DDR SDRAM和Rambus DRAM来满足其存储器要求。设计小组的分析表明了在实际应用中各种存储器之间的比较。
硬件设计小组领导者Jeff Holt解释说,新设备的存储器存取速度应达到100MHz。这样才能保证眨眼间就能看到预测结果。经过分析,数据结构对RAM的需求大约是32MB。小型、相对便宜的产品需要大容量的存储器,由此可知某种DRAM是当然之选。
现在市面上可买到的SDRAM一般工作在100MHz和133MHz,DDR SDRAM可以工作在200MHz和266MHz。Rambus DRAM比它们都要快得多,可达到400MHz和800MHz。作为优秀的设计者,通常不会采用超前的方案进行设计,因此SDRAM是最佳选择。另外,所选用的处理器是英特尔的StrongARM,它可以提供SDRAM所需的控制信号。遗憾的是,它既不支持DDR SDRAM,也不支持Rambus DRAM。
鉴于SDRAM的速度已足够快,其价格也是三种DRAM中最低的,而且它不需要额外的控制芯片,因此选用SDRAM是顺理成章之事。
在本文开始所做的一个假设就是,在满足速度要求的前提下尽量选用最便宜的DRAM。这个设计确实选用了能够满足速度要求且最便宜的DRAM,但是也全面考虑了其它DRAM。并不是所有设计者都能够进行如此充分的比较和选择。
高端应用
打算使用奔腾4的设计工程师可能很担心一件事情:不知道选择使用哪种存储器。英特尔已在几年前做出了选择,当时他们将该芯片与Rambus技术进行了结合。要将该芯片与SDRAM或DDR SDRAM连接的人必须等到明年才能梦想成真。威盛科技和宏基实验室正在开发可将两种类型的SDRAM与最新奔腾CPU连接起来的芯片组。
通常的高端应用是指网络系统开发。分销商告诉我,他们正在大量销售400MHz Rambus给系统开发商。价格很高,每256Mb大约700美元,但是用户愿意支付。133MHz的SDRAM无法满足要求,他们需要最快的速度,而Rambus是唯一可选的。DDR SDRAM的速度肯定会提高,届时他们就可以选择较便宜的了。选择DRAM的经验继续有效。
未来的存储器
存储器世界和大千世界一样在日新月异地变化。对于富有想象力的系统设计者来说,FRAM可能是令人振奋的消息。而探索DRAM前沿技术的开拓者将研究所有可能的方案,设计出快速而便宜的方案。
附栏:
存储器名词解释
RAM:随机存取存储器。每一存储单元都可方便而快速地存取。通常,RAM是指任何快速可写的易失性存储器。
ROM:只读存储器。一旦写入,存储内容便不能再更改。通常,ROM是指不易写入的非易失性存储器。
DRAM:动态RAM。这种存储器必须周期性地动态刷新,否则,存储单元将因放电而失去记忆的数据。
EPROM:电可编程ROM。可以使用特定的设备写入,并可用紫外线擦除重新写入。
EEPROM:电可擦除可编程ROM。用电擦除而不是像EPROM那样用紫外线擦除,可利用微控制器写入。
Flash:一种容易写入,但速度较慢的非易失性存储器。
PROM:可编程ROM。只可写入一次,真正的只读存储器。
SRAM:静态RAM。静态是指一旦写入,只要有供电,数据就可一直保持。
SDRAM:同步DRAM。同步是指数据由时钟信号控制存取。