Составители:
21
4.3.5. Подтипы
Специфическим понятием языка VHDL является подтип. Объекты, отнесенные к под-
типу, сохраняют совместимость с данными типа, из которого выделяется подтип так назы-
ваемого базового типа. Однако введение подтипа:
9 определяет множество допустимых значений данных подтипа как под-
множество допустимых значений базового типа;
9 позволяет вводить дополнительные функции преобразования, определяемые
только для данных подтипа.
Синтаксис декларации подтипа следующий:
<декларация подтипа>::=
subtype <имя подтипа> is [<имя функции разрешения>]
<имя базового типа или подтипа> [<ограничение>];
Пример:
subtype bit_in_word_number is integer range 31 downto 0;
Определен подтип типа integer. Данные этого подтипа предполагается использовать
для индексации бита в 32-разрядном коде. Данные совместимы с данными типа
integer.
Однако присвоение этим данным значений вне указанного диапазона вызывает сообщение
об ошибке.
Использование функции разрешения будет описано в разделе 4.9.
4.4. Сигналы и переменные
Любой проект является описанием явлений в дискретных системах. Эти явления могут
представляться тремя различными категориями данных: константы, переменные и сигна-
лы.
SIGNAL — это информация, передаваемая между модулями проекта или представляю-
щая входные и выходные данные проектируемого устройства. Сигналу присваиваются свой-
ства изменения во времени.
VARIABLE — это вспомогательная информационная единица, используемая для опи-
сания внутренних операций в программных блоках. Присвоение значения сигналу отобража-
ется знаком
<=, а переменной — знаком :=.
Для того чтобы представить различия сигналов и переменных, следует сделать не-
сколько предварительных замечаний. В языке VHDL введены два типа операторов: последо-
вательные и параллельные.
Последовательные операторы выполняются последовательно друг за другом в поряд-
ке записи. Такие операторы во многом подобны операторам традиционных языков програм-
мирования высокого уровня и описывают набор действий, которые последовательно выпол-
няются над исходными данными с целью получения результата. К этому классу операторов
относят оператор присваивания переменной, последовательный оператор присваивания сиг-
налу, условные операторы, оператор выбора и ряд других.
Исполнение параллельных операторов инициируется не по последовательному, а по
событийному принципу, т. е. они исполняются тогда, когда реализация других операторов
4.3.5. Подтипы Специфическим понятием языка VHDL является подтип. Объекты, отнесенные к под- типу, сохраняют совместимость с данными типа, из которого выделяется подтип так назы- ваемого базового типа. Однако введение подтипа: 9 определяет множество допустимых значений данных подтипа как под- множество допустимых значений базового типа; 9 позволяет вводить дополнительные функции преобразования, определяемые только для данных подтипа. Синтаксис декларации подтипа следующий: <декларация подтипа>::= subtype <имя подтипа> is [<имя функции разрешения>] <имя базового типа или подтипа> [<ограничение>]; Пример: subtype bit_in_word_number is integer range 31 downto 0; Определен подтип типа integer. Данные этого подтипа предполагается использовать для индексации бита в 32-разрядном коде. Данные совместимы с данными типа integer. Однако присвоение этим данным значений вне указанного диапазона вызывает сообщение об ошибке. Использование функции разрешения будет описано в разделе 4.9. 4.4. Сигналы и переменные Любой проект является описанием явлений в дискретных системах. Эти явления могут представляться тремя различными категориями данных: константы, переменные и сигна- лы. SIGNAL — это информация, передаваемая между модулями проекта или представляю- щая входные и выходные данные проектируемого устройства. Сигналу присваиваются свой- ства изменения во времени. VARIABLE — это вспомогательная информационная единица, используемая для опи- сания внутренних операций в программных блоках. Присвоение значения сигналу отобража- ется знаком <=, а переменной — знаком :=. Для того чтобы представить различия сигналов и переменных, следует сделать не- сколько предварительных замечаний. В языке VHDL введены два типа операторов: последо- вательные и параллельные. Последовательные операторы выполняются последовательно друг за другом в поряд- ке записи. Такие операторы во многом подобны операторам традиционных языков програм- мирования высокого уровня и описывают набор действий, которые последовательно выпол- няются над исходными данными с целью получения результата. К этому классу операторов относят оператор присваивания переменной, последовательный оператор присваивания сиг- налу, условные операторы, оператор выбора и ряд других. Исполнение параллельных операторов инициируется не по последовательному, а по событийному принципу, т. е. они исполняются тогда, когда реализация других операторов 21
Страницы
- « первая
- ‹ предыдущая
- …
- 19
- 20
- 21
- 22
- 23
- …
- следующая ›
- последняя »