Read Completion Boundary (RCB)切分规则

news2024/11/24 13:01:55

Read Completion Boundary(RCB) 切分规则

Read Completion Boundary(RCB) 简介

当Read Completion 包含multi-completions时,RCB 规定了多个Completions地址的align规则。Spec中规定RCB可以是64 Byte或者128 Byte,该值可以在link_control register中得到。

RCB 切分规则

  1. Read request length 不大于RCB
    例如RCB为128 Byte,read request length 小于128 Byte。这时不会返回multi-completions,所以不会对返回包进行切分,从request的起始地址读够length长度的数据返回。
  2. Read request length 大于RCB,这种情况会返回multi-completions,且与起始地址有关系
  • 例如RCB为128 Byte,read request length 为200 Bytes,起始地址为0X60。这时会有三笔completion返回,第一笔从0X60开始读取32 Bytes数据,第二笔数据从0X80开始读取128 Bytes数据,第三笔从0X100地址开始读取40 Bytes数据。
  • 例如RCB为128 Byte,read request length 为200 Bytes,起始地址为0X10。这时会有两笔completion返回,第一笔从0X10开始读取112 Bytes数据,第二笔数据从0X80开始读取88 Bytes数据。
    在这里插入图片描述

第一笔completion必须开始于request的起始地址,当request的length不大于RCB时不进行切分,当request的length大于RCB时在RCB处结束。
最后一笔completion返回的地址必须满足所有completion payload长度满足request的length。
所有中间的completions payload大小必须满足RCB

系统中所有component保持一致机制

在讨论这个问题时,首先需要了解控制RCB的寄存器。
在这里插入图片描述
从Spec的定义可以看出,对于RC/Bridge 或者EP来说该寄存器的属性是不同的。
所以在系统中由系统软件来管理各个component的RCB,首先读取RC/EP的值,并把相同的值写到EP中,这样就可以使整个系统RCB保持一致。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1190064.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

什么是观察者模式?用 Python 如何实现 Observer(观察者或发布订阅)对象行为型模式?

什么是观察者模式? 观察者模式(Observer pattern)是一种行为型设计模式,它允许对象之间建立一种一对多的依赖关系,当一个对象的状态发生变化时,其相关依赖对象都会得到通知并自动更新。 在观察者模式中&am…

Leo赠书活动-06期 【强化学习:原理与Python实战】文末送书

✅作者简介:大家好,我是Leo,热爱Java后端开发者,一个想要与大家共同进步的男人😉😉 🍎个人主页:Leo的博客 💞当前专栏: 赠书活动专栏 ✨特色专栏:…

CVE-2023-0179-Nftables整型溢出

前言 Netfilter是一个用于Linux操作系统的网络数据包过滤框架,它提供了一种灵活的方式来管理网络数据包的流动。Netfilter允许系统管理员和开发人员控制数据包在Linux内核中的处理方式,以实现网络安全、网络地址转换(Network Address Transl…

MySQL 数据库表格创建、数据插入及获取插入的 ID:Python 教程

创建表格 要在MySQL中创建表格,请使用"CREATE TABLE"语句。 确保在创建连接时定义了数据库的名称。 示例创建一个名为 “customers” 的表格: import mysql.connectormydb mysql.connector.connect(host"localhost",user"…

图文解析 Nacos 配置中心的实现

目录 一、什么是 Nacos 二、配置中心的架构 三、Nacos 使用示例 (一)官方代码示例 (二)Properties 解读 (三)配置项的层级设计 (四)获取配置 (五)注册…

nfs配置

1.NFS介绍 NFS就是Network File System的缩写,它最大的功能就是可以通过网络,让不同的机器、不同的操 作系统可以共享彼此的文件。 NFS服务器可以让PC将网络中的NFS服务器共享的目录挂载到本地端的文 件系统中,而在本地端的系统中来看&#…

【gltf-pipeline】安装gltf-pipeline 进行文件格式转换

问题 想使用gltf-pipeline进行gltf和glb格式转换。简单记录一下安装过程。 解决 1、安装Node.js Node.js下载路径:https://nodejs.org/en 建议默认设置安装。 添加系统环境变量: 测试安装是否成功: 在cmd.exe中运行: no…

基于SSM的建筑装修图纸管理平台

末尾获取源码 开发语言:Java Java开发工具:JDK1.8 后端框架:SSM 前端:采用JSP技术开发 数据库:MySQL5.7和Navicat管理工具结合 服务器:Tomcat8.5 开发软件:IDEA / Eclipse 是否Maven项目&#x…

基于ssm的校园办公室报修管理系统

基于ssm的校园办公室报修管理系统 摘要 基于SSM的校园办公室报修管理系统是一个现代化的、高效的报修平台,它能够帮助校园内的教职工和学生更方便、更快捷地提交和处理报修请求。该系统基于Spring、SpringMVC和MyBatis(简称SSM)开发&#xff…

【MySQL】一文学会所有MySQL基础知识以及基本面试题

文章目录 前言 目录 文章目录 前言 一、主流数据库以及如何登陆数据库 二、常用命令使用 三、SQL分类 3.1 存储引擎 四、创建数据库如何设置编码等问题 4.1操纵数据库 4.2操纵表 五、数据类型 六、表的约束 七、基本查询 八、函数 九、复合查询 十、表的内连和外连 十一、索引…

第十八章Swing程序设计总结

例题18.1:第一个窗体程序 例题18.2:在窗体中弹出对话框 例题18.3:弹出会话框,问用户准备好了吗? 例题18.4:弹出会话框,询问用户是否离开 例题18.5:弹出会话框,让用户输入…

特殊矩阵的压缩存储(对称矩阵,三角矩阵,三对角矩阵,稀疏矩阵)

目录 1.数组的存储结构1.—维数组2.二维数组1.行优先存储2.列优先存储 2.特殊矩阵1.对称矩阵1.行优先存储 2.三角矩阵1.上三角矩阵2.下三角矩阵 3.三对角矩阵(带状矩阵)4.稀疏矩阵 1.数组的存储结构 1.—维数组 各数组元素大小相同,且物理上…

vue-router路由守卫进阶

vue-router路由守卫进阶 路由守卫,可以想象为古代御前侍卫,路由守卫,则是对路由进行权限控制 分类:全局守卫、独享守卫、组件内守卫 全局前置-路由守卫 作用:主要用来鉴权 用户点击导航区,随后引起路径的…

Android平台上执行C/C++可执行程序,linux系统编程开发,NDK开发前奏。

Android平台上执行C/C可执行程序,linux系统编程开发,NDK开发前奏准备。 1.下载NDK,搭建NDK开发环境 下载地址 https://developer.android.com/ndk/downloads 下载过程中点击下面箭头的地方,点击鼠标右键,复制好下载…

自动化实战 - 测试个人博客系统

前言 本篇使用Selenium3Junit5对个人博客进行自动化测试,如有错误,请在评论区指正,让我们一起交流,共同进步! 文章目录 前言一.web自动化测试用例二.测试准备1.注册界面自动化测试测试过程中遇到的Bug: 2.登录界面自动…

坐标系转换(仅作记载)

一.极坐标转换为普通坐标系 参考:极坐标方程与直角坐标方程的互化 - 知乎 (zhihu.com) 公式:(无需考虑象限引起的正负问题) 普通坐标系转换为极坐标系 参考: 极坐标怎么与直角坐标系相互转化? - 知乎 (zh…

若依 验证码出不来 Fontconfig head is null, check your fonts or fonts configuration

是因为使用的OenJDK不支持awt包下的字体 解决方法: 安装FontConfig组件即可 yum install -y fontconfig

找不到模块“./App.vue”或其相应的类型声明。ts(2307)

先看报错信息: 这是我们初始创建是就自带的,怎么会错误呢,实际上是因为未定义 .vue文件的类型,导致 ts 无法解析其类型,在env.d.ts中定义后即可解决。 对于我们初学者来说,刚刚按照视频来创建的项目怎么啥…

048-第三代软件开发-数据回放

第三代软件开发-数据回放 文章目录 第三代软件开发-数据回放项目介绍数据回放 关键字: Qt、 Qml、 Data、 play back、 数据 项目介绍 欢迎来到我们的 QML & C 项目!这个项目结合了 QML(Qt Meta-Object Language)和 C 的…

4个杀手级Pycharm高效插件

本文将介绍4个学习Python的人都应该安装的Pycharm插件,通过这些插件提高工作效率并使Pycharm看起来更美观。 1、简介 Pycharm是Python最受欢迎的集成开发环境之一。它具有良好的代码助手、漂亮的主题和快捷方式,使编写代码变得简单快捷。 话虽如此&…