CXL 2.0 Device配置空间寄存器组成

2023-10-27

目录

1 配置空间

1.1 PCI Power Management Capability Structure

1.2 PCI Express Capability Structure

2 扩展配置空间

2.1 Virtual Channel Extended Capability

2.2 PCIe DVSEC for CXL Device

2.3 GPF DVSEC for CXL Devices

2.4 PCIe DVSEC for Flex Bus Port

2.5 Register Locator DVSEC


由于CXL协议基于PCIe协议,因此CXL配置空间大小、布局与PCIe相同。

CXL 2.0 Device配置空间一共4KB,由配置空间(0x000~0x0FF)和扩展配置空间(0x100~0xFFF)组成,如下所示。

  • 配置空间,通常由Header和若干个Capability组成;
  • 扩展配置空间,通常由若干个扩展Capability组成。

1 配置空间

CXL 2.0 Device属于EndPoint,因此Header类型为Type0,Header长度固定为64B。

在Offset:0x00~0x3F,表示Type0 Header,如下所示:

在Offset:0x40~0xFF,表示Device具备的Capabilities。这里仅列出对于所有Device来说,必须具备的Capability,如下所示:

  • PCI Power Management Capability Structure
  • PCI Express Capability Structure

1.1 PCI Power Management Capability Structure

PCI Power Management Capability寄存器对于PCI总线来说是可选的,但是对于PCIe总线来说则是强制的。此Capability占用8B,如下所示:

1.2 PCI Express Capability Structure

PCI Express Capability Structure占用60B,如下所示:

 但是以上这些寄存器, 仅有红框标注的寄存器才是每个设备必须具备的,它们主要包括:Device Capabilities、Device Status、Device Control等。

对于Devices with Links,还需要具备Link系列寄存器,这些寄存器,对于每个Device来说并不是必须的,属于可选。

2 扩展配置空间

 扩展配置空间中的Extended Capability总是从偏移量0x100开始,并且每个Extended Capability带有一个 PCI Express Extended Capability header。如果没有任何Extended Capability,则其Next Capability为0。

PCI Express Extended Capability header,占用4B,如下所示:

 在Offset:0x100~0xFFF,表示Device具备的Extended Capabilities。这里仅列出对于所有Device来说,必须具备的Extended Capabilities,如下所示:

  • Virtual Channel Extended Capability

好了,以上介绍的只是PCIe协议中,在这4KB空间中定义的Capability与Extended Capability。而CXL协议还定义了一些Extended Capability,它们是基于PCIe的Designated Vendor-Specific Extended Capability (DVSEC Capability)来实现的。

DVSEC Capability的基本结构,如下所示:

 DVSEC Capability定义了必须以PCI Express Extended Capability Header、Designated Vendor-Specific Header 1、Designated Vendor-Specific Header 2开始,之后的才是厂商专用寄存器。

CXL 2.0协议中,定义的DVSEC Capabilities,如下所示:

 CXL 2.0 Device必须实现的DVSEC Capability有:

  • PCIe DVSEC for CXL Device
  • GPF DVSEC for CXL Devices
  • PCIe DVSEC for Flex Bus Port
  • Register Locator DVSEC

2.1 Virtual Channel Extended Capability

Virtual Channel Extended Capability,如下所示:

 

但是以上这些寄存器, 仅有红框标注的寄存器才是每个设备必须具备的。

2.2 PCIe DVSEC for CXL Device

PCIe DVSEC for CXL Device,如下所示:

2.3 GPF DVSEC for CXL Devices

GPF DVSEC for CXL Devices,如下所示:

2.4 PCIe DVSEC for Flex Bus Port

PCIe DVSEC for Flex Bus Port,如下所示:

2.5 Register Locator DVSEC

 Register Locator DVSEC,如下所示:

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

CXL 2.0 Device配置空间寄存器组成 的相关文章

随机推荐

  • 使用Vue手动封装树形控件组件

    提示 如果当下认为一件事很难做 那么不用犹豫直接做就OK 巨大的提升往往出现在反复的挣扎过后 跳出舒适圈 不断挑战自我 毕竟还年轻 因为已经完成了 索性就用上帝视角一次性把需要注意的东西都列出来 不怎么会循序渐进 原谅俺 1 需求整理 如上
  • 什么是过拟合和欠拟合

    今天突然被以前同学人问到什么是机器学习中的 过拟合 过拟合就是训练的时候效果很好损失函数值可以降得很低 但是到测试数据集的时候表现就不那么好了 就是过分依赖于现有训练数据集的特征造成的 可以加大数据集来进行训练 比如在图像领域可以通过拉伸旋
  • Fabric核心模块

    Fabric由五个核心模块组成的程序组 1 peer 主节点模块 负责存储区块链数据 运行维护链码 2 orderer 交易打包 排序模块 3 cryptogen 组织和证书生成模块 4 configtxgen 区块和交易生成模块 生成创始
  • Linux Clock

    http www wowotech net pm subsystem clk overview html Linux common clock framework 1 概述 http www wowotech net pm subsyste
  • 500 Request processing failed; nested exception is java.lang.NullPointerException

    类型 异常报告 消息 Request processing failed nested exception is java lang NullPointerException 描述 服务器遇到一个意外的情况 阻止它完成请求 报错原因 这种报
  • TensorFlow2 Fashion-MNIST图像分类(二)

    1 图像分类数据的标准化 本篇内容是 TensorFlow2 Fashion MNIST图像分类 一 的第二部分 请先阅读第一部分中的内容 上一部分内容最后提到 模型训练结果出现不拟合现象 主要原因就在于特征数据没有进行标准化处理 因此本部
  • Unity3d Animation动画详解。。。

    动画脚本 Animation Scripting Unity s 动画系统允许你创建一个漂亮的动画蒙皮角色 动画系统支持动画融合 混合 添加动画 步调周期时间同步 动画层 控制动画回放的所有方面 时间 速度 混合权重 每个顶点有1 2 4个
  • 机器学习之下游任务

    下游任务是该领域称为那些利用预训练模型或组件的监督学习任务
  • EtherCat--主站开源的C语言库SOEM-环境搭建

    一 SOEM主站环境搭建 一 安装VS 二 下载SOEM 1 3 1 源代码 链接地址 http openethercatsociety github io 三 安装WinPcap 4 1 3 exe 链接地址 https www winp
  • 3DsMAX一渲染就卡解决方法

    目前比较常见的3DMAX卡死原因有三个 一是win10输入法不兼容 二是内存和CPU运行过载 三是场景模型问题 1 兼容问题 win10的微软拼音不兼容 常见但很难让人相信的问题 C4D渲染卡死也可以这样解决 解决方法 打开 windows
  • 二维坐标系的转换

    二维坐标系的变换分为旋转变换和平移变换 一 旋转变换 假设已知基坐标系XOY中的一点P x y 坐标原点为O 绕点O旋转 可以求得点P在新坐标系X OY 中坐标值 x y 如下图所示 求解x 和y 的关键是坚持用已知的边做斜边来求解 结合上
  • 华为OD机试 - 求字符串中所有整数的最小和(Java)

    题目描述 输入字符串s 输出s中包含所有整数的最小和 说明 字符串s 只包含 a z A Z 合法的整数包括 1 正整数 一个或者多个0 9组成 如 0 2 3 002 102 2 负整数 负号 开头 数字部分由一个或者多个0 9组成 如
  • power相关:(一)低功耗设计目的与功耗的类型

    一 低功耗设计的目的 1 便携性设备等需求 电子产品在我们生活中扮演了极其重要的作用 便携性的电子设备便是其中一种 便携性设备需要电池供电 需要消耗电池的能量 在同等电能提供下 低功耗设计的产品就能够工作更长的时间 时间的就是生命 因此低功
  • 【MySQL】使用Visio绘制数据库关系模型图

    使用Visio绘制数据库关系模型图 1 新建项目 文件 新建 软件和数据库 数据库模型图 点击后 出现如下界面 2 绘制 左侧 实体关系 中将 实体 形状拖放到绘制界面 如下图 3 编辑实体名称 如下图 4 编辑列 点击 列 如下图 完成实
  • 【因果推断与机器学习】Causal_inference: Chapter 4

    Chapter4 Estimation 一旦我们找到了识别因果量的策略 我们就需要选择如何使用统计方法估计这些因果量 我们使用受实际计算应用程序启发的示例来描述最常用的方法 首先 我们介绍因果估计的基础知识 如何从已确定的估计值到估计器 我
  • Oracle入门使用

    表空间的创建 普通用户授权 sys登录 grant create tablespace to 用户名 grant drop tablespace to 用户名 给user01 一个临时用户的角色 grant connect to user0
  • make -j时不知道cpu核数设置多大合适

    make j nproc nproc 就是你可以设置的当前机器的最大值了
  • Python使用Psycopg2访问PostgreSQL

    本文将关注 安装Psycopg2并使用其API访问PostgreSQL数据库 然后带您完成数据插入 数据检索 数据更新和数据删除 接下来 它将介绍事务管理 连接池和错误处理技术 以使用PostgreSQL开发健壮的python程序 使用pi
  • Vue性能优化

    Vue 项目性能优化 现在Vue3 0都快发布了为什么还要优化2 0的项目 因为市场上公司90 的项目全是Vue2 0的项目 迁移的话成本太高 所以只能进行性能的优化调整 废话就不多赘述了 直接开始吧 一 活用异步组件 Vue cli打包的
  • CXL 2.0 Device配置空间寄存器组成

    目录 1 配置空间 1 1 PCI Power Management Capability Structure 1 2 PCI Express Capability Structure 2 扩展配置空间 2 1 Virtual Channe