长沙建网站公司,建设银行观澜支行网站,百度竞价推广价格,外包加工网邀请码#x1f525;点击查看精选 CXL 系列文章#x1f525; #x1f525;点击进入【芯片设计验证】社区#xff0c;查看更多精彩内容#x1f525; #x1f4e2; 声明#xff1a; #x1f96d; 作者主页#xff1a;【MangoPapa的CSDN主页】。⚠️ 本文首发于CSDN#xff0c… 点击查看精选 CXL 系列文章 点击进入【芯片设计验证】社区查看更多精彩内容 声明 作者主页【MangoPapa的CSDN主页】。⚠️ 本文首发于CSDN转载或引用请注明出处【https://mangopapa.blog.csdn.net/article/details/132647111】。⚠️ 本文目的为 个人学习记录 及 知识分享。因个人能力受限存在协议解读不正确的可能。若您参考本文进行产品设计或进行其他事项并造成了不良后果本人不承担相关法律责任。⚠️ 若本文所采用图片或相关引用侵犯了您的合法权益请联系我进行删除。 欢迎大家指出文章错误欢迎同行与我交流 ~ 邮箱mangopapayeah.net 直达博主loveic_lovelife 。搜索或点击扫码 文章目录 0. 前言1. NDR2. DRS3. BISnp4. QA 0. 前言 S2M 方向有 NDR、DRS、BISnp 三个 Channel。S2M 没有独立的 Data Channel而是跟 Rsp 合并到一起了。本文对 M2S 方向各 Channel 的 Message 进行释义。 1. NDR NDR 为不携带 Data 的 Response主要为 Completion 消息此外还有对冲突指示消息的响应。 NDR 包含以下 Message
Cmp WriteBack、Read、Invalidation 等请求的 CompletionCmp-S DCOH 指示 Host 当前 Cacheline 为 S 状态Cmp-E DCOH 指示 Host 当前 Cacheline 为 E 状态BI-ConflictAck BIConflict 的 Ack。 跟 Req 相比Rsp 多了 DevLoad用来指示 Device 当前的工作负载轻重。更多 DevLoad 的用法可参考《CXL QoS Telemetry 介绍》。 2. DRS DRS 可以理解为 Memory Read 的 CplD携带有读回来的数据。 DRS 有以下 Message
MemData 读回的数据MemData-NXM NFX 是指 Not Existed Memory地址指向的 Memory 区域不存在Data Payload 全为 1。 3. BISnp BISnp 由 S 发出用于改变 Host 的 Cache 状态通过实现 Inclusive Snoop Filter 来对 Host Cache 进行 Track。BISnp 仅工作于 256B Flit Mode。 BISnp 包含以下 Message
BISnpCur Device 请求 Host 侧该 Cacheline 的数据副本但不改变 Host Cacheline 状态。这么说吧当 Device 想要一份数据但 Device Cache 没有I通过该请求来探察一下 Host Cache 有没有Host 返回 BIRsp*来告诉 Device 探察结果。SnpCur 是不希望读回会的数据被 Cache 的所有取回来之后 Device 该 Cacheline 还是 I。BISnpData Device 请求 Host 侧该 Cacheline 的 S 或 E 数据副本。当 Device 想要请求某 Cacheline 独享/共享权限时向 Host 发送 BISnpDataHost 返回 BIRspI/S。如果返回的 BIRspI表示 Host 已经将该 Cacheline Invalid 了Device 可以将该 Cacheline 置为 E 或保持 S若 Host 返回的 BIRspS说明 Host 没同意Device 不能独享该 Cacheline仍为 S。Host 不能返回 BIRspE发起 BISnpData 的前提是 Device 有该 cacheline 且非 II 就发 BISnpCur 了Device 有那么 Host 就不能是 E当然也不会返回 E。跟 BISnpCur 比该请求读回来的数据是能够 Cache 的很显然都请求 SE 了再不给 Cache 权限就说不过去了。BISnpInv Device 请求 Host 侧该 Cacheline 的 E 数据副本Device 想要独享Host 只得 I数据回到 Device 后能进行 Cache。跟 BISnpData 比BISnpInv 要的权限更具体Host 只能回复 BIRspI。获得权限后Device 可以不要该权限仍保持 S。BISnpCurBlk 可以指定 2 或 4 条连续 Cacheline 的 Block。BISnpDataBlk 同上。BISnpInvBlk 同上。 对于 Outstanding S2M BISnpDevice 需要在 BISnp 完成之前 Block 住相同地址的 M2S Req。 4. QA 为什么 Device 不直接来 Host Cache 取数据 CXL Device 的 Cache 位于 CPU LLC 下Device 可以采用 CXL.cahce 直接来 Host Cache 取数据。 Host 能直接把 Host Cache 内的数据 Flush 到 Device Memory 吗就是说能否绕过 Host Memory 的中转让 Host Processor/Cache 直接跟 Device Memory 接上头 能。CXL.mem 不就是干这个的么比如 M2S MemRd、MemWr。 Meta 是什么 Host 给 Device 的暗示信息告知 Device 该 CacheLine 在 Host 侧的 Cache 状态而非 Device 内的状态便于 DCOH 进行一致性相关操作。 错误认知 对于 HDM-H 区域Host 不能发任何有效的 SnpType 给 Device因为 Device 里没有备份没有还 Snoop 啥可以发看附件 A-3 表格 BI 能用于 Host Memory 区域吗 不能。Host Memory 直接用.cache 啊。用 BI 的场景HDM-DB 区域Device 想把 Device Memory 在 Host 侧 Cacheline 内的数据给处理掉。 — END — 精选往期 CXL 协议系列文章请查看【 CXL 专栏】 ⬆️ 返回顶部 ⬆️