Составители:
34
9 оператор параллельного присваивания выполняется сразу (с точки зрения мо-
дельного времени) после изменения сигналов в правой части этого оператора.
В обоих случаях результаты присвоения сначала фиксируются в драйвере сигнала и пе-
редаются сигналу, т. е. могут влиять на другие операторы, только после исполнения всех
операторов и процессов, инициированных одним событием, или через интервал модельного
времени, заданный опцией
after.
Условное присваивание и присваивание по выбору. Эти операторы во многом сходны
с условным оператором и оператором выбора, соответственно — описанные действия вы-
полняются при определенных условиях. Различие, кроме единых для всех параллельных и
последовательных операторов свойств, состоит в том, что условный оператор и оператор вы-
бора являются составными, т. е. в
них условие может задавать исполнение последовательно-
сти действий, а в операторах присваивания возможно только присвоение одного значения.
<Условное присваивание>::=
<приёмник> <= [guarded] [<модель задержки>]
{<прогноз поведения> when <условие> else} <прогноз поведения>;
<присваивание по выбору>::=
with <ключевое выражение> select
<приемник> <= [guarded] [<модель задержки>]
«<прогноз поведения> when <вариант>,»
<прогноз поведения> when <вариант>;
Смысл и синтаксис конструкции вариант точно совпадает с соответствующим элемен-
том оператора выбора.
Важно отметить, что если условный оператор
if и оператор выбора case не могут
выполняться над данными, вырабатываемыми модулями, представленными различными
операторами процесса, то условное присваивание и присваивание по выбору позволяют опи-
сывать такие ситуации.
Параллельные операторы проверки и вызова подпрограмм соотносятся с со-
ответствующими последовательными операторами проверки и вызова подобно соотношению
параллельного и последовательного присваивания, а именно: они имеют одинаковый синтак-
сис и правила выполнения, но различаются локализацией и условиями запуска к исполне-
нию.
4.8.2. Оператор блока
Оператор блока block, подобно оператору process, является составным оператором,
тело которого включает несколько операторов, но, в данном случае, параллельных. Операто-
ры тела блока, как и другие параллельные операторы, обеспечивают возможность представ-
ления параллелизма в моделируемой системе. Эти операторы инициируются не по последо-
вательному, а по событийному принципу, а результаты их исполнения становятся доступны
другим операторам как включенным в блок, так и размещенным в других блоках или по от-
дельности, только после исполнения всех операторов, инициированных одним событием. В
этом смысле операторы, включенные в блок, не отличаются от обычных параллельных опе-
раторов.
Объединение операторов в блоки обеспечивает следующие возможности:
9 оператор параллельного присваивания выполняется сразу (с точки зрения мо- дельного времени) после изменения сигналов в правой части этого оператора. В обоих случаях результаты присвоения сначала фиксируются в драйвере сигнала и пе- редаются сигналу, т. е. могут влиять на другие операторы, только после исполнения всех операторов и процессов, инициированных одним событием, или через интервал модельного времени, заданный опцией after. Условное присваивание и присваивание по выбору. Эти операторы во многом сходны с условным оператором и оператором выбора, соответственно — описанные действия вы- полняются при определенных условиях. Различие, кроме единых для всех параллельных и последовательных операторов свойств, состоит в том, что условный оператор и оператор вы- бора являются составными, т. е. в них условие может задавать исполнение последовательно- сти действий, а в операторах присваивания возможно только присвоение одного значения. <Условное присваивание>::= <приёмник> <= [guarded] [<модель задержки>] {<прогноз поведения> when <условие> else} <прогноз поведения>; <присваивание по выбору>::= with <ключевое выражение> select <приемник> <= [guarded] [<модель задержки>] «<прогноз поведения> when <вариант>,» <прогноз поведения> when <вариант>; Смысл и синтаксис конструкции вариант точно совпадает с соответствующим элемен- том оператора выбора. Важно отметить, что если условный оператор if и оператор выбора case не могут выполняться над данными, вырабатываемыми модулями, представленными различными операторами процесса, то условное присваивание и присваивание по выбору позволяют опи- сывать такие ситуации. Параллельные операторы проверки и вызова подпрограмм соотносятся с со- ответствующими последовательными операторами проверки и вызова подобно соотношению параллельного и последовательного присваивания, а именно: они имеют одинаковый синтак- сис и правила выполнения, но различаются локализацией и условиями запуска к исполне- нию. 4.8.2. Оператор блока Оператор блока block, подобно оператору process, является составным оператором, тело которого включает несколько операторов, но, в данном случае, параллельных. Операто- ры тела блока, как и другие параллельные операторы, обеспечивают возможность представ- ления параллелизма в моделируемой системе. Эти операторы инициируются не по последо- вательному, а по событийному принципу, а результаты их исполнения становятся доступны другим операторам как включенным в блок, так и размещенным в других блоках или по от- дельности, только после исполнения всех операторов, инициированных одним событием. В этом смысле операторы, включенные в блок, не отличаются от обычных параллельных опе- раторов. Объединение операторов в блоки обеспечивает следующие возможности: 34
Страницы
- « первая
- ‹ предыдущая
- …
- 32
- 33
- 34
- 35
- 36
- …
- следующая ›
- последняя »