当前位置: 首页 > news >正文

AMBA-CHI协议详解(二十三)

在这里插入图片描述

AMBA-CHI协议详解(一)- Introduction
AMBA-CHI协议详解(二)- Channel fields / Read transactions
AMBA-CHI协议详解(三)- Write transactions
AMBA-CHI协议详解(四)- Other transactions
AMBA-CHI协议详解(五)- Transaction identifier fields
AMBA-CHI协议详解(六)- Transaction identifier field flows
AMBA-CHI协议详解(七)- Ordering
AMBA-CHI协议详解(八)- Address, Control, and Data
AMBA-CHI协议详解(九)- Data transfer
AMBA-CHI协议详解(十)- Retry
AMBA-CHI协议详解(十一)- Network Layer
AMBA-CHI协议详解(十二)- Cache line states
AMBA-CHI协议详解(十三)- Read transactions and Cache line states
AMBA-CHI协议详解(十四)- Dataless transactions
AMBA-CHI协议详解(十五)- Write transactions
AMBA-CHI协议详解(十六)- Combined Write/Atomic transactions
AMBA-CHI协议详解(十七)- Snoop request types
AMBA-CHI协议详解(十八)- Response types
AMBA-CHI协议详解(十九)- Cache state transitions at a Requester
AMBA-CHI协议详解(二十)- Cache state transitions at a Snoopee
AMBA-CHI协议详解(二十一)- Hazard conditions

文章目录

    • 5.2 Dataless transaction flows
      • 5.2.1 Dataless transaction without memory update
      • 5.2.2 Dataless transaction with memory update
      • 5.2.3 Persistent CMO with snoop and separate Comp and Persist
      • 5.2.4 Evict transaction


5.2 Dataless transaction flows

 本节给出了无数据事务的互连协议流的示例。

5.2.1 Dataless transaction without memory update

 下图显示MakeUnique 事务。
在这里插入图片描述
图无内存更新的 MakeUnique事务流的步骤如下:

  1. RN-F0 向 HN-F 发送 MakeUnique 请求。
  2. HN-F 向 RN-F1 和 RN-F2 发送 SnpMakeInvalid 请求。RN-F1 的缓存行状态从 UC 转变为 I。
  3. RN-F1 和 RN-F2 向 HN-F 返回 SnpResp_I。
  4. HN-F 向 RN-F0 发送 Comp_UC。RN-F0 的缓存行状态从 I 转变为 UD。
  5. RN-F0 向 HN-F 发出 CompAck 响应以指示事务完成。

5.2.2 Dataless transaction with memory update

下图是一个 CleanUnique 事务示例。
在这里插入图片描述
图中CleanUnique与内存更新事务流程的步骤如下:

  1. RN-F0向HN-F发送CleanUnique请求。
  2. HN-F向RN-F1和RN-F2发送SnpCleanInvalid请求。RN-F1缓存行状态从SD转换为I。
  3. RN-F1向HN-F返回SnpRespData_I_PD。HN-F向SN-F发送WriteNoSnp。
  4. RN-F2向HN-F返回SnpResp_I。HN-F现在可以向RN-F0发送Comp_UC。RN-F0缓存行状态从SC转换为UC。与此同时,SN-F向HN-F返回CompDBIDResp。HN-F随后向SN-F发送NCBWrData。
  5. RN-F0 向 HN-F 发出 CompAck 响应以指示事务完成。

5.2.3 Persistent CMO with snoop and separate Comp and Persist

在这个CleanSharedPersistSep事务流程的例子中,持久性点(PoP,Point of Persistence)位于SN-F。
在这里插入图片描述

CleanSharedPersistSep事务流程的步骤如下:

  1. RN-F0向HN-F发送CleanSharedPersistSep请求。
  2. HN-F向RN-F1发送SnpCleanShared请求。
  3. RN-F1向HN-F发送SnpResp_SC。
  4. HN-F向RN-F0发送Comp_SC。
  5. HN-F在完成所有被窥探的脏数据的writing back后,将CleanSharedPersistSep发送给SN-F(如果有的话)。(如果在窥探后有任何脏数据返回给HN-F,HN-F需要先完成将这些数据写回SN-F。 只有在此之后,HN-F才能向SN-F发出CleanSharedPersistSep请求。)
  6. SN-F向HN-F返回Comp响应。SN-F直接向RN-F0发送Persist响应,以指示请求已到达PoP,并且来自同一位置的任何先前写入的数据已推送到PoP。

5.2.4 Evict transaction

下图显示了驱逐事务的流程。
Evict请求是一个提示。 HN-F可以在不更新Snoop Filter或SnoopDirectory的情况下给出Comp响应。
在这里插入图片描述

  1. RN-F0缓存行状态从UC转换为I,并向HN-F发送Evict请求。HN-F接收并分配该请求。
  2. HN-F返回Comp_I响应并释放该请求。 RN-F0释放该请求。

请求者的缓存状态必须在发送Evict消息之前更改为Invalid。

相关文章:

  • vue2:el-table列中文字前面加icon图标的两种方式
  • AI自动获客系统源码
  • 【LangChain】理论及应用实战(5):Agent
  • Linux 入门:权限的认识和学习
  • 非常优秀的1个软件,再也不求人了!
  • DBA(数据库管理员)常用的 Linux 命令
  • Unity教程(二十二)技能系统 分身技能
  • 居家养老老年信息大数据分析基于SpringBootSSM框架
  • 实现回车键自动登录功能:Vue 2 和 Vue 3 的解决方案
  • 力扣No.673.最长递增子序列的个数
  • 【css酷炫效果】实现鱼群游动动态效果
  • 使用OBS进行webRTC推流参考
  • 封装element-plus的组件暴露原生属性和方法
  • MultiPost--多平台博客发布工具
  • 【大语言模型_5】xinference部署embedding模型和rerank模型
  • Hyperlane:Rust 语言打造的 Web 后端框架新标杆
  • MySQL意向锁我该怎么理解?
  • 自然语言处理(2)—— NLP之百年风雨路
  • 第七次作业,网络防御高级
  • 适配iOS 18:检测并移除三方库中的 bitcode 部分
  • 上海:5月8日起5年以上首套个人住房公积金贷款利率下调至2.6%
  • 吴清:加强监管的同时传递监管温度,尽力帮助受影响企业应对美加征关税的冲击
  • 澳大利亚工党可以靠“回避”胜选,但继续执政需要更多勇气
  • 国防部新闻发言人就日本民用飞机侵闯中国钓鱼岛领空答记者问
  • “五一”假期客流增加,多地提升铁路运力并强化服务
  • 巴菲特再谈投资日本:希望持有日本五大商社至少50年