TI中文支持网
TI专业的中文技术问题搜集分享网站

关于XIO2001的PCI时钟问题

请问XIO2001的PCI时钟是在PERST#解复位之后才能输出的么?能不能不依赖解复位,提前输出。

Kailyn Chen:

您好,为了保证芯片正常工作, 建议是按照datasheet中的上电时序步骤去完成,复位信号由低到高起来之后再给稳定的时钟信号:

1. Assert GRST and PERST to the device.

2. Apply 1.5-V and 3.3-V voltages.

3. Deassert GRST.

4. Apply a stable PCI Express reference clock.

5. To meet PCI Express specification requirements, PERST cannot be deasserted until the following two delay requirements are satisfied:

– Wait a minimum of 100 μs after applying a stable PCI Express reference clock. The 100-μs limit satisfies the requirement for stable device clocks by the deassertion of PERST. – Wait a minimum of 100 ms after applying power. The 100-ms limit satisfies the requirement for stable power by the deassertion of /PREST.

Kailyn Chen:

您好,我再补充下,您问的复位信号指的是PERST,  我刚指的上电时序, 复位信号起来之后再给时钟信号,这个复位指的是GRST, 不是指的/PERST. 我刚附的上电时序图没有显示,再重新附上:

可以看到,PERST还没有起来之前, 就可以先给时钟信号了.可以看到, PERST起来由两个条件, 第一是在给了稳定的时钟信号之后, 至少再等100us, 第二是电压稳定之后至少100ms的时间PERST才能拉高.

user3838908:

回复 Kailyn Chen:

您好,我指的是PCI的时钟,不是PCI-E的REFCLK。
我的意思是,PCI的时钟输出要依赖与PERST#。这一点让时序很难做。
PCI-E这边的时序是没有问题的,时钟稳定然后PERST#解复位很好操作,也完全符合PCI-E的要求。但是协议并没有规定最大能延迟多少。所以就会有一种情况,上电后几分钟,REFCLK也稳定了几分钟,PERST#才释放,这样是完全符合协议要求的。但是同时也引起了一个问题,PCI的时钟也是几分钟后,才会有输出,前面几分钟都是低电平的。
PCI时钟的这种行为,对于很多主控芯片是不可取的,例如TMS320DM642,TI自己家的DSP,要求主复位RESET#解复位时,PCI的时钟至少稳定32个周期。TMS320DM642的主复位RESET#,是监控电源的,从功能上来讲区别于 PCI的PRST,会在上电240mS左右,就会解复位,但是这时PCI的时钟就是个低电平。这就是我们现在产品遇到的问题。
所以我就想问PCI的时钟,可不可以不依赖于PERST#?或者这种TMS320DM642+XIO2001的时序要怎么设计?

Kailyn Chen:

回复 user3838908:

您好,您是指的M66EN 和PCLK66_SEL 这i两个引脚提供四种PCI 时钟频率的时候, 需要在PERST 解复位是吗? datasheet中确实描述了,在PERST解复位之后, 通过这两个引脚的高低电平来决定输出哪一个频率的输出.  所以如果不依赖于PERST#的话,在它还没有解复位之前, PCI clock 应该是不能达到预期输出的.

因此对于XIO2001 来说, PCI的时钟输出是需要在PERST#解复位之后输出.

看XIO2001的时序的话, 在上电起来稳定之后, GRST解复位之后最少等100ms,PERST解复位, 电压上电起来到稳定几十毫秒的时间, PERST解复位之后, 就可以输出PCI时钟,  在240ms之前就已经有稳定的时钟输出了, DSP的PRST是不是也是至少240ms? 为了保证32个稳定时钟周期,是否可以适当延长DSP的解复位时间? 而XIO2001的这边PERST我们就用最少的时间,即 GRST解复位之后等100ms,PERST解复位.   

user3838908:

回复 Kailyn Chen:

如您所说,这样控制时序确实是可以达到DSP和桥的时序要求。

但是,问题在于我们是做PCI-E设备的,我们需要与不同的主机进行适配。主机不会按照我们的要求去对PERST#解复位。所以XIO的PERST#什么时候解复位不是我们能决定的。协议有协议的要求,主板或者CPU厂商会按协议的要求来做,但是绝对不会根据设备的要求改版。所以最后一条,您说的 “ XIO2001的这边PERST我们就用最少的时间,即 GRST解复位之后等100ms,PERST解复位. “这条是无法实现的。

有其他的解决方式吗?

Kailyn Chen:

回复 user3838908:

您好,了解您的意思,但是对于XIO来说, PCI的时钟要求是要依赖PERST#的. 抱歉,我这边暂时没有其他的解决方式,或者建议您可以在英文e2e上咨询下美国工程师,看他们是否还有其他解决方案呢. 给您带来不便非常抱歉.

赞(0)
未经允许不得转载:TI中文支持网 » 关于XIO2001的PCI时钟问题
分享到: 更多 (0)