Выровняйте два потока пиксельных данных
Vision HDL Toolbox / Утилиты
Блок Pixel Stream Aligner синхронизирует потоки на два пикселя путем задержки одного потока, чтобы совпадать с синхронизацией ссылочного потока. Много алгоритмов Vision HDL Toolbox™ задерживают пиксельный поток, и сумма задержки может измениться, когда вы настраиваете параметры алгоритма. Можно использовать этот блок, чтобы выровнять потоки для того, чтобы наложить, сравнить или объединить два потока такой как в Гауссовой операции размытости. Соедините задержанный поток с refPixel и входными портами refCtrl, и более ранний поток к входным портам ctrl и pixel.
Эта схема формы волны показывает входные потоки, pixelIn
и refPixelIn
и их связанные управляющие сигналы. Ссылочный входной кадр запускается позже, чем кадр pixelIn
. Выходные сигналы показывают, что блок задерживает pixelIn
, чтобы совпадать со ссылочным потоком, и что оба потока вывода совместно используют управляющие сигналы. Существует короткая задержка между входом refCtrl
и выводом refCtrl
. В этой симуляции, чтобы разместить задержку четырех строк между входными потоками, MaxNumberOfLines должен быть установлен в по крайней мере 4.
Этот блок использует пиксельный интерфейс потоковой передачи с шиной для сигналов управления кадром. Этот интерфейс позволяет блоку действовать независимо от размера изображения и формата. Все блоки Vision HDL Toolbox используют тот же интерфейс потоковой передачи. Блок принимает и возвращает и скалярное пиксельное значение и шину, содержащую пять управляющих сигналов. Управляющие сигналы указывают на валидность каждого пикселя и его местоположения в кадре. Чтобы преобразовать кадр (пиксельная матрица) в последовательный пиксельный поток и управляющие сигналы, используйте блок Frame To Pixels. Для полного описания интерфейса смотрите Пиксельный Интерфейс Потоковой передачи.
Блок хранит данные от порта pixel до кольцевого буфера и читает строки, чтобы выровняться со ссылочными управляющими сигналами. Блок также хранит адрес запуска каждой строки. Чтобы совпадать с добавленной задержкой обработки буферного информационного канала, блок задерживает ссылочные пиксельные данные и управляющие сигналы приблизительно для 10 циклов.
RAM Circular Buffer является памятью о 2M пиксели, где M является MaxNumberOfLines + log2 (LineBufferSize). Line Address Buffer имеет местоположения MaxNumberOfLines. Если количество утверждений ctrl.Hstart
перед первым утверждением refCtrl.Hstart
больше, чем размер Line Address Buffer, блок перезаписывает и буферы и повреждает ваш вывод. В этой схеме MaxNumberOfLines равняется четырем, таким образом, существует четыре места, чтобы сохранить адрес строки в буфере. Схема также показывает одно местоположение, чтобы сохранить ctrl.Vstart
. Задержка между этими двумя потоками должна быть меньше, чем время между кадром запускается.