|
Posted by gorjusborg on July 25, 2006, 3:11 pm
If you were Registered and logged in, you could reply and use other advanced thread options
Hello,
Any RGMII people listening?
The RGMIIv2.0 specification identifies the supported RXER encodings
which are decoded as the equivalent of the GMII notion of CRS. The
encodings which translate to CRS assertion are:
RXER=1, RXDV=0, AND:
RXD[7:0] = 0x0e (false carrier)
OR
RXD[7:0] = 0x0f (carrier extend, gigabit only)
OR
RXD[7:0] = 0x1f (carrier extend error, gigabit only)
OR
RXD[7:0] = 0xff (carrier sense)
However, the specification also has a section (Section 5.0) on 10/100
functionality which says that in 10/100 modes, 'the data may be
duplicated on the falling edge of the appropriate clock'.
This is ambiguous in my opinion. The specification is implying that
during 10/100 modes, the interface effectively turns into a nibble
based interface (which I agree with). But if the interface is really
nibble based during 10/100, does this mean that in 10/100 mode, the CRS
encodings are:
RXER=1, RXDV=0, AND:
RXD[7:0] = 0xe (false carrier)
OR
RXD[7:0] = 0xf (carrier sense)
The reason I think this is because the original MII interface was
specified with 4-bit CRS encodings for false carrier (carrier sense
0xF, was a reserved encoding).
If this is true, the implication is that 0xee and 0xff are also decoded
as CRS assertion (since the nibble is repeated on both edges of clock.
Am I even close on this one?
-Brandon Atkinson
|