Re: Clause 48: Sync StateMachine and PUDI/invalid/
The Sync state machine is written to operate in the 10B domain as is the
Deskew state machine.
The 10GBASE-X PCS does not mandate the location and number of decoders
in an implementation. The PCS Sync and Receive state machine structure
is virtually identical to that of the 1000BASE-X PHY. The DECODE
function can be located elsewhere, but I don't view such a change as
being more or less "correct" than it's current location.
As to your second point, Invalid represent a superset of invalid
code-groups and running disparity errors. Therefore, running disparity
error is not a suitable replacement for Invalid.
Justin Gaither wrote:
> I know it is too late for comments on this draft, however I would like
> some feedback on this subject:
> The sync state machine uses PUDI/invalid/ to transition through its
> states. The problem I have is that, to calculate PUDI invalid you must
> practically decode the code-group. The decoder is in a different clock
> domain on the other side of the lane-align block. If I use that decoder
> to send a signal back to the Sync state machine I have a long round trip
> delay for the data to be decoded and send back an error. Also this does
> not conform to the standard since what I am decoding is an AUDI not a
> PUDI. This would also cause LOS of Sync when an internal FIFO error or
> Rate Adjustment error could have occured.
> I have 2 thoughts on solving this.
> 1. Put the decoder next to the Sync StateMachine before the lane align,
> and adjust the RCV statemachine accordingly.
> 2. Use a simplier indicator in the sync statemachine than PUDI/invalid/.
> Like just Running Disparity Error.
> What do you think?
Richard Taborek Sr. XAUI Sherpa Intel Corporation
Networking Components Division Santa Clara Design Center
408-496-3423 Fax: 408-486-9859 Cell: 408-832-3957
3101 Jay Street Santa Clara, CA 95054