Проектирование цифровых устройств с помощью языка описания аппаратуры VHDL. Бобрешов А.М - 34 стр.

UptoLike

Составители: 

34
случае не ясно, сколько повторяющихся блоков в устройстве реально
потребуется.
Кроме раздела "итерационная схема" порядок реализации
повторений может задаваться дополнительными операторами: оператором
перехода к следующему циклу next и оператором выхода из цикла exit.
Оператор next блокирует исполнение всех последующих операторов
в текущем цикле и обеспечивает автоматический переход к следующей
итерации
.
Оператор записывается следующим образом:
[ <метка>: ] next [ <метка оператора повторения> ] [ when
<условие>]
Оператор exit прекращает исполнение не только текущего цикла, но
всех последующих циклов, заданных итерационной схемой исполняемого
оператора.
[ <метка>: ] exit [ <метка оператора повторения> ] [ when <условие>]
Необязательная метка в операторах next и exit используется при
записи вложенных циклов. Такая метка указывает
, что прерывается не
только данный цикл, но и все иерархически предшествующие ему циклы,
вплоть до цикла, оператор которого помечен этой меткой.
Оператор проверки
Оператор проверки assert относится к категории конструкций, не
подлежащих реализации в аппаратуре. Оператор служит для выявления
специфических ситуаций, которые могут возникать в процессе
компиляции и моделирования, и выдачи сообщений разработчику.
assert <булевское
выражение>[report<сообщение>][severity<важность>];
При выполнении этого оператора в процессе моделирования
проверяется условие, и если получено значение true
, выполняется переход
к следующему оператору программы. В противном случае на терминал
выводится сообщения. Если опция report <строка сообщения>
отсутствует, выводится стандартное сообщение "Assertion violation"
(нарушение условия проверки). После этого поведение моделирующей
программы определяется значением уровня важности. Уровень важности
это выражение (обычно константа) типа SEVERITY_LEVEL. Данные этого
типа могут принимать четыре значения
, причем значения NOTE и
WARNING имеют чисто информационный характер, и в этом случае
моделирование после выдачи сообщения продолжается, а значения
ERROR и FAILURE используются для обнаружения полностью
некорректных ситуаций, требующих прекращения моделирования. По
                                  34
случае не ясно, сколько повторяющихся блоков в устройстве реально
потребуется.
      Кроме раздела "итерационная схема" порядок реализации
повторений может задаваться дополнительными операторами: оператором
перехода к следующему циклу next и оператором выхода из цикла exit.
      Оператор next блокирует исполнение всех последующих операторов
в текущем цикле и обеспечивает автоматический переход к следующей
итерации.
      Оператор записывается следующим образом:
 [ <метка>: ] next [ <метка оператора повторения> ] [ when
<условие>]

      Оператор exit прекращает исполнение не только текущего цикла, но
всех последующих циклов, заданных итерационной схемой исполняемого
оператора.
[ <метка>: ] exit [ <метка оператора повторения> ] [ when <условие>]
      Необязательная метка в операторах next и exit используется при
записи вложенных циклов. Такая метка указывает, что прерывается не
только данный цикл, но и все иерархически предшествующие ему циклы,
вплоть до цикла, оператор которого помечен этой меткой.

                          Оператор проверки
       Оператор проверки assert относится к категории конструкций, не
подлежащих реализации в аппаратуре. Оператор служит для выявления
специфических ситуаций, которые могут возникать в процессе
компиляции и моделирования, и выдачи сообщений разработчику.
assert <булевское
выражение>[report<сообщение>][severity<важность>];
       При выполнении этого оператора в процессе моделирования
проверяется условие, и если получено значение true, выполняется переход
к следующему оператору программы. В противном случае на терминал
выводится сообщения. Если опция report <строка сообщения>
отсутствует, выводится стандартное сообщение "Assertion violation"
(нарушение условия проверки). После этого поведение моделирующей
программы определяется значением уровня важности. Уровень важности –
это выражение (обычно константа) типа SEVERITY_LEVEL. Данные этого
типа могут принимать четыре значения, причем значения NOTE и
WARNING имеют чисто информационный характер, и в этом случае
моделирование после выдачи сообщения продолжается, а значения
ERROR и FAILURE используются для обнаружения полностью
некорректных ситуаций, требующих прекращения моделирования. По