прежде

Выполнение диаграммы управления с оператором before

Синтаксис

before(n,E)
before(n,time_unit)

Описание

пример

before(n,E) возвращает true, если основное событие E произошло меньше, чем времена n начиная с активации ассоциированной страны. В противном случае оператор возвращает false.

В графике без входных событий, before(n,tick) или before(n,wakeup) возвращает true, если график разбудил меньше, чем времена n начиная с активации ассоциированной страны.

Оператор before сбрасывает счетчик для E к 0 каждым разам, когда ассоциированная страна повторно активирует.

пример

before(n,time_unit) возвращает true, если меньше, чем модули n времени симуляции протекли начиная с активации ассоциированной страны. В противном случае оператор возвращает false. Задайте time_unit как секунды (sec), миллисекунды (msec), или микросекунды (usec).

Оператор before сбрасывает счетчик для sec, msec и usec к 0 каждым разам, когда ассоциированная страна повторно активирует.

Примеры

развернуть все

Шаг переменной temp однажды на цикл CLK до состояния достигает предела MAX.

on before(MAX,CLK): temp++;

Переход из ассоциированной страны происходит только на широковещательной передаче события ROTATE, но не позднее, чем 10 циклов CLK после активации состояния.

ROTATE[before(10,CLK)]

Если переменная temp превышает 75 и меньше чем 12,34 секунд, протекли начиная с активации состояния происходит переход из ассоциированной страны.

[temp > 75 && before(12.34,sec)]

Советы

  • Можно использовать кавычки, чтобы заключить ключевые слова 'tick', 'wakeup', 'sec', 'msec' и 'usec'. Например, before(5,'tick') эквивалентен before(5,tick).

Введенный в R2014b