PCIE 调试过程记录

本文记录了PCIe调试过程中遇到的物理层link不稳定和内存映射空间读写异常的问题。通过分析和排查,发现时钟源和软件bug是问题的关键。解决方案包括采用同源时钟或关闭SSC功能,以及修复软件中的地址定义错误。同时,文章介绍了PCIe配置空间和内存映射地址转换的概念。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

遇到的问题

  • PCIE link不稳定
  • 配置空间读写正常,Memory mapping空间读写异常

缘由

之前对PCIE的认识一直停留在概念的阶段,只知道是一个高速通讯协议,主要用于板内、板间的高速BUS。正好公司最近在调试一个PowerPC平台的PCIE BUS的BSP。需要一些PCIE的硬件、软件知识。下面通过解决实际问题过程的方法来进一步理解PCIE总线协议。但也仅仅限于工程应用(实际产品中调试、应用)层面。

具体解决过程

PCIE 物理层link 不稳定

启动u-boot后,可以看到PCIE link status信息log 

u-boot下的pcie link status

从log上分析:系统启动了3个PCIE controller,PCIE 号为:0.0.0 2.0.0 4.0.0。 
三个数字的具体含义为:0.0.0 :Bus Number Device Number Function Number。 
这三个Host Bridge 下面分别挂了一个EP设备,PCIE 号为:1.0.0 、3.0.0 、5.0.0。 
正常看到这些PCIE bridge 和EP说明PCIE 读PCIE的配置空间是正

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值