Для моделей, которые содержат большое количество блоков, с помощью диалогового окна HDL Block Properties , чтобы выбрать реализации блока или установить параметры реализации для отдельных блоков, может не быть практичным. Более эффективно установить связанную с HDL модель или параметры блоков для нескольких блоков программно. Можно использовать функцию find_system
, чтобы определить местоположение блоков интереса. Затем используйте цикл, чтобы вызвать hdlset_param
, чтобы установить желаемые параметры для каждого блока.
Дополнительную информацию см. в документации Simulink® о find_system
.
Следующий пример использует модель sfir_fixed
, чтобы продемонстрировать, как определить местоположение группы блоков в подсистеме и задать ту же выходную конвейерную глубину для всех блоков.
Откройте модель sfir_fixed
.
Нажмите на подсистему sfir_fixed/symmetric_fir
, чтобы выбрать его.
Найдите все блоки продукта в подсистеме можно следующим образом:
prodblocks = find_system(gcb, 'BlockType', 'Product') prodblocks = 'sfir_fixed/symmetric_fir/Product' 'sfir_fixed/symmetric_fir/Product1' 'sfir_fixed/symmetric_fir/Product2' 'sfir_fixed/symmetric_fir/Product3'
Установите выходную конвейерную глубину на 2 для всех выбранных блоков.
for ii=1:length(prodblocks), hdlset_param(prodblocks{ii}, 'OutputPipeline', 2), end;
Чтобы проверить настройки, отобразите значение параметра OutputPipeline
для блоков.
for ii=1:length(prodblocks), hdlget_param(prodblocks{ii}, 'OutputPipeline'), end; ans = 2 ans = 2 ans = 2 ans = 2