FIL Frame To Pixels

Преобразуйте основанное на системе координат видео в пиксельный поток для FPGA в цикле

  • Библиотека:
  • Vision HDL Toolbox / Интерфейсы ввода-вывода

Описание

Блок FIL Frame To Pixels выполняет то же преобразование системы координат к пикселю как блок Frame To Pixels. Кроме того, можно сконфигурировать ширину выходного вектора, чтобы быть одним пикселем, линией или целой системой координат. Блок возвращает управляющие сигналы в векторах той же ширины как пиксельные данные. Эта оптимизация делает более эффективное использование из линии связи между платой FPGA и вашей симуляцией Simulink® при использовании FPGA в цикле (FIL). Чтобы запустить FPGA в цикле, у вас должна быть лицензия HDL Verifier™.

Когда вы генерируете файл программирования для цели FIL в Simulink, инструмент создает модель, чтобы сравнить симуляцию FIL с вашим проектом Simulink. Для проектов Vision HDL Toolbox™ блок FIL в той модели реплицирует передающий потоком пиксель интерфейс, чтобы отправить один пиксель за один раз в FPGA. Можно изменить автоматически сгенерированную модель, чтобы использовать FIL Frame To Pixels и блоки FIL Pixels To Frame, чтобы улучшить коммуникационную пропускную способность с платой FPGA путем передачи одного кадра за один раз. Поскольку, как изменить автоматически сгенерированную модель, смотрите FPGA в цикле.

Задайте тот же формат видео и размер вектора для блока FIL Frames To Pixels и блока FIL Pixels To Frame.

Порты

Входной параметр

развернуть все

Полный образ, заданный как (Active pixels per line) (Active video lines)-by-N матрицей. Высота и ширина являются размерностями активного изображения, заданного в Video format. N является Number of components, используемый, чтобы выразить один пиксель.

Когда вы используете мультипиксельный поток (Number of pixels> 1), необходимо представлять каждый пиксель с одним значением (N = 1).

Типы данных: single | double | int | uint | Boolean | fixed point

Вывод

развернуть все

Пиксели изображения, возвращенные как вектор значений M, где M является шириной Output vector format. Существуют порты данных N, где N является Number of components. Тип данных совпадает с типом данных frame.

Когда вы используете мультипиксельный поток (Number of pixels> 1), необходимо представлять каждый пиксель с одним значением (N = 1). Выходными данными для мультипиксельной потоковой передачи является Number of pixels-by-M матрица. Необходимо разделить эту матрицу в векторы-строки Number of pixels из длины M для входа к FIL DUT. Для получения дополнительной информации смотрите FPGA в Симуляции цикла с Мультипиксельной Потоковой передачей.

Типы данных: single | double | int | uint | Boolean | fixed point

Первый пиксель в горизонтальной линии системы координат, возвращенной как Boolean вектор значений M.

Для мультипиксельной потоковой передачи hStartOut применяется к пикселю с самым низким индексом в соответствующем столбце.

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

Последний пиксель в горизонтальной линии системы координат, возвращенной как Boolean вектор значений M.

Для мультипиксельной потоковой передачи hEndOut применяется к пикселю с самым высоким индексом в соответствующем столбце.

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

Первый пиксель в первой (главной) линии системы координат, возвращенной как Boolean вектор значений M.

Для мультипиксельной потоковой передачи vStartOut применяется к пикселю с самым низким индексом в соответствующем столбце.

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

Последний пиксель в последнем (нижняя часть) линия системы координат, возвращенной как Boolean вектор значений M.

Для мультипиксельной потоковой передачи vEndOut применяется к пикселю с самым высоким индексом в соответствующем столбце.

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

Допустимый пиксельный индикатор, возвращенный как Boolean вектор значений M.

Для мультипиксельной потоковой передачи пиксели в соответствующем столбце - или все допустимые или все недопустимые.

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

Параметры

развернуть все

Количество значений раньше представляло каждый пиксель. Каждый пиксель может иметь 1, 3, или 4 компонента. Установите этот параметр на 1 для полутонового видео. Установите этот параметр на 3 для цветного видео, например, {R, G, B} или {Y, Cb, Cr}. Установите этот параметр на 4 использовать цвет с альфа-каналом для прозрачности.

Зависимости

Когда Number of pixels больше 1, необходимо установить Number of components на 1.

Количество пикселей в каждом столбце выходной матрицы, заданной как 1, 4, или 8.

Зависимости

Когда вы используете мультипиксельный поток (Number of pixels> 1), необходимо представлять каждый пиксель с одним значением (N = 1). Выходными данными для мультипиксельной потоковой передачи является Number of pixels-by-M матрица. Необходимо разделить эту матрицу в векторы-строки Number of pixels из длины M для входа к FIL DUT. Для получения дополнительной информации смотрите FPGA в Симуляции цикла с Мультипиксельной Потоковой передачей.

Размер вектора раньше связывался с подсистемой FPGA. Блок возвращает входные пиксели и управляющие сигналы в векторах той же длины. Блок вычисляет длину векторов на основе параметра Video format.

  • Pixel — Возвратите скалярные значения для пикселя и управляющих сигналов.

  • Line — Возвратите (Total pixels per line)-by-1 векторы.

  • Frame — Возвратите (Total pixels per line × Total video lines)-by-1 векторы.

Большее значение приводит к более быстрой связи между платой FPGA и Simulink. Выберите самую большую опцию, которую могут поддержать ввод-вывод и ресурсы памяти на вашей плате.

Для мультипиксельной потоковой передачи задайте одну из этих опций для выходного размера.

  • Pixel — Возвратите 1 на (Number of pixels) вектор пиксельных значений и скалярные управляющие сигналы, которые применяются ко всем пикселям в каждом векторе.

  • Line — Возвратитесь (Total pixels per line/Number of pixels)-by-Number of pixels матрица пиксельных значений и вектор управляющих сигналов длины (Total pixels per line) / (Number of pixels).

  • Frame — Возвратитесь (Total pixels per line × Total video lines/Number of pixels) - матрицей Number of pixels пиксельных значений и вектором управляющих сигналов длины (Total pixels per line × Total video lines)/Number of pixels.

Размерности активных и неактивных областей в видеокадре. Чтобы выбрать предопределенный формат, выберите из списка Video format. Фактические размерности системы координат отображены в разделе Video Format Parameters. Для пользовательского формата выберите Custom, и затем задайте размерности как целые числа.

Размерности заданы в схеме.

Примечание

Шаг расчета вашего источника видеосигнала должен совпадать с общим количеством пикселей в системе координат вашего блока Frame To Pixels. Общим количеством пикселей является Total pixels per line × Total video lines, таким образом, устанавливает шаг расчета на это значение.

Video FormatActive Pixels Per LineActive Video LinesTotal Pixels Per LineTotal Video LinesStarting Active LineEnding Active LineFront PorchBack Porch
240p320240 40232412404438
480p6404808005253651516 144
480pH7204808585253351216122
576p7205768646254762212132
720p1280720165075025744110260
768p102476813448061077724296
1024p128010241688106642106548360
1080p (значение по умолчанию)192010802200112542112188192
1200p160012002160125050124964496
2KCinema204810802750112542112163963
4KUHDTV384021604400225042220188472
8KUHDTV7680432088004500424361881032
CustomПользователь -
заданный
Пользователь -
заданный
Пользователь -
заданный
Пользователь -
заданный
Пользователь -
заданный
Пользователь -
заданный
Пользователь -
заданный
Пользователь -
заданный

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

  • Для горизонтального направления Total pixels per line должен быть больше или быть равен Front porch + Active pixels per line. Блок вычисляет Back porch = Total pixels per lineFront porchActive pixels per line.

  • Для вертикального направления Total video lines должен быть больше или быть равен Starting active line + Active video lines − 1. Блок вычисляет Ending active line = Starting active line + Active video lines − 1.

При использовании блока Line Memory или блоков, которые используют внутреннюю память линии с пользовательским форматом видео, применяются дальнейшие требования:

  • Active pixels per line должен быть больше 1.

  • Горизонтальный интервал гашения или Back porch + Front porch, должен выполнить этим инструкциям:

    • Общее количество Back porch + Front porch должно быть по крайней мере 2 раза самым большим размером ядра алгоритма в блоках после блока Frame To Pixel. Если размер ядра меньше 4, общий подъезд должен составить по крайней мере 8 пикселей.

    • Back porch должен составить по крайней мере 6 пикселей. Этот параметр является количеством неактивных пикселей перед первым допустимым пикселем в системе координат.

При использовании мультипиксельной потоковой передачи (Number of pixels> 1) эти требования применяются.

  • Формат видео должен иметь измерения по горизонтали, делимые значением параметров Number of pixels. Измерения по горизонтали установлены этими параметрами: Active pixels per line, Total pixels per line, Front porch и Back porch. Стандартные видео протоколы 480p, 720p, 1080p и 4k UHD поддерживают Number of pixels, равный 4 или 8.

  • Минимальный размер входного кадра для мультипиксельной потоковой передачи (любые 4 или 8 пикселей) является 18 rows-32 столбцами.

  • Выберите свой размер ядра и Active pixels per line, таким образом, что (Active pixels per line) / (Number of pixels) является, по крайней мере, шириной ядра.

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

Представленный в R2015a