zoukankan      html  css  js  c++  java
  • writeback/writethrough/writeallocate/writenoallocate

    write-back/write-through/write-allocate/write-no-allocate

    CPU读Cache时

    ●若hit,则CPU直接从Cache中读取数据即可。

    ●若miss,有两种处理方式:

       >Read through,即直接从内存中读取数据;

       >Read allocate,先把数据读取到Cache中,再从Cache中读数据。

    写操作

    先检查cache里是否有对应数据,如果有(write hit):

    根据是write-back还是write-through来具体操作:

    write-back:将数据更新到cache,并不更新到内存(DRAM),待后续flush cache时存入内存;

    write-through:数据同时会更新到cache和内存;

    如果没有(write miss):

    根据是write-allocate或是write-no-allocate:

    write-allocate:将要写入的位置从内存读到cache,然后按照上述write hit继续操作;

    write-no-allocate:不会将要写入的数据从内存读到cache,直接将要写的数据写入内存。

    transient attribute

    Another new memory attribute feature in the Armv8-M architecture is that Normal memory has a new Transient attribute. If an address region is marked as Transient it means the data within is unlikely to be frequently used. A cache design could, therefore, utilize this information to prioritize transient data for cacheline evictions. A cacheline eviction operation is needed when the processor needs to store a new piece of data into the cache but all of the cache-ways of the corresponding cache index have already been used by older valid data. In the case of the Cortex-M23 and Cortex-M33 processors, this attribute is not used as (a) there is no data cache support, and (b) the AHB interface does not have any signal for transient indication. Please note, even when an Armv8-M processor has a data cache transient support, is an optional feature. This is because this feature increases the SRAM area needed for cache tags and might, therefore, not be desirable for some designs.

    from: https://www.sciencedirect.com/topics/engineering/memory-attribute

    device memory attributes

    https://blog.csdn.net/shenhuxi_yu/article/details/90617675

    https://zhuanlan.zhihu.com/p/124946496

  • 相关阅读:
    Stack堆栈的数据结构
    反坦克导弹相关网页
    Java 执行jar文件出现版本错误信息
    Python3 数字保留后几位
    Python3: Windows系统上同时安装Python2和Python3
    Linux 搭建FTP
    DBCP、c3p0、Druid三大连接池区别
    Sybase 存储过程中IF的用法
    Confluence5.8部分空间名称显示为问号的解决方案
    Mysql 更改编码方式
  • 原文地址:https://www.cnblogs.com/aspirs/p/15743808.html
Copyright © 2011-2022 走看看