# Data strobe encoding

> Mediated Wiki article. Canonical URL: https://mediated.wiki/source/Data_strobe_encoding
> Markdown URL: https://mediated.wiki/source/Data_strobe_encoding.md
> Source: https://en.wikipedia.org/wiki/Data_strobe_encoding
> Source revision: 1199982827
> License: Creative Commons Attribution-ShareAlike 4.0 International (https://creativecommons.org/licenses/by-sa/4.0/)

{{Short description|Line code}}
{| align=right
|-
| image:Data_Strobe_Encoding.png
|-
|<small>''Data strobe encoding and recovered clock.''</small>
|}
'''Data strobe encoding''' (or '''D/S''' encoding) is an encoding scheme for transmitting data in [digital circuit](/source/digital_circuit)s.
It uses two signal lines (e.g. wires in a cable or traces on a [printed circuit board](/source/printed_circuit_board)), ''Data'' and ''Strobe''. These have the property that either Data or Strobe changes its [logical value](/source/Truth_value) in one [clock cycle](/source/clock_cycle), but never both. More precisely data is transmitted as-is and strobe changes its state if and only if data stays constant between two data bits.
This allows for easy [clock recovery](/source/clock_recovery) with a good [jitter](/source/jitter) tolerance by [XOR](/source/XOR)ing the two signal line values.<ref>{{cite book |last=Parkes |first=Steve |date=2012 |title=SpaceWire User's Guide |url=https://www.star-dundee.com/wp-content/star_uploads/2019/05/SpaceWire-Users-Guide.pdf |publisher=STAR-Dundee Limited |page=52 |isbn=978-0-9573408-0-0 }}</ref>

There is an equivalent way to specify the relationship between Data and Strobe.
For even-numbered Data bits, Strobe is the opposite of Data.
For  odd-numbered Data bits, Strobe is the same as Data.
From this definition it is more obvious that the XOR of Data and Strobe will yield a clock signal. Also, it specifies the simplest means of generating the Strobe signal for a given Data stream.

Data strobe encoding originated in [IEEE 1355](/source/IEEE_1355) Standard and is used on the signal lines in [SpaceWire](/source/SpaceWire) and the [IEEE 1394](/source/FireWire) (also known as [FireWire 400](/source/FireWire_400)) system.

[Gray code](/source/Gray_code) is another code that always changes one logical value, but never more than one.

==References==
{{Reflist}}

Category:Line codes

{{telecomm-stub}}

---
Adapted from the Wikipedia article [Data strobe encoding](https://en.wikipedia.org/wiki/Data_strobe_encoding) by Wikipedia contributors ([contributor history](https://en.wikipedia.org/wiki/Data_strobe_encoding?action=history)). Available under [Creative Commons Attribution-ShareAlike 4.0 International](https://creativecommons.org/licenses/by-sa/4.0/). Changes may have been made.
