HDL Synthesis and Workflow Automation Properties

Интегрируйте сторонние инструменты EDA в рабочий процесс создания фильтра

С синтезом и свойствами автоматизации рабочего процесса, можно включить и настроить генерацию файлов скрипта для сторонних инструментов Electronic Design Automation (EDA).

Эти скрипты позволяют вам скомпилировать, симулировать и синтезировать сгенерированный HDL-код. Можно изменить команды, которые кодер распечатывает к скриптам путем установки свойств на этой странице. Кодер передает значения свойств fprintf создать скрипт. Можно использовать управляющие символы, поддержанные fprintf функция. Например, '\n' вставляет новую строку в файл скрипта.

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

Например:

fir = dsp.FIRFilter('Structure','Direct form antisymmetric');
generatehdl(fir,'InputDataType',numerictype(1,16,15),'VHDLLibraryName','my_work');

Сгенерируйте скрипты

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

Включите генерацию скриптов для инструментов EDA, заданных как одно из следующего:

  • 'on' — Кодер генерирует скрипт компиляции для Mentor Graphics® ModelSim®. Кроме того:

    • Если GenerateHDLTestBench свойство установлено в 'on', кодер генерирует скрипты компиляции и симуляции для испытательного стенда.

    • Если HDLSynthTool свойство установлено в значение кроме 'none', кодер генерирует скрипт синтеза.

  • 'off' — Отключает генерацию скриптов, включая компиляцию, симуляцию и скрипты синтеза.

Смотрите интеграцию со сторонними инструментами EDA.

Скрипты компиляции

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

Имя библиотеки, используемое в разделе инициализации скрипта компиляции, заданного как 'work', вектор символов или скаляр строки. Используйте это свойство избежать конфликтов по совпадению имен библиотеки с вашим существующим кодом VHDL. Кодер вставляет это имя в HDLCompileInit значение свойства. По умолчанию кодер генерирует спецификацию библиотеки 'vlib work/n'.

Постфикс к имени файла скрипта компиляции, заданного как '_compile.do', вектор символов или скаляр строки. Кодер выводит имя скрипта путем добавления этого постфикса к сгенерированному имени фильтра или имени испытательного стенда. Например, если сгенерированным именем фильтра является my_design, кодер добавляет постфиксный _compile.do сформировать имя my_design_compile.do.

Раздел Initialization скрипта компиляции, заданного как 'vlib %s\n', вектор символов или скаляр строки. Кодер распечатывает эту команду к началу скрипта компиляции. Неявный аргумент, %s, имя библиотеки, заданной VHDLLibraryName свойство. По умолчанию это свойство генерирует спецификацию библиотеки 'vlib work/n'. Если вы компилируете свое создание фильтра с кодом от других библиотек, обновляете VHDLLibraryName свойство избежать конфликтов по совпадению имен библиотеки.

Команда, записанная в скрипт компиляции для каждого файла Verilog, заданного как 'vlog %s %s\n', вектор символов или скаляр строки. Эта команда добавляет сгенерированный исходный файл HDL в список файлов, которые будут скомпилированы. Кодер распечатывает эту команду к скрипту однажды для каждого сгенерированного файла HDL. Первый неявный аргумент, %s, принимает значение SimulatorFlags свойство. Второй неявный аргумент является именем файла текущего модуля.

Команда, записанная в скрипт компиляции для каждого файла VHDL, заданного как 'vcom %s %s\n', вектор символов или скаляр строки. Эта команда добавляет сгенерированный исходный файл HDL в список файлов, которые будут скомпилированы. Кодер распечатывает эту команду к скрипту однажды для каждого сгенерированного файла HDL. Первый неявный аргумент, %s, принимает значение SimulatorFlags свойство. Второй неявный аргумент является именем файла текущей сущности.

Опции средства моделирования, заданные как '', вектор символов или скаляр строки. Задайте опции, которые характерны для вашего приложения и средства моделирования, которое вы используете. Например, если вы используете 1076-1993 компилятора VHDL, задаете флаг '-93'. Кодер добавляет флаги, которые вы задаете с этой опцией к команде компиляции в сгенерированных скриптах инструмента EDA. HDLCompileVHDLCmd или HDLCompileVerilogCmd свойства определяют команду компиляции.

Раздел Termination скрипта компиляции, заданного как '', вектор символов или скаляр строки. Кодер распечатывает эту последовательность символов в конец скрипта компиляции.

Скрипты симуляции

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

Постфикс к имени файла скрипта симуляции, заданного как '_sim.do', вектор символов или скаляр строки. Кодер выводит имя скрипта путем добавления этого постфикса к сгенерированному имени испытательного стенда. Например, если именем испытательного стенда является my_design_tb, кодер добавляет постфиксный _sim.do сформировать имя my_design_tb_sim.do.

Зависимости

Это свойство применяется только когда EDAScriptGeneration и GenerateHDLTestBench свойства установлены в 'on'.

Раздел Initialization скрипта симуляции, заданного как 'onbreak resume\nonerror resume\n', вектор символов или скаляр строки. Кодер распечатывает эту команду к началу скрипта симуляции.

Зависимости

Это свойство применяется только когда EDAScriptGeneration и GenerateHDLTestBench свойства установлены в 'on'.

Команда записана в скрипт симуляции, заданный как 'vsim -novopt %s.%s\n', вектор символов или скаляр строки. Первый неявный аргумент, %s, имя библиотеки. Второй неявный аргумент является сгенерированным именем испытательного стенда. Для Verilog именем библиотеки является 'work' и не может быть изменен. Для VHDL имя библиотеки является значением VHDLLibraryName свойство. Если вы компилируете свое создание фильтра с кодом от других библиотек, обновляете VHDLLibraryName избегать конфликтов по совпадению имен библиотеки.

Зависимости

Это свойство применяется только когда EDAScriptGeneration и GenerateHDLTestBench свойства установлены в 'on'.

Просматривающая форму волны команда записана в скрипт симуляции, заданный как 'add wave sim:%s\n', вектор символов или скаляр строки. Неявный аргумент, %s, команда, которая добавляет пути прохождения сигнала для входных сигналов верхнего уровня DUT, выходных сигналов, и выводит ссылочные сигналы.

Зависимости

Это свойство применяется только когда EDAScriptGeneration и GenerateHDLTestBench свойства установлены в 'on'.

Раздел Termination скрипта симуляции, заданного как 'run -all\n', вектор символов или скаляр строки. Кодер распечатывает эту команду в конец скрипта симуляции.

Зависимости

Это свойство применяется только когда EDAScriptGeneration и GenerateHDLTestBench свойства установлены в 'on'.

Скрипты синтеза

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

Сгенерируйте скрипт для инструмента синтеза, заданного как одно из следующих.

Значение HDLSynthToolИнструмент синтеза
'none'Нет данных. Кодер не генерирует скрипт синтеза.
'Vivado'

Xilinx® Vivado®

'ISE'Xilinx ISE
'Libero'

Microsemi® Libero®

'Precision'Точность Mentor Graphics
'Quartus'Altera® Quartus II
'Synplify'

Synopsys® Synplify Pro®

'Custom'Кодер генерирует скрипт, который поддерживает ваш инструмент, на основе настроек HDLSynthCmd, HDLSynthInit, и HDLSynthTerm свойства.

При генерации скрипта кодер использует специфичные для инструмента значения, установленные HDLSynthCmd, HDLSynthInit, и HDLSynthTerm свойства. Настройте эти свойства согласно своему целевому устройству и ограничениям.

Зависимости

Это свойство применяется только когда EDAScriptGeneration свойство установлено в 'on'.

Постфикс к имени файла скрипта синтеза, заданного как вектор символов или скаляр строки. Кодер выводит имя скрипта путем добавления этого постфикса к сгенерированному имени фильтра.

Постфиксное значение по умолчанию зависит от инструмента синтеза, заданного HDLSynthTool свойство. Например, если значение HDLSynthTool 'Synplify', затем HDLSynthFilePostfix значения по умолчанию к '_synplify.tcl'. Поэтому, если сгенерированным именем фильтра является my_design, кодер добавляет постфиксный _synplify.tcl сформировать имя файла скрипта синтеза my_design_synplify.tcl.

Значение HDLSynthToolЗначение HDLSynthFilePostfix по умолчанию
noneНет данных
'Vivado''_vivado.tcl'
'ISE''_ise.tcl'
'Libero''_libero.tcl'
'Precision''_precision.tcl'
'Quartus''_quartus.tcl'
'Synplify''_synplify.tcl'
'Custom''_custom.tcl'

Зависимости

Это свойство применяется только когда EDAScriptGeneration свойство установлено в 'on' и HDLSynthTool свойство установлено в значение кроме 'none'.

Раздел Initialization скрипта синтеза, заданного как вектор символов или скаляр строки. Значение по умолчанию этого свойства зависит от инструмента синтеза, заданного HDLSynthTool свойство. Например, если вы устанавливаете HDLSynthTool к 'ISE', это свойство значения по умолчанию к:

set src_dir [pwd]\nset prj_dir "synprj"\n
file mkdir ../$prj_dir\n
cd ../$prj_dir\n
project new %s.xise\n
project set family Virtex4\n
project set device xc4vsx35\n
project set package ff668\n
project set speed -10\n
Неявный аргумент, %s, модуль верхнего уровня или имя сущности.

Зависимости

Это свойство применяется только когда EDAScriptGeneration свойство установлено в 'on' и HDLSynthTool свойство установлено в значение кроме 'none'.

Команда, записанная в скрипт синтеза для каждого файла HDL, заданного как вектор символов или скаляр строки. Команда добавляет сгенерированный исходный файл HDL в список файлов, которые будут скомпилированы. Кодер распечатывает эту команду к скрипту однажды для каждого сгенерированного файла HDL. Значение по умолчанию этого свойства зависит от инструмента синтеза, заданного HDLSynthTool свойство. Например, когда HDLSynthTool установлен в 'Quartus', это свойство значения по умолчанию к 'set_global_assignment -name %s_FILE "$src_dir/%s"\n'. Первым неявным аргументом является TargetLanguage. Второй неявный аргумент является именем файла HDL.

Зависимости

Это свойство применяется только когда EDAScriptGeneration свойство установлено в 'on' и HDLSynthTool свойство установлено в значение кроме 'none'.

Раздел Termination скрипта синтеза, заданного как вектор символов или скаляр строки. Кодер распечатывает эту последовательность символов в конец скрипта синтеза. Значение по умолчанию зависит от инструмента синтеза, заданного HDLSynthTool свойство. Например, если вы устанавливаете HDLSynthTool к 'Synplify', это свойство значения по умолчанию к:

set_option -technology VIRTEX4\n
set_option -part XC4VSX35\n
set_option -synthesis_onoff_pragma 0\n
set_option -frequency auto\n
project -run synthesis\n

Зависимости

Это свойство применяется только когда EDAScriptGeneration свойство установлено в 'on' и HDLSynthTool свойство установлено в значение кроме 'none'.

Советы

Если вы используете функциональный fdhdltool чтобы сгенерировать HDL-код, можно установить соответствующие свойства в диалоговом окне Generate HDL.

СвойствоМестоположение в диалоговом окне
Compilation scriptВкладка EDA Tool Scripts, левая панель. (VHDLLibraryName свойство не имеет соответствующей опции в диалоговом окне.)
Simulation scriptВкладка EDA Tool Scripts, левая панель. К флагам симуляции доступа смотрите вкладку Test Bench> Configuration.
Synthesis scriptВкладка EDA Tool Scripts, левая панель.