0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

存储器的层次结构是怎么样的

Wildesbeast 来源:今日头条 作者:算法集市 2020-02-15 16:07 次阅读

存储技术:不同存储技术的访问时间差异很大。速度较快的技术每字节的成本要比速度较慢的技术高,而且容量小。

一种组织存储器系统的方法,成为存储器层次结构(memory hierarchy)。如下图所示,是一个典型的存储器层次结构。

一般而言,从高层往底层走,存储设备变得更慢、更便宜和更大。

L0是少量快速的CPU寄存器,CPU可以在一个时钟周期内访问它们。

L1、L2、L3是一个或多个小型到中型的基于SRAM的高速缓存存储器,CPU可以在几个时钟周期内访问它们。

L4是一个大的基于DRAM的主存,CPU可以在几十到几百个时钟周期内访问它们。

L5是慢速但是容量很大的本地磁盘。

L6是一层附加的远程服务器上的磁盘,需要通过网络来访问它们。

存储器层次结构的中心思想是:对于每个k,位于k层的更快更小的存储设备作为位于k+1层的更大更慢的存储设备的缓存。换句话说,层次结构中的每一层都缓存来自较低一层的数据对象。

例如,本地磁盘作为通过网络从远程磁盘取出的文件(如web页面)的缓存,主存作为本地磁盘上数据的缓存,以此类推,直到最小的缓存—CPU寄存器。

如上图所示,第k层的存储器被划分成较少的块的集合,每个块的大小与k+1层的块的大小一样。在任何时刻,第k层的缓存包含第k+1层块的一个子集的副本。

当程序需要第k+1层的某个数据对象d时,首先在当前存储在第k层的一个块中查找d。如果d刚好缓存在第k层,那么就是缓存命中(cache hit)。该程序直接从第k层读取d,根据存储器层次结构的性质,这要比从第k+1层读取d更快。另一方面,如果第k层没有缓存数据对象d,即缓存不命中(cache miss)。当发生缓存不命中时,第k层的缓存从第k+1层缓存中取出包含d的那个块,如果第k层缓存已经满了,就会覆盖现存的一个块。

概况来说,基于缓存的存储器层次结构行之有效,是因为较慢的存储设备比较快的存储设备更便宜,还因为程序倾向于展示局部性:

利用时间局部性:由于时间局部性,同一数据对象可能会被多次使用。一旦一个数据对象在第一次不命中时被复制到缓存中,我们就会期望后面对该目标有一系列的访问命中,从而提高访问速度。

利用空间局部性:块通常包含有多个数据对象,由于空间局部性,我们会期望后面对该块中其他对象的访问能够补偿不命中后复制该块的花费。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 存储器
    +关注

    关注

    38

    文章

    7080

    浏览量

    161685
  • cpu
    cpu
    +关注

    关注

    68

    文章

    10335

    浏览量

    206230
  • 存储技术
    +关注

    关注

    5

    文章

    697

    浏览量

    45616
收藏 人收藏

    评论

    相关推荐

    东芝存储存储级内存比采用SLC技术的TLC快10倍

    了5s或更短的读取延迟,速度提高了10倍,并且定位为新的存储器层次结构,填补了DRAM和NAND闪存之间的性能差异
    的头像 发表于 08-07 18:11 5005次阅读

    全面解析存储器层次结构原理

    靠近 CPU 的小、快速的高速缓存存储器(cache memory)做为一部分存储在相对慢速的主存储器(main memory)中数据和指令的缓冲区域。
    发表于 12-25 09:21 251次阅读
    全面解析<b class='flag-5'>存储器层次</b><b class='flag-5'>结构</b>原理

    存储器层次结构及其分类

    目录【1】存储器层次结构【2】存储器的分类【3】SRAM基本原理:结构:芯片参数与引脚解读:CPU与SRAM的连接方式【4】DRAM基本原
    发表于 07-29 06:21

    存储系统的层次结构

    文章目录存储系统的层次结构技术指标层次结构局部性原理主存储器读写
    发表于 07-29 09:47

    存储器层次结构主要体现在什么地方?为什么要分这些层次

    计算机中哪些部件可以用于存储信息?存储器层次结构主要体现在什么地方?为什么要分这些层次?存取周期和存取时间的区别是什么?半导体
    发表于 09-28 06:38

    存储器层次结构原理图解分析

    存储器层次结构原理图解分析   学习目录:     理解多级存储层次的思想及其作用; &nb
    发表于 04-13 16:16 1.3w次阅读

    高速缓冲存储器基础知识详细介绍

    高速缓冲存储器(Cache)其原始意义是指存取速度比一般随机存取记忆体(RAM)来得快的一种RAM基于缓存的存储器层次结构行之有效,是因为较慢的存储设备比较快的
    发表于 12-06 17:35 9593次阅读
    高速缓冲<b class='flag-5'>存储器</b>基础知识详细介绍

    存储对计算机系统会产生哪些影响

    由于访问速度、成本、功耗等指标的制约,计算机系统中的存储往往不是作为一个单一的大块存在,而是被设置成一个多级的层次结构。作为一个程序员,需要理解存储器层次
    发表于 07-06 09:56 4191次阅读
    <b class='flag-5'>存储</b>对计算机系统会产生哪些影响

    3D XPoint发展迅速,下一代存储技术之争越来越激烈

    多年来,业界一直致力于各种新兴存储技术,包括纳米管RAM、FRAM、MRAM、相变存储器和ReRAM。有的已经开始出货,有的还处于研发阶段。这些新的内存类型各不相同,而且都是针对特定应用,但是它们都号称可以取代当今系统内存/存储器层次
    发表于 08-27 09:19 5281次阅读

    计算机体系—存储器芯片内部技术与优化

    本文描述在存储器层次结构中使用的技术,特别是在构建 Cache 和主内存中。这些技术包括 SRAM(static randomaccess memory)、DRAM(dynamic
    的头像 发表于 12-08 10:21 605次阅读

    浅谈GPU: 衡量计算效能的正确姿势(3)

    而且Cache往往分几个层级,与内存以及其它外部存储器共同构成计算机系统的存储器层次结构(Memory Hierarchy),如下图所示,使得整个系统在性能,成本和制造工艺达到平衡。
    的头像 发表于 04-16 11:16 1456次阅读
    浅谈GPU: 衡量计算效能的正确姿势(3)

    系统存储器层次结构——高速缓存详解

          存储系统的层次结构可以分为5级:寄存器组、高速缓存Cache、主存、虚拟存储器和外部存储器。其中,寄存器组总是在CPU内部,程
    的头像 发表于 06-18 20:47 4789次阅读
    系统<b class='flag-5'>存储器层次</b><b class='flag-5'>结构</b>——高速缓存详解

    整理了一份经常忽略的嵌入式基础知识点

    ,几乎所有计算机都遵循与这种模型相同的工作原理。 那么你们了解计算机是如何工作的吗?本文将讨论这些内容: ◎ 理解计算机体系结构的基础知识 ◎ 选择编译器将代码转换为计算机可以执行的指令 ◎ 根据存储器层次结构提高数据的存
    的头像 发表于 04-21 07:55 313次阅读
    整理了一份经常忽略的嵌入式基础知识点

    浅谈存储器层次结构

    通过多级存储器的设计,存储器层次结构能够在存储容量和访问速度之间找到一个平衡点。高速缓存存储器和主存储器
    发表于 02-19 13:54 138次阅读
    浅谈<b class='flag-5'>存储器层次</b><b class='flag-5'>结构</b>

    存储器层次结构如何解释?

    存储器层次结构可以从图片中清晰的看出来,图片中共分为六级,越向上的层次存储器速度越快,容量更小,造价越高。
    的头像 发表于 02-19 14:03 431次阅读
    <b class='flag-5'>存储器层次</b><b class='flag-5'>结构</b>如何解释?