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

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

3天内不再提示

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

嵌入式应用开发 来源:嵌入式应用开发 作者:嵌入式应用开发 2022-06-18 20:47 次阅读
pYYBAGKtx-yAGbVQAADtL6XOuYI650.png

存储系统的层次化结构可以分为5级:寄存器组、高速缓存Cache、主存、虚拟存储器和外部存储器。其中,寄存器组总是在CPU内部,程序员可通过寄存器名访问,无总线操作,访问速度最快;其余4级均在CPU外部,Cache和主存构成内存储系统,程序员通过总线寻址访问存储单元,访问速度较寄存器差;虚拟存储器对程序员而言是透明的 ;外部存储系统容量大,需通过I/O接口与CPU交换数据,访问速度最慢。

高速缓冲存储器
高速缓冲存储器(Cache)的原始意义是指存取速度比一般随机存取存储器(RAM)更快的一种RAM,一般而言,它不像系统主存那样使用动态随机存储器(DRAM)技术,而是使用昂贵但较快速的静态随机存储器(SRAM)技术。
高速缓冲存储器是介于主存与CPU之间的一级存储器,由静态存储芯片(SRAM)组成,容量较小但速度比主存快得多,其最重要的指标是它的命中率。高速缓冲存储器与主存储器之间信息的调度和传送是由硬件自动进行的。
组成结构
高速缓冲存储器主要由以下三大部分组成:
Cache存储体:存放由主存调入的指令与数据。
地址转换部件:建立目录表以实现主存地址到缓存地址的转换。
置换部件:在缓存已满时按一定策略进行数据替换,并修改地址转换部件中的目录表。
工作原理
高速缓冲存储器通常由高速存储器、联想存储器、置换逻辑电路和相应的控制线路组成。在有高速缓冲存储器的计算机系统中,处理器存取主存储器的地址划分为行号、列号和组内地址三个字段。于是,主存储器就在逻辑上划分为若干行:每行划分为若干的存储单元组;每组包含几个或几十个字。高速存储器也相应地划分为行和列的存储单元组。二者的列数相同,组的大小也相同,但高速存储器的行数却比主存储器的行数少得多。
联想存储器用于地址联想,有与高速存储器相同行数和列数的存储单元。当主存储器某一列某一行存储单元组调入高速存储器同一列某一空着的存储单元组时,与联想存储器对应位置的存储单元就记录调入的存储单元组在主存储器中的行号。
当处理器存取主存储器时,硬件首先自动对存取地址的列号字段进行译码,以便将联想存储器该列的全部行号与存取主存储器地址的行号字段进行比较。若有相同的,表明要存取的主存储器单元已在高速存储器中,称为命中,硬件就将存取主存储器的地址映射为高速存储器的地址并执行存取操作;若都不相同,则表明该单元不在高速存储器中,称为失效,硬件将执行存取主存储器操作并自动将该单元所在的那一主存储器单元组调入高速存储器相同列中空着的存储单元组中,同时将该组在主存储器中的行号存入联想存储器对应位置的单元内。
当出现失效而高速存储器对应列中没有空的位置时,便淘汰该列中的某一组以腾出位置存放新调入的组,这称为置换。确定替换的规则称为置换算法,常用的置换算法有最近最久未使用算法(LRU)、先进先出法(FIFO)和随机法(RAND)等。置换逻辑电路就是执行这个功能的。另外,当执行写主存储器操作时,为保持主存储器和高速存储器内容的一致性,对命中和失效分别进行处理。

审核编辑:符乾江

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

    关注

    5082

    文章

    19104

    浏览量

    304797
  • 高速缓存
    +关注

    关注

    0

    文章

    30

    浏览量

    11056
  • 体系结构
    +关注

    关注

    0

    文章

    28

    浏览量

    9635
收藏 人收藏

    评论

    相关推荐

    TMS320C6000 DSP高速缓存用户指南

    电子发烧友网站提供《TMS320C6000 DSP高速缓存用户指南.pdf》资料免费下载
    发表于 12-17 15:49 0次下载
    TMS320C6000 DSP<b class='flag-5'>高速缓存</b>用户指南

    TMS320C64x在高性能DSP应用中的高速缓存使用情况

    电子发烧友网站提供《TMS320C64x在高性能DSP应用中的高速缓存使用情况.pdf》资料免费下载
    发表于 10-21 09:43 0次下载
    TMS320C64x在高性能DSP应用中的<b class='flag-5'>高速缓存</b>使用情况

    存储器中访问速度最快的是什么

    在探讨存储器中访问速度最快的是哪一种时,我们首先需要了解计算机存储系统层次结构以及各类存储器的特性和功能。计算机
    的头像 发表于 10-12 17:01 1782次阅读

    计算机存储系统的构成

    计算机存储系统是计算机中用于存放程序和数据的设备或部件的集合,它构成了计算机信息处理的基础。一个完整的计算机存储系统通常包括多个层次存储器,从高速
    的头像 发表于 09-26 15:25 789次阅读

    寄存高速缓存有什么区别

    寄存高速缓存(Cache)都是计算机系统中用于存储数据的重要组成部分,但它们在功能、位置、容量、速度以及使用方式上存在着显著的区别。
    的头像 发表于 09-10 14:32 1318次阅读

    存储器层次结构包括哪些

    存储器层次结构是计算机系统中一个关键且复杂的部分,它决定了数据的存储、访问和处理效率。存储器
    的头像 发表于 09-10 14:28 544次阅读

    高速缓冲存储器有什么作用

    高速缓冲存储器(Cache),通常简称为缓存,是一种具有高速存取能力的存储器。其原始意义是指存取速度比一般随机存取
    的头像 发表于 09-10 14:09 1166次阅读

    内部存储器有哪些

    )两大类组成,以及还包括一些高速缓存(Cache)和寄存(Register)等。下面将详细介绍这些内部存储器的工作原理、作用以及它们之间的区别。
    的头像 发表于 09-05 10:42 1553次阅读

    如何为T2G的CM7高速缓存启用ECC?

    如何为 T2G 的 CM7 高速缓存启用 ECC。
    发表于 07-02 07:57

    存储器的工作原理及基本结构

    在计算机系统中,存储器是不可或缺的组成部分,负责存储程序和数据以供处理器使用。随着计算机技术的不断发展,存储器的种类和性能也在不断提升。本文将详细探讨
    的头像 发表于 05-12 17:05 2161次阅读

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

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

    浅谈存储器层次结构

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

    简述存储器层次结构及其分层原因

    存储器层次结构是计算机系统存储器层次化组织,分为多个
    发表于 02-05 09:46 2114次阅读

    一文了解CPU高速缓存

    CPU的核心功能包括数据运算和指令控制。CPU运算的数据和执行的指令全部存储在CPU的寄存中,这些数据和指令又都来自于CPU高速缓存
    的头像 发表于 01-02 16:01 1559次阅读
    一文了解CPU<b class='flag-5'>高速缓存</b>

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

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