cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
marrirohit
Observer
Observer
8,808 Views
Registered: ‎10-29-2012

SATA_SCRAMBLER doubt

hi all..

              In the scrambler used in SATA we perform LFSR operation 32 times within a clock and then xor the incoming data to the result. but what if the result of xor is the same as previous one.then  we will be transfering same content and the purpose of using a scrambler will not be served. in SATA we use scrambler not to transfer same data/Dword more than two times.

 

Regards,

M.Rohit

0 Kudos
Reply
3 Replies
austin
Scholar
Scholar
8,803 Views
Registered: ‎02-27-2008

m,

 

Scrambling is not used for security:  encryption is used.

 

Any LSFR scrambler polynomial can be discovered, and the scrambled information unscrambled, without any convenient coincidences.

Austin Lesea
Principal Engineer
Xilinx San Jose
0 Kudos
Reply
marrirohit
Observer
Observer
8,774 Views
Registered: ‎10-29-2012

sir my doubt was not regarding the encryption and description.. we use scrambler to balance the EMI so that if we send same 40 bit values continuously EMI noise does not show any bad effect on port.. how can we make sure that the out comes of scrambler serve its purpose... like 3+5 = 8, 2+6 = 8,1+7=8.. here the incoming value may be different but the output is the same..

Tags (3)
0 Kudos
Reply
austin
Scholar
Scholar
8,766 Views
Registered: ‎02-27-2008

m,

 

Scambling to enforce DC balance, or prevent long strings of 0's or 1's is not perfect:  a pattern may generate exactly what you don't want.

 

In telecom (SONET/SDH) they will force a string of 0's or 1's to be something else.  It corrupts the data, and creates errors, but for voice, video, etc. it often doesn't matter.  For data, it will force a higher level to discard the data, and retry.  On a disk, this is more of a problem, as you can't retry (you get the same problem).  I would not rely on scrambling:  rather I would use a form on nBmB coding (66B64B) where every 64 bits are replaced by a 66 bit codeword, or the old standby, 8B10B coding.

Austin Lesea
Principal Engineer
Xilinx San Jose
0 Kudos
Reply