В этом примере используется моделирование FPGA-in-the-Loop (FIL) для ускорения моделирования обработки видео с помощью Simulink ® путем добавления FPGA. Показанный процесс анализирует простую систему, которая точит входной видеосигнал RGB на 24 кадра в секунду.
В этом примере используется Toolbox™ Computer Vision совместно с HDL Coder™ и HDL Verifier™, чтобы показать рабочий процесс проектирования для реализации моделирования FIL.
Инструменты, необходимые для выполнения этого примера:
ПО для проектирования FPGA (ПО для проектирования Xilinx ® ISE ® или Vivado ® или Intel ® Quartus ® Prime)
Одна из поддерживаемых плат и аксессуаров для разработки FPGA (для этого примера не поддерживаются платы ML403, SP601, BeMicro SDK и Cyclone III Starter Kit). Дополнительные сведения о поддерживаемых аппаратных средствах см. в разделе Поддерживаемые устройства FPGA для проверки FPGA.
Для подключения с использованием Ethernet: Gigabit Ethernet адаптер, установленный на хост-компьютере, Gigabit Ethernet кросс-кабель
Для подключения с использованием кабеля JTAG: USB Blaster I или II и драйвера для плат Altera FPGA. Кабель и драйвер Digilent ® JTAG для плат Xilinx FPGA.
Для подключения с использованием PCI Express ®: плата FPGA установлена в слот PCI Express хост-компьютера.
Программное обеспечение MATLAB ® и FPGA можно установить на компьютере или на сетевом устройстве. Если вы используете программное обеспечение из сети, вам потребуется второй сетевой адаптер, установленный на вашем компьютере, чтобы предоставить частную сеть для платы разработки FPGA. Чтобы узнать, как установить сетевой адаптер, обратитесь к руководству по оборудованию и сети для компьютера.
Откройте модель и запустите моделирование для 0.21s.
Из-за большого количества данных для обработки моделирование не выполняется свободно. Мы повысим скорость моделирования в следующих шагах, используя FPGA-in-the-Loop.

Создайте код HDL для подсистемы резкости потокового видео, выполнив следующие действия:
a. Щелкните правой кнопкой мыши блок с меткой Streaming 2-D FIR Filter.
b. В контекстном меню выберите «Код HDL» > «Создать HDL для подсистемы».
Также можно создать код HDL, введя следующую команду в подсказке MATLAB:
makehdl('fil_videosharp_sim/Streaming 2-D FIR Filter')
Если вы не хотите создавать код HDL, вы можете использовать предварительно созданные файлы HDL, расположенные в videosharp_hdlsrc папка.
Перед использованием FPGA-in-the-Loop убедитесь, что системная среда правильно настроена для доступа к программному обеспечению FPGA. Функцию hdlsetuptoolpath можно использовать для добавления Xilinx Vivado или Intel Quartus Prime к системному пути текущей сессии MATLAB.
Для плат Xilinx FPGA запустите
hdlsetuptoolpath('ToolName', 'Xilinx Vivado', 'ToolPath', 'C:\Xilinx\Vivado\2019.2\bin');
В этом примере предполагается, что исполняемый файл Xilinx Vivado находится в папке C :\Xilinx\Vivado\2019.2\bin. Замените фактическим местоположением исполняемого файла, если оно отличается.
Для системных плат Intel запустите
hdlsetuptoolpath('ToolName','Altera Quartus II','ToolPath','C:\Intel\quartus\18.1\bin64');
В этом примере предполагается, что исполняемый файл Intel Quartus Prime находится в формате C :\Intel\quartus\18.1\bin64. Замените фактическим местоположением исполняемого файла, если оно отличается.
Введите следующую команду в приглашении MATLAB для запуска мастера FIL:
filWizard;
Выберите плату в списке плат.
a. Добавьте ранее созданные исходные файлы HDL для Streaming Video Sharpening подсистема.
b. Выбрать Streaming_2_D_FIR_Filter.vhd в качестве файла верхнего уровня.
Не изменяйте ничего в этом представлении.
a. Выберите папку вывода.
b. Нажмите кнопку Build, чтобы построить блок FIL и файл программирования FPGA.
В процессе построения выполняются следующие действия.
Блок FIL с именем Streaming_2_D_FIR_Filter создается в новой модели. Не закрывайте эту модель.
После создания новой модели мастер FIL открывает командное окно, в котором программное обеспечение FPGA выполняет синтез, подгонку, локализацию и трассировку, анализ синхронизации и генерацию файлов программирования FPGA. После завершения процесса разработки FPGA в окне команд появится сообщение о том, что окно можно закрыть. Закройте окно.
c. Закройте модель fil_videosharp_sim.slx.
a. Откройте модель fil_videosharp_fpga.slx.
b. Скопируйте в него ранее созданный блок FIL в fil_videosharp_fpga.slx, где написано «Заменить на блок FIL»
Ответ. Дважды щелкните блок FIL в модели резкости потокового видео с FPGA-in-the-Loop, чтобы открыть маску блока.
b. Щелкните Загрузить (Load).
c. Нажмите кнопку «ОК», чтобы закрыть маску блока.
Выполните моделирование в течение 10 с и наблюдайте за улучшением производительности.

На этом завершается пример ускорения обработки видео с использованием FPGA-In-the-Loop.