ZHCAE42
June 2024
AM6442
1
摘要
商标
1
缩写
2
引言
2.1
外设组件快速互连
2.1.1
PCIe 通信的元件
2.1.1.1
根复合体
2.1.1.2
中继器
2.1.1.3
端点
2.1.2
信号
2.1.2.1
PERST
2.1.2.2
WAKE 和 CLKREQ
2.1.2.3
REFCLK
2.1.3
PCIe 常见用途
2.1.4
PCIe 聚合吞吐量
2.2
AM64x 和 AM243x 上的 PCIe 特性
3
x86 作为 RC,AM64x 作为 EP
3.1
硬件环境
3.2
软件环境
3.2.1
构建应用程序
3.2.2
用法
4
测试设置
4.1
适用于 LINUX 和 WIN 的通用设置
4.2
Linux 驱动程序(VFIO)
4.2.1
先决条件
4.2.2
构建
4.2.3
部署
4.3
测试应用程序使用情况
4.4
LINUX PC 的设置步骤
4.4.1
UART 控制台输出
4.5
MSI 示例
4.6
Windows PC 的设置步骤
4.6.1
先决条件
4.6.2
构建
4.6.3
部署
5
PCIe 测试规范
5.1
标识和配置功能
5.1.1
测试用例
5.2
基准时钟功能
5.3
入站 ATU 和 BAR 功能
5.4
出站 ATU 功能
5.5
MSI 功能
5.6
下行中断功能
5.7
器件电源管理状态功能
5.8
功能级复位机制
5.9
传统中断机制
5.10
MSI-X 功能
5.11
热复位机制
6
Windows 示例驱动程序验证
7
参考资料
3.1
硬件环境
以下硬件用于执行指定的功能测试:
具有可用 PCIe 插槽的 x86 系统
PCIe 插槽不需要连接到 PCIe 交换机,而是需要直接连接到 x86 CPU 或 PCH。
为了进行开发和测试,使用了以下系统:
x86 需要安装支持 VFIO、VFIO-PCI 和 IOMMU 的最新 Linux 版本。
TMDS243EVM
或
TMDS64EVM
:日后称为一个 EVM
PCIE_FLEX_NOCLK:
Adex
Electronics PCIe 柔性扩展器电缆 PE-FLEX1-G2.MMCX-12-TI1
PCIE_FLEX_CLK:经修改的 Adex Electronics PCIe 柔性扩展器电缆 PE-FLEX1-G2.MMCX-12-TI1,具有连接的基准时钟 REFCLK+/-
SPEC_ANA:频谱分析仪
需要修改 AM24x EVM 以支持 PCIe 通用基准时钟:- 移除电阻 R661、R662、R667 和 R668 - 组装电阻 R665、R666、R679 和 R680(全部为 0 欧姆)