CPM PCIE做RC时怎么完成对复位信号的操控
本文作者:AMD。工程师。Meng Fancheng。
PCIe 复位简介。
PCI Express 是一种即插即用协议,主机在发动时将枚举 PCIe 设备。此进程包含主机从读取恳求中取得每个设备的地址巨细,然后为设备分配基地址。因而,PCIe。 接口。必须在主机查询时准备就绪,不然将不会分配基地址。PCI Express 标准规则,PE。RS。T# 必须在体系。电源。正常后 100 毫秒内免除,而且 PCI Express。 端口。必须在 PERST# 免除后不超越 20 毫秒内准备好进行 Link tr。ai。ning。这一般称为 100 毫秒发动时刻要求。
对 CIPS 进行装备。
首要进入 CIPS 的 CPM 界面,挑选所需求的 PCIe 装备,如图 1 所示,本规划的选用的是 gen4x4(Link speed 和 Lane Width 用户可依据自己的需求进行装备),Mode 必需求挑选。 DMA。形式。
图 1。
然后点击 CPM5 PCIe Controller 0,在 B。asic。界面,如图2所示,将 Func。ti。on mode 挑选为 AXI bridge。 Device/ Port Type 挑选为 Root Port of PCE Express Root Complex,其他界面能够使用默许装备。
图 2。
接下来需求对 PS PMC 进行装备,其他的装备页面不进行过多描绘,具体能够参阅 CPM RP 的 Example design,本篇文章主要对 IO 界面的装备进行描绘。由于在 PCIe 做 RP 时,需求操控与其衔接的 EP,关于不同的体系架构难以规划出一个遍及可行的计划,故 RP 的驱动在现在的版别并未对复位进行操作,PS PR 的驱动可在下面链接中获取:
https://xilinx-wiki.atlassian.net/wiki/sp。ac。es/A/pages/85983409/Xilinx+PCIe+Root+and+EndPoint。
本篇文章经过举例来说明,用户怎么依据自己的。硬件。电路规划。来完结对 EP 端复位的操控,如下图 3 所示,MIO38 为。 PCB。板上金手指 Perst 所连的。 Pi。n 脚,此刻在 PS PCM 页面中不要将此管脚装备成 PCIe reset 管脚,而是需求将此管脚依照下图 4 装备为 GPIO 管脚。GPIO 管脚的装备如图 4 所示,Direction 装备为 Out,并设置为 PULL DOWN。
图 3。
图 4。
除了 CIPS 的装备需求留意之外,LPD_AXI_NOC_0 和 PMC_NOC_AXI_0两个接口需求连通到 NOC_CPM_PCIE_0,假如 LPD_AXI_NOC_0 和 PMC_NOC_AXI_0 这两个接口没有连通到 NOC_CPM_PCIE_0,那么此刻。 CPU。对 PCIE 的链路状况无感知,其会在 Petalinux 中打印 PCIe link down,即便用户依据本篇文章对复位进行了装备,在 PCIe debugger 中看到 L。TSS。M 已进入 L0,而且 PCIe 的 Link up。 信号。已拉高,由于 CPU 与 PCIE 之间的链路没有打通,CPU 无法感知到 PCIE 的状况仍然会显现 PCIe Link down。
图 5。
在 Lo。ad。Petalinux 的 Image 之前,需求运转指令 gpio set 38,如下图 6 所示,这个指令是将 PCIe 的复位拉高,由于在 CIPS 中,是将复位 MIO38 装备成 Pull down,在此状况下 PCIe 处于复位状况,所以在 Load image 前需求将复位拉高,使得双端进入 Link training 状况,在运转 Petalinux 时,会显现 PCIe link up,接下来会完结 PCIE 的整个枚举流程。
图 6。
内容来源:https://a02.webvip.vn/app-1/lo gan ca mau,http://chatbotjud.saude.mg.gov.br/app-1/plataforma-demo-pg
本文地址:http://w.21nx.com/article/56856823-24b14899827.html
版权声明
本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。