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

UptoLike

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

29
Последовательные операторы
Последовательные операторы по характеру исполнения подобны
операторам традиционных языков программирования. Операторы этого
типа обязательно "вложены" в оператор process или подпрограмму и
выполняются последовательно друг за другом в порядке записи.
Результаты исполнения последовательных операторов недоступны прочим
программным модулям по крайней мере до того, как будет выполнен
оператор ожидания wait, или
не будут выполнены до конца все процессы,
инициированные общим событием. Это можно трактовать так, что с точки
зрения "окружения" все операторы, в теле процесса от его начала до
оператора wait, а при отсутствии waitдо конца тела, исполняются
одномоментно.
Операторы присваивания
Оператор присваивания значения переменной := всегда является
последовательным оператором. Результат присваивания значения
переменной становится доступен сразу после выполнения оператора.
Сигнальное присваивание (<=) бывает последовательным и параллельным
в зависимости от расположения оператора. Синтаксис оператора
присваивания значения сигналу имеет вид:
<приемник> <= [ <модель задержки>] <временная диаграмма>;
<модель задержки> : :=transport | inertial <выражение
времени>
<временная диаграмма> ::= элемент поведения> «, элемент поведения> »
<элемент поведения> : := <выражение> [after<выражение времени)
Временные интервалы для определения переходов временной
диаграммы задаются относительно времени возникновения
инициирующего события. Например, в следующем операторе
присваивания все временные интервалы отсчитываются относительно
момента его срабатывания:
X<=’1’ after 5ns, ‘0’ after 20ns, ‘Z’ after 50 ns,’0’ after 70 ns;
Различают транспортную и инерционную модели задержки. Если в
операторе
присваивания присутствует ключевое слово transport,
предполагается транспортная задержка. Транспортная модель
предполагает идеализацию поведения устройства так, что любой импульс,
сколь коротким он бы ни был, воспроизводится на выходе.
Y<= transport 'X' after 35 ns;
По умолчанию, а также если использовано объявление inertial,
предполагается инерционная задержка. В VHDL'87 слово inertial не
определено, инерционная задержка выбирается по умолчанию при
                                      29
     Последовательные операторы
     Последовательные операторы по характеру исполнения подобны
операторам традиционных языков программирования. Операторы этого
типа обязательно "вложены" в оператор process или подпрограмму и
выполняются последовательно друг за другом в порядке записи.
Результаты исполнения последовательных операторов недоступны прочим
программным модулям по крайней мере до того, как будет выполнен
оператор ожидания wait, или не будут выполнены до конца все процессы,
инициированные общим событием. Это можно трактовать так, что с точки
зрения "окружения" все операторы, в теле процесса от его начала до
оператора wait, а при отсутствии wait — до конца тела, исполняются
одномоментно.

                      Операторы присваивания
     Оператор присваивания значения переменной := всегда является
последовательным оператором. Результат присваивания значения
переменной становится доступен сразу после выполнения оператора.
Сигнальное присваивание (<=) бывает последовательным и параллельным
в зависимости от расположения оператора. Синтаксис оператора
присваивания значения сигналу имеет вид:

<приемник> <= [ <модель задержки>] <временная диаграмма>;
<модель задержки> : :=transport | inertial <выражение времени>
<временная диаграмма> ::= элемент поведения> «, элемент поведения> »
<элемент поведения> : := <выражение> [after<выражение времени)

      Временные интервалы для определения переходов временной
диаграммы      задаются         относительно        времени        возникновения
инициирующего события. Например, в следующем операторе
присваивания все временные интервалы отсчитываются относительно
момента его срабатывания:
      X<=’1’ after 5ns, ‘0’ after 20ns, ‘Z’ after 50 ns,’0’ after 70 ns;
      Различают транспортную и инерционную модели задержки. Если в
операторе присваивания присутствует ключевое слово transport,
предполагается      транспортная        задержка.      Транспортная       модель
предполагает идеализацию поведения устройства так, что любой импульс,
сколь коротким он бы ни был, воспроизводится на выходе.
      Y<= transport 'X' after 35 ns;
      По умолчанию, а также если использовано объявление inertial,
предполагается инерционная задержка. В VHDL'87 слово inertial не
определено, инерционная задержка выбирается по умолчанию при