Контроль выполнения: оператор утверждения и механизм атрибутов

Одной из задач синтеза схем является обеспечение требований корректности работы схемы в реальных условиях и согласованности временных соотношений входных сигналов (например, кода адреса, кода данных и управляющих сигналов приема кода, задания режима работы схемы, выборки микросхемы и прочее), задержек переключения элементов схемы и т.д.

Поэтому важнейшими задачами моделирования как инструмента анализа схем должны быть:
1) обеспечение контроля корректности (достоверности и непротиворечивости) входных данных;
2) обеспечение контроля временных ограничений.

Требования достоверности входных данных возникают из-за того, что возможны неисправности при формировании или передаче данных, например, появление неправильного (несуществующего) адреса памяти, или могут появляться так называемые запрещенные состояния, например, асинхронные входы R=S=1 в RS-, D-, JK-, T-триггерах, регистрах, счетчиках.

Временные ограничения включают:
- время установки сигнала (сигналы адреса и данных должны быть стабильны в течение определенного интервала времени перед тем, как произойдет изменение управляющего сигнала, например C — синхросигнала, разрешающего прием или сдвиг в регистре сдвига, CS — сигнала выборки микросхемы и т.д.);
- время удержания сигнала (сигналы на информационных входах должны сохранять свои значения в некотором промежутке времени после изменения управляющего сигнала);
- длительность сигнала, длительность фронта и среза сигнала (длительность импульса в состоянии 0 и 1 с учетом длительности фронта и среза для большинства схем не должна быть меньше
задержки переключения элементов, на которые поступает входной импульс).

На языке VHDL указанные ограничения могут описываться и обрабатываться различными способами, основанными на использовании соответствующих операторов контроля и атрибутов.

Операторы контроля (или оператор утверждения) обеспечивают проверку некоторого условия (булевого выражения), записываемого после зарезервированного ASSERT. Если это условие нарушается, т.е. принимает значение false, то после зарезервированного REPORT в строках отладчика DEBUG выдается сообщение об ошибке, которое следует заключать в кавычки. Затем после слова SEVERITY указывается уровень серьезности ошибки: warning, error, failure.

Таким образом, оператор утверждения имеет вид:

ASSERT <булево выражение или условие> REPORT "сообщение об ошибке" SEVERITY <уровень серьезности ошибки>

Для контроля временных ограничений в качестве условия записывается такое выражение (утверждение), которое принимает значение TRUE при соответствующих допустимых отношениях временных ограничений. При этом удобно использовать атрибуты сигналов. Используя механизм атрибутов, в VHDL-программе можно по-разному записать одни и те же условия.

Например, проверка условия появления фронта сигнала clock, т.е. перехода из 0 в 1, может быть записана тремя способами:

1. clock’event and clock = ’1′
2. not clock’stable and clock = ’1′
3. clock’last_value = ’0′ and not clock’stable

Похожие записи
  1. Утверждения в SQL
  2. Задачи, решаемые применением языка VHDL для анализа и синтеза дискретных систем
  3. Редактор временных диаграмм – ALDEC Active-HDL
  4. Процессы и сигналы в VHDL
  5. Моделирование в VANTAGE
  6. Генератор временных диаграмм в виде таблиц в Active-HDL
  7. Средства отладки в Aldec Active-HDL
  8. Типы данных в VHDL
  9. Операции в VHDL
  10. Проект и структура описания объектов в VHDL
  11. Настройка производительности базы данных
  12. Система компенсации давления
  13. Домены (области значений) в SQL
  14. Реализация имитационного моделирования
  15. Функции и процедуры, пакеты в VHDL

Оставить комментарий


Закажи работу СЕЙЧАС



Статистика

Рейтинг@Mail.ru