内存有哪些参数?

在计算机的结构中,有一个非常重要的部分,那就是内存。内存是用来存储程序和数据的部件。对于电脑来说,只有有了内存,才有记忆功能,才能保证正常工作。存储器有很多种,按用途可分为主存储器和辅助存储器。主存也叫内存(简称内存)。内存在计算机中起着重要的作用。内存一般使用半导体存储单元,包括随机存取存储器(RAM)、只读存储器(ROM)和缓存。只是因为RAM是最重要的内存。s(synecronius)DRAM同步动态随机存储器:SDRAM为168引脚,是目前奔腾及以上机型使用的内存。SDRAM通过同一个时钟将CPU和RAM锁在一起,使CPU和RAM共享一个时钟周期,以相同的速度同步工作,每个时钟脉冲的上升沿开始传输数据,比EDO内存快50%。DDR(Double Data Rage)RAM:SDRAM的更新产品,允许在时钟脉冲的上升沿和下降沿传输数据,使SDRAM的速度可以提高一倍而不增加时钟频率。

●记忆

内存是存储程序和数据的地方。比如我们用WPS处理文档的时候,当你在键盘上输入字符的时候,它会被存储在内存中。当您选择保存时,内存中的数据将被存储在硬(磁)盘上。在进一步了解它之前,我们还应该知道它的物理概念。

●只读存储器(ROM)

ROM代表只读存储器。制造ROM时,信息(数据或程序)被永久存储和保存。这些信息只能读,一般不能写。即使机器断电,数据也不会丢失。ROM一般用来存储基本的计算机程序和数据,如BIOS ROM。其物理外观通常是双列直插式(DIP)集成块。

●随机存取存储器(RAM)

随机存取存储器意味着可以从其中读取和写入数据。当机器断电时,存储在其中的数据将会丢失。我们平时购买或升级的内存条作为电脑的内存。记忆棒(SIMM)是一个将RAM集成块聚集在一起的小电路板,它被插入到计算机的内存插槽中,以减少RAM集成块占用的空间。目前市场上有128米/件,256米/件,512米/件等等。

低速缓存(高速缓存)

缓存也是我们经常遇到的一个概念。它位于CPU和内存之间,是一种读写速度比内存更快的内存。当CPU向内存中写入或读取数据时,这些数据也存储在缓存中。当CPU再次需要这些数据时,CPU会从缓存中读取数据,而不是访问速度较慢的内存。当然,如果所需数据不在缓存中,CPU会再次读取内存中的数据。

当你理解了以上概念,你可能会问,内存就是内存,为什么会有各种各样的内存术语,这是怎么回事?

在回答这个问题之前,我们先来看看下面这段话。

物理内存和地址空间

物理内存和存储地址空间是两个不同的概念。但由于两者关系密切,而且都是用B、KB、MB、GB来衡量容量,所以在理解上很容易混淆。初学者理解这两个不同的概念,有助于进一步理解内存,利用好内存。

物理内存是指实际存在的特定内存芯片。比如插在主板上的内存条和装载系统BIOS的ROM芯片,显卡上的显示RAM芯片和装载显示BIOS的ROM芯片,各种适配卡上的RAM芯片和ROM芯片,都是物理内存。

内存地址空间是指内存编码(编码地址)的范围。所谓编码,就是给每个物理存储单元(一个字节)分配一个编号,通常称为“寻址”。给存储单元分配一个编号的目的是为了方便查找,完成数据读写,这就是所谓的“寻址”(因此,也有人称之为地址空间)。

地址空间的大小和物理内存的大小不一定相等。我们举个例子来说明这个问题:某层有17个房间,它们的编号是801 ~ 817。这17房间是实物,其地址空间采用三位编码,其范围为800 ~ 899 * * * 100地址,可见地址空间大于实际房间数。

386级以上的微机,地址总线是32位,所以地址空间可以达到232,也就是4GB。但实际上我们配置的物理内存通常只有1MB、2MB、4MB、8MB、16MB、32MB等。,远远小于地址空间允许的范围。

好了,现在我们可以解释为什么会有不同的内存类型了,比如常规内存、保留内存、上层内存、高端内存、扩展内存、扩展内存。

各种记忆概念

这里需要明确的是,我们讨论的不同内存的概念,都是基于寻址空间的。

IBM推出的第一台PC的CPU是8088芯片,只有20条地址线,也就是它的地址空间是1MB。

PC的设计者使用1MB的低端640KB作为DOS和应用的RAM,高端384KB则预留给ROM、视频适配器等系统。此后,这一界限被确定,并沿用至今。低端的640KB称为常规内存,是PC的基本RAM区域。保留内存中低的128KB是显示缓冲区,高的64KB是系统BIOS(基本输入输出系统)空间,剩下的192KB是保留的。根据对应的物理内存,基本内存区只使用512KB芯片,从0000到80000占用512KB地址。虽然显示存储区有128KB的空间,但单色显示(MDA卡)只需要4KB,所以只安装了4KB的物理存储芯片,从B0000到B10000占用了4KB的空间。如果使用彩色显示器(CGA卡),需要安装16KB的物理内存,从B8000到BC00需要占用16KB的物理内存。

在当时(1980年底到1981年初),如此“大”容量的内存对于PC用户来说似乎已经足够了,但随着程序的不断增加,图像和声音的不断丰富,以及能够访问更多内存空间的新型CPU的出现,原有PC和MS-DOS设计的局限性越来越明显。

1.什么是扩展内存?

EMS的工作原理

到了1984,也就是286被普遍接受后不久,人们越来越意识到640KB的限制已经成为大型程序的障碍。这时,Intel和Lotus这两个软硬件的杰出代表,共同研究出了一个软硬件结合的方案,使得所有PC访问640KB以上的RAM成为可能。微软刚刚推出Windows,对内存空间的需求很高,所以及时加入了这个行列。

1985开始,Lotus、Intel、微软定义了LIM-EMS,即扩展内存规范,通常称EMS为扩展内存。当时,EMS需要在I/O插槽中安装一个内存扩展卡和一个名为EMS的扩展内存管理器。但是I/O槽的地址线只有24位(ISA总线),不适合386以上的32位计算机。所以现在很少用内存扩展卡了。目前微机中的扩展内存通常是在DOS下用EMM386等软件模拟或使用的。所以扩展内存和扩展内存的区别不在于它物理内存的位置,而在于用来读写的方法。下面会进一步介绍。

如前所述,扩展内存也可以从扩展内存模拟转换而来。EMS的原理和XMS不同,XMS采用的是页面框架模式。页框是在1MB空间(通常在保留内存区,但其物理内存来自扩展内存)中指定的64KB空间,分为四页,每页16KB。EMS内存也是按照16KB分页,一次可以交换4页,这样就可以访问所有的EMS内存。符合EMS的驱动有很多,比如EMM386.EXE,QEMM,TurboEMS,386MAX。EMM386.EXE在DOS和Windows中都有。

2.什么是扩展内存?

我们知道,286有24位地址线,可以寻址16MB的地址空间,而386有32位地址线,可以寻址高达4GB的地址空间。为了区分,我们把1MB以上的地址空间称为扩展内存XMS(eXtend memory)。

386级以上的微机内存有两种工作模式,一种叫实地址模式或实模式,一种叫保护模式。在实模式下,物理地址仍然使用20位,因此最大寻址空间为1MB,以兼容8086。保护方式采用32位物理地址,寻址范围可达4GB。DOS系统工作在实模式,管理的内存空间还是1MB,不能直接使用扩展内存。为此,Lotus、Intel、AST和微软制定了MS-DOS中扩展内存的使用标准,即扩展内存规范XMS。Himem.sys,也就是我们经常在Config.sys文件中看到的,是管理扩展内存的驱动。

扩展内存管理规范的出现晚于扩展内存管理规范。

3.什么是高内存区?

在实模式下,存储单元的地址可以记录为:

段地址:段内偏移量

通常用十六进制写成XXXX:XXXX。实际的物理地址是通过将段地址左移4位并将其添加到段内偏移量而形成的。如果地址是1,那就是FFFF:FFFF。其实际物理地址为:FFF0+FFFF = 10FFEF,约为1088KB(少16字节),已经超出1MB的范围,进入扩展内存。这个进入扩展内存的区域大约是64KB,也就是1MB以上的第一个64KB空间。我们称之为高内存区HMA(High Memory Area)。HMA的物理内存是从扩展内存中获得的。因此,为了使用HMA,必须有一个物理扩展内存。另外,HMA的建立和使用需要XMS驱动HIMEM的支持。SYS,所以HMA只有加载himem.sys后才能使用

4.什么是上层记忆?

为了解释上层内存的概念,我们必须回顾一下保留内存区域。保留内存区是指640 KB ~ 1024 KB (* * * 384 KB)的区域。这部分区域在PC诞生的时候明明是给系统预留的,用户程序无法介入。但是这部分空间没有被充分利用,所以大家想把剩下的打个主意,用在一个地址空间里(注意:是地址空间,不是物理内存)。所以你得到了另一个内存区域UMB。

UMB(上部内存块)被称为上部内存或上部内存块。它是由于占用了保留内存中剩余的未使用空间造成的,它的物理内存仍然取自物理扩展内存,它的管理驱动是EMS驱动。

5.什么是影子记忆?

对于细心的读者,你可能还会发现一个问题:1MB以上物理内存的机器,如何使用640 KB ~ 1024 KB物理内存?因为这部分地址空间已经分配给系统使用,所以不能重用。为了利用这部分物理内存,在一些386系统中提供了重定位功能,即将这部分物理内存的地址重定位到1024 KB ~ 1408 KB。这样这部分物理内存就变成了扩展内存,当然可以使用。但是现在的高端机已经不使用这种重定位功能了,这部分物理内存留作影子内存。影子存储器可以占用与相应ROM相同的地址空间。Shadow由RAM组成,比ROM快很多。当rom(各种BIOS程序)的内容加载到相同地址的Shadow RAM中时,可以从RAM中访问BIOS,而无需访问ROM。这将大大提高系统性能。因此,在设置CMOS参数时,相应的阴影区域应设置为使能。

6.什么是奇偶校验?

奇偶校验(ECC)是数据传输中纠正数据错误的一种方式,分为奇偶校验和奇偶校验。

如果使用奇数奇偶校验,则在传输每个字节时会添加一个额外的位作为奇偶校验位。当实际数据中“1”的个数为偶数时,这个奇偶校验位为“1”,否则这个奇偶校验位为“0”,这样传输的数据就可以满足奇校验的要求。接收方接收到数据后,会根据奇校验的要求,检测数据中“1”的个数。如果是奇数,说明传输正确,否则说明传输错误。

奇偶校验的过程与奇校验相同,只是检测数据中“1”的个数是偶数。

总结

经过以上分析,内存的划分可以总结如下:

●基本内存占用0 ~ 640 KB地址空间。

●预留内存占用640 KB ~ 1024 KB地址空间。分配给显示缓冲存储器、每个适配卡上的ROM和系统ROM BIOS,剩余空间可用作上层内存UMB。UMB的物理内存取自物理扩展内存。这个范围的物理RAM可以用作影子RAM。

●高位内存(UMB)是利用保留内存中未分配的地址空间建立的,其物理内存是通过物理扩展内存获得的。UMB由EMS管理,其大小可以由EMS驱动程序设置。

●HMA扩展内存第一个64KB区域(1024 KB ~ 1088 KB)。由HIMEM建立和管理。[计]系统复制命令(system的简写)

●XMS内存符合XMS规范管理的扩展内存区。它的司机是HIMEM。[计]系统复制命令(system的简写)

●内存符合EMS规范管理的扩展存储区。它的司机是EMM386.EXE等。支持的内存类型是指主板支持的特定内存类型。不同的主板支持不同类型的内存。在早期,主板中使用的主要内存类型是FPM、EDO、SDRAM和RDRAM。目前主板常用的有DDR和DDR2内存。

FPM记忆

FPM是快速页面模式的缩写,是早期个人电脑常用的内存。它每三个时钟周期传输一次数据。已经被淘汰了。

扩展数据输出

EDO是扩展数据输出的缩写。它取消了主板和内存两个存储周期的时间间隔,每两个时钟周期传输一次数据,大大缩短了访问时间,访问速度提高了30%至60ns。EDO内存主要用于72线SIMM内存条和带EDO内存条的PCI显卡。这种内存在486和早期的奔腾计算机系统中很流行。分为72线和168线。它的工作电压为5V,带宽为32位。必须成对使用两行或四行。可以用在Intel 430FX/430VX甚至430TX芯片组的主板上。目前也已经被淘汰,只能在一些老机器上看到。

同步动态随机存取存储器

SDRAM是同步动态随机存取存储器(synchronous dynamic random access memory)的缩写,是前几年广泛使用的一种存储器形式。SDRAM使用3.3v的工作电压和64位的带宽。SDRAM通过同一个时钟把CPU和RAM锁在一起,让RAM和CPU享受一个时钟周期,以相同的速度同步工作,可以比EDO内存快50%。SDRAM基于双存储体结构,包含两个交错的存储阵列。当CPU从一个存储体或阵列中访问数据时,另一个准备好读写数据。通过紧密切换这两个存储器阵列,读取效率可以提高一倍。SDRAM不仅作为主存储器,还广泛应用于显卡上的显存。SDRAM曾经是长期使用的主流内存,从430TX芯片组到845芯片组都支持。但随着DDR SDRAM的普及,SDRAM正逐渐退出主流市场。

RDRAM存储器

RDRAM是Rambus动态随机存取存储器的缩写,是Rambus公司开发的一种具有系统带宽和片间接口设计的存储器。它可以在很高的频率范围内通过简单的总线传输数据,同时在高速同步时钟脉冲的两个边沿使用低压信号传输数据。一开始是Intel 820芯片组支持RDRAM,后来有了840,850芯片组等等。RDRAM最初得到了Intel的大力支持,但由于其高昂的价格和Rambus的专利授权限制,一直未能成为市场的主流,其地位很快被相对便宜且同样性能优异的DDR SDRAM所取代,市场份额很小。

DDR SDRAM存储器

DDR SDRAM是双倍数据速率同步动态随机存取存储器的缩写,是威盛等公司为与RDRAM竞争而提出的内存标准。DDR SDRAM是SDRAM的更新产品,使用2.5v的工作电压,它允许在时钟脉冲的上升沿和下降沿传输数据,这样SDRAM的速度可以提高一倍,而不增加时钟频率,传输速率和内存带宽是SDRAM的两倍。比如与PC 133 SDRAM相比,工作频率也是133MHz,但内存带宽达到2.12 GB/s,比PC 133 SDRAM高一倍。目前主流芯片组都支持DDR SDRAM,这是最常用的内存类型。

DDR2

DDR2(双倍数据速率2) SDRAM是由JEDEC(电子设备工程联合委员会)开发的新一代存储器技术标准。DDR2与上一代内存技术标准最大的区别在于,虽然在时钟上升/下降延迟的同时采用了数据传输的基本方式,但DDR 2内存的预读能力是上一代DDR内存的两倍(即4-4bit数据读取和预取)。换句话说,DDR2存储器可以以4倍于外部总线的速度读/写数据,并以4倍于内部控制总线的速度运行。

DDR2记忆的频率

此外,由于DDR2标准规定DDR2存储器全部在FBGA封装,与目前广泛使用的TSOP/TSOP-II封装不同,FBGA封装可以提供更好的电气性能和散热,为DDR2存储器的稳定工作和未来的频率发展提供坚实的基础。回顾DDR的发展历程,从第一代DDR200通过DDR266、DDR333应用于个人电脑,到今天的双通道DDR400技术,第一代DDR的发展已经到了技术极限,常规的方法很难提高内存的工作速度。随着英特尔最新处理器技术的发展,前端总线对内存带宽的要求越来越高,拥有更高、更稳定工作频率的DDR2内存将是大势所趋。

DDR2和DDR的区别:

在了解DDR2内存的诸多新技术之前,我们先来看一组对比DDR和DDR2技术的数据。

1,延迟问题:

从上表可以看出,在相同的核心频率下,DDR2的实际工作频率是DDR的两倍。这是因为DDR2内存的4-4位预读能力是标准DDR内存的两倍。换句话说,虽然DDR2和DDR一样,采用了时钟上升和下降延时同时传输数据的基本方法,但DDR2却拥有两倍的预读系统命令数据的能力。也就是说,同样的工作频率100MHz下,DDR的实际频率是200MHz,而DDR2可以达到400MHz。

于是又出现了一个问题:在工作频率相同的DDR和DDR2存储器中,后者的存储延迟要比前者慢。例如,DDR 200和DDR2-400具有相同的延迟,而后者具有两倍的带宽。其实DDR2-400和DDR400的带宽是一样的,都是3.2GB/s,但是DDR400的核心工作频率是200MHz,而DDR2-400的核心工作频率是100MHz,也就是说DDR2-400的延迟要高于DDR 400。

2、包装和热值:

DDR2内存技术最大的突破不在于用户认为是DDR两倍的传输容量,而是在发热量更低、功耗更低的情况下,DDR2可以实现更快的频率提升,突破标准DDR的400MHZ极限。

DDR内存通常采用TSOP芯片封装,可以在200MHz下很好的工作。频率较高时,其长管脚会产生高阻抗和寄生电容,影响其稳定性和频率提升的难度。这也是DDR核心频率难以突破275MHZ的原因。DDR2记忆被包装在FBGA。与目前广泛使用的TSOP封装不同,FBGA封装提供了更好的电气性能和散热,为DDR2存储器的稳定工作和未来的频率发展提供了良好的保障。

DDR2存储器的电压为1.8V,远低于DDR标准的2.5V,从而提供明显更小的功耗和发热。这一变化意义重大。

DDR2采用的新技术:

除了上述差异,DDR2还引入了三项新技术,即OCD、ODT和Post CAS。

OCD(片外驱动):所谓离线驱动调整,DDR II可以通过OCD提高信号完整性。DDR II通过调整上拉)/下拉电阻值使两个电压相等。OCD用于通过减小DQ-DQS倾角来提高信号完整性;通过控制电压改善信号质量。

ODT:ODT是内置核心的终端电阻。我们知道使用DDR SDRAM的主板需要很多端接电阻来防止数据线端反射信号。大大增加了主板的制造成本。事实上,不同的内存模块对端接电路有不同的要求。终端电阻的大小决定了数据线的信号比和反射率。如果端接电阻小,则数据线的信号反射低,但信噪比也低。当端接电阻较高时,数据线的信噪比较高,但信号反射也会增加。所以主板上的端接电阻并不能很好的匹配内存条,也会在一定程度上影响信号质量。DDR2可以根据自身特点构建合适的端接电阻,保证最佳的信号波形。使用DDR2不仅可以降低主板成本,还可以获得最好的信号质量,这是DDR无法比拟的。

Post CAS:旨在提高DDR II内存的利用效率。在后CAS操作中,CAS信号(读/写/命令)可以在RAS信号之后插入到时钟周期中,并且CAS命令可以在额外的等待时间之后保持有效。原来的tRCD(RAS到CAS和delay)换成al(加性延迟),可以设置在0,1,2,3,4。由于CAS信号比RAS信号晚一个时钟周期,ACT和CAS信号永远不会冲突。

总的来说,DDR2采用了许多新技术,改进了DDR的许多缺点。虽然目前存在成本高、性能慢等诸多缺点,但相信随着技术的不断改进和完善,这些问题终将得到解决。

ECC不是一种内存类型。ECC(纠错编码或检错纠错)是一种具有自动纠错功能的存储器。Intel的82430HX芯片组开始支持。使用这种芯片组的主板可以安装和使用ECC内存。但由于ECC内存成本较高,主要应用于对系统运行可靠性要求较高的商用计算机,如服务器/工作站等。其实内存错误并不经常发生,普通主板也不支持ECC内存,所以普通家用和办公电脑都不需要使用ECC内存。

参考资料:

/view/1082.html