news 2026/10/1 15:41:08

学习:OHC

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
学习:OHC

一、为什么 PCIe 6.0 要引入 OHC

Non-Flit Mode 里:

  • TLP Header 长度靠Fmt/Type决定
  • PASID、TPH、IDE、E2E Prefix 等要么塞进 Prefix,要么占死 Header 位

Flit Mode(PCIe 6.0+):

  • 所有 TLP 都有Header Base(1 / 3 / 4 / 5 / 6 / 7 DW)
  • 可选扩展头叫OHC = Orthogonal Header Content
  • 作用:把“不是所有 TLP 都需要”的字段从 Base Header 里拆出来,按需拼接

关键词:Base Header 固定结构 + OHC 插件式扩展


二、Header Base 里和 OHC 最相关的字段

Flit Mode Header Base 第 1 DW 通常包含:

字段

位宽

作用

Type[7:0]

8 bit

完全解码的 TLP 类型

TC[2:0]

3 bit

Traffic Class

OHC[4:0]​

5 bit

指示后面挂了哪些 OHC

TS[2:0]

3 bit

Trailer Size

Attr

—

属性

Length

—

payload 长度(DW)

OHC[4:0] 编码(重点)

bit0 : OHC-A present bit1 : OHC-B present bit2 : OHC-C present bit3:4 : OHC-E selection

OHC[4:0]

含义

00000

No OHC

xxx1

OHC-A

xx1x

OHC-B

x1xx

OHC-C

000xx / 001xx

No OHC-E

01xxx

OHC-E1(1 DW)

10xxx

OHC-E2(2 DW)

11xxx

OHC-E4(4 DW)

排列顺序固定:

Header Base → OHC-A → OHC-B → OHC-C → OHC-E → Data → Trailer

一个 TLP 最多 7 个 OHC DW(A/B/C 各 1DW,E 最多 4DW)。


三、四类 OHC 到底装什么

1. OHC-A:Request/Completion 的“传统扩展字段”

不是一种格式,而是 A1–A5 子类(由 Type 决定用哪个):

子类

用在哪

主要内容

A1

Memory R/W、ATS、PASID Msg

First/Last DW Byte Enable、PASID、PV、PMR、ER

A2

I/O Request

I/O 地址/属性(类似传统 3DW IO header 扩展)

A3

Config Request

Config 地址/扩展字段

A4

ID-Routed Message

Destination Segment、PASID

A5

Completion

Completion Status、Lower Address[1:0]、Completer/Destination Segment

📌 功能模型里:OHC-A 不是“开关”,而是“当前 TLP 类型决定的必需块”


2. OHC-B:TPH / Segment Hints

  • TPH(TLP Processing Hints):PH、ST
  • Requester/Destination/Completer Segment
  • 主要用于地址路由请求、跨 Segment 路由

如果没开 TPH:

  • PH/ST 可全 0
  • 但 Segment 非零时仍可能必须挂 OHC-B

3. OHC-C:IDE / Security

  • IDE Stream ID
  • IDE 使能标志
  • Secure TLP 所需元数据

规则:

  • IDE TLP必须有 OHC-C
  • 某些非 IDE TLP 也需要 OHC-C 来带 Requester Segment

4. OHC-E:原来的 End-to-End Prefix

Non-Flit Mode 里是 E-E Prefix;

Flit Mode 里变成 OHC-E:

类型

大小

内容

E1

1 DW

简单 E2E prefix(如 Precision Time Measurement 等)

E2

2 DW

更复杂 prefix

E4

4 DW

大 prefix / 厂商扩展 / 未来特性



四、FLIT 打包时的 OHC 处理(如果你做 packetizer)

256B FLIT:

236B TLP region 6B DLP 8B CRC 6B ECC

TLP region 里:

  • 多个 TLP
  • TLP 之间可用 NOP
  • 每个 VC 最多 4 个 non-NOP TLP
  • OHC 只是 TLP 内部字段,不影响 FLIT 层调度

⚠️ 常见坑:

OHC 不影响路由,但影响:

  • Header credit
  • Completion 解析
  • IDE / PASID / TPH 功能行为
  • 合规性检查

十二、一句话总结

OHC 就是 PCIe 6.0 Flit Mode 的“可选 TLP 扩展头插件”:

  • A = 请求/完成扩展
  • B = TPH / Segment
  • C = IDE / 安全
  • E = 老 E2E Prefix

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/10/1 15:38:25

Spring MVC六大参数绑定注解详解:从原理到工程避坑实践

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/10/1 15:36:57

端侧大模型与超自动化融合:Agent与RPA协同架构实战

1. 端侧大模型与超自动化融合的底层逻辑1.1 为什么要把大模型塞进端侧设备过去两年我接触过不少RPA项目,从最早的影刀RPA教程里那种纯规则驱动的流程自动化,到后来加入OCR和NLP的传统AI组件,再到如今大模型Agent开始接管决策环节,…

作者头像 李华
网站建设 2026/10/1 15:36:52

智慧场馆解决方案实践:无人自助场馆业务模块解析

智慧场馆解决方案实践:无人自助场馆业务模块解析随着全民健身的普及,24小时无人自助健身场馆快速落地。无人场馆不再依赖现场工作人员值守,依靠线上预约、硬件联动、自动核销、远程运维实现全流程自助运营。很多项目在落地时,仅简…

作者头像 李华
网站建设 2026/10/1 15:36:49

2026澳洲至中国跨境快递运费与实操指南

跑中澳进口线这些年,见过太多客户因为选错快递产品,要么多花了上百元运费,要么货物卡在清关环节十几天动不了。澳洲寄回中国的快递看着品类多,其实核心就是按申报类型和货量分级,不少人对首续重规则、尺寸判定、附加费…

作者头像 李华
网站建设 2026/10/1 15:36:24

2026无锡公司注册代办机构实用选择攻略,新手老板避坑清单

无锡公司注册市场观察与创业痛点最近不少在无锡准备开公司的创业者反映,材料交上去反复被驳回,跑来跑去一两个月还没拿到执照。表面看流程就那几步,实际操作中卡壳的地方比想象中多。公司注册不是填几张表那么简单。从核名开始,到…

作者头像 李华