hdlcoder.runWorkflow

Запуск рабочего процесса генерации и развертывания HDL-кода

Описание

hdlcoder.runWorkflow(DUT) запускает рабочий процесс генерации и развертывания HDL-кода с настройками строения рабочего процесса по умолчанию.

hdlcoder.runWorkflow(DUT,workflow_config) запускает рабочий процесс генерации и развертывания HDL-кода в соответствии с заданным строением рабочего процесса, workflow_config.

Одним из лучшей практики является использование HDL Workflow Advisor для настройки рабочего процесса, а затем экспорт скрипта рабочего процесса. Команды в скрипте рабочего процесса создают и конфигурируют объект строения рабочего процесса, соответствующий настройкам в HDL Workflow Advisor. Скрипт включает в себя hdlcoder.runWorkflow команда. Дополнительные сведения см. в разделе Запуск рабочего процесса HDL со скриптом.

hdlcoder.runWorkflow(DUT,workflow_config, Name,Value) запускает рабочий процесс генерации и развертывания HDL-кода в соответствии с заданным строением рабочего процесса, workflow_config, с дополнительными опциями, заданными одним или несколькими Name,Value аргументы.

Одним из лучшей практики является использование HDL Workflow Advisor для настройки рабочего процесса, а затем экспорт скрипта рабочего процесса. Команды в скрипте рабочего процесса создают и конфигурируют объект строения рабочего процесса, соответствующий настройкам в HDL Workflow Advisor. Скрипт включает в себя hdlcoder.runWorkflow команда. Дополнительные сведения см. в разделе Запуск рабочего процесса HDL со скриптом.

Примеры

свернуть все

Этот пример является общим скриптом рабочего процесса ASIC/FPGA, который нацелен на устройство Virtex-7 Xilinx. В нем используется инструмент синтеза Xilinx Vivado. Пример генерирует HDL-код для sfir_fixed моделирует, и выполняет синтез и анализ FPGA.

Перед запуском Рабочего процесса

Перед запуском рабочего процесса необходимо установить инструмент синтеза. Используйте hdlsetuptoolpath, чтобы задать путь к инструменту синтеза.

hdlsetuptoolpath('ToolName','Xilinx Vivado','ToolPath',...
'L:\Xilinx\Vivado\2016.2\bin\vivado.bat');
Prepending following Xilinx Vivado path(s) to the system path:
L:\Xilinx\Vivado\2016.2\bin

Задайте модель для выполнения рабочего процесса

Чтобы запустить HDL- рабочего процесса с настройками по умолчанию для подсистемы DUT, modelname/DUT, в командной строке введите:

open_system('sfir_fixed');

Моделируйте параметры HDL

Установите параметры модели HDL

hdlset_param('sfir_fixed', 'SynthesisTool', 'Xilinx Vivado');
hdlset_param('sfir_fixed', 'SynthesisToolChipFamily', 'Virtex7');
hdlset_param('sfir_fixed', 'SynthesisToolDeviceName', 'xc7vx485t');
hdlset_param('sfir_fixed', 'SynthesisToolPackageName', 'ffg1761');
hdlset_param('sfir_fixed', 'SynthesisToolSpeedValue', '-2');

Настройки строения рабочего процесса

  • Создайте объект строения рабочего процесса с настройками по умолчанию

  • Укажите путь к папке проекта. Этот шаг является необязательным

hWC = hdlcoder.WorkflowConfig('SynthesisTool','Xilinx Vivado', ...
    'TargetWorkflow','Generic ASIC/FPGA');

hWC.ProjectFolder = 'C:/Temp/hdl_prj';

Запуск рабочего процесса

hdlcoder.runWorkflow('sfir_fixed/symmetric_fir', hWC);
### Workflow begin.
### Loading settings from model.
### ++++++++++++++ Task Generate RTL Code and Testbench ++++++++++++++
### Generating HDL for 'sfir_fixed/symmetric_fir'.
### Starting HDL check.
### Begin VHDL Code Generation for 'sfir_fixed'.
### Working on sfir_fixed/symmetric_fir as C:\Temp\hdl_prj\hdlsrc\sfir_fixed\symmetric_fir.vhd.
### Creating HDL Code Generation Check Report file://C:\Temp\hdl_prj\hdlsrc\sfir_fixed\symmetric_fir_report.html
### HDL check for 'sfir_fixed' complete with 0 errors, 0 warnings, and 0 messages.
### HDL code generation complete.
### ++++++++++++++ Task Create Project ++++++++++++++
### Generating Xilinx Vivado 2016.2 project: <a href="matlab:downstream.tool.openTargetTool('L:\Xilinx\Vivado\2016.2\bin\vivado symmetric_fir_vivado.xpr &','C:\Temp\hdl_prj\vivado_prj\symmetric_fir_vivado.xpr',1);">C:\Temp\hdl_prj\vivado_prj\symmetric_fir_vivado.xpr</a>
### Generated logfile: <a href="matlab:edit('C:\Temp\hdl_prj\hdlsrc\sfir_fixed\workflow_task_CreateProject.log')">C:\Temp\hdl_prj\hdlsrc\sfir_fixed\workflow_task_CreateProject.log</a>
### Task "Create Project" successful.
### ++++++++++++++ Task Run Synthesis ++++++++++++++
### Generated logfile: <a href="matlab:edit('C:\Temp\hdl_prj\hdlsrc\sfir_fixed\workflow_task_RunSynthesis.log')">C:\Temp\hdl_prj\hdlsrc\sfir_fixed\workflow_task_RunSynthesis.log</a>
### Task "Run Synthesis" successful.
### ++++++++++++++ Task Annotate Model with Synthesis Result ++++++++++++++
### Parsing the timing file...
### Matched Source = 'sfir_fixed/symmetric_fir/ud1_out1'
### Matched Destination = 'sfir_fixed/symmetric_fir/y_out'
### Highlighting CP 1 from 'sfir_fixed/symmetric_fir/ud1_out1' to 'sfir_fixed/symmetric_fir/y_out' ...
### Click <a href="matlab:hdlannotatepath('reset')">here</a> to reset highlighting.
### Workflow complete.

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

свернуть все

Полный путь к DUT, заданный как вектор символов.

Пример: 'hdlcoder_led_blinking/led_counter'

Строения рабочего процесса генерации и развертывания HDL-кода, заданные как hdlcoder.WorkflowConfig объект.

Аргументы в виде пар имя-значение

Задайте необязательные разделенные разделенными запятой парами Name,Value аргументы. Name - имя аргумента и Value - соответствующее значение. Name должны находиться внутри кавычек. Можно задать несколько аргументов в виде пар имен и значений в любом порядке Name1,Value1,...,NameN,ValueN.

Пример: 'Verbosity','on'

Когда Verbosity оставлено значение по умолчанию 'off'минимальная генерация кода прогресса сообщения отображаются как запуски рабочего процесса генерации кода и развертывания. Когда Verbosity установлено в 'on'отображаются более подробные сообщения о прогрессе.

Введенный в R2015b