C
CBFalconer
H. Peter Anvin said:By author: [email protected]
.... snip ...
There was a preamble and a postamble; the data was also subdivided
into blocks. The preamble was, among other things, used to
establish the proper position of the byte boundaries.
However, it's not really necessary, at least in theory; for a
terminal zero bit it would look like:
| | | | <- bit times
+------------------------------------------ etc
|
------+
(no transition in the detection window, followed by nothing.)
... for a terminal one bit it looks like:
| | | | <- bit times
+-----+
| |
------+ +------------------------------------- etc
(transition in detection window, followed by nothing.)
Typically, though, you'd finish with a CRC or checksum and then
have a postable (usually of some number of zero bits.)
Without the postamble, I was thinking of implementation. There are
three times of interest during that final bit, the initial clock
transition, the sampling point, and the next clock transition.
Practically the initial will reset a data flop, the sample will
conditionally set it, and the next will shift that bit out while
reseting the data flop. The last transition is missing, which
brings up complications like missing clock detectors etc.
What you actually have to work with is the derivative of those
waveforms, possibly converted to unipolar pulses.