Maker Pro
Maker Pro

manchester decoding

P

PDRUNEN

Jan 1, 1970
0
Hi again Group,

I read that manchester encoding where you send two symbols for either a "1" or
a "0" is great because you can embed the clock in the transmission and then
extract this clock on the other end to shift the message into a serial
register. It also is a good advantage because the speed of the transmission
can be increased or decreased if needed without any signalling to the receiver
end.

I think this is great but I don't understand how the clock can be extracted out
of the data message with manchester encoding.

Anyone offer us some knowledge or better yet, experience?

Thanks,

Paul
 
J

John Larkin

Jan 1, 1970
0
Hi again Group,

I read that manchester encoding where you send two symbols for either a "1" or
a "0" is great because you can embed the clock in the transmission and then
extract this clock on the other end to shift the message into a serial
register. It also is a good advantage because the speed of the transmission
can be increased or decreased if needed without any signalling to the receiver
end.

I think this is great but I don't understand how the clock can be extracted out
of the data message with manchester encoding.

Anyone offer us some knowledge or better yet, experience?

Thanks,

Paul


One simple way is to make a glitch detector (it makes a short pulse on
any transition... the old R-C and XOR trick) and use that to fire a
0.75T non-retriggerable one-shot. Since there's always a transition in
the middle of a data cell, the one-shot soon winds up triggering on
the center ones, and ignoring the less-regular cell-boundary
transitions. So now you have a 0.75 duty-cycle square wave that always
rises in the center of each data cell; use that to clock and decode
received data.

The less-simple way is to lock a phase-locked-loop to the transitions,
usually at frequency 2*f, where f is the bit rate. Now divide by 2 to
get a data-synchronous clock. But the divide is ambiguous, so add some
logic to sense when the phase is wrong, and fix it. Something like
that.

In either case, a long string of 0's is ambiguous to a long string of
1's. You need some occasional mixed data bits to get oriented.

John
 
T

The Real Andy

Jan 1, 1970
0
One simple way is to make a glitch detector (it makes a short pulse on
any transition... the old R-C and XOR trick) and use that to fire a
0.75T non-retriggerable one-shot. Since there's always a transition in
the middle of a data cell, the one-shot soon winds up triggering on
the center ones, and ignoring the less-regular cell-boundary
transitions. So now you have a 0.75 duty-cycle square wave that always
rises in the center of each data cell; use that to clock and decode
received data.

The less-simple way is to lock a phase-locked-loop to the transitions,
usually at frequency 2*f, where f is the bit rate. Now divide by 2 to
get a data-synchronous clock. But the divide is ambiguous, so add some
logic to sense when the phase is wrong, and fix it. Something like
that.

In either case, a long string of 0's is ambiguous to a long string of
1's. You need some occasional mixed data bits to get oriented.

John

I've got some pic code somewhere for decoding manchester. If you are
interested, i will have a scratch around and see if I can turn it up.
 
M

martin griffith

Jan 1, 1970
0
snip
I've got some pic code somewhere for decoding manchester. If you are
interested, i will have a scratch around and see if I can turn it up.
I've got somewhere, a TTL version from a Byte mag from the 80's might
take some time to find tho, just 3 chips IIRC


martin

Serious error.
All shortcuts have disappeared.
Screen. Mind. Both are blank.
 
T

Tam/WB2TT

Jan 1, 1970
0
PDRUNEN said:
Hi again Group,

I read that manchester encoding where you send two symbols for either a "1" or
a "0" is great because you can embed the clock in the transmission and then
extract this clock on the other end to shift the message into a serial
register. It also is a good advantage because the speed of the transmission
can be increased or decreased if needed without any signalling to the receiver
end.

I think this is great but I don't understand how the clock can be extracted out
of the data message with manchester encoding.

Anyone offer us some knowledge or better yet, experience?

Thanks,

Paul

I did this with a state machine in a PAL some years ago. Probably ran at 32x
the bit rate. Sorry, but no longer have any info on it.

Tam
 
N

Norm Dresner

Jan 1, 1970
0
PDRUNEN said:
Hi again Group,

I read that manchester encoding where you send two symbols for either a "1" or
a "0" is great because you can embed the clock in the transmission and then
extract this clock on the other end to shift the message into a serial
register. It also is a good advantage because the speed of the transmission
can be increased or decreased if needed without any signalling to the receiver
end.

I think this is great but I don't understand how the clock can be extracted out
of the data message with manchester encoding.

Anyone offer us some knowledge or better yet, experience?

Thanks,

Paul

Since there's a signal transition in the middle of the interval (but of
varying polarity) you need two components
1. A blankable any-edge detector -- triggers on leading and trailing
edges
2. A one-shot to blank out the other transition

It works this way: The edge detector detects a transition and triggers the
one-shot whose output is fed back to blank the edge detector. Once this
syncs up, it's foolproof.

Norm
 
Top