Этот пример показывает проекты поддержек HDL Coder™ с несколькими частотами дискретизации, когда вы запускаете рабочий процесс IP Core Generation
.
Если вы только используете ведомые интерфейсы AXI4, такие как AXI4 или AXI4-облегченный, и когда вы используете Free running
для Синхронизации Процессора/FPGA, можно использовать несколько частот дискретизации в проекте без ограничений.
Когда вы сопоставляете интерфейсные порты с AXI4-потоком, AXI4-потоковым Видео, или Основные интерфейсы AXI4, чтобы использовать несколько частот дискретизации, убеждаются, что порты DUT, которые сопоставляют с интерфейсами AXI4, запущенными на самом быстром уровне проекта после генерации HDL-кода.
Эти примеры иллюстрируют, как можно смоделировать проект с несколькими частотами дискретизации при использовании AXI4-потока, AXI4-потокового Видео или AXI4-основных Основных интерфейсов.
Можно запустить часть проекта на более медленном уровне при проверке, что порты DUT, которые сопоставляют с интерфейсным выполнением на самом быстром уровне. Этот пример иллюстрирует отображение с AXI4-потоковыми Видеоинтерфейсами, но можно сопоставить с AXI4-потоком или Основными интерфейсами AXI4 при помощи этого подхода.
Для примера откройте модель hdlcoder_axi_video_multirate
.
load_system('hdlcoder_axi_video_multirate') set_param('hdlcoder_axi_video_multirate','SimulationCommand','update') open_system('hdlcoder_axi_video_multirate')
В этой модели, порты DUT, соответствующие вводам и выводам Video_Algorithm
, запущенного на самом быстром уровне.
open_system('hdlcoder_axi_video_multirate/Multirate_DUT')
Эти порты могут поэтому сопоставить с AXI4-потоковыми Видеоинтерфейсами. Часть проекта, запускающегося вне этого алгоритма, соответствующего входу slow
и выводу slowOut
, запускающемуся на более медленном уровне, может сопоставить с AXI4 или AXI4-облегченными интерфейсами. Эти данные показывают пример интерфейса целевой платформы, сопоставляющего для этой модели.
Примечание: Чтобы использовать Пиксельные блоки Селектора Шины управления Создателя и Пикселя Шины управления, необходимо было установить Vision HDL Toolbox™. Если у вас нет Vision HDL Toolbox, используйте блоки Селектора Создателя и Шины Шины вместо этого.
См. также Образцовый Проект для AXI4-потоковой Генерации Видеоинтерфейса.
С многоскоростной поддержкой можно применить оптимизацию, такую как разделение ресурсов к части проекта, запускающегося на более медленном уровне. Убедитесь, что оптимизация не вводит более быстрый уровень в вашей модели Simulink™. Этот пример иллюстрирует отображение с AXI4-потоковыми интерфейсами, но можно сопоставить с AXI4-потоковым Видео или Основными интерфейсами AXI4 при помощи этого подхода.
Для примера откройте модель hdlcoder_axi_multirate_sharing
load_system('hdlcoder_axi_multirate_sharing') set_param('hdlcoder_axi_multirate_sharing','SimulationCommand','update') open_system('hdlcoder_axi_multirate_sharing/DUT')
В этой модели Подсистема содержит простое, умножаются - добавляет алгоритм, запускающийся на более медленном уровне.
open_system('hdlcoder_axi_multirate_sharing/DUT/Subsystem')
Разделение ресурсов может быть применено к этой части проекта. Видеть параметры экономило на этой Подсистеме, выполнение hdlsaveparams
.
hdlsaveparams('hdlcoder_axi_multirate_sharing/DUT/Subsystem')
%% Set Model 'hdlcoder_axi_multirate_sharing' HDL parameters hdlset_param('hdlcoder_axi_multirate_sharing', 'HDLSubsystem', 'hdlcoder_axi_multirate_sharing/DUT'); hdlset_param('hdlcoder_axi_multirate_sharing', 'ReferenceDesign', 'Default system with AXI4-Stream interface'); hdlset_param('hdlcoder_axi_multirate_sharing', 'ResetType', 'Synchronous'); hdlset_param('hdlcoder_axi_multirate_sharing', 'SynthesisTool', 'Xilinx Vivado'); hdlset_param('hdlcoder_axi_multirate_sharing', 'SynthesisToolChipFamily', 'Zynq'); hdlset_param('hdlcoder_axi_multirate_sharing', 'SynthesisToolDeviceName', 'xc7z020'); hdlset_param('hdlcoder_axi_multirate_sharing', 'SynthesisToolPackageName', 'clg484'); hdlset_param('hdlcoder_axi_multirate_sharing', 'SynthesisToolSpeedValue', '-1'); hdlset_param('hdlcoder_axi_multirate_sharing', 'TargetDirectory', 'hdl_prj\hdlsrc'); hdlset_param('hdlcoder_axi_multirate_sharing', 'TargetFrequency', 50); hdlset_param('hdlcoder_axi_multirate_sharing', 'TargetPlatform', 'ZedBoard'); hdlset_param('hdlcoder_axi_multirate_sharing', 'Workflow', 'IP Core Generation'); % Set SubSystem HDL parameters hdlset_param('hdlcoder_axi_multirate_sharing/DUT/Subsystem', 'SharingFactor', 3);
Можно сопоставить интерфейсные порты DUT с AXI4-потоковыми Ведущими или AXI4-потоковыми Ведомыми интерфейсами. Эти данные показывают пример интерфейса целевой платформы, сопоставляющего для этой модели.
См. также Образцовый Проект для AXI4-потоковой Генерации Интерфейса.