Можно просмотреть и установить связанные с HDL свойства блока, такие как реализация и параметры реализации, на уровне модели и на отдельном блочном уровне.
Чтобы установить Параметры блоков HDL от пользовательского интерфейса, откройте диалоговое окно HDL Block Properties и измените свойства блока по мере необходимости. Открыть диалоговое окно HDL Properties, также:
Во вкладке Apps выберите HDL Coder. Вкладка HDL Code появляется. Выберите блок, для которого вы хотите видеть параметры HDL и затем выбрать HDL Block Properties.
Щелкните правой кнопкой по блоку и выберите HDL Code> HDL Block Properties.
Чтобы установить связанные с HDL параметры в командной строке, используйте hdlset_param
. hdlset_param (
устанавливает связанные с HDL параметры в блоке или модели, на которую ссылается path
, Name, Value
)path
. Один или несколько Name,Value
парные аргументы задают параметры, которые будут установлены, и их значения. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN
.
Например, чтобы установиться коэффициент совместного использования на 2 и архитектура к Tree
для блока в вашей модели:
Откройте модель и выберите блок.
Введите следующее в командной строке:
hdlset_param (gcb, 'SharingFactor', 2, 'Architecture', 'Tree')
Чтобы просмотреть параметры HDL, заданные для блока, используйте hdlget_param
. Например, чтобы видеть, что архитектура HDL устанавливает для блока в командной строке, введите:
hdlget_param(gcb, 'Architecture')
Можно также присвоить возвращенные параметры блоков HDL массиву ячеек. В следующем примере, hdlget_param
возвращает все параметры блоков HDL и значения к массиву ячеек p
.
p = hdlget_param(gcb, 'all')
p = 'Architecture' 'Linear' 'InputPipeline' [0] 'OutputPipeline' [0]
Для моделей, которые содержат большое количество блоков, с помощью диалогового окна HDL Block Properties , чтобы выбрать реализации блока или установить параметры реализации для отдельных блоков, может не быть практичным. Более эффективно установить связанную с HDL модель или параметры блоков для нескольких блоков программно. Можно использовать find_system
функция, чтобы определить местоположение блоков интереса. Затем используйте цикл, чтобы вызвать hdlset_param
устанавливать желаемые параметры для каждого блока.
Следующий пример использует sfir_fixed
модель, чтобы продемонстрировать, как определить местоположение группы блоков в подсистеме и задать тот же выход, конвейерно обрабатывает глубину для всех блоков.
open_system('sfir_fixed') % Find all Product blocks in the model prodblocks = find_system('sfir_fixed/symmetric_fir', ... 'BlockType', 'Product') % Set the output pipeline to 2 for the blocks for ii=1:length(prodblocks) hdlset_param(prodblocks{ii}, 'OutputPipeline', 2) end
prodblocks = 4×1 cell array {'sfir_fixed/symmetric_fir/m1'} {'sfir_fixed/symmetric_fir/m2'} {'sfir_fixed/symmetric_fir/m3'} {'sfir_fixed/symmetric_fir/m4'}
Чтобы проверить настройки, используйте hdlget_param
отобразить значение OutputPipeline
параметр для блоков.
% Get the output pipeline to 2 for the blocks for ii=1:length(prodblocks) hdlget_param(prodblocks{ii}, 'OutputPipeline') end
ans = 2 ans = 2 ans = 2 ans = 2
hdldispblkparams
отображает параметры блоков HDL, доступные для заданного блока.
Следующий пример отображает параметры блоков HDL и значения для в настоящее время выбранного блока.
hdldispblkparams(gcb,'all')
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% HDL Block Parameters ('simplevectorsum/vsum/Sum of Elements') %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Implementation Architecture : Linear Implementation Parameters InputPipeline : 0 OutputPipeline : 0
См. также hdldispblkparams
.
Следующий пример отображает только параметры блоков HDL, которые имеют значения не по умолчанию для в настоящее время выбранного блока.
hdldispblkparams(gcb)
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% HDL Block Parameters ('simplevectorsum/vsum/Sum of Elements') %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Implementation Architecture : Linear Implementation Parameters OutputPipeline : 3
Чтобы отобразить имена и значения связанных с HDL свойств в модели, используйте hdldispmdlparams
функция.
Следующий пример отображает связанные с HDL свойства и значения текущей модели, в алфавитном порядке именем свойства.
hdldispmdlparams(bdroot,'all')
%%%%%%%%%%%%%%%%%%%%%%%%% HDL CodeGen Parameters %%%%%%%%%%%%%%%%%%%%%%%%% AddPipelineRegisters : 'off' Backannotation : 'on' BlockGenerateLabel : '_gen' CheckHDL : 'off' ClockEnableInputPort : 'clk_enable' . . . VerilogFileExtension : '.v'
Следующий пример отображает только связанные с HDL свойства, которые имеют значения не по умолчанию.
hdldispmdlparams(bdroot)
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% HDL CodeGen Parameters (non-default) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% CodeGenerationOutput : 'GenerateHDLCodeAndDisplayGeneratedModel' HDLSubsystem : 'simplevectorsum/vsum' ResetAssertedLevel : 'Active-low' Traceability : 'on'