PCI Express Protocal Clarification

Guest
Hi all,
I am working on debugging a PCI Express Core. The core already is a
part of an ASIC ( part of a System Fabric ). Here is what I am doing -

I am attempting to train the Link Training State Machine in the core
with a x1 PCIe peripheral card . I have the ability to send DLLPs that
are not InitFC1 ( P, Np, Cpl ) DLLPs from this core to the PCI x1
peripheral device.

So essentially I can get the Link training State Machine to trian up
with the PCIe Card ( in this case it was a SATA card ). Once the LTSM
of both devices enters the LO state, the DLSM state Machine kicks of on
both devices. Each device enters InitFC1 and sends out the InitFC1 P,
Np and Cpl DLLPs. All is good and eventually each device enters InitFC2
and then DLActive.

Then I configure my PCIe Core to send ASI DLLPs initially when entering
InitFC1 state and eventually when it discovers that the PCIe card had
sent PCIe InitFC1 DLLPs then send PCIe InitFC1 DLLPs.

I reboot the system, see each device enter the LO state and the DLSM on
each device kicks off. The PCIe device enters InitFC1 as does my PCI
Core. I see the initial PCIe InitFC1's being launched from the PCIe
peripheral device and ASI InitFC1's being launched by my PCI Core.
Subsequently my PCI Core detects the PCIe devices InitFC1's and starts
trasnmitting InitFC1's. My PCI device thereafter transitions to InitFC2
but the Peripheral PCIe device hangs in InitFC1 and never makes it out
of that state.

My question is does anyone know if when in InitFC1 state if a PCIe
device receives DLLPs that are not PCIe InitFC1 DLLPs, that this could
cause it to hang ?? In other words, when in InitFC1 does it have to see
only InitFC1 DLLPs ?? My understading from the spec. is that it should
continue to be in InitFC1 state till it receives 3 InitFC1 DLLPs ( P,
Np and Cpl ). There is really no time out in the InitFC1 state and it
should ignore any DLLPs that are not these three DLLPs. It should not
be poisoned by DLLPs that it ay receive that are not InitFC1 ( P, Np,
Cpl ) DLLPs.

Any help would be greatly appreciated...

-Rajat Mitra
 

Welcome to EDABoard.com

Sponsor

Back
Top