Главная

Популярная публикация

Научная публикация

Случайная публикация

Обратная связь

ТОР 5 статей:

Методические подходы к анализу финансового состояния предприятия

Проблема периодизации русской литературы ХХ века. Краткая характеристика второй половины ХХ века

Ценовые и неценовые факторы

Характеристика шлифовальных кругов и ее маркировка

Служебные части речи. Предлог. Союз. Частицы

КАТЕГОРИИ:






Циклы с условием. Оператор цикла WHILE языка VHDL.




Оператор с ключевым словом while обязательно содержит в теле цикла операторы, изменяющие описанное в итерационной схеме условие. Операторы цикла повторяются, пока при вычислении условия не получается значения false. Условие проверяется каждый раз перед исполнением тела цикла. Если перед началом очередной итерации условие истинно, то она выполняется, в противном случае цикл завершается. Такой цикл имеет следующий синтаксис:

[метка:] while условие loop

последовательные операторы

end loop [ метка];

При подобной организации цикла предполагается, что в процессе его выполнения объекты, входящие в условие заголовка цикла, могут изменить свое значение в теле цикла.

while data="0000" loop

data <=data_in;

end loop;

Операторы управления сбором информации о ходе моделирования языка VHDL.

Оператор assert.

При отладке модели полезно контролировать значения, которые принимают объекты, и заносить информацию, получаемую в ходе работы модели, в отчет о проведенном моделировании. Для этого в программу на языке VHDL вводятся специальные операторы, управляющие сбором и сохранением информации о прогоняемой модели.

Для этих целей используется оператор assert, который имеет следующий синтаксис:

assert логическое выражение [report выражение1] [severity выражение2]

Если логическое выражение, стоящее в операторе assert, принимает в ходе моделирования значение false, моделирующая программа немедленно выдает уведомление об этом. Выражение, стоящее в секции report (если она имеется), при этом заносится в отчет. Это выражение может содержать текстовые строки, в качестве которых могут быть использованы атрибуты объектов, приводящие их значения к текстовому типу. Выражение, стоящее в секции severity, позволяет определить уровень ошибки. Оно должно принимать одно из значений, принадлежащих типу severity_level, определение которого выглядит следующим образом:

type severity_level is (note, warning, error, failure);

Например:

assert free_mem<=low_limit report "memory is small" severity warning;

Значение note соответствует ситуации, когда необходимо просто поместить информативное сообщение в отчет. Значение warning соответствует ситуации, когда в ходе выполнения модели возникло нечто, не характерное для нее. Уровень error используется, когда возникшая ситуация свидетельствует об ошибке. Уровень failure свидетельствует о нарушении целостности.

Оператор report

Если информация должна заноситься в отчет при любых условиях, то используется оператор report безусловного занесения информации в отчет. Он имеет следующий синтаксис:

report выражение1 [severity выражение2];






Не нашли, что искали? Воспользуйтесь поиском:

vikidalka.ru - 2015-2024 год. Все права принадлежат их авторам! Нарушение авторских прав | Нарушение персональных данных