实际上,Cache、主存、磁盘这三个存储器可以分别构成"Cache-主存"和"主存-磁盘"两个存储系统,也可以构成"Cache-主存-磁盘"一个存储系统,或没有主存储器,构成一个"Cache-磁盘"存储系统,即所谓全Cache存储系统。

  1、两个存储系统组织方式
  有"Cache-主存"和"主存-磁盘"两个独立的存储系统。这种结构也称为物理地址Cache,图5.37是这种组织方式的结构框图。
  当CPU要访问存储器时,给出一个虚拟地址。由存储管理部件(MMU:Memory Managing Unit)中的地址变换部件把CPU发出的虚拟地址变换成主存物理地址。然后用主存物理地址访问Cache。如果要访问的数据或指令在Cache被找到,则Cache命中,否则,发出Cache块失效,用这个物理地址访问主存储器,取出一块数据或指令装入Cache,同时,也把CPU所需要的数据或指令送往CPU。如Intel公司的i486和DEC公司的VAX 8600等处理机均采用这种两级存储系统。
图 5.37 物理地址Cache存储系统

  2、一个存储系统组织方式
  把Cache、主存和磁盘三个存储器组织在一起构成一个"Cache-主存-磁盘"存储系统,这种组织方式称为虚拟地址Cache。结构框图如图5.38所示。
图 5.38 虚拟地址Cache存储系统


  当CPU要访问存储器时,把虚拟地址直接送往存储管理部件MMU和Cache。Cache能够直接接受虚拟地址的访问,把CPU所需要的数据或指令找出来。如果Cache发生块失效,则用经过MMU变换得到的主存物理地址访问主存储器,把读出的一块数据或指令装入到Cache中。同时,也把CPU所需要的数据或指令送入CPU。如Intel公司的i860等处理机采用这种组织方式。

  3、全Cache存储系统
全Cache存储系统是最近才出现的一种新的存储器组织方式,它没有主存储器,只用Cache和磁盘(实际上只是磁盘中的一部分)构成"Cache-磁盘"存储系统。