Pixel Stream FIFO

Буферизуйте входной поток, чтобы создать линии изображения, которые имеют смежные допустимые пиксели

  • Библиотека:
  • Vision HDL Toolbox/Утилиты

  • Pixel Stream FIFO block

Описание

Блок Pixel Stream FIFO сохраняет входящие действительные пиксели и сопутствующие сигналы управления и возвращает тот же поток пикселей без зазоров между допустимыми пикселями каждой линии. Блок сохраняет общий размер линии и общий формат кадра видеопотока, включая недопустимые циклы.

Используйте блок Pixel Stream FIFO для буферизации источников видео. Форма волны показывает источник видео прямого доступа к памяти (DMA), где пиксели считываются пакетно, и Ссылка® источник видео, где пиксели действительны каждый второй тактовый цикл. Чтобы создать смежные линии видео, блок Pixel Stream FIFO буферизует пиксели входа и управляет сигналами каждого источника.

Порты

Этот блок использует интерфейс потокового пикселя с шиной для сигналов управления системой координат. Этот интерфейс позволяет блоку работать независимо от размера и формата изображения. Порты pixel на этом блоке поддерживают потоковую передачу с одним пикселем или многопиксельную потоковую передачу. Потоковая передача с одним пикселем принимает и возвращает одно значение пикселя каждый такт. Мультипиксельная потоковая передача принимает и возвращает 4 или 8 пикселей за тактовый цикл для поддержки форматов с высокой частотой кадров или с высоким разрешением. Вместе с пикселем блок принимает и возвращает pixelcontrol шина, которая содержит пять управляющих сигналов. Сигналы управления указывают валидность каждого пикселя и их местоположение в системе координат. Для многопиксельной потоковой передачи один набор управляющих сигналов применяется ко всем четырем или восьми пикселям в векторе. Чтобы преобразовать систему координат (пиксельную матрицу) в последовательный поток пикселей и сигналы управления, используйте блок Frame To Pixels. Полное описание интерфейса см. в разделе Потоковый пиксельный интерфейс.

Этот блок также поддерживает мультипиксельные многокомпонентные потоки, где пиксельный вход является матрицей значений M-на-N, где M - количество пикселей, а N - количество компонентов. Эти значения соответствуют Number of pixels и Number of components параметрам блока Frame To Pixels.

Вход

расширить все

Для скалярных потоков пикселей задайте pixel как скаляр или вектор с 1-байт- Number of components значениями. Для многопиксельных потоков задайте pixel как матрицу с Number of pixels -by Number of components значениями интенсивности пикселя .

double и single типы данных поддерживаются для симуляции, но не для генерации HDL-кода.

Типы данных: fixed point | int8 | int16 | int32 | uint8 | uint16 | uint32 | Boolean | double | single

The pixelcontrol шина содержит пять сигналов. Сигналы описывают валидность пикселя и его местоположение в системе координат. Для получения дополнительной информации смотрите Pixel Control Bus.

Для многопиксельной потоковой передачи каждый вектор значений пикселей имеет один набор сигналов управления. Потому что вектор имеет только один valid сигнал, пиксели в векторе должны быть либо все допустимые, либо все недопустимые. The hStart и vStart сигналы применяются к пикселю с самым низким индексом в векторе. The hEnd и vEnd сигналы применяются к пикселю с самым высоким индексом в векторе.

Типы данных: bus

Выход

расширить все

Каждая линия выходного потока имеет смежные допустимые пиксели. Размерности и тип данных выходного потока pixel совпадают с размерностями входного потока pixel. Блок возвращает выход пикселей в виде скаляра, вектора с 1-байт- Number of components значениями или матрицы с Number of pixels-байт- Number of components значениями.

Сигналы управления, сопровождающие поток пикселей, возвращаются как pixelcontrol шина, содержащая пять сигналов. Сигналы указывают валидность пикселя и его местоположение в системе координат. Для получения дополнительной информации о протоколе сигнала смотрите Pixel Control Bus.

Блок Pixel Stream FIFO возвращает каждую линию пикселей с ctrl valid. сигнал непрерывно true между ctrl. hStart и ctrl. hEnd. Блок буферизует всю входную линию, прежде чем возвращает измененную линию.

Типы данных: bus

Параметры

расширить все

Задайте степень двойки, которая будет включать количество активных пикселей в одной горизонтальной линии. Если вы задаете значение, которое не является степенью двойки, блок использует следующую наибольшую степень двойки.

Алгоритмы

Блок Pixel Stream FIFO содержит контроллер памяти, счетчики чтения и записи и две ОЗУ. Одна ОЗУ сохраняет входные сигналы управления, а другая сохраняет входящий поток пикселей. Блок хранит действительные пиксели и сопровождающие их сигналы управления для каждой строки, как определяется входным ctrl hStart. и ctrl. hEnd сигналы. Буферизация удаляет любое групповое поведение входа потока. Когда сохранена полная линия действительных пикселей, блок возвращает новую непрерывную версию линии.

Когда вход pixel является вектором или матрицей, блок наследует Pixel RAM для каждого элемента. Схема показывает три Pixel RAM, чтобы представлять трехкомпонентный поток пикселей. Для многопиксельной потоковой передачи блок настраивает линейный buffer size, чтобы хранить 1/ Number of pixels пикселей. Например, с входным потоком 4 на 3, каждый буфер хранит ¼ из пикселей для линии, поэтому существует 12 пиксельных ОЗУ, каждый с 2m-2 местоположения.

Расширенные возможности

.

См. также

Блоки

Введенный в R2018a