Мне это физический уровень Ethernet напомнило. Ещё про 8b/10b вспомнить, чтобы гарантированно получить последовательность "все 0" или "все 1" для синхры(и не получить во время работы). здесь
здесь
См. preamble, SFD,
А, нет, 8/10 в контексте этзернета немного не то. Видел такую идею: кодируем таким образом, чтобы для синхры шли "только 1" или "только 0", а для данных подбираем посылки, чтобы исключить. Бонусом получаем несколько служебных значений, но жертвуем часть полосы пропускания. О, вроде оно:
здесь
готовая подборка
здесь