I haven’t seen an update on this proposal, but I did
want to see some discussion prior to the T10 week, so here goes.
In SAS-2 today a phy sends only one Identify frame and makes
one attempt to receive an Identify. If the phy receives an SOAF and that
address frame is of the wrong length or has incorrect CRC, the reception
attempt fails and the exchange of the Identify frame fails. The phy does
not go into normal operation and a phy reset sequence is the only option for recovery.
The goal, as I understand it, is to
allow (not require) a phy to send its Identify frame three times and to allow
it to discard invalid frames and not treat the detection of an invalid frame as
a fatal error. The reception process would time out if no Identify frame
was received before the Receive Identify Timeout timer times out.
The issues, as I see them are:
1. There is no timing specified
as to the repetition of Identify frames.
The Identify frames could be sent back-to-back,
with no intervening idle dwords, or they could be spaced far apart, up to
something just short of the Receive Identify Timeout period.
It appears there are implementations
that are not capable of receiving back-to-back frames with no intervening idle
dwords. If a phy with such a receiver were connected to a phy that
transmitted the Identify three times in a row without intervening idle dwords,
then the goal of this proposal would not be obtained.
I see no advantage to sending the multiple
Identifies with “significant” time delay between them.
I would propose that, if a phy
transmits three Identifies that a minimum of six idle dwords be transmitted
between the Identify frames and no more that 16 idle dwords be transmitted
between Identify frames. (If these numbers aren’t agreeable, let’s
find numbers that are.)
2. If one side transmits the
Identify three times and the other side only once, then the side that send only
one will enable its higher layer protocol state machines after sending only
one. It is possible (and I can argue probable if the phy reset sequence
occurred as a link recovery event) that the phy sending only one Identify could
send an Open Address frame before the phy sending three Identify frames has
entered normal operation. This would result in a timeout of an Open
request. Not an unrecoverable event, but still not a desirable event
either. So, should we require all phys to not send an Open Address frame
until some time frame after the successful exchange of an Identify? Like
1 ms?
One last question, should all SAS-2
compliant devices be required to send three Identify frames?
Additional note: The text and
state changes to the IR state machines (3 of them), as they appear in the
latest proposal, are not sufficient. If we can agree to the above issues,
then we can work on these issues.
Regards,
Steve Finch
STMicroelectronics