Проект посвящен реализации видеотракта на ПЛИС Zynq-7020 с использованием сенсора OV5647 (MIPI-CSI-2) и выводом через HDMI и Ethernet UDP. Автор переходит от использования готового битстрима производителя к собственной разработке, решая задачи настройки входных задержек, конфигурации памяти и согласования цветовых компонент.

Собственный битстрим обеспечивает вывод видео 1080p30 с частотой около 30,8 кадра в секунду. Без учета JPEG-энкодера дизайн занимает 26,6% логических таблиц, 20,8% регистров, 25,4% блочной памяти и 3,6% умножителей. Система включает приемник, блок синхронизации пикселей и сериализатор для HDMI.

В процессе отладки выявлены ошибки контрольной суммы, вызванные неверной калибровкой входных задержек. Установка режима калибровки в фиксированное значение (тап 5) позволила добиться безошибочной работы приемника. Автор отмечает, что наличие изображения не гарантирует корректность дизайна, так как ошибки могут проявляться лишь в части строк.

Использование скриптов с адресами блоков, аналогичными вендорским, позволило сравнить работу двух битстримов. Это помогло выявить критические параметры, такие как необходимость активации блока калибровки, который предотвращает ошибки на этапе имплементации проекта в Vivado.

Для диагностики артефактов изображения применялись проверка фаз цветового фильтра и гамма-таблиц. Установка гамма-таблицы в единое значение позволила подтвердить целостность конвейера. Итоговая система поддерживает передачу MJPEG по HTTP с возможностью перепаковки в RTP/UDP, обеспечивая сетевой поток до 23 кадров в секунду.