首页 > 产品 > 模拟与混合信号 > TI 高精度实验室-接口 >

接口

最新课程

热门课程

7.1 TI 高精度实验室 - PCIe:什么是PCIe?

大家好,欢迎观看 TI 高精度实验室视频。 在本系列中, 我们将讨论外设组件 Internet Connect Express, 通常称为 PCIe。 PCIe 是 2003 年推出的 主板扩展总线标准, 用于在 CPU 及其 外围组件之间实现 高速串行通信。 如今,它已成为 主板扩展总线的 主要标准,并成为 许多其他板载 应用的常用 通信方法。 让我们来探索一下这个 高速接口的发展历史 以及它的工作原理。 PCIe 的前身是 PCI。 在 90 年代, PCI 总线与其他一些 扩展总线技术一起 出现在许多主板上。 主板扩展总线标准 设计用于 CPU 和插入主板 扩展插槽的 设备之间的通信。 最初,所有 扩展总线标准 都使用并行总线,这 意味着数据通过多个通道 发送和接收。 最初,所有 扩展总线标准 都使用并行 总线,这意味着 数据通过多个 通道发送和接收。 在 2003 年 推出时, PCIe 串行 总线标准旨在 取代这些 较旧的并行总线, 以实现更高的数据速率 并简化系统设计。 2003 年,PCI Sig 组织定义了 PCIe 标准。 此后,PCIe 标准随着时间的 推移不断改进, 以适应现代计算机的 最新带宽需求。 今年,即 2021年, 将引入 PCIe 6.0 规范,支持每秒 64 千兆的传输, 或每个链路每秒 64 千兆位的速率。 PCIe 标准的 一个独特功能是 能够将通道数 从 1 个增加到 最多 32 个,以 提高其吞吐量, 这一功能受其并行 总线前身的启发。 16 通道宽的 PCIe 6.0 链路的 数据速率为 每秒 128GB, 按照当今的标准, 这是非常快的。 PCIe 通信 是分层的, 这意味着所有 数据都通过一个 单一的源进行传输, 即,根复合体。 信息从多个 PCIe 端点传递到 根复合体。 让我们详细了解一下 PCIe 如何通过此处 突出显示的典型链路 进行初始化和通信。 我们这里有一个图表, 其中包含 PCIe 链路中 常见的设备。 根复合体是系统 CPU 和内存以及 PCIe 结构其余 部分之间的接口。 根复合体要么 直接集成到 CPU 中, 要么作为一个离散 组件位于 CPU 外部。 中继器是一种 信号调节装置。 有关信号调节器的 更多信息, 请参阅“什么是 信号调节器?”视频。 中继器可分为两类: 重定时器和转接驱动器。 两者都是 常用的 PCIe 组件, 用于保持高速 链路的信号质量。 在我们的示例中,我们将使用 与 PCIe 4.0 兼容的重定时器。 端点是 PCIe 终端 组件的通用术语。 这可能代表 许多不同类型的 PCIe 设备。 在我们的示例中,假设 端点是一个图形处理 单元或 GPU。 在了解 PCIe 链路 是如何建立的, 以及数据是如何通过 PCIe 协议传输的之前, 让我们先来了解一些 常见 PCIe 控制信号的 功能。 PERST 被 称为基础复位。 应将其保持在低位, 直到系统中的所有电源轨 稳定。 该信号从低 到高的转换 通常表示链路 初始化的开始。 WAKE 和 CLKREQ 信号都用于在本 视频范围 之外的低功率 状态之间转换。 有关更多信息, 请参阅即将发布的 培训链接和 状态机视频链接。 REFCLK 是 PCIe 设备开始数据传输的 先决条件。 PCIe 设备使用该 100MHz 参考时钟 信号在链路内 生成高速 PCIe 数据。 PCIe 链路中的 所有设备通电并 提供参考时钟后, PCIe 设备 将在每个通道上 具有接收器检测 电路,该电路将允许 其确定是否有要配对的 链路伙伴。 假设 PCIe Rx 检测 电路看到另一个设备, 则每个通道将开始 以每秒 2.5 千兆位的 速度传输串行数据。 这是原始 PCIe 1.0 规范中 指定的最低 和最基本的 PCIe 数据速率。 PCIe 1.0,也 称为 PCIe 第 1 代, 与任何 PCIe 设备兼容。 因此,每个 PCIe 链路都 将从相同的链路初始化 过程开始。 在此示例中,根 复合体、重定时器 和端点都将以 PCIe 第 1 代的 速度开始传输称为 训练序列的有序数据集, 以建立位和符号锁定。 PCIe 链路初始化 阶段称为轮询阶段。 之后,每个器件 将能够解释 接收到的数据 并做出相应的响应。 这允许 PCIe 连接开始链路 训练过程 并进入配置 阶段。 在配置阶段,将 发生通道到 通道[听不清]过程, 在该过程中,由于 通道长度变化而 导致的数据中的任何 未对准都得到补偿。 PCIe 链路宽度 也在此阶段确定。 在此过程结束时, 每个通道 将与特定的 链路编号以及 该链路内的 通道编号相关联。 如果存在多条 链路,则 PCIe 连接 称为分叉。 然而,在我们的示例中, 我们有一个非分叉 连接,所有通道都 将分配给链路编号 0。 请记住,由于 PCIe 重定时器, 链路分为两部分。 重定时器两侧的链路 分别进行链路初始化。 确定链路和通道号后, PCIe 链路可以 进入多种状态。 例如,它将进入 所谓的 L0 状态,这是 发送和接收 数据和数据包的 正常操作状态。 到达 L0 后, 根复合体和端点 就可以成功地 彼此之间相互通信。 或者,PCIe 链路也可以 转换为许多 低功耗状态, 或者转换为另一种 链路训练状态,称为恢复。 但是,这些状态 超出了本视频的范围。 请继续收看 下一个视频, 将更详细地 介绍链路训练和 状态机。 如果 PCIe 链路 中的所有设备 都支持 PCIe 第 2 代 或更高的数据速率, 则链路速度也 可以提高到支持的 最高数据速率。 如果新数据速率为 PCIe 第 3 代或更高, PCIe 链路将需要 经历一个称为链路 均衡的额外 链路优化过程。 在链路均衡 或 Link Eq 中, 目标是以产生 稳定 PCIe 链路的方式修改 每个部分的传输 数据波形的特性。 PCIe 规范 定义了通过 提供预设发送器 配置来修改 信号的方式。 这些配置被 恰当地称为预设。 对于 PCIe 第 3 代和 第 4 代,可以使用 编号为 0 到 10 的 11 个预设, 每个预设都有其 独特的信号特征。 每个端口的预设值 通过链路均衡协商, 直到选择理想的预设。 下游端口通过 向上游设备发送 每个通道所需的 发送器预设值来 开始该链路均衡过程。 这被称为第 0 阶段链路均衡。 在接收到下游 端口的请求后不久, 上游端口增加到 第 3 代链路数据速率, 并开始使用 所需预设将 训练序列发送 回下游端口。 链路速度增加 到第 3 代速度后, 链路均衡过程 通过来回发送 预设值来协商每个 端口的预设配置, 从而继续 优化链路。 链路均衡过程 第 1 阶段的目标 是允许链路 进行充分优化, 以便能够交换训练序列 并完成剩余的链路 均衡阶段以进行微调。 在这个阶段, 相同的训练序列 将被重复发送, 以确保接收到 正确的预设,尽管 链路质量可能很差。 质量。 在第 1 阶段 实现到 -4 的 误码率小于 10 的链路后, 链路准备好 进行微调。 协商继续进行 到第 2 阶段, 进一步优化上游 端口的预设值, 而第 3 阶段 对下游端口 执行相同的协商。 完成链路均衡 过程的第 3 阶段后, 链路均衡完成, 第 3 代 PCIe 链路的 误比特率 应小于 10 达到 -12。 在某些主板 设计中,尤其是 那些具有长通道 链路的主板,这种信号 质量水平是不可能的。 可能需要 额外的信号调节。 幸运的是,我们在 链路中有一个重定时器, 在适应大多数 通道长度时应该 没有问题。 该链路现在进入 第 3 代 L0 阶段, 并能以第 3 代 速度可靠通信。 如果您对 PCIe 或 PCI 有任何疑问, 请访问我们的工程师 支持论坛 e2e.ti.com, 并在界面部分 找到我们的联系信息。 如果您想了解更多 有关信号调节的信息, 请查看我们的 其他演示文稿 和 TIPL 系列。

大家好,欢迎观看 TI 高精度实验室视频。

在本系列中, 我们将讨论外设组件

Internet Connect Express, 通常称为 PCIe。

PCIe 是 2003 年推出的 主板扩展总线标准,

用于在 CPU 及其 外围组件之间实现

高速串行通信。

如今,它已成为 主板扩展总线的

主要标准,并成为 许多其他板载

应用的常用 通信方法。

让我们来探索一下这个 高速接口的发展历史

以及它的工作原理。

PCIe 的前身是 PCI。

在 90 年代, PCI 总线与其他一些

扩展总线技术一起 出现在许多主板上。

主板扩展总线标准

设计用于 CPU 和插入主板

扩展插槽的 设备之间的通信。

最初,所有 扩展总线标准

都使用并行总线,这 意味着数据通过多个通道

发送和接收。

最初,所有 扩展总线标准

都使用并行 总线,这意味着

数据通过多个 通道发送和接收。

在 2003 年 推出时,

PCIe 串行 总线标准旨在

取代这些 较旧的并行总线,

以实现更高的数据速率 并简化系统设计。

2003 年,PCI Sig 组织定义了

PCIe 标准。

此后,PCIe 标准随着时间的

推移不断改进, 以适应现代计算机的

最新带宽需求。

今年,即 2021年, 将引入 PCIe 6.0

规范,支持每秒 64 千兆的传输,

或每个链路每秒 64 千兆位的速率。

PCIe 标准的 一个独特功能是

能够将通道数 从 1 个增加到

最多 32 个,以 提高其吞吐量,

这一功能受其并行 总线前身的启发。

16 通道宽的 PCIe 6.0 链路的

数据速率为 每秒 128GB,

按照当今的标准, 这是非常快的。

PCIe 通信 是分层的,

这意味着所有 数据都通过一个

单一的源进行传输, 即,根复合体。

信息从多个 PCIe 端点传递到

根复合体。

让我们详细了解一下 PCIe 如何通过此处

突出显示的典型链路 进行初始化和通信。

我们这里有一个图表, 其中包含 PCIe 链路中

常见的设备。

根复合体是系统 CPU 和内存以及

PCIe 结构其余 部分之间的接口。

根复合体要么 直接集成到 CPU 中,

要么作为一个离散 组件位于 CPU 外部。

中继器是一种 信号调节装置。

有关信号调节器的 更多信息,

请参阅“什么是 信号调节器?”视频。

中继器可分为两类:

重定时器和转接驱动器。

两者都是 常用的 PCIe 组件,

用于保持高速 链路的信号质量。

在我们的示例中,我们将使用 与 PCIe 4.0 兼容的重定时器。

端点是 PCIe 终端 组件的通用术语。

这可能代表 许多不同类型的

PCIe 设备。

在我们的示例中,假设 端点是一个图形处理

单元或 GPU。

在了解 PCIe 链路 是如何建立的,

以及数据是如何通过 PCIe 协议传输的之前,

让我们先来了解一些 常见 PCIe 控制信号的

功能。

PERST 被 称为基础复位。

应将其保持在低位, 直到系统中的所有电源轨

稳定。

该信号从低 到高的转换

通常表示链路 初始化的开始。

WAKE 和 CLKREQ 信号都用于在本

视频范围 之外的低功率

状态之间转换。

有关更多信息, 请参阅即将发布的

培训链接和 状态机视频链接。

REFCLK 是 PCIe 设备开始数据传输的

先决条件。

PCIe 设备使用该 100MHz 参考时钟

信号在链路内 生成高速 PCIe

数据。

PCIe 链路中的 所有设备通电并

提供参考时钟后, PCIe 设备

将在每个通道上 具有接收器检测

电路,该电路将允许 其确定是否有要配对的

链路伙伴。

假设 PCIe Rx 检测 电路看到另一个设备,

则每个通道将开始 以每秒 2.5 千兆位的

速度传输串行数据。

这是原始 PCIe 1.0 规范中

指定的最低 和最基本的 PCIe

数据速率。

PCIe 1.0,也 称为 PCIe 第 1 代,

与任何 PCIe 设备兼容。

因此,每个 PCIe 链路都 将从相同的链路初始化

过程开始。

在此示例中,根 复合体、重定时器

和端点都将以 PCIe 第 1 代的

速度开始传输称为 训练序列的有序数据集,

以建立位和符号锁定。

PCIe 链路初始化

阶段称为轮询阶段。

之后,每个器件

将能够解释 接收到的数据

并做出相应的响应。

这允许 PCIe 连接开始链路

训练过程 并进入配置

阶段。

在配置阶段,将

发生通道到 通道[听不清]过程,

在该过程中,由于 通道长度变化而

导致的数据中的任何 未对准都得到补偿。

PCIe 链路宽度 也在此阶段确定。

在此过程结束时, 每个通道

将与特定的 链路编号以及

该链路内的 通道编号相关联。

如果存在多条 链路,则 PCIe 连接

称为分叉。

然而,在我们的示例中, 我们有一个非分叉

连接,所有通道都 将分配给链路编号 0。

请记住,由于 PCIe 重定时器,

链路分为两部分。

重定时器两侧的链路

分别进行链路初始化。

确定链路和通道号后,

PCIe 链路可以 进入多种状态。

例如,它将进入

所谓的 L0 状态,这是

发送和接收 数据和数据包的

正常操作状态。

到达 L0 后, 根复合体和端点

就可以成功地 彼此之间相互通信。

或者,PCIe 链路也可以

转换为许多 低功耗状态,

或者转换为另一种 链路训练状态,称为恢复。

但是,这些状态 超出了本视频的范围。

请继续收看 下一个视频,

将更详细地 介绍链路训练和

状态机。

如果 PCIe 链路 中的所有设备

都支持 PCIe 第 2 代 或更高的数据速率,

则链路速度也 可以提高到支持的

最高数据速率。

如果新数据速率为 PCIe 第 3 代或更高,

PCIe 链路将需要 经历一个称为链路

均衡的额外 链路优化过程。

在链路均衡 或 Link Eq 中,

目标是以产生 稳定 PCIe

链路的方式修改 每个部分的传输

数据波形的特性。

PCIe 规范 定义了通过

提供预设发送器 配置来修改

信号的方式。

这些配置被 恰当地称为预设。

对于 PCIe 第 3 代和 第 4 代,可以使用

编号为 0 到 10 的 11 个预设,

每个预设都有其 独特的信号特征。

每个端口的预设值 通过链路均衡协商,

直到选择理想的预设。

下游端口通过 向上游设备发送

每个通道所需的 发送器预设值来

开始该链路均衡过程。

这被称为第 0 阶段链路均衡。

在接收到下游 端口的请求后不久,

上游端口增加到 第 3 代链路数据速率,

并开始使用 所需预设将

训练序列发送 回下游端口。

链路速度增加 到第 3 代速度后,

链路均衡过程 通过来回发送

预设值来协商每个 端口的预设配置,

从而继续 优化链路。

链路均衡过程 第 1 阶段的目标

是允许链路 进行充分优化,

以便能够交换训练序列

并完成剩余的链路 均衡阶段以进行微调。

在这个阶段, 相同的训练序列

将被重复发送, 以确保接收到

正确的预设,尽管 链路质量可能很差。

质量。

在第 1 阶段 实现到 -4 的

误码率小于 10 的链路后,

链路准备好 进行微调。

协商继续进行 到第 2 阶段,

进一步优化上游 端口的预设值,

而第 3 阶段 对下游端口

执行相同的协商。

完成链路均衡 过程的第 3 阶段后,

链路均衡完成, 第 3 代 PCIe 链路的

误比特率 应小于 10

达到 -12。

在某些主板 设计中,尤其是

那些具有长通道 链路的主板,这种信号

质量水平是不可能的。

可能需要 额外的信号调节。

幸运的是,我们在 链路中有一个重定时器,

在适应大多数 通道长度时应该

没有问题。

该链路现在进入 第 3 代 L0 阶段,

并能以第 3 代 速度可靠通信。

如果您对 PCIe 或 PCI 有任何疑问,

请访问我们的工程师 支持论坛 e2e.ti.com,

并在界面部分 找到我们的联系信息。

如果您想了解更多 有关信号调节的信息,

请查看我们的 其他演示文稿

和 TIPL 系列。

视频报错
手机看
扫码用手机观看
收藏本课程

视频简介

7.1 TI 高精度实验室 - PCIe:什么是PCIe?

所属课程:TI 高精度实验室-接口 发布时间:2022.01.21 视频集数:33 本节视频时长:00:10:02

该视频概述了 PCIe 链路初始化过程。

在本视频中,我们将讨论 PCIe 标准的发展及其常见应用。另外视频将简要介绍如何在链路初始化期间建立 PCIe 链路,包括链路训练中涉及的步骤,以及在您的下一个 PCIe 设计中应如何考虑信号调理。

TI培训小程序