Научная литература
booksshare.net -> Добавить материал -> Физика -> Александров Е.К. -> "Микропроцессорные системы" -> 500

Микропроцессорные системы - Александров Е.К.

Александров Е.К., Грушвицкий Р.И., Купрянов М.С., Мартынов О.Е. Микропроцессорные системы — Спб.: Политехника, 2002. — 935 c.
ISBN 5-7325-0516-4
Скачать (прямая ссылка): mikroprocessorniesistemi2002.djvu
Предыдущая << 1 .. 494 495 496 497 498 499 < 500 > 501 502 503 504 505 506 .. 528 >> Следующая

один и тот же физический источник не может иметь несколько
инициализируемых событий. Именно поэтому в совокупности выполняемых
последовательных операторов не может встречаться несколько
последовательных операторов назначения значения одному и тому же сигналу,
которые могли бы привести к коллизии, когда не ясно, какое же значение
должен приобрести сигнал после выполнения всей совокупности операторов.
Параллельные операторы назначения сигнала, по своей сути, предполагают
однозначность (для каждого момента времени) состояния сигнала после
исполнения оператора.
Оператор условного назначения сигнала (Conditional Signal Assignment
Statement) Описание оператора.
<Conditional_Signal_Assignment_Statement>::=
<идентификатор_сигнала><=[ОиАЙОЕО] [TRANSPORT]
(<диаграмма> WHEN<ycnoBne>ELSE)<flnarpaMMa>
Опция "транспортный" (TRANSPORT) соответствует такой же опции для
последовательного оператора назначения сигнала. Опция "охраняемый"
(QUARDED) означает ссылку этого оператора на охранное выражение блока,
включающего данный оператор.
Диаграмма задает порядок (или условия) изменения сигнала от текущего
момента системного времени.
Определение диаграммы.
<диаграмма>::= <элемент_диаграммы>{,<элемент_диаграммы>)
<элемент_диаграммы>::=<выражение_значения_сигнала>
[АЕТЕР<выражение_значения_времени>].
Оператор селективного назначения сигнала (Selected Signal Assignment
Statement) Определение оператора.
<Selected_Signal_Assignment_Statement>::=
[<метка>:] WITH <выражение> SELECT (<идентификатор_сигнала><=[ОиАРОЕО]
[TRANSPORT] {<flnarpaMMa>WHEN<Bbi6op>;}<flnarpaMMe>WHEN<Bbi6op>;
Оператор вызова процедуры (Call Procedure Statement)
Определение оператора.
<Call_Procedure_Statement>::=
[<метки>:] <имя_процедуры>[(<список_фактических_параметров>)].
Сокращение длины программы за счет сокращения записи для однотипных
действий в языке VHDL, как и в других языках, возможно ввиду наличия в
языке не только последовательных операторов обращения к процедуре, но и
внешне совпадающих сними параллельных операторов обращения к процедуре.
Выполнение оператора параллельного вызова процедуры эквивалентно
выполнению оператора процесса. Существенным моментом представляется
только ограничение на типы формальных параметров процедуры, которые могут
быть либо типа сигнала, либо типа константы. Соответствие формальных и
фактических параметров достигается позиционным соответствием или
сопоставлением имен.
Оператор параллельного сообщения (Assert Statement)
Определение оператора.
<Assert_ Statement>::=[<MeTKa>:] ASSERT <условие> [REPORT<coo6ineHne>]
[SEVERITY <уровень_серьезности>]
<уровень_серьёзности>::=
NOTE | WARNING | ERROR | FAILURE
879
ПРОЕКТИРОВАНИЕ МПС
Вспомогательным оператором, обычно используемым в моделирующих
программах, является оператор параллельного сообщения. Этот оператор
полностью эквивалентен последовательному оператору сообщения, но в
отличие от последовательного оператора может входить в совокупность
параллельных операторов.
8.10.8. СИНТАКСИС ОПЕРАТОРОВ ОБЩЕАЛГОРИТМИЧЕСКОЙ СОСТАВЛЯЮЩЕЙ ЯЗЫКА
Условный оператор (If Statement)
Описание оператора. ,
<lf_Statement>::=IF<ycnoBne> THEN <последовательные_операторы> '
{ELSIF <условие> THEN <последовательные_операторы >}
[ELSE <последовательные_операторы>]
END IF;
Оператор If языка подобен условным операторам в других языках
программирования. Специфическим является требование использования при
реализации любого условия совокупности последовательных операторов.
Оператор выбора (Case Statement) i
Описание оператора.
<Case_Statement>::=CASE <выражение> IS
\Л/НЕН<выбор>=><последовательные_операторы>
{УУНЕН<выбор>=><последовательные операторы:"} ,
END CASE;
<выбор>::=<простое_выражение>|<дискретный_диапазон>
|<одноразмерный_массив_символов>|<другое >
Назначение и основные правила использования оператора варианта совпадают
с общеупотребительными. Оператор удобен для описания поведения цифровых
автоматов. Поскольку оператор требует покрытия всех возможных вариантов
выбора, допустимо использование оператора "нуль" (null_statement).
Оператор "нуль" служит для точного указания об отсутствии каких-либо
действий.
Оператор цикла (Loop Statement)
Описание оператора.
<Loop_Statement>::=[<MeTKaj4HKna>:][WHILE<ycnoBne>| >
FOR<nfleHTH0HKaTop>IN <дискретный_диапазон>]
ЬООР<последовательные_операторы>
END ЮОР[<метка_цикла>];
Две альтернативные формы записи оператора цикла соответствуют варианту
цикла с предусловием и варианту цикла с известным числом повторений.
Параметр цикла совпадает с понятием константы внутри оператора цикла (не
может изменяться в теле цикла). Параметр не требует предварительного
объявления, но и не может использоваться вне оператора цикла.
Внутри оператора цикла для упрощения записи могут использоваться два
дополнительных оператора - NEXT и EXIT.
<Next_Statement>::=NEXT[<MeTKa_4HKna>][WHEN<ycnoBne>];
Оператор употребляется для завершения очередной итерации цикла.
Предыдущая << 1 .. 494 495 496 497 498 499 < 500 > 501 502 503 504 505 506 .. 528 >> Следующая

Реклама

c1c0fc952cf0704ad12d6af2ad3bf47e03017fed

Есть, чем поделиться? Отправьте
материал
нам
Авторские права © 2009 BooksShare.
Все права защищены.
Rambler's Top100

c1c0fc952cf0704ad12d6af2ad3bf47e03017fed