Зачем вообще переходить на последовательную передачу
Передавать 4-битное (или более широкое) слово по нескольким отдельным проводам вполне нормально на одной плате, но становится дорого и ненадёжно на любом реальном расстоянии. Последовательная связь вместо этого передаёт то же самое слово по одному биту за раз по одному проводу, обменивая провода на время, — именно для этого и создан регистр сдвига.
Обрамление слова стартовым и стоповым битами
У приёмника нет самостоятельного способа узнать, когда начинается новое слово, поэтому кадр UART оборачивает данные метками: линия в состоянии покоя держится на 1, стартовый бит (единственный 0) объявляет, что дальше пойдут данные, биты данных сдвигаются наружу по одному за такт, а стоповый бит (1) отмечает конец и возвращает линию в состояние покоя. Детектор фронта, следящий за переходом с 1 на 0 на линии покоя, — это ровно то, что сообщает приёмнику о приходе стартового бита.
Передатчик и приёмник
Передатчик — это загружаемый регистр, параллельно загружающий отправляемое слово, а затем переключающийся на сдвиг его наружу через регистр сдвига по одному биту за такт, с пришитыми по краям стартовым и стоповым битами. Приёмник работает в обратную сторону: детектор фронта ловит стартовый бит, небольшой счётчик отсчитывает нужное число тактов, чтобы сдвинуть каждый бит данных в свой собственный регистр сдвига, и по завершении счёта собранное слово считывается параллельно.
Попробуйте сами
Соберите передатчик в редакторе схем из REG4, подающего сигнал на SHIFT4, тактируемый CNT4, который прекращает сдвиг, как только все четыре бита (плюс старт и стоп) вышли наружу, и с помощью инструмента «Таблица истинности» убедитесь, что последовательность битов на одном выходном проводе совпадает с исходным 4-битным словом, корректно обрамлённым.