Главы     1     2     3     4     5     6     7     8     9     10     11     12     13     14     15     16     17     18   

Управляемая подсистема For Iterator Subsystem


Управляемая подсистема For Iterator Subsystem представляет собой подсистему, которая выполняется неоднократно в течение одного такта моделирования. Количество повторений должно быть известно заранее и может задаваться внешним источником сигнала или с помощью параметра блока. Основные свойства подсистемы задает итерационный блок For Iterator. Блок является аналогом оператора цикла For языка программирования C. Блока For может находиться в любом месте подсистемы. Его параметры перечислены ниже.

 

Параметры:

States when starting – Состояние подсистемы при следующем запуске. Значение параметра выбирается из списка:

held – Использовать предыдущее состояние (последнее состояние когда система была активна).

reset – Использоватьначальное (исходное) состояние.

Source of number of iterations (флажок) – Источник задающий количество итераций.

internal – Внутренний.

external – Внешний.

Number of iterations – Количество итераций. Параметр доступен, если выбран внутренний источник числа итераций.

Show iteration number port – Отобразить на пиктограмме блока выходной порт, с которого снимается сигнал номера итерации.

Output data type – Тип данных выходного сигнала порта. Значение параметра выбирается из списка: int32, int16, int8 и double.

 

На рисунке 9.9.9 показан пример использования For Iterator Subsystem. В примере выполняется накопление суммы значений с шагом равным 10. Количество итераций задается внешним источником и равно 20.

С-код, соответствующий алгоритму работы For Iterator Subsystem в приведенном примере выглядит следующим образом:

 

sum = 0; iterations = 20; sum_increment = 10; for (i = 0; i < iterations; i ++) { sum = sum + sum_increment; }