马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?注册
x
本帖最后由 chenxuoltju 于 2013-10-14 20:54 编辑
板卡简介: 使用PLX公司的PEX8617,设计了一块PCIe功能板卡。将PEX8617设置为x4 x4 x4 x4模式,选择Port0作为上游端口。Port1、2、3作为下游端口,下挂3个PCIe端点设备。框图如下
功能板的电气接口选用XMC连接器。调试时借助一块PCIe-XMC转接板,将功能板卡插到转接板上,然后插到电脑的PCIe x16插槽上,电脑为PCIe3.0,XP系统。 板上的一些接法如下: Ø使用PCIe插槽的Preset#作为功能板的复位 Ø使用REFCLK作为功能板的本地时钟,经过扇出芯片后,得到各设备所需的时钟 Ø功能板单一5V供电,该5V电源取自插槽的12V,由电源模块转换得来 Øpex8617的jtag功能没有使用,我直接用1.5k电阻将JTAG_TRST#下拉。 Ø功能板的功耗率约为8W
将功能板插到电脑里后,出现过3种现象: 1、电脑无法启动,处于黑屏状态; 2、电脑可以启动,但是找不到设备; 3、电脑可以启动,可以找到一个未知设备。看它的设备号正是8617。但是无法看到下游设备 第一种情况出现的概率最高,大约90%;第二种的概率大约10%;第三种的概率几乎为0,总共就出现了2次。 不使用电脑,将功能板插到另一种XMC接口的主板上: 此时无需使用转接板,会看到4个Device ID为0x8617的设备
问题排查: Ø怀疑过转接板。在调试中发现,在转接板和功能板上的发送链路上,各有一个0.1uF耦合电容。后来将转接板上的电容去掉,直接短接,现象没有变化。 Øpex8617前端的时钟ok,100MHz Øpex8617的1.0V、2.5V ok Ø功能板在电脑中,3.3V、pex8617的复位、pex8617的时钟波形如下图所示
Ø功能板在XMC接口主板上时,3.3V、pex8617的复位、pex8617的时钟波形如下图所示
对比上述两种情况发现,从时钟有效,到复位拉高的这段时间,在电脑中为150ms,在XMC接口主板上为520ms。虽然都满足要求(规范中为最少100us),但是不知道这有无影响?后来就增加了这段时间。波形如下
1通道:板上3.3V 2通道:插槽Preset# 3通道:本地复位(即pex8617的复位)
4通道:pex8617的时钟 做上述更改后,电脑还是无法启动
Ø去掉了pex8617的EEPROM,结果一样。后来还将后续PCIe设备的EEPROM也去掉了,结果还是一样。 Ø调试中发现PRSNT2的信号没有接,于是将其飞线与PRSNT1短接,设置成x4模式,结果一样 Ø尝试将电脑的PCI Express Native Control禁止,但是发现xp下没有该命令 Ø在电脑启动时,测量复位线,复位为高。 Ø将jtag复位脚的下拉电阻去掉,或者将jtag复位脚上拉,电脑可以启动,但无法看到设备。在XMC主板下也无法看到8617的设备号。 Ø将后端需要做上电配置的PCIe端点设备配置好,插上板卡后,电脑仍无法启动
不知道哪里出错了,望大家给支个招!非常感谢! |