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

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

3天内不再提示

地址映像有哪三种方式

麦辣鸡腿堡 来源:TrustZone 作者:TrustZone 2023-10-31 11:39 次阅读

所谓地址映像方式是指如何确定Cache中的内容是主存中的哪一部分的副本,即必须应用某种函数把主存地址映像到Cache中定位。

信息按某种方式装入Cache中后,执行程序时,应将主存地址变换为Cache地址,这个变换过程叫作地址变换。

地址映像方式通常采用直接映像、全相联映像、组相联映像三种:

1-直接映像

每个主存地址映像到Cache中的一个指定地址的方式,称为直接映像方式。在直接映像方式下,主存中存储单元的数据只可调入Cache中的一个位置,如果主存中另一个存储单元的数据也要调入该位置则将发生冲突。

地址映像的方法一般是将主存空间按Cache的尺寸分区,每区内相同的块号映像到Cache中相同的块位置。一般地,Cache被分为2N块,主存被分为大小为2MB的块,主存与Cache中块的对应关系可用如下映像函数表示:j = i mod 2N。式中,j是Cache中的块号;i是主存中的块号。

直接映像是一种最简单的地址映像方式,它的地址变换速度快,而且不涉及其他两种映像方式中的替换策略问题。但是这种方式的块冲突概率较高,当程序往返访问两个相互冲突的块中的数据时,Cache的命中率将急剧下降,因为这时即使Cache中有其他空闲块,也因为固定的地址映像关系而无法应用。

2-全相联映像

主存中的每一个字块可映像到Cache任何一个字块位置上,这种方式称为全相联映像。这种方式只有当Cache中的块全部装满后才会出现块冲突,所以块冲突的概率低,可达到很高的Cache命中率,但它实现很复杂。

当访问一个块中的数据时,块地址要与Cache块表中的所有地址标记进行比较已确定是否命中。在数据块调入时存在着一个比较复杂的替换问题,即决定将数据块调入Cache中什么位置,将Cache中哪一块数据调出主存。为了达到较高的速度,全部比较和替换都要用硬件实现。

3-组相联映像

组相联映像方式是直接映像和全相联映像的一种折中方案。这种方法将存储空间分为若干组,各组之间是直接映像,而组内各块之间则是全相联映像。

它是上述两种映像方式的一般形式,如果组的大小为1,即Cache空间分为2N组,就变为直接映像;如果组的大小为Cache整个的尺寸,就变为全相联映像。组相联方式在判断块命中及替换算法上都要比全相联方式简单,块冲突的概率比直接映像低,其命中率也介于直接映像和全相联映像方式之间。

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

    关注

    8

    文章

    6926

    浏览量

    88867
  • 内存
    +关注

    关注

    8

    文章

    3008

    浏览量

    73919
  • Cache
    +关注

    关注

    0

    文章

    129

    浏览量

    28309
收藏 人收藏

    评论

    相关推荐

    伺服电机的三种控制方式

    伺服电机控制方式脉冲、模拟量和通讯这三种,在不同的应用场景下,我们该如何选择伺服电机的控制方式呢?
    发表于 08-17 11:01 7055次阅读

    三种访问过程映像的方法

    硬实时的需求。用户可以通过python等高级语言编写程序,并且可以通过存储器中的过程映像便捷的写入或者读取所有当前过程值。本文将介绍从过程映像中访问数据的三种方法:直接从文件中读取、ioctl以及
    发表于 02-02 16:40

    常用的FBAR模型三种?

    常用的FBAR模型三种?
    发表于 03-11 06:16

    菱伺服电机3转矩控制模式

    菱伺服电机3转矩控制模式?菱伺服电机的转矩控制模式
    发表于 06-28 08:15

    STM32串口通讯三种方式

    STM32串口通讯三种方式,分别为阻塞(轮询)、中断、DMA。串口模式和配置 源代码编写
    发表于 08-13 06:52

    STM32三种启动模式

    01STM32的三种启动模式STM32三种启动模式:FLASH启动、SRAM启动和系统存储器启动,通常三种启动方式由外部引脚boot0和b
    发表于 08-18 07:52

    数码相机充电器对电池的充电状态判断方式三种

    数码相机充电器对电池的充电状态判断方式三种? 1、0△V电压判断方式镍氢电池刚好充满达到最高电压时,
    发表于 11-04 16:39 2469次阅读

    三种投影机散热技术是三种

    三种投影机散热技术是三种 如今在日常的学习、工作、生活中,投影机的应用越来越频繁。由于投影机属于高
    发表于 02-06 10:33 563次阅读

    linux设置环境变量的三种方式

     linux设置环境变量以下三种方式
    发表于 06-15 09:05 1410次阅读
    linux设置环境变量的<b class='flag-5'>三种</b><b class='flag-5'>方式</b>

    如何应用伺服电机的三种控制方式

    一般伺服都有三种控制方式:速度控制方式,转矩控制方式,位置控制方式。大多数人想知道的就是这三种
    发表于 01-22 06:30 7次下载
    如何应用伺服电机的<b class='flag-5'>三种</b>控制<b class='flag-5'>方式</b>

    单片机三种烧录方式ISP、IAP和ICP什么不同?

    单片机三种烧录方式ISP、IAP和ICP什么不同?
    发表于 12-03 18:36 14次下载
    单片机<b class='flag-5'>三种</b>烧录<b class='flag-5'>方式</b>ISP、IAP和ICP<b class='flag-5'>有</b>什么不同?

    单片机三种烧录方式ISP、IAP和ICP什么不同?

    单片机三种烧录方式ISP、IAP和ICP什么不同?
    发表于 12-03 19:06 12次下载
    单片机<b class='flag-5'>三种</b>烧录<b class='flag-5'>方式</b>ISP、IAP和ICP<b class='flag-5'>有</b>什么不同?

    使用的I/O地址如何更改过程映像区范围

    可以采用两方式:更改过程映像区范围 或 使用外设地址直接读取/写入
    的头像 发表于 10-08 11:24 1589次阅读

    Redis实现限流的三种方式分享

    当然,限流许多种实现的方式,Redis具有很强大的功能,我用Redis实践了三种的实现方式,可以较为简单的实现其方式
    的头像 发表于 02-22 09:52 1049次阅读

    半导体的导电特性三种

    半导体的导电特性三种  半导体是一介于导体和绝缘体之间的材料,具有特殊的导电特性。在半导体中,电子在晶体中的运动方式和原子结构的特性都
    的头像 发表于 08-27 15:48 4375次阅读