If your system loses or gains half a bit time due to noise, clock slip, whatever, then Manchester goes out of sync and stays out for the rest of the message. BiPhase on the other hand is brought back into sync with the arrival of the very next '1' bit. BiPhase does not propagate errors. The code for biphase is virtually identical to manchester. Manchester needs very high accuracy clocks at both ends. BiPhase is much more tolerant of clock differences. The downside of biphase is that the channel needs a somewhat wider bandwidth.

Search for biphase code in the forum. I have posted on it before.

HTH
BrianT