系统内存的选择策略
1)容量:所有应用软件或计算机系统要求的数据操作需要多大容量的内存?
2)空间和外形尺寸考虑:计算机中有多少物理空间(SoC、主板等)可分配给内存使用?
3)带宽:为了支持密集型计算,处理器指令和数据需要以多快的速度执行或处理?
对系统内存容量的考虑
一般来说,了解有多少用户会对计算机系统及其所使用的应用软件有需求将对内存容量起决定性作用。然而,最常见的结论是内存越多越好。除了处理器能力之外,内存对系统性能的影响是最大的了,因此选择一款能够适应大内存容量和最高内存带宽的内存控制器和操作系统无疑能够提高系统性能。另外值得注意的是,32位的操作系统最多只能访问5GB的内存空间(达到2的32次方),但最新的64位操作系统可以访问的内存空间达18ZB(2的64次方)。
计算内存容量的方法之一是,确定有多少内存空间必须分配给操作系统内核、操作系统驱动程序、频繁处于活动状态的应用软件、驻留在内存中的数据文件大小和数量以及需要支持的最大网络需求。工程师应该考虑在处理器上运行的所有软件资源的大小,以及所有峰值网络需求,然后增加10%的裕度用作自由内存空间。由于用于处理器的主内存通常是以1GB、2GB、4GB和8GB这样的偶数倍增加的,因此此时最合适的主内存容量是4GB(如果是双槽道配置就是2个2GB的DIMM内存条)。
诸如数据库、电子邮件和web服务器等计算机应用占用非常大的内存资源,因此这些系统的内存容量要尽可能大。计算内存容量的另外一种方法是运行与系统使用率有关的系统基准测试,通过比较使用的内存(GB)、CPU使用率和系统内存容量,(即使用微软的"控制面板")浏览管理工具(性能)并通过点击工具条中的"+"符号增加内存对象,如图1所示。
图1:微软XP管理工具(性能)截屏。
图2:处理器/内存利用率。
图2中的性能图表是双处理器系统中数据可能呈现的面貌例子,它对"内存约束"配置(4GB系统)与"CPU约束"配置(8GB系统)的资源局限做了比较。值得注意的是,6GB系统配置是如何在CPU使用率等于内存使用率时最大化CPU到内存的使用率来获得最佳性价比的。目前许多系统设计师流行使用粗略的计算方法,即为每GHz的处理器内核配置2GB内存。一旦内存容量确定后,选择内存控制器以支持所希望的内存容量显得同样重要。内存控制器将通过以下两种方式限制可获得的内存密度:
1)内存可用的片选线数量有限;
2)内存控制器支持的最大DRAM容量。
目前有两种通用的内存子系统设计可用于连接片选线。一种是每个内存插槽两根片选线,一种是每个内存插槽4根片选线。由于内存模组数量受限于插槽数量,因此最大系统内存容量将是内存插槽数量乘以每条内存模组的容量。
内存空间和内存尺寸考虑
内存子系统中使用的内存外形尺寸一般取决于以下一些因素:
1)物理空间,更明确地说就是内存所装配的机械外壳;
2)处理器可以容忍的(由于处理器到内存的物理距离引起的)延时和速度下降;
3)安装底架的约束,如与周边元组件的接近度、热冷却要求(与风扇的接近度、使用热传导器或散热器、液体冷却、内存组件之间的空隙等);
4)内存布局(与处理器的接近度,垂直或水平安装等);
5) 安装、维修和升级内存的简易度。
当使用SoC中的嵌入式DRAM(eDRAM)内存时,用于决定"片上"和片外DRAM内存分布的标准通常基于SoC上用于流水线、缓存和低延时访问的内存的可用空间,以及将DRAM嵌入进SoC的相关成本。
举例来说,90nm嵌入式DRAM工艺基于的是CMOS逻辑技术,可集成插件形式的内存模组。嵌入式工艺在与外部DRAM器件连接时不存在I/O功耗,因此可以提供更宽的总线、更低的材料成本和更高的带宽。而且与SRAM相比正常工作功耗和待机功耗都要低。
然而,嵌入式内存技术还没有达到可以替代主板上高密度DRAM的密度水平,因为用于处理器和SoC的嵌入式内存目前还没超过100MB,而主板上配置的片外内存一般最小要1GB。与处理器一样,内存技术同样也遵循摩尔定律,相当于每两年提高2倍密度。表1说明了目前内存密度的发展趋势:
选择系统
- 高精度数据采集SoC方案(06-12)
- 基于TI KeyStone SoC的多标准无线基站设计(07-15)
- 采用TI多标准基站SoC全面提升性能(07-29)
- 手机IP模块方案集成Bluetooth(02-17)
- 基于射频SOC nRF9E5的粮情检测设计(08-14)
- 利用WiMAX SoC设计多扇区基站(09-21)