SAS DONE Credit Timeout clarifications

Elliott, Robert (Server Storage) Elliott at hp.com
Fri May 2 16:45:16 PDT 2003


* From the T10 Reflector (t10 at t10.org), posted by:
* "Elliott, Robert (Server Storage)" <Elliott at hp.com>
*
This is a multi-part message in MIME format.

------_=_NextPart_001_01C31104.E1F78137
Content-Type: text/plain;
	charset="us-ascii"
Content-Transfer-Encoding: quoted-printable

A few additional clarifications throughout the standard would help
clarify some of the DONE handling.=20

(I'm not putting these in yet; we can discuss them Monday)=20

1. Add an explanation about why the timer is stopped when credit is
exhausted:=20

If the Wait For DONE (NORMAL) message or the Wait for DONE (CREDIT
TIMEOUT) message has been=20
received, the DONE timeout timer shall be stopped after:=20
a) the Rx Credit Status (Exhausted) message is received; and=20
b) the Rx Credit Control (Blocked) message has not been received.=20

<<Add:=20
Stopping the timer ensures that, if credit remains exhausted long =
enough
that the Credit Timeout timer of the other phy in the connnection
expires, the other phy is able to transmit a DONE (CREDIT TIMEOUT).

>>=20

2. This timer is hidden in the state machine and not always mentioned =
in
7.2.6.3 DONE.=20

The DONE (ACK/NAK TIMEOUT) description does mention that the =
transmitter
will transmit BREAK=20
in 1 ms unless DONE arrives.  That kind of wording is missing from DONE
(CREDIT TIMEOUT).=20

DONE (ACK/NAK TIMEOUT)=20
The SSP state machine (see 7.16.7) timed out waiting for an ACK=20
or NAK and the transmitter is going to transmit BREAK in 1 ms=20
unless DONE is received within 1 ms of transmitting the DONE=20
(ACK/NAK TIMEOUT).=20

DONE (CREDIT TIMEOUT)=20
Timed out waiting for an RRDY or received a CREDIT BLOCKED.=20
<<Change to:=20
The SSP state machine (see 7.16.7) timed out waiting for an=20
RRDY or received a CREDIT BLOCKED and the transmitter is=20
going to transmit BREAK if credit is extended for 1 ms without=20
receiving a frame or a DONE.=20
>>=20

3. In 7.16.6 (Closing an SSP connection) there is no mention of this
timer.=20

Either go with a simple approach:=20
<<=20
After transmitting DONE, the source phy initializes and starts a=20
1 ms DONE Timeout timer (see 7.16.7.5).=20
>>=20

or try to provide more details:=20
>>=20
After transmitting DONE (ACK/NAK TIMEOUT), the source phy shall=20
initialize and start a 1 ms DONE Timeout timer (see 7.16.7.5). If it=20
does not receive a DONE before the timer expires, it shall break the=20
connection (see 7.12.7).=20

After transmitting DONE (NORMAL) or DONE (CREDIT TIMEOUT), the=20
source phy shall initialize and start a 1 ms DONE Timeout timer=20
every time credit for incoming frames is extended (see 7.16.7.5). If it =

does not receive a frame or a DONE before the timer expires,  it shall=20
break the connection (see 7.12.7).=20
>>=20

--=20
Rob Elliott, elliott at hp.com=20
Hewlett-Packard Industry Standard Server Storage Advanced Technology=20
 <https://ecardfile.com/id/RobElliott>
https://ecardfile.com/id/RobElliott=20




------_=_NextPart_001_01C31104.E1F78137
Content-Type: text/html;
	charset="us-ascii"
Content-Transfer-Encoding: quoted-printable

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">

 SAS DONE Credit Timeout clarifications A few additional clarifications = throughout the standard would help clarify some of the DONE = handling. (I'm not putting these in yet; we can = discuss them Monday) 1. Add an explanation about why the = timer is stopped when credit is exhausted: If the Wait For DONE (NORMAL) message = or the Wait for DONE (CREDIT TIMEOUT) message has been 
received, the DONE timeout timer = shall be stopped after: 
a) the Rx Credit Status (Exhausted) = message is received; and 
b) the Rx Credit Control (Blocked) = message has not been received. <<Add: 
Stopping the timer ensures that, if = credit remains exhausted long enough that the Credit Timeout timer of = the other phy in the connnection expires, the other phy is able to = transmit a DONE (CREDIT TIMEOUT). >> 2. This timer is hidden in the state = machine and not always mentioned in 7.2.6.3 DONE. The DONE (ACK/NAK TIMEOUT) description = does mention that the transmitter will transmit BREAK 
in 1 ms unless DONE arrives.  = That kind of wording is missing from DONE (CREDIT TIMEOUT). DONE (ACK/NAK TIMEOUT) 
The SSP state machine (see 7.16.7) = timed out waiting for an ACK 
or NAK and the transmitter is going = to transmit BREAK in 1 ms 
unless DONE is received within 1 ms = of transmitting the DONE 
(ACK/NAK TIMEOUT). DONE (CREDIT TIMEOUT) 
Timed out waiting for an RRDY or = received a CREDIT BLOCKED. 
<<Change to: 
The SSP state machine (see 7.16.7) = timed out waiting for an 
RRDY or received a CREDIT BLOCKED and = the transmitter is 
going to transmit BREAK if credit is = extended for 1 ms without 
receiving a frame or a DONE. 
>> 3. In 7.16.6 (Closing an SSP = connection) there is no mention of this timer. Either go with a simple = approach: 
<< 
After transmitting DONE, the source = phy initializes and starts a 
1 ms DONE Timeout timer (see = 7.16.7.5). 
>> or try to provide more details: 
>> 
After transmitting DONE (ACK/NAK = TIMEOUT), the source phy shall 
initialize and start a 1 ms DONE = Timeout timer (see 7.16.7.5). If it 
does not receive a DONE before the = timer expires, it shall break the 
connection (see 7.12.7). After transmitting DONE (NORMAL) or = DONE (CREDIT TIMEOUT), the 
source phy shall initialize and start = a 1 ms DONE Timeout timer 
every time credit for incoming frames = is extended (see 7.16.7.5). If it 
does not receive a frame or a DONE = before the timer expires,  it shall 
break the connection (see = 7.12.7). 
>> -- 
Rob Elliott, elliott at hp.com 
Hewlett-Packard Industry Standard = Server Storage Advanced Technology 
https://ecardfile.com/id/RobElliott 


------_=_NextPart_001_01C31104.E1F78137--




More information about the T10 mailing list