1.存储容量
  由于一般存储器都采用一维线性编址,存储器中的每个能够存放数据的单元都被赋予一个地址,因此,简单地说,存储容量(Memory Capacity)是指存储器中所具有的存储单元的个数,或所具有的地址个数。
  表示存储器容量的单位主要有字节(Byte),简写为B;位(bit),简写为b;字(Word),简写为W。其中,最常用的单位是字节B,一个字节由8位组成,即1B=8b。对于32位计算机系统,一个字有32位,即1W=32b=8B。
  因为存储器的容量一般都很大,因此,要用千(Kilo)、兆(Mega)、千兆(Giga)、兆兆(Tera)等单位来表示。由于存储器的地址是按二进制编写的,因此,上述表示单位与通常十进制中的有所不同,可以看表4.1。
表4.1 存储容量的表示单位
单位名称 常规十进制表示 存储器容量表示
K(Kilo)
M(Mega)
G(Giga)
T(Tera)
1K=103=1000
1M=106=103K
1G=109=106M
1T=1012=109G
1K=210=1024
1M=220=210K=1 048 576
1G=230=210M=1 073 741 824
1T=240=210G=1 099 511 627 776
  我们这里所说的存储容量与通常程序员编写程序所用的主存储器的地址空间是不同的,这是因为:在一般计算机系统中都设置有虚拟存储器(将在下一章中具体介绍),用户通常在虚拟存储器中编写程序。例如,通常的32位计算机系统,其虚拟存储器的大小为232,即4GB,而主存储器的实际大小通常只有虚拟存储器的几百分之一到几十分之一。
  2.工作速度
  衡量存储器工作速度的常用参数有如下4个:
  (1)读出时间Tr:从向存储器发出读操作命令到数据从存储器中读出所经历的时间。
  (2)访问时间Ta:从启动一次访问存储器操作到完成该操作所经历的时间,这里所说的访问存储器操作包括读操作、写操作、交换操作等。
  (3)访问周期Tc:连续启动两次独立的访问存储器操作所需要的最小时间间隔。访问周期又称为存取周期、读写周期等。
  (4)频带宽度Bm:单位时间内能够访问到的数据个数。
  在以上4个参数中,访问时间是最重要的参数,它能够全面反映存储器的工作速度。在对存储器系统进行流量分析时,也经常用到频带宽度这个参数。频带宽度与访问时间实际上是倒数关系。
  由以下几个原因可能造成访问周期与读出时间、访问时间不相同:
  (1)有许多存储器是破坏性读出存储器,当数据从存储器中读出之后,存储器中原来存放的数据就消失了。为了能够在以后再次访问这个存储单元时还能够读出相同的数据,必须把刚刚读出的数据重新写入这个存储单元,这一过程称为重写。
  (2)动态存储器是依靠寄生电容存储数据的,在寄生电容上存储有电荷为保留,没有存储电荷为保存。由于存在有漏电阻,存储在寄生电容上的电荷很快就会消失,只有定时对寄生电容充电,动态存储器才能长时间保存数据,这种定时充电的过程称为刷新,刷新需要占用时间。
  (3)对于破坏性读出的存储器,写操作要在读操作完成之后进行,因此,写入时间通常要比读出时间长很多。
  (4)电路的稳定和恢复需要时间。
  3.价格
  存储器的价格通常用每位的价格来表示,例如每位多少美分($c/bit)。目前,静态存储器的价格大致为10-4$c/bit,动态存储器的价格大致为10-7$c/bit,磁表面存储器的价格大致为10-10$c/bit。
  衡量存储器的性能还可以有其他一些参数,例如,功耗、可靠性等。
  目前,功耗已经成为提高存储器性能的一个重大障碍。大家知道,芯片集成度提高得很快,于是,芯片的散热就成了大问题。因此,降低存储器芯片的功耗是当前一个重大得研究课题。
  通常,存储器的维持功耗要远远低于工作功耗,因此,当外部不访问存储器时,存储器一般处于维持状态,以减小功耗,降低存储器的温度。
  可靠性也是存储器的一个性能参数。与评价整个计算机系统性能一样,可以用平均无故障时间MTBF(Mean Time Betwean Failures)来衡量。
  在一般计算机系统中,为了提高存储器的可靠性,通常都设置有奇偶校验逻辑。在一些可靠性要求比较高的计算机系统(如服务器)中,采用海明校验或循环冗余校验等。在对可靠性有特殊要求的计算机系统中,可以采用多体冗余的方法来提高可靠性。