SAS 2 - scrambler operation

David Freeman David.Freeman at
Thu Jul 19 12:53:07 PDT 2007

Formatted message: <A HREF="r0707196_f.htm">HTML-formatted message</A>

Thank you for your reply. 
I agree that it is important to keep with the rest of the standard. 
Section 7.4 defines the idle dwords that are sent when a link is idle. 
"Idle dwords are vendor-specific data dwords which are scrambled (see
It would seem to me that a precedents has been set for allowing
"vendor-specific" implementation of the "scrambled training data" dwords
between the train primitives.
if this is agreeable with the parties concerned I would be willing to
draft a proposal. 
David Freeman
Finisar Corp
From: Robert Watson [mailto:Robert_Watson at] 
Sent: Thursday, July 19, 2007 11:55 AM
To: David Freeman; t10 at
Subject: RE: SAS 2 - scrambler operation
While I agree that it would be easier from an implementation point of
view to overlay the data, it would not seem (to me) to be in keeping
with the rest of the standard, as Stephen illustrates. So I prefer
pausing the scrambler when a primitive is inserted.
For the second question - reception is vendor specific, I believe; but
what is transmitted should be, in my opinion, well defined.
Robert Watson
From: owner-t10 at [mailto:owner-t10 at] On Behalf Of David
Sent: Thursday, July 19, 2007 10:33 AM
To: t10 at
Subject: RE: SAS 2 - scrambler operation
Would it not be easier to have just a free-running scrambler where the
output is muxed into the data stream instead of adding extra logic to
pause the scrambler for primitives. So, yes, Primitive are not
scrambled, however, I would prefer to not have to pause the idle data
generator every time in need to insert a primitive.
Are we expecting to be able to descramble the data and verify that it is
really all zeros?
David Freeman
From: owner-t10 at [mailto:owner-t10 at] On Behalf Of Stephen
Sent: Thursday, July 19, 2007 6:47 AM
To: 'Robert Watson'; t10 at
Subject: RE: SAS 2 - scrambler operation
I'd like to address the question by use of an example.
In a normal frame (between SOF and EOF or between SOAF and EOAF), the
scrambler is not advanced is a ALIGN primitive is inserted.  In fact,
the scrambler is not be advanced when any primitive is inserted, such as
RRDY or ACK.  Since the TRAIN and TRAIN_DONE patterns consists of TRAIN
and TRAIN_DONE primitives and scrambled data then, by the example above,
the scrambler would not be advanced when the primitive portions of the
patterns are sent.
In section 7.6 it states:
"All data dwords are scrambled. Table 117 lists the scrambling for
different types of data dwords."
In a brief search of SAS-2, I didn't find an explicit statement that
primitives are not scrambled, but they aren't.
Steve Finch 
From: owner-t10 at [mailto:owner-t10 at] On Behalf Of Robert
Sent: Wednesday, July 18, 2007 4:19 PM
To: 't10 at'
Subject: SAS 2 - scrambler operation Train-SNW defines two training patterns: TRAIN pattern and
TRAIN)DONE pattern. Both are defined as their respective redundant
primitive followed by 58 dwords set to 0x00000000 scrambled and 8b10b
encoded. Furthermore, the scrambler is initialized at the end of RCDT
and is not re-initialized after that.
The question we have is : Does the scrambler pause while sending TRAIN
or TRAIN_DONE primitives; that is, is the dword following the primitive
the scrambler's successor dword to the dword preceding the primitive? Or
does the scrambler run continuously, and TRAIN or TRAIN_DONE is
overlayed on top of scrambler dwords? I would expect the former, but I
don't feel that the current draft (sas2r10) is clear in this regard.
Robert Watson
PMC-Sierra, Inc.

More information about the T10 mailing list