Эта страница описывает параметры конфигурации, которые находятся во вкладке HDL Code Generation> Target> General диалогового окна Configuration Parameters. Используя параметры в этом разделе, можно использовать задержку, балансирующуюся, чтобы совпадать с задержками, введенными оптимизацией и множителями раздела на основе порогового значения.
Когда вы включаете определенную оптимизацию, такую как конвейеризация или разделение ресурсов, или задаете определенные реализации блока и генерируете код, HDL Coder™ вводит задержки трубопровода вдоль определенных путей прохождения сигнала в вашей модели. По умолчанию установка Balance delays включена. Генератор кода обнаруживает эти задержки трубопровода, введенные вдоль одного пути, и затем вставляет соответствие с задержками на других путях.
Убедиться, что сгенерированная модель после генерации HDL-кода функционально эквивалентна исходному Simulink® модель, уезжайте, эта установка включила. Если вы отключаете эту установку, HDL Coder генерирует предупреждение, что числовые различия могут произойти в модели валидации. Чтобы зафиксировать это предупреждение, включите Balance delays на модели или запустите установку балансировки задержки Проверки проверки модели.
Значение по умолчанию: On
Включает задержку, балансирующуюся на вашей модели. Если HDL Coder обнаруживает введение новых задержек вдоль одного пути, соответствующие задержки вставляются на других путях. Когда балансировка задержки включена, сгенерированная модель функционально эквивалентна исходной модели.
Задержка вдоль путей прохождения сигнала не может быть сбалансирована, и сгенерированная сила модели не быть функционально эквивалентной исходной модели.
Свойство:
BalanceDelays |
Ввод: символьный вектор |
Значение:
'on' | 'off' |
Значение по умолчанию:
'on' |
Чтобы установить это свойство, используйте функции hdlset_param
или makehdl
. Чтобы просмотреть значение свойства, используйте функцию hdlget_param
.
Например, можно включить BalanceDelays
установка, когда вы генерируете HDL-код для symmetric_fir
подсистема в sfir_fixed
модель с помощью любого из этих методов.
Передайте свойство в качестве аргумента к makehdl
функция.
makehdl('sfir_fixed/symmetric_fir', ... 'BalanceDelays','on')
Когда вы используете hdlset_param
, можно установить параметр на модели и затем сгенерировать использование HDL-кода makehdl
.
hdlset_param('sfir_fixed','BalanceDelays','on') makehdl('sfir_fixed/symmetric_fir')
Значение по умолчанию: On
Преобразуйте блоки Delay с ненулевым Initial condition в вашей модели Simulink с блоками Delay с нулевым Initial condition и некоторой дополнительной логикой в сгенерированном HDL-коде.
При помощи этого преобразования HDL Coder может выполнить оптимизацию, такую как совместное использование, распределенная конвейеризация и тактовая частота, конвейерно обрабатывающая эффективнее, и препятствовать тому, чтобы утверждение было инициировано в модели валидации.
Не преобразовывайте блоки Delay с ненулевым Initial condition в вашей модели Simulink.
Свойство:
TransformNonZeroInitValDelay |
Ввод: символьный вектор |
Значение:
'on' | 'off' |
Значение по умолчанию:
'on' |
Чтобы установить это свойство, используйте функции hdlset_param
или makehdl
. Чтобы просмотреть значение свойства, используйте функцию hdlget_param
.
Например, можно установить TransformNonZeroInitValDelay
свойство к on
когда вы генерируете HDL-код для symmetric_fir
подсистема в sfir_fixed
модель с помощью любого из этих методов.
Передайте свойство в качестве аргумента к makehdl
функция.
makehdl('sfir_fixed/symmetric_fir', ... 'TransformNonZeroInitValDelay','on')
Когда вы используете hdlset_param
, можно установить параметр на модели и затем сгенерировать использование HDL-кода makehdl
.
hdlset_param('sfir_fixed','TransformNonZeroInitValDelay','on') makehdl('sfir_fixed/symmetric_fir')
Значение по умолчанию:
Inf
Множители раздела так, чтобы N был максимальной входной шириной бита множителя.
Этот параметр задает максимальную входную ширину бита для множителя. Если по крайней мере одни из входных параметров ко множителю имеют немного ширины, больше, чем пороговое значение, генератор кода разделяет множитель в меньшие множители.
Чтобы улучшить аппаратные результаты отображения, установите порог разделения множителя к входной ширине бита DSP или оборудования множителя на вашем целевом устройстве.
Не делите множители.
Свойство:
MultiplierPartitioningThreshold |
Ввод: целое число |
Значение: целое число, больше, чем или равный 0 |
Значение по умолчанию:
Inf |
Чтобы установить это свойство, используйте функции hdlset_param
или makehdl
. Чтобы просмотреть значение свойства, используйте функцию hdlget_param
.
Например, можно установить MultiplierPartitioningThreshold
к 16
когда вы генерируете HDL-код для symmetric_fir
подсистема в sfir_fixed
модель с помощью любого из этих методов.
Передайте свойство в качестве аргумента к makehdl
функция.
makehdl('sfir_fixed/symmetric_fir', ... 'MultiplierPartitioningThreshold','16')
Когда вы используете hdlset_param
, можно установить параметр на модели и затем сгенерировать использование HDL-кода makehdl
.
hdlset_param('sfir_fixed', 'MultiplierPartitioningThreshold','16') makehdl('sfir_fixed/symmetric_fir')
Значение по умолчанию: On
Удаляет порты в вашем проекте, которые не использованы от сгенерированного HDL-кода. Эта оптимизация сохраняет неиспользуемые порты в подсистеме DUT верхнего уровня. Все другие неиспользуемые порты удалены из HDL-кода.
Не удаляйте неиспользуемые порты из HDL-кода.
Свойство:
DeleteUnusedPorts |
Ввод: символьный вектор |
Значение:
'on' | 'off' |
Значение по умолчанию:
'on' |
Чтобы установить это свойство, используйте функции hdlset_param
или makehdl
. Чтобы просмотреть значение свойства, используйте функцию hdlget_param
.
Например, можно установить DeleteUnusedPorts
свойство к off
когда вы генерируете HDL-код для symmetric_fir
подсистема в sfir_fixed
модель с помощью любого из этих методов.
Передайте свойство в качестве аргумента к makehdl
функция.
makehdl('sfir_fixed/symmetric_fir', ... 'DeleteUnusedPorts','off')
Когда вы используете hdlset_param
, можно установить параметр на модели и затем сгенерировать использование HDL-кода makehdl
.
hdlset_param('sfir_fixed','DeleteUnusedPorts','on') makehdl('sfir_fixed/symmetric_fir')