计算机组成原理:存储系统的访问流程

  • 什么是存储系统?
    存储系统大体可分为主存储器,辅助存储器,高速缓冲存储器三层,其中高速缓冲存储器用来改善主存储器与cpu的速度匹配问题,辅助存储器则用于扩大存储空间。课本上从存储系统的层次结构出发,对每一层次的概念、结构、工做机制等作了详细解释,回答了存储系统是什么的问题。3d

  • 存储系统的各层次之间是如何协做的呢?
    这篇文章经过贯穿整个存储系统的访问流程,展示出各个层次之间的协做关系。下图为存储系统的访问流程图,其访问过程能够分为5个部分:①TLB的访问过程,②Page的访问过程,③页面的分配和置换,④cache的访问过程,⑤主存储器的访问过程。blog


图1 存储系统的访问流程

TLB的访问过程

在存储系统中若要从主存取得数据,必须先访问页表;为了实现对页表的快速访问,须要增设快表。TLB与page之间存在全相联映射、直接映射、组想联映射三种地址映射方式,所以TLB的访问分别存在如下三种状况。im

  • 全相连映射


图2 TLB全相连映射

  • 直接映射


图3 TLB直接映射

  • 组相连映射


图4 TLB组相连映射

Page的访问过程

若是TLB的访问未命中,则须要访问主存中的页表。为了不连续的页表自己占用大量主存空间,存储系统一般采用分级页表,这里以二级页表的访问过程举例。技术


图5 二级页表

页面分配和置换

若page未命中,说明所需页面未调入主存,须要执行调页策略。对于页面的分配和置换,现代存储系统一般采用三种策略:固定分配局部置换,可变分配全局置换,可变分配局部置换。主存与外存之间的协做关系能够反映在分配策略上。d3


图6 固定分配局部置换关系模型

cache的访问过程

虚拟地址通过地址变换能够获得相应的物理地址;物理地址通过地址映射能够转化为cache地址。cache与主存之间存在全相联映射、直接映射、组想联映射三种地址映射方式,所以cache的访问分别存在如下三种状况。cpu

  • 全相连映射


图7 cache全相连映射

  • 直接映射


图8 cache直接映射

  • 组相连映射


图9 cache组相连映射

主存储器的访问过程

若是cache访问未命中,则须要访问主存。而在访问主存的过程当中cpu的传输周期比存储器的存储周期小,为了提升访问速度,存储系统一般采用多体交叉存储技术。多体交叉存储器由多体模块组成,每一个模块均可由DRAM芯片通过扩容而成。所以主存储器的访问过程能够分为三个层面:多体交叉存储器的访问过程、主存模块的访问过程、DRAM芯片的访问过程。数据

  • 低位交叉存储器的访问过程


图10 低位交叉存储器的访问过程

  • 主存模块和DRAM芯片的访问过程


图11 主存模块和DRAM芯片的访问过程
相关文章
相关标签/搜索