PCIe学习之《理解TLP的基本结构》
PCIe学习之《理解TLP的基本结构》理解TLP的组成帧头Header 数据载荷Data Payload Digest可选理解帧头各字段含义Fmt[1:0]字段表示帧头大小以及是否包含数据载荷00b 3DW 头部无数据01b 4DW 头部无数据10b 3DW 头部有数据11b 4DW头部有数据。Type[4:0]字段Type 字段与 Fmt[1:0] 字段一起使用以指定事务类型、头部大小以及是否存在数据载荷。具体表示事务类型见附表。TC流量类别TC用于为TLP分配优先级支持8个等级TC0到TC7数值越大优先级越高绝大多数设备默认使用TC0。系统会为高优先级TC如TC7分配独立的VC缓冲区确保其优先被处理。正确使用TC可避免重要数据如视频流被海量普通数据阻塞。TDTLP 摘要字段存在设置为 1 时该 TLP 包含可选的 1 DW TLP 摘要字段其中包含 ECRC 值。所有接收端必须使用此位检查摘要字段的存在。TD1 但无摘要字段的 TLP 被处理为畸形 TLP。如果设备支持 ECRC 检查且 TD1则必须执行 ECRC 检查。如果设备不支持 ECRC 检查可选则必须忽略摘要。EP中毒数据EP 0数据有效。EP 1数据无效。事务仍会正常完成但接收方应忽略数据。此机制常用于错误处理。Attr属性Bit 5 Relaxed Ordering (宽松排序)当 0 时严格排序如同在单车道上按序行驶所有TLP数据包必须严格按照发出的顺序到达前一个未完成后一个就不能超车。这会拖慢传输速度尤其在大数据量时。当 1 时宽松排序允许“超车”。在高速公路上如果目的地不同不同数据流允许后面的车TLP超过前面的车。这能大幅提高总线利用率和吞吐量是PCIE高速传输的关键。Bit 4 No Snoop (禁止侦听)当 0 时默认需要侦听当CPU要读取数据时会先检查缓存Cache 里是否已有副本即“Snoop侦听”过程。这会产生额外开销但在需要保证数据一致性时是必需的。当 1 时禁止侦听明确告诉系统“别查缓存了直接从内存拿数据”这跳过了缓存检查让数据传输“飞”起来但不保证CPU缓存与内存数据完全同步。Length [9:0]TLP 数据载荷传输大小以 DW 为单位。最大传输大小为 10 位2^10 1024DW4KB。编码0000000001b 1DW … 1111111111b 1023DW0000000000b 1024DW。Last DW和First DW字节使能TLP包传输的最小单位是4字节DW如果一次传输不满足四字节整数倍时就需要用到Last DW和First DW字段用来屏蔽掉4字节中多余的字节以保证传输字节的任意性。例如我要通过一个TLP包传输27字节的数据此时不满足4字节的整数倍可以设置First DW1100b使第一个DW的后两个字节有效设置 Last DW0001b使最后一个DW的第一个字节有效。中间的24字节刚好6个DW。理解数据载荷可选字段。0-1024 DW 载荷可进一步使用字节使能来获得字节地址和字节传输大小分辨率。理解Digest可选可选字段。如果存在始终为 1 DW 大小。用于端到端 CRCECRC和数据中毒。理解3DW Header和4DW Header的区别32位 vs 64位地址寻址注意3DW 头部和 4DW 头部之间的区别在于起始地址字段的位置和大小3DW 头部32 位寻址地址位 31:2 在 Bytes 8-11 中Bytes 12-15 不使用。4DW 头部64 位寻址地址位 31:2 在 Bytes 12-15 中地址位 63:32 在 Bytes 8-11 中。其他头部字段相同。列出TLP的四种事务类型Memory、IO、Configuration、Message地址空间事务类型用途内存Memory读、写向/从系统内存映射中的某个位置传输数据。协议还支持锁定内存读事务。IO读、写向/从系统 IO 映射中的某个位置传输数据。PCI Express IO 地址分配给传统设备。原生 PCI Express 设备不允许使用 IO 寻址。配置Configuration读、写向/从 PCI Express 设备配置空间中的某个位置传输数据。与 PCI 一样配置用于发现设备能力、编程即插即用功能并使用 4KB PCI Express 配置空间检查状态。消息Message基线、厂商特定提供带内消息传递和事件报告不消耗内存或 IO 地址资源。这些事务的处理方式与 posted 写事务相同。

相关新闻

如何利用Cool Request实现3倍API开发效率:IntelliJ IDEA中的智能调试革命

如何利用Cool Request实现3倍API开发效率:IntelliJ IDEA中的智能调试革命

如何利用Cool Request实现3倍API开发效率:IntelliJ IDEA中的智能调试革命 【免费下载链接】cool-request IDEA API、Java Method debug tools 项目地址: https://gitcode.com/gh_mirrors/co/cool-request 在Java后端开发领域,API调试和测试一直是…

2026/8/28 0:07:40 阅读更多 →
轮式人形机器人能用来做什么?

轮式人形机器人能用来做什么?

“稳不稳?贵不贵?多久能回本?坏了好修吗?会不会撞到我工人?”每次见客户,他们都把同样的问题甩在桌上,像五把匕首,刀刀见血。我理解。你被PPT机器人骗了太多次——那些在展馆里走两步…

2026/8/29 3:45:15 阅读更多 →
Keyboard Chatter Blocker:智能解决机械键盘连击问题的终极指南

Keyboard Chatter Blocker:智能解决机械键盘连击问题的终极指南

Keyboard Chatter Blocker:智能解决机械键盘连击问题的终极指南 【免费下载链接】KeyboardChatterBlocker A handy quick tool for blocking mechanical keyboard chatter. 项目地址: https://gitcode.com/gh_mirrors/ke/KeyboardChatterBlocker 你是否曾因机…

2026/8/29 2:27:24 阅读更多 →

最新新闻

中微子基础模型可解释性:稀疏自编码器解析潜空间

中微子基础模型可解释性:稀疏自编码器解析潜空间

中微子物理这几年正在经历一个有趣的转变:过去大家主要靠手写特征和蒙特卡罗模拟来研究事件,现在越来越多的实验组开始尝试用大模型去学习探测器数据的分布。可一旦模型变大,黑盒问题也随之出现——模型给出的嵌入向量很能打,但物…

2026/8/30 15:49:10 阅读更多 →
Java开发者转大模型方向:三天吃透Agent与Skill开发实战

Java开发者转大模型方向:三天吃透Agent与Skill开发实战

一位 Java 开发五年、正在准备跳槽的朋友问我:“大模型岗位是不是必须懂训练、懂数学?我投了 Agent 应用开发,结果面试官根本不聊八股,上来就问我用过 Claude Code 吗,有没有写过 Skill,Agent 输出不稳定怎…

2026/8/30 15:49:10 阅读更多 →
从PPT到可执行技能库:用Git和脚本打造可验证的技术知识体系

从PPT到可执行技能库:用Git和脚本打造可验证的技术知识体系

在日常开发团队里,技术能力沉淀最常见的形态,仍然是一份又一份 PPT 或 Word 文档。新人入职要培训,先看幻灯片;组件升级要分享,再做一套幻灯片;线上故障复盘,还是幻灯片。但真正到了换环境、搭服…

2026/8/30 15:49:10 阅读更多 →
LLM API转售系统的依赖治理:从网关到计费的全链路解析

LLM API转售系统的依赖治理:从网关到计费的全链路解析

很多人以为 LLM API 转售就是“一个转发服务,套几个模型 Key,收个费”,实际上完全不是这么一回事。一个要稳定对外提供服务的 LLM API 转售系统,从上游模型供应商、网关路由、计费计量、配额限制,到下游 SDK、调用框架…

2026/8/30 15:49:10 阅读更多 →
STM32MP255 DDR4布线实战:从等长约束到ODT配置的完整指南

STM32MP255 DDR4布线实战:从等长约束到ODT配置的完整指南

1. 项目概述:STM32MP255 的 DDR4 布线到底难在哪做硬件的老哥应该都有同感:MCU 上跑 DDR 已经不算新鲜事,但真正把 DDR4 布好、布稳、一遍过板不返工,又是另一回事。ST 的 STM32MP255 这颗料刚出来的时候,我就盯着它的…

2026/8/30 15:49:10 阅读更多 →
arm 的 SMCCC

arm 的 SMCCC

SMCCC文档: https://support.arm.com/documentation/den0028/latest https://developer.arm.com/docs/den0028/latest 和上面链接一样 SMC exceptions: https://support.arm.com/documentation/102418/0102/TrustZone-in-the-processor/SMC-exceptions SMC ca…

2026/8/30 15:48:09 阅读更多 →

日新闻

备战数据库管理工程师校招:索引、事务、备份恢复核心考点解析

备战数据库管理工程师校招:索引、事务、备份恢复核心考点解析

每年校招季我都会接触不少准备数据库方向笔试的同学,看到最多的状态就是:简历上写着“熟悉 MySQL”“了解索引优化”,一碰到数据库管理工程师的笔试卷,却在索引、事务、锁、备份恢复这些题目上翻车。网易这套 2018 校园招聘数据库…

2026/8/30 0:00:01 阅读更多 →
数字电路时序基石:深入理解建立时间与保持时间

数字电路时序基石:深入理解建立时间与保持时间

1. 这不是“背公式”的事:时间参数到底在约束什么你翻过数字电路教材,一定见过这两个词:建立时间(Setup Time)和保持时间(Hold Time)。它们常被并列写在触发器(Flip-Flop&#xff09…

2026/8/30 0:00:01 阅读更多 →
蓝桥杯国赛超声波测距机:从单片机原理到嵌入式系统实战

蓝桥杯国赛超声波测距机:从单片机原理到嵌入式系统实战

1. 项目缘起:从赛题到超声波测距机的诞生第八届蓝桥杯单片机设计与开发国赛的题目,我至今记忆犹新。它没有直接给出一个花哨的名字,而是用“超声波测距机”这个朴实无华的功能描述,精准地勾勒出了考核的核心。对于当时备赛的我而言…

2026/8/30 0:00:01 阅读更多 →

周新闻

备战数据库管理工程师校招:索引、事务、备份恢复核心考点解析

备战数据库管理工程师校招:索引、事务、备份恢复核心考点解析

每年校招季我都会接触不少准备数据库方向笔试的同学,看到最多的状态就是:简历上写着“熟悉 MySQL”“了解索引优化”,一碰到数据库管理工程师的笔试卷,却在索引、事务、锁、备份恢复这些题目上翻车。网易这套 2018 校园招聘数据库…

2026/8/30 0:00:01 阅读更多 →
数字电路时序基石:深入理解建立时间与保持时间

数字电路时序基石:深入理解建立时间与保持时间

1. 这不是“背公式”的事:时间参数到底在约束什么你翻过数字电路教材,一定见过这两个词:建立时间(Setup Time)和保持时间(Hold Time)。它们常被并列写在触发器(Flip-Flop&#xff09…

2026/8/30 0:00:01 阅读更多 →
蓝桥杯国赛超声波测距机:从单片机原理到嵌入式系统实战

蓝桥杯国赛超声波测距机:从单片机原理到嵌入式系统实战

1. 项目缘起:从赛题到超声波测距机的诞生第八届蓝桥杯单片机设计与开发国赛的题目,我至今记忆犹新。它没有直接给出一个花哨的名字,而是用“超声波测距机”这个朴实无华的功能描述,精准地勾勒出了考核的核心。对于当时备赛的我而言…

2026/8/30 0:00:01 阅读更多 →

月新闻

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南 【免费下载链接】BaiduNetdiskPlugin-macOS For macOS.百度网盘 破解SVIP、下载速度限制~ 项目地址: https://gitcode.com/gh_mirrors/ba/BaiduNetdiskPlugin-macOS 还在为百度网盘macOS版的龟速下…

2026/8/29 4:34:53 阅读更多 →
终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换 【免费下载链接】ncmdump 项目地址: https://gitcode.com/gh_mirrors/ncmd/ncmdump 还在为网易云音乐下载的NCM格式文件无法在其他播放器播放而烦恼吗?ncmdump解密工具帮你轻松解决这个困…

2026/8/28 17:43:04 阅读更多 →
HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

AgentCard 智能体卡片:为英语学习 App 打造桌面级学习助手适用平台:HarmonyOS 7.0 (API 26 Beta)一、引言 HarmonyOS 7.0(API 26 Beta)新增了 AgentCard 智能体卡片能力,这是继 HMAF(鸿蒙智能体框架&#x…

2026/8/29 2:05:18 阅读更多 →