五、存储系统

一、层次结构

在计算机系统中存储层次可分为高速缓冲存储器(Cache)、主存储器(主存)、辅助存储器(外存)三级。高速缓冲存储器用来改善主存储器与中央处理器的速度匹配问题。辅助存储器用于扩大存储空间。

      

二、分类

1.按照存储器所处位置分类

(1)内存:也称主存,位于主机内或主机板上,用来存放当前运行所需要的程序和数据,以便向CPU提供信息。其特点:容量小,速度快。

(2)外存:也称辅存,如磁盘,光盘等,用来存放当前不参加运行的大量数据信息,需要时调入内存。

2.按存储器的构成材料分类

(1)磁存储器:磁性介质做成,如磁带,磁盘等。

(2)半导体存储器:根据所用元件又分为双极性和MOS型,根据数据是否需要刷新又分为静态和动态。

(3)光存储器:利用光学方法读写数据的存储器,如光盘。

3.按存储器工作方式分类

(1)读/写存储器(RAM):能够读/写的存储器。

(2)只读存储器(ROM):仅能读取的存储器。

4.按访问方式分类

(1)按地址访问的存储器。

(2)按内容访问的存储器。

5.按寻址方式分类

(1)随机存储器(RAM):可对任何存储单元读取数据,访问任何一个存储单元的时间是相同的。

(2)顺序存储器(SAM):访问数据所需的时间与数据所在的存储位置有关,例如磁带。

(3)直接存储器(DAM):介于随机和顺序存取之间的一种,例如磁盘,他对磁道是随机的,但对于磁道内则是顺序的。

 三、高速缓存(Cache)

    Cache用来存放当前最活跃的程序和数据,其特点是:位于CPU和主存之间。容量在千字节到兆字节之间,速度是主存的5~10倍,由快速半导体存储器构成。CPU的速度远高于内存,当CPU直接从内存中存取数据时要等待一定时间周期,而Cache则可以保存CPU刚用过或循环使用的一部分数据,如果CPU需要再次使用该部分数据时可从Cache中直接调用,这样就避免了重复存取数据,减少了CPU的等待时间,因而提高了系统的效率。Cache又分为L1Cache(一级缓存)和L2Cache(二级缓存),L1Cache主要是集成在CPU内部,而L2Cache集成在主板上或是CPU上。

    Cache存储器部分用来存放主存的部份拷贝(副本)信息。控制部分的功能是判断CPU要访问的信息是否在Cache存储器中,若在,即为命中,若不在则没有命中。命中时直接对Cache存储器寻址;未命中时,要按照替换原则(当Cache产生了一次访问未命中之后,相应的数据应同时读入CPU和Cache。但是当Cache已存满数据后,新数据必须替换(淘汰)Cache中的某些旧数据。最常用的替换算法有随机算法先进先出算法(FIFO)和近期最少使用算法(LRU))决定主存的一块信息放到Cache存储器的哪一块里。

作用:为了解决CPU和主存之间速度不匹配而采用的一项重要技术。

CPU与cache之间的数据交换是以字为单位,而cache与主存之间的数据交换是以块为单位。一个块由若干字组成,是定长的。

 

 cache原理图

高速缓存(Cache)中的地址映像方法

在CPU工作时,送出的是主存单元的地址,而应从Cache存储器中读写信息。这就需要将主存地址转换成Cache存储器地址,这种地址的转化称为地址映像。Cache的地址映像有3种方法。

(1)直接映像:主存的块与Cache块的对应关系是固定的,因此,只要主存地址中的主存区号与Cache中记录的主存区号相同,则表明访问Cache命中,一旦命中,由主存地址的区内块号立即可得到要访问的Cache存储器中的块,而块内地址就是主存地址中给出的低位地址。

(2)全相联映像:主存的任意一块可以映象到Cache中的任意一块。

(3)组相联映像:

                          (1) 主存和Cache按同样大小划分成块。
                          (2) 主存和Cache按同样大小划分成组。
                          (3) 主存容量是缓存容量的整数倍,将主存空间按缓冲区的大小分成区,主存中每一区的组数与缓存的组数相同。
                          (4) 当主存的数据调入缓存时,主存与缓存的组号应相等,也就是各区中的某一块只能存入缓存的同组号的空间内,但组内各块地址之间则可以  任意存放,即从主存的组到Cache的组之间采 用直接映象方式;在两个对应的组内部采用全相联映象方式。

 四、外存储器

外存储器用来存放暂时不用的程序和数据,并且以文件的形式存储。CPU不能直接访问外存,只有将其以文件为单位调入主存才可以访问。外存主要分为:磁表面存储器,光盘存储器,固态硬盘

(1)磁表面存储器:在磁表面存储器中,磁盘的存取速度较快,并且有较大的容量,是目前市场上广泛使用的外存储器。磁表面存储器由盘片,驱动器,控制器和接口组成。盘片用来存储信息,控制器用来驱动磁头沿盘面径向运动以寻找目标磁道位置,驱动盘片以额定速率稳定旋转,并且控制数据的读写。控制器接受主机发来的命令,将他转换成磁盘驱动器的控制命令,并实现主机和驱动器之间数据格式的 转换和数据传送,以控制驱动器的读写。接口是主机和磁盘存储器之间的连接逻辑。

(2)光盘存储器:采用聚焦激光束在盘式介质上非接触地记录高密度信息的新型存储装置。光盘存储器具有记录密度高,存储容量大,采用非接触方式读写信息,信息可长期保存等优点.其表面介质不易受潮湿和温度影响,易于长期保存.CD-ROM光盘只能读取数据,CD -R光盘可以写入一次数据.CD-RW光盘可以擦写多次,单倍速光盘驱动器的速度是150Kb/s,目前最快速的光盘驱动器大约是50倍速,从理论上说它能达到的数据传输率是7.5Mb/s,这一速度也远远低于硬盘的传输速度

(3)固态硬盘:固态硬盘是用固态电子存储芯片阵列而制成的硬盘,固态硬盘在接口的规范和定义、功能及使用方法上与普通硬盘的完全相同,在产品外形和尺寸上也完全与普通硬盘一致。固态硬盘的存储介质分为两种,一种是采用闪存(FLASH芯片)作为存储介质,另外一种是采用DRAM作为存储介质。现在大多使用的都是基于闪存的。

*  基于闪存类:基于闪存的固态硬盘(IDEFLASH DISK、Serial ATA Flash Disk):采用FLASH芯片作为存储介质,这也是通常所说的SSD。它的外观可以被制作成多种模样,例如:笔记本硬盘微硬盘存储卡U盘等样式。这种SSD固态硬盘最大的优点就是可以移动,而且数据保护不受电源控制,能适应于各种环境,适合于个人用户使用。  一般它擦写次数普遍为3000次左右,以常用的64G为例,在SSD的平衡写入机理下,可擦写的总数据量为64G X 3000 = 192000G,假如你是个变态视频王每天喜欢下载视频看完就删每天下载100G的话,可用天数为192000 / 100 = 1920,也就是 1920 / 366 = 5.25 年。如果你只是普通用户每天写入的数据远低于10G,就拿10G来算,可以不间断用52.5年,再如果你用的是128G的SSD的话,可以不间断用104年!这什么概念?它像普通硬盘HDD一样,理论上可以无限读写,

 *  基于DRAM类:
基于DRAM的固态硬盘:采用DRAM作为存储介质,应用范围较窄。它仿效传统硬盘的设计,可被绝大部分操作系统文件系统工具进行卷设置和管理,并提供工业标准的PCI和FC接口用于连接主机或者服务器。应用方式可分为SSD硬盘和SSD硬盘阵列两种。它是一种高性能的存储器,而且使用寿命很长,美中不足的是需要独立电源来保护数据安全。DRAM固态硬盘属于比较非主流的设备。 

基于闪存的固态硬盘是固态硬盘的主要类别,其内部构造十分简单,固态硬盘内主体其实就是一块PCB板,而这块PCB板上最基本的配件就是控制芯片,缓存芯片(部分低端硬盘无缓存芯片)和用于存储数据的闪存芯片。

缓存芯片

主控芯片旁边是缓存芯片,固态硬盘和传统硬盘一样需要高速的缓存芯片辅助主控芯片进行数据处理。这里需要注意的是,有一些廉价固态硬盘方案为了节省成本,省去了这块缓存芯片,这样对于使用时的性能会有一定的影响。

闪存芯片

除了主控芯片和缓存芯片以外,PCB板上其余的大部分位置都是NAND Flash闪存芯片了。NAND Flash闪存芯片又分为SLC(单层单元)MLC(多层单元)以及TLC(三层单元)NAND闪存。
 
原文地址:https://www.cnblogs.com/lvqiang/p/11678599.html