在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
EETOP诚邀模拟IC相关培训讲师 创芯人才网--重磅上线啦!
查看: 20382|回复: 22

[求助] 求助:PCIe交换板卡,电脑无法启动

[复制链接]
发表于 2013-10-14 20:52:52 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x
本帖最后由 chenxuoltju 于 2013-10-14 20:54 编辑

板卡简介:

使用PLX公司的PEX8617,设计了一块PCIe功能板卡。将PEX8617设置为x4 x4 x4 x4模式,选择Port0作为上游端口。Port123作为下游端口,下挂3PCIe端点设备。框图如下

框图.bmp

功能板的电气接口选用XMC连接器。调试时借助一块PCIe-XMC转接板,将功能板卡插到转接板上,然后插到电脑的PCIe x16插槽上,电脑为PCIe3.0XP系统。

板上的一些接法如下:

Ø使用PCIe插槽的Preset#作为功能板的复位

Ø使用REFCLK作为功能板的本地时钟,经过扇出芯片后,得到各设备所需的时钟

Ø功能板单一5V供电,该5V电源取自插槽的12V,由电源模块转换得来

Øpex8617jtag功能没有使用,我直接用1.5k电阻将JTAG_TRST#下拉。

Ø功能板的功耗率约为8W


将功能板插到电脑里后,出现过3种现象

1、电脑无法启动,处于黑屏状态;

2、电脑可以启动,但是找不到设备;

3、电脑可以启动,可以找到一个未知设备。看它的设备号正是8617。但是无法看到下游设备

第一种情况出现的概率最高,大约90%;第二种的概率大约10%;第三种的概率几乎为0,总共就出现了2次。

不使用电脑,将功能板插到另一种XMC接口的主板上:

此时无需使用转接板,会看到4Device ID0x8617的设备


问题排查:

Ø怀疑过转接板。在调试中发现,在转接板和功能板上的发送链路上,各有一个0.1uF耦合电容。后来将转接板上的电容去掉,直接短接,现象没有变化。

Øpex8617前端的时钟ok100MHz

Øpex86171.0V2.5V ok

Ø功能板在电脑中,3.3Vpex8617的复位、pex8617的时钟波形如下图所示

04#,i7下,0.047uF电容ch1-3.3V;ch2-本地复位;ch3-8617refclk.PNG

Ø功能板在XMC接口主板上时,3.3Vpex8617的复位、pex8617的时钟波形如下图所示

04#,3a下,0.047uF电容ch1-3.3V;ch2-本地复位;ch3-8617refclk.PNG

对比上述两种情况发现,从时钟有效,到复位拉高的这段时间,在电脑中为150ms,在XMC接口主板上为520ms。虽然都满足要求(规范中为最少100us),但是不知道这有无影响?后来就增加了这段时间。波形如下

abbr_bb0f1c05739e6a64e96e5d7e069e8c72.png

1通道:板上3.3V

2通道:插槽Preset#

3通道:本地复位(即pex8617的复位)
4通道:pex8617的时钟

做上述更改后,电脑还是无法启动


Ø去掉了pex8617EEPROM,结果一样。后来还将后续PCIe设备的EEPROM也去掉了,结果还是一样。

Ø调试中发现PRSNT2的信号没有接,于是将其飞线与PRSNT1短接,设置成x4模式,结果一样

Ø尝试将电脑的PCI Express Native Control禁止,但是发现xp下没有该命令

Ø在电脑启动时,测量复位线,复位为高。

Øjtag复位脚的下拉电阻去掉,或者将jtag复位脚上拉,电脑可以启动,但无法看到设备。在XMC主板下也无法看到8617的设备号。

Ø将后端需要做上电配置的PCIe端点设备配置好,插上板卡后,电脑仍无法启动


不知道哪里出错了,望大家给支个招!非常感谢!

发表于 2013-10-15 10:53:07 | 显示全部楼层
为什么PEX8617的时钟给的这么晚呢?
 楼主| 发表于 2013-10-15 16:19:56 | 显示全部楼层
回复 2# optihack

感谢关注!
   我用的是金手指上的时钟,经过了一个扇出芯片,作为pex8617的时钟。这个时刻是由电脑主板决定的,我控制不了,我能做的只是把复位时间尽量放长一些
发表于 2013-10-15 18:34:17 | 显示全部楼层
1:给PCIE板卡的差分时钟和复位信号撤销在一起出现感觉不是很对。2:这个时钟信号的质量感觉不是很好,为什么没有拉到低电平呢。3:你能不能换个电脑试试,或者把主板上给PCIE ROOT COMPLEX的差分时钟信号,直接接到你的板卡的金手指上,我还是怀疑差分时钟给的太晚了,跟复位de-assert一起给有点不太对。
 楼主| 发表于 2013-10-15 20:05:25 | 显示全部楼层
本帖最后由 chenxuoltju 于 2013-10-16 23:03 编辑

回复 4# optihack

非常感谢回复!   

       1、 从pcie时钟有效,到Preset#拉高,这段时间才16ms。我也是感觉有点少。不过还好我没有直接用Preset#,而是加了个复位芯片。用这个复位芯片去复位所有器件。也就是本地pcie时钟还是金手指上的时钟,但是本地Preset#,是在金手指Preset#之后,又加了段延时。但是加上延时后,也是不好使。
     2、pcie时钟是应该有一个直流分量的吧,或者说有没有都行?这个不确定。
     3、也换电脑试过,一台电脑是技嘉主板,一台电脑是dell主板,不过现象都是一样的


后来改了下时钟,
    1、只保留8617和8311的时钟,将另两个设备的时钟断开。这个时候电脑可以启动,并且可以看到8617和8311。

    2、只保留8617和一个设备(非8311)的时钟,这个时候电脑就启动不了。

我觉得可能是这两个设备的配置有问题,或者是这两个设备对时钟的要求过高,导致了整个系统在检测设备的时候崩溃了。

这两个设备是pcie r2.1的,而8617是r2.0的,不知道这个有没有影响?
发表于 2013-10-16 10:55:19 | 显示全部楼层
如果你有PCIE 协议分析仪的话,可以看下SWITCH和下游设备之间有没有做link training.如果有link training,可以判断跟时钟关系不大,跟你FPGA对设备的配置有关。但是你之前说,你不用那个XMC转接卡是正常的,说明FPGA配置逻辑没有问题,我估计还是跟时钟有关。 你查下几个设备的芯片的时钟复位要求吧
发表于 2013-10-16 11:55:29 | 显示全部楼层
回复 1# chenxuoltju


    插入板卡后,如果找不到设备,重启一下系统呢?能不能找到?
发表于 2013-10-16 11:57:06 | 显示全部楼层
回复 1# chenxuoltju


    还有能不能确认一下链路处于什么状态?
发表于 2013-10-16 17:43:21 | 显示全部楼层
EEPROM肯定不会影响功能。如果有可能的话,你把原理图发给我,我帮你看看。
 楼主| 发表于 2013-10-16 23:02:13 | 显示全部楼层



      嗯,咨询了下技术支持,pex8617确实对复位有要求:通常建议先将其他芯片的复位拉高,然后再将pex8617的复位拉高。也就是要其他芯片先准备好。不过我调整了复位时序,还是没有变化。         

  手头木有协议分析仪,做不了深入分析啊我现在怀疑是另外的设备配置有问题,正在查原因。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /2 下一条


小黑屋| 手机版| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-11-22 04:00 , Processed in 0.028376 second(s), 10 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表