企业在租赁云主机或者物理服务器业务时,经常会遇到4G、8G、16G等有关内存的信息。今天我们就介绍下服务器内存的基础知识,这要从最早的计算机说起。
早期内存通过存储器总线和北桥相连,北桥通过前端总线与CPU通信。从Intel Nehalem起,北桥被集成到CPU内部,内存直接通过存储器总线和CPU相连。
所以,在AMD采用Socket FM1,Intel采用LGA 1156插槽之后的处理器都集成了北桥,独立的北桥已经消失,主板上仅余下南桥。
计算机体系的主要矛盾在于CPU太快了,而磁盘太慢了。所以它俩是不能够直接通信的,需要增加一个过渡层,这就是内存的作用。哈佛结构是一种将程序指令存储和数据存储分开的存储器结构。
内存(Memory)也被称为内存储器,其作用是用于暂时存放CPU中的运算数据,以及与硬盘等外部存储器交换的数据。计算机中所有程序的运行都是在内存中进行的,因此内存的性能对计算机的影响非常大。
1996年底,SDRAM开始在系统中出现,不同于早期的技术,SDRAM的出现是为了与CPU的计时同步化所设计。
SDRAM亦可称为SDR SDRAM(Single Data Rate SDRAM),Single Data Rate为单倍数据传输率,SDR SDRAM的核心、I/O、等效时脉皆相同, SDR SDRAM在1个周期内只能读写1次,若需要同时写入与读取,一定要等到先前的指令执行完毕,才能接着存取。
DDR SDRAM为双通道同步动态随机存取内存,是新一代的SDRAM技术。别于SDR(Single Data Rate)单一周期内只能读写1次,DDR的双倍数据传输率指的就是单一周期内可读取或写入2次。在核心频率不变的情况下,传输效率为SDR SDRAM的2倍。
总结:DDR采用时钟脉冲上升、下降沿各传一次数据,1个时钟信号可以传输2倍于SDRAM的数据,所以又称为双倍速率SDRAM,它的倍增系数就是2。
DDR2 SDRAM为双通道两次同步动态随机存取记忆体。DDR2内存Prefetch又再度提升至4bit(DDR的两倍),DDR2的I/O时脉是DDR的2倍。
总结:DDR2仍然采用时钟脉冲上升、下降时各传一次数据的技术(不是传2次),但是一次预读4bit数据,是DDR一次预读2bit的2倍,因此,它的倍增系数是2X2=4。
DDR3 SDRAM为双通道三次同步动态随机存取记忆体。DDR3记忆体Prefetch提升至8bit,即每次会存取8 bits为一组的数据。DDR3传输速率介于800~1600 MT/s之间。
此外,DDR3 的规格要求将电压控制在1.5V,较DDR2的1.8V更为省电。DDR3也新增ASR (Automatic Self-Refresh)、SRT(Self-Refresh Temperature)等两种功能,让内存在休眠时也能够随着温度变化去控制对内存颗粒的充电频率,确保系统数据完整性。
总结:DDR3作为DDR2的升级版,最重要的改变是一次预读8bit,是DDR2的2倍,DDR的4倍,所以,它的倍增系数是2*2*2=8。
DDR4 SDRAM提供比DDR3/DDR2更低的供电电压1.2V以及更高的频宽。DDR4 新增了4 个Bank Group 组的设计,各个Bank Group具备独立启动操作读、写等动作特性,Bank Group 组可套用多工的观念来想像,亦可解释为DDR4 在同一时脉工作周期内,至多可以处理4 组数据,效率明显好过于DDR3。
另外,DDR4增加了DBI(Data BusInversion)、CRC(Cyclic Redundancy Check)、CA parity等功能,让DDR4内存在更快速与更省电的同时亦能够增强信号的完整性和储存的可靠性。
Intel在2017年推出对应于六代酷睿Skylake的服务器平台“Purley”,采用14nm工艺、最多28核心56线程、6通道DDR4内存、光纤互连通道,采用UPI总线替代QPI总线等等。UPI是 UltraPath Interconnect(超级通道互连)缩写,数据传输率可达9.6GT/s、10.4GT/s,带宽更足,灵活性更强,每条消息可以发送多个请求。
内存未来三大演进方向分别为容量、电压和频率。
容量越来越大(4GB -> 8GB -> 16GB ->32GB -> 64GB->…512GB)
电压越来越低(1.5v -> 1.35v -> 1.2v->…)
频率越来越高(1333 -> 1600 -> 1866-> 2133 -> 2-> 3200)
主流内存生产厂家分为内存颗粒厂商和模组厂商:
三大内存颗粒(DRAM)原厂依次为Samsung、SK Hynix和Micron。
模组厂商Ramaxel和Kingston通过从颗粒厂商租赁颗粒制作内存条(DIMM)。
内存有三种不同的频率指标,它们分别是核心频率、时钟频率和有效数据传输频率。
核心频率即为内存Cell阵列(Memory Cell Array)的工作频率,它是内存的真实运行频率;
时钟频率即I/OBuffer(输入/输出缓存)的传输频率;有效数据传输频率则是指数据传送的频率。
系统最大内存带宽 = 内存标称频率*内存总线位数*通道数*CPU个数实际内存带宽 = 内存标称频率*内存总线位数*实际使用的通道数实际内存带=内存核心频率*内存总线位数*实际使用的通道数*倍增系数。
从SDRAM-DDR时代,数据总线位宽时钟没有改变,都为64bit,但若是采用双通道技术,可以获得64*2=128bit的位宽。
下面计算一条标称DDR3 1066的内存条在默认频率下的带宽,1066是指有效数据传输频率,除以8才是核心频率,一条内存只用采用单通道模式,位宽为64bit。
所以,实际内存带宽=(1066/8)*64*1*8=68224Mbit。
由此可知,如果内存工作在标称频率的时候,可以直接用标称频率*位宽*实际使用的通道数,简化公式=1066*64*1=68224Mbit。
以上就是关于内存的一些基础知识,如果您对这些服务器基本参数的相关知识有兴趣,后续我们还会陆续更新其他一些知识。