Интегрируйте сторонние инструменты EDA в рабочий процесс проекта фильтра
С синтезом и свойствами автоматизации рабочего процесса, можно включить и настроить генерацию файлов скрипта для сторонних инструментов Electronic Design Automation (EDA).
Эти скрипты позволяют вам скомпилировать, моделировать и синтезировать сгенерированный HDL-код. Можно изменить команды, которые кодер распечатывает к скриптам путем установки свойств на этой странице. Кодер передает значения свойств fprintf
, чтобы создать скрипт. Можно использовать управляющие символы, поддержанные функцией fprintf
. Например, '\n'
вставляет новую строку в файл скрипта.
Задайте эти свойства как пары, разделенные запятой аргументов Name,Value
к функции generatehdl
. Name
является именем свойства, и Value
является соответствующим значением. Имя должно находиться внутри одинарных кавычек (' ').
Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.
Например:
fir = dsp.FIRFilter('Structure','Direct form antisymmetric'); generatehdl(fir,'InputDataType',numerictype(1,16,15),'VHDLLibraryName','my_work');
EDAScriptGeneration
— Включите генерацию скриптов для инструментов EDA'on'
(значение по умолчанию) | 'off'
Включите генерацию скриптов для инструментов EDA, заданных как одно из следующего:
'on'
— Кодер генерирует скрипт компиляции для Mentor Graphics® ModelSim®. Кроме того:
Если свойство GenerateHDLTestBench
установлено в 'on'
, кодер генерирует скрипты компиляции и симуляции для испытательного стенда.
Если свойство HDLSynthTool
установлено в значение кроме 'none'
, кодер генерирует скрипт синтеза.
'off'
Отключает генерацию скриптов, включая компиляцию, симуляцию и скрипты синтеза.
VHDLLibraryName
— Имя библиотеки используется в разделе инициализации скрипта компиляции'work'
(значение по умолчанию) | вектор символов | представляет скаляр в виде строкиИмя библиотеки, используемое в разделе инициализации скрипта компиляции, заданного как 'work'
, вектор символов или скаляр строки. Используйте это свойство избежать конфликтов по совпадению имен библиотеки с вашим существующим кодом VHDL. Кодер вставляет это имя в значение свойства HDLCompileInit
. По умолчанию кодер генерирует спецификацию библиотеки 'vlib work/n'
.
HDLCompileFilePostfix
— Снабдите постфиксом к имени файла скрипта компиляции'_compile.do'
(значение по умолчанию) | вектор символов | представляет скаляр в виде строкиПостфикс к имени файла скрипта компиляции, заданного как '_compile.do'
, вектор символов или скаляр строки. Кодер выводит имя скрипта путем добавления этого постфикса к сгенерированному имени фильтра или имени испытательного стенда. Например, если сгенерированным именем фильтра является my_design
, кодер добавляет постфиксный _compile.do
, чтобы сформировать имя my_design_compile.do
.
HDLCompileInit
— Initialization скрипта компиляции'vlib %s\n'
(значение по умолчанию) | вектор символов | представляет скаляр в виде строкиРаздел Initialization скрипта компиляции, заданного как 'vlib %s\n'
, вектор символов или скаляр строки. Кодер распечатывает эту команду к началу скрипта компиляции. Неявный аргумент, %s
, является именем библиотеки, заданной свойством VHDLLibraryName
. По умолчанию это свойство генерирует спецификацию библиотеки 'vlib work/n'
. Если вы компилируете свой проект фильтра с кодом от других библиотек, обновляете свойство VHDLLibraryName
избежать конфликтов по совпадению имен библиотеки.
HDLCompileVerilogCmd
— Команда, записанная в скрипт компиляции для каждого файла Verilog'vlog %s %s\n'
(значение по умолчанию) | вектор символов | представляет скаляр в виде строкиКоманда, записанная в скрипт компиляции для каждого файла Verilog, заданного как 'vlog %s %s\n'
, вектор символов или скаляр строки. Эта команда добавляет сгенерированный исходный файл HDL в список файлов, которые будут скомпилированы. Кодер распечатывает эту команду к скрипту однажды для каждого сгенерированного файла HDL. Первый неявный аргумент, %s
, принимает значение свойства SimulatorFlags
. Второй неявный аргумент является именем файла текущего модуля.
HDLCompileVHDLCmd
— Команда, записанная в скрипт компиляции для каждого файла VHDL'vcom %s %s\n'
(значение по умолчанию) | вектор символов | представляет скаляр в виде строкиКоманда, записанная в скрипт компиляции для каждого файла VHDL, заданного как 'vcom %s %s\n'
, вектор символов или скаляр строки. Эта команда добавляет сгенерированный исходный файл HDL в список файлов, которые будут скомпилированы. Кодер распечатывает эту команду к скрипту однажды для каждого сгенерированного файла HDL. Первый неявный аргумент, %s
, принимает значение свойства SimulatorFlags
. Второй неявный аргумент является именем файла текущей сущности.
SimulatorFlags
— Опции средства моделирования''
(значение по умолчанию) | вектор символов | представляет скаляр в виде строкиОпции средства моделирования, заданные как ''
, вектор символов или скаляр строки. Задайте опции, которые характерны для вашего приложения и средства моделирования, которое вы используете. Например, если вы используете 1076-1993 компилятора VHDL, задаете флаг '-93'
. Кодер добавляет флаги, которые вы задаете с этой опцией к команде компиляции в сгенерированных скриптах инструмента EDA. Свойства HDLCompileVHDLCmd
или HDLCompileVerilogCmd
определяют команду компиляции.
HDLCompileTerm
— Termination скрипта компиляции''
(значение по умолчанию) | вектор символов | представляет скаляр в виде строкиРаздел Termination скрипта компиляции, заданного как ''
, вектор символов или скаляр строки. Кодер распечатывает эту последовательность символов в конец скрипта компиляции.
HDLSimFilePostfix
— Снабдите постфиксом к имени файла скрипта симуляции'_sim.do'
(значение по умолчанию) | вектор символов | представляет скаляр в виде строкиПостфикс к имени файла скрипта симуляции, заданного как '_sim.do'
, вектор символов или скаляр строки. Кодер выводит имя скрипта путем добавления этого постфикса к сгенерированному имени испытательного стенда. Например, если именем испытательного стенда является my_design_tb
, кодер добавляет постфиксный _sim.do
, чтобы сформировать имя my_design_tb_sim.do
.
Это свойство применяется только, когда свойства EDAScriptGeneration
и GenerateHDLTestBench
установлены в 'on'
.
HDLSimInit
— Initialization скрипта симуляции'onbreak resume\nonerror resume\n'
(значение по умолчанию) | вектор символов | представляет скаляр в виде строкиРаздел Initialization скрипта симуляции, заданного как 'onbreak resume\nonerror resume\n'
, вектор символов или скаляр строки. Кодер распечатывает эту команду к началу скрипта симуляции.
Это свойство применяется только, когда свойства EDAScriptGeneration
и GenerateHDLTestBench
установлены в 'on'
.
HDLSimCmd
— Команда записана в скрипт симуляции'vsim -novopt %s.%s\n'
(значение по умолчанию) | вектор символов | представляет скаляр в виде строкиКоманда записана в скрипт симуляции, заданный как 'vsim -novopt %s.%s\n'
, вектор символов или скаляр строки. Первый неявный аргумент, %s
, является именем библиотеки. Второй неявный аргумент является сгенерированным именем испытательного стенда. Для Verilog название библиотеки является 'work'
и не может быть изменено. Для VHDL имя библиотеки является значением свойства VHDLLibraryName
. Если вы компилируете свой проект фильтра с кодом от других библиотек, обновляете VHDLLibraryName
, чтобы избежать конфликтов по совпадению имен библиотеки.
Это свойство применяется только, когда свойства EDAScriptGeneration
и GenerateHDLTestBench
установлены в 'on'
.
HDLSimViewWaveCmd
— Просматривающая форму волны команда записана в скрипт симуляции'add wave sim:%s\n'
(значение по умолчанию) | вектор символов | представляет скаляр в виде строкиПросматривающая форму волны команда записана в скрипт симуляции, заданный как 'add wave sim:%s\n'
, вектор символов или скаляр строки. Неявный аргумент, %s
, является командой, которая добавляет пути прохождения сигнала для входных сигналов верхнего уровня DUT, выходных сигналов, и выводит ссылочные сигналы.
Это свойство применяется только, когда свойства EDAScriptGeneration
и GenerateHDLTestBench
установлены в 'on'
.
HDLSimTerm
— Termination скрипта симуляции'run -all\n'
(значение по умолчанию) | вектор символов | представляет скаляр в виде строкиРаздел Termination скрипта симуляции, заданного как 'run -all\n'
, вектор символов или скаляр строки. Кодер распечатывает эту команду в конец скрипта симуляции.
Это свойство применяется только, когда свойства EDAScriptGeneration
и GenerateHDLTestBench
установлены в 'on'
.
HDLSynthTool
— Сгенерируйте скрипт для инструмента синтеза'none'
(значение по умолчанию) | 'Vivado'
| 'ISE'
| 'Libero'
| 'Precision'
| 'Quartus'
| 'Synplify'
| 'Custom'
Сгенерируйте скрипт для инструмента синтеза, заданного как одно из следующих.
Значение 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'
.
HDLSynthFilePostfix
— Снабдите постфиксом к имени файла скрипта синтезаПостфикс к имени файла скрипта синтеза, заданного как вектор символов или скаляр строки. Кодер выводит имя скрипта путем добавления этого постфикса к сгенерированному имени фильтра.
Постфиксное значение по умолчанию зависит от инструмента синтеза, заданного свойством 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'
.
HDLSynthInit
— Initialization скрипта синтезаРаздел 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'
.
HDLSynthCmd
— Команда, записанная в скрипт синтеза для каждого файла HDLКоманда, записанная в скрипт синтеза для каждого файла HDL, заданного как вектор символов или скаляр строки. Команда добавляет сгенерированный исходный файл HDL в список файлов, которые будут скомпилированы. Кодер распечатывает эту команду к скрипту однажды для каждого сгенерированного файла HDL. Значение по умолчанию этого свойства зависит от инструмента синтеза, заданного свойством HDLSynthTool
. Например, когда HDLSynthTool
установлен в 'Quartus'
, это свойство значения по умолчанию к 'set_global_assignment -name %s_FILE "$src_dir/%s"\n'
. Первым неявным аргументом является TargetLanguage
. Второй неявный аргумент является именем файла HDL.
Это свойство применяется только, когда свойство EDAScriptGeneration
установлено в 'on'
, и свойство HDLSynthTool
установлено в значение кроме 'none'
.
HDLSynthTerm
— Termination скрипта синтезаРаздел 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, левая панель. |
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.