Есть такие микросхемы clock recovery - выделяют clk из потока данных и делают retiming данных к выделенному clk. Как пример могу предложить посмотреть AD800, AD802 от Analog Devices.
В связи (в том числе в сотовой) давно широко используется код Манчестера, на приемной стороне без проблем выделяется парой-тройкой D-триггеров, на передающей - еще проще: Clk XOR Data