PCIe进阶之TL:Request Handling Rules

news2024/9/20 0:29:02

1 Handling of Received TLPs

本节介绍接收到的 TLP 在数据链路层经过完整性验证之后,这些 TLP 在事务处理层时的处理方式。这些规则如下图所示:
在这里插入图片描述

  • 接收侧会忽略保留字段。
  • 如果 Fmt 字段显示存在至少一个 TLP Prefix :
    (1)通过检查后续 DWORD 的第一个字节中的 Fmt 字段,直到 Fmt 字段与 TLP Prefix 的字段不匹配,来检测 header 中是否存在其他 TLP Prefix。(每个 TLP Prefix 为一个 DWORD 长度。)
    (2)按照TLP Prefix处理规则来处理该TLP。
  • 如果 Extended Fmt Field Supported 字段设置为 1,则收到的 Fmt 和 Type 字段编码为保留值的 TLP 是 Malformed TLP。
  • 如果 Extended Fmt Field Supported 字段设置为 0,则收到的 Fmt[2]为 1 的 TLP 的处理方式未定义。
  • 收到的 Fmt[2]为 0,且 Type 字段为保留值的 TLP 为 Malformed TLP。
  • 收到的 TLP 为 Malformed TLP,则该 TLP 被丢弃。
    (1)如果接收到的 Malformed TLP 导致不知道释放哪个缓冲区,也不知道怎么映射到未初始化的虚通道,则必须要丢弃且不更新接收侧的流控制信息。
    (2)必须丢弃所有其他类型的 Malformed TLP,可以选择不更新接收侧的流控制信息。
  • 否则,更新流控制更新逻辑。
  • 如果 Type 字段中的值指示 TLP 是个 Request,请按照Request Handling Rules进行处理;否则,收到的 TLP 是一个 Completion,请按照Completion Handling Rules进行处理。
    PCIe Switch 必须能处理寻址 Switch 本身的 TLP与寻址 Switch 挂接的设备的 TLP。Switch 根据上述规则处理所有寻址 Switch本身的 TLP。根据以下规则处理通过 Switch 的 TLP:
    在这里插入图片描述
  • 如果收到的 TLP 的 Type 字段显示该 TLP 不是 Msg 或 MsgD 请求,则该 TLP 按照 Routing and Addr

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

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

相关文章

两个人群填充参考(CHN100K和NARD)

分别是中国人群和东北亚人群的填充参考,测试了下,中国人群的参考注册还是相对友好的,没有像有些网站一样严格限制。东北亚的没有测试,两个数据库的特点都是包含了少数民族,研究朝鲜或蒙古族或其他民族的同学&#xff0…

Java 枚举 新特性

Java 枚举(enum)自JDK 1.5引入以来,随着版本的升级不断增强。本文将回顾枚举的演进,尤其是结合switch语句的应用,展示枚举如何在现代Java中变得更加灵活。 1. JDK 1.5:Java 枚举的诞生 在JDK 1.5之前&…

Dbt基本概念与快速入门

在过去的几年里,数据科学界已经慢慢地接受了以数据为中心的范式。我们不仅关注日益复杂的机器学习模型,还要更多地关注数据质量。这使得数据工程、分析工程领域技术和工具成为热点。dbt(数据构建工具)是一个显著改善数据工程师生活的工具。它的目的是向数…

【漏洞复现】金某云星空ERP GetImportOutData .net反序列化漏洞

免责声明: 本文内容旨在提供有关特定漏洞或安全漏洞的信息,以帮助用户更好地了解可能存在的风险。公布此类信息的目的在于促进网络安全意识和技术进步,并非出于任何恶意目的。阅读者应该明白,在利用本文提到的漏洞信息或进行相关测…

Chinese Spelling Correction as Rephrasing Language Model(AAAI2024)

Chinese Spelling Correction as Rephrasing Language Model(AAAI2024) 一.概述 目前最先进的方法将CSC(Chinese Spelling Correction)作为序列标注任务,并在句子对上微调基于bert的方法。然而,我们注意到在将一个字符标注为另一个字符的过…

springboot+mybatis+mysql仿百度网盘系统2.0

springbootmybatismysql仿百度网盘系统2.0 一、系统介绍二、功能展示1.用户登陆2.主页3.全部文件4.文件上传5.文件分享6.文件分类 三、其它1.其他系统实现 一、系统介绍 系统主要功能: 普通用户:用户登陆、主页、全部文件、上传文件、文件分类、文件分部…

初始爬虫6

数据提取 数据提取总结 响应分类 结构化 json数据(高频出现) json模块 jsonpath模块 xml数据(低频出现) re模块 …

AJAX 入门 day3

目录 1.XMLHttpRequest 1.1 XMLHttpRequest认识 1.2 用ajax发送请求 1.3 案例 1.4 XMLHttpRequest - 查询参数 1.5 XMLHttpRequest - 数据提交 2.Promise 2.1 Promise认识 2.2 Promise - 三种状态 2.3 案例 3.封装简易版 axios 3.1 封装_简易axios_获取省份列表 3…

TS - tsconfig.json 和 tsconfig.node.json 的关系,如何在TS 中使用 JS 不报错

目录 1,前言2,二者关系2.1,使用 3,遇到的问题3.1,TS 中使用 JS 1,前言 通过 Vite 创建的 Vue3 TS 项目,根目录下会有 tsconfig.json 和 tsconfig.node.json 文件,并且存在引用关系…

【云原生监控】Prometheus之PushGateway

Prometheus之PushGateway 文章目录 Prometheus之PushGateway介绍作用资源列表基础环境一、部署PushGateway1.1、下载软件包1.2、解压软件包1.3、编辑配置systemctl启动文件1.4、创建日志目录1.5、加载并启动1.6、监控端口1.7、访问PushGateway 二、 配置Prometheus抓取PushGate…

超声波测距

基本原理:超声波测距是通过发射超声波到物体表面再反射回来,通过测量声波传播的时间来计算距离的方法。 公式解释: ( L C \times T ) ( L ):距离(从发射头到接收头的总距离)( C ):声波的传播速…

汉王手写签批控件如何在谷歌、火狐、Edge等浏览器使用

背景 近日,有网友咨询汉王手写签批控件是否可以通过allWebPlugin中间件技术加载到谷歌、火狐、Edge等浏览器?为此,笔者详细了解了一下汉王手写签批控件,它是一个标准的ActiveX控件,曾经主要在IE浏览器使用,…

Spring为什么要用三级缓存解决循环依赖?

Spring为什么要用三级缓存解决循环依赖? 1. Spring是如何创建一个bean对象2. Spring三级缓存2.1 一级缓存:单例池,经历过完整bean生命,单例Bean对象2.2 二级缓存:提前暴露的Bean2.3 三级缓存:打破循环 3. S…

【CMake】使用CMake在Visual Studio 构建多cpp文件项目

首先,我们在 C m a k e Cmake Cmake文件下写入以下代码: #需求的最低cmake程序版本 cmake_minimum_required(VERSION 3.12)#本工程的名字 project(OpenGL)#支持的C版本 set(CMAKE_CXX_STANDARD 20)#本工程主程序文件及输出程序名称,生成exe …

TriangleIcon 鸿蒙ArkTS自定义View 实现带颜色的上下箭头

TriangleIcon 鸿蒙ArkTS自定义View 实现带颜色的上下箭头 最近将公司项目中VUE实现的的一个数据看板模块进行了纯血鸿蒙的实现,里面有个效果就是 数据指标上升 一个绿色箭头朝上,数据指标下降一个红色箭头向下 具体的效果可以查看上图, 其中V…

Vue3 项目实战甄选硅谷

1.技术选型 2.搭建Vue3 项目使用pnpm 1.安装pnpm pnpm安装 npm i -g pnpm 2.项目初始化 pnpm create vite cd ./project pnpm i pnpm run dev 初始化完成 3.项目开始之前先对项目进行一些配置 1.想让刚启动项目浏览器自动打开 找到 2.eslint配置 1.安装eslint pnpm…

FloodFill(洪水灌溉)算法专题——DFS深搜篇

1、图像渲染 . - 力扣(LeetCode) 1.1 算法原理 从(sr,sc)位置开始上下左右暴搜,将区域中符合条件的值修改为color。细节问题:当 color image[sr][sc]时,不需修改,直接返回即可。 1.2 算法代码 class Sol…

C++初阶:STL详解(三)——vector的介绍和使用

✨✨小新课堂开课了,欢迎欢迎~✨✨ 🎈🎈养成好习惯,先赞后看哦~🎈🎈 所属专栏:C:由浅入深篇 小新的主页:编程版小新-CSDN博客 前言: 前面我们刚刚了解了strin…

STM32外设之LTDC/DMA2D—液晶显示(野火)

文章目录 显示屏有几种?基本参数控制?显存 LTDC 液晶控制器LTDC 结构框图LTDC 初始化结构体 LTDC_InitTypeDefLTDC 层级初始化结构体 DMA2D 图形加速器DMA2D 初始化结构体 要了解什么 屏幕是什么,有几种屏,有什么组成。 怎么控制,不同屏幕控…

FastGPT一站式解决方案[2-应用篇]:轻松实现RAG-智能问答系统,AI工作流、核心模块讲解

FastGPT一站式解决方案[2-应用篇]:轻松实现RAG-智能问答系统,AI工作流、核心模块讲解 1.FastGPT快速使用:基本设置、核心模块讲解 1.1 知识库设置 首先我们需要创建一个知识库。 知识库创建完之后我们需要上传一点内容。 上传内容这里有四种模式: 手动输入:手动输入问…