PCIe进阶之TL:Request Handling Rules

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.mzph.cn/pingmian/54248.shtml

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

相关文章

HTML中直接创建一个“onoff”图形开关包括css+script

1. HTML中直接创建一个“onoff”图形开关 下面是一个完整的HTML文档示例 在HTML中直接创建一个“onoff”图形开关(通常指的是一个类似于物理开关的UI组件,可以切换开或关的状态),并不直接支持,因为HTML主要用于内容的…

研究生存指南:必备Zotero插件,让你的文献管理更轻松

在读研阶段,我经常面临大量文献阅读和项目研究的任务。忽略文献整理会导致后续使用时非常不便,查找困难且混乱。导师向我们推荐了 Zotero,经过亲身试用,我发现它非常好用!zotero有非常多的插件,能够一个就满…

web学习——VUE

VUE&Element 今日目标: 能够使用VUE中常用指令和插值表达式能够使用VUE生命周期函数 mounted能够进行简单的 Element 页面修改能够完成查询所有功能能够完成添加功能 1,VUE 1.1 概述 接下来我们学习一款前端的框架,就是 VUE。 Vue 是…

kubernetes调度2

1、各种缩写的应用 [rootk8s-master test]# kubectl get rsNAME DESIRED CURRENT READY AGEtest001-64c7957b5c 2 2 2 8m59stest001-698b98bb8f 0 0 0 12m[rootk8s-master test]# kubectl get replicas…

provide,inject父传子

这个方法传递子参数,可以让所有的子组件获取到,不能子组件传递给父组件 父组件 说下大概思路,导入privode,然后使用privode方法,有点像redis,key value形式存值,子组件可以通过key来获取你要传…

C#事件的用法

前言 在C#中,事件(Event)可以实现当类内部发生某些特定的事情时,它可以通知其他类或对象。事件是基于委托(Delegate)的,委托是一种类型安全的函数指针,它定义了方法的类型&#xff…

昂科烧录器支持Senasic琻捷电子的蓝牙低功耗芯片SNP746

芯片烧录行业领导者-昂科技术近日发布最新的烧录软件更新及新增支持的芯片型号列表,其中Senasic琻捷电子的蓝牙低功耗芯片SNP746已经被昂科的通用烧录平台AP8000所支持。 SNP746是一款蓝牙低功耗芯片,集成了压力传感器和加速度传感器的测量电路。它是为…

Python知识点:深入理解Python的模块与包管理

开篇,先说一个好消息,截止到2025年1月1日前,翻到文末找到我,赠送定制版的开题报告和任务书,先到先得!过期不候! 深入理解Python的模块与包管理 Python的模块和包是代码组织、复用和分发的基本…

git报错:无法读取远程分支 ‘origin‘ does not appear to be a git repository

问题分析 push上传的时候本地分支和远程分支断开连接 所以重新链接即可 排查问题 1. 查看是否有分支,检查分支是否正确 git branch -v 2. 查看连接是否断开,断开无内容展示 查看远程仓库详细信息,可看到仓库地址 git remote -v 解决…

FPGA随记——FPGA时序优化小经验

为什么要做时序优化: 1.一般是低端芯片或者软件做的比价差,就会导致时序不好过,需要我们代码设计上或者软件约束上进行时序优化。 2.或者设计中频点的提升,时序收敛会比较难,需要优化。 3.时钟方案的复杂&#xff0…

Linux 信号的产生

1. 概念 在Linux系统中,信号是一种进程间通信的机制,它允许操作系统或其他进程向特定进程发送异步通知。我们可以通过命令 kill -l来查看信号的种类: Linux系统中的信号可以分为两大类:传统信号和实时信号。从上图可以看出它们分…

09 Shell Scriptfor循环结构语句

Shell Scriptfor循环结构语句 一、Shell FOR循环语句概述 ​ 属于shell的符合语句 ​ 可以看出帮助信息给出了两种语法 [rootlocalhost ~]# help for for: for NAME [in WORDS ... ] ; do COMMANDS; doneExecute commands for each member in a list.The for loop executes…

htop(1) command

文章目录 1.简介2.格式3.选项4.交互式命令5.示例6.小结参考文献 1.简介 htop 是一种交互式、跨平台的基于 ncurses 的进程查看器。 类似于 top,但 htop 允许您垂直和水平滚动,并使用指向设备(鼠标)进行交互。您可以观察系统上运行的所有进程&#xff0…

24年蓝桥杯及攻防世界赛题-MISC-2

11 Railfence fliglifcpooaae_hgggrnee_o{cr} 随波逐流编码工具 分为5栏时,解密结果为:flag{railfence_cipher_gogogo} 12 Caesar rxms{kag_tmhq_xqmdzqp_omqemd_qzodkbfuaz} mode1 #12: flag{you_have_learned_caesar_encryption} 随波逐流编码工具 13 base64 base64解…

iOS17找不到developer mode

iOS17找不到开发者模式 developer mode 下载过app之后、弹窗Developer Mode Required之后,这个菜单就出现了(之前死活找不到)。 背景:用蒲公英分发测试app,有个同事买了新机(iphone 15 pro max),添加了白名…

ppt一键生成免费版软件有哪些?如何高效生成论文答辩?

答辩经验丰富的人都知道,制作论文答辩ppt是一项既繁琐又耗时的工作。 我们需要从数万字的论文中提炼关键点,梳理内容的逻辑关系,然后进行细致的排版和美化,最后还要进行反复的检查和试讲。整个过程不仅耗费时间,而且需…

MATLAB绘图:4.统计图表

MATLAB绘图之统计图表 一.散点图 适用情形:通过散点的疏密程度和变化趋势表示变量间的关系表示因变量随自变量变化的大致趋势,常用于显示和比较数值回归分析中,可用于描述数据点的分布 scatter(x,y) 在向量x和y指定的位置创建一个包含圆形…

硬件工程师笔试面试——变压器

目录 9、变压器 9.1 基础 变压器原理图 变压器实物图 9.1.1 概念 9.1.2 变压器组成结构 9.1.3 变压器原理 9.1.4 变压器的类型 9.1.5 应用领域 9.2 相关问题 9.2.1 变压器的工作原理是什么? 9.2.2 如何选择合适的变压器类型? 9.2.3 变压器在实际应用中,如何进行…

8.1差分边缘检测

基本概念 差分边缘检测是一种图像处理技术,用于检测图像中的边缘。边缘是指图像中灰度值发生显著变化的区域。差分边缘检测通常通过计算图像的梯度来实现,梯度反映了灰度值的变化率。在OpenCV中,可以使用不同的算子来检测不同方向的边缘&…

[docker]入门

本文章主要讲述的是,docker基本实现原理,docker概念的解释,docker的使用场景以及docker打包与部署的应用。 文章中docker所运行的系统:CentOS Linux release 7.9.2009 (Core) 目录 docker是什么,什么时候需要去使用 …