ВУЗ:
Составители:
19
type UNSIGNED_SHORT is integer range 0 to 255;
type MY_DATA is integer range -2**(n-l)+l to 2**(n-l)-l;
type INPUT_LEVEL is +10.0 downto -10.0;
Направление (to — увеличение, downto — уменьшение) должно быть
согласовано с соотношением ограничений.
|При объявлении типа INPUT_LEVEL базовый тип явно не задан,
используется тип ограничений в соответствии с типом их фактических
значений.
Пусть пользователь в одном проекте вводит два типа:
type DATA is integer range 0 to 15;
type CONTROLE is integer range 0 to 15;
Хотя с точки зрения
представления эти типы равноценны, однако
они несовместимы, что облегчает контроль корректности описания.
Физические типы, вводимые пользователем
Наряду с предопределенным типом TIME пользователь может
опрелять другие физические типы, которые будут отражать физические
(механические, электрические или иные) свойства носителя информации.
Пример:
type VOLTAGE is range -5e6 to +5e6;
units uV; - базовая единица - микровольт
mV= 1000 uV; - милливольт
V=1000 mV; - вольт
end units VOLTAGE;
Введение
такого типа позволяет описывать и моделировать
сопряжение цифровой логической схемы с аналоговыми источниками.
Пусть входной порт ANALOG_INPUT и константа THRESHOLD
(порог) объявлены как VOLTAGE, а сигнал COMPARE (сравнение) как bit.
Тогда можно записать:
COMPARE <= '1' when ANALOG_INPUT > THRESHOLD else '0';
Массивы и записи
Как в большинстве языков программирования, массивы и записи
относятся к пользовательским типам
.
Массив - это набор данных, объединенных общим именем и
различаемых по порядковым номерам (индексам). Для того чтобы ввести
объект типа массив, необходимо задать базовый тип и диапазон значений
индексов.
19
type UNSIGNED_SHORT is integer range 0 to 255;
type MY_DATA is integer range -2**(n-l)+l to 2**(n-l)-l;
type INPUT_LEVEL is +10.0 downto -10.0;
Направление (to — увеличение, downto — уменьшение) должно быть
согласовано с соотношением ограничений.
|При объявлении типа INPUT_LEVEL базовый тип явно не задан,
используется тип ограничений в соответствии с типом их фактических
значений.
Пусть пользователь в одном проекте вводит два типа:
type DATA is integer range 0 to 15;
type CONTROLE is integer range 0 to 15;
Хотя с точки зрения представления эти типы равноценны, однако
они несовместимы, что облегчает контроль корректности описания.
Физические типы, вводимые пользователем
Наряду с предопределенным типом TIME пользователь может
опрелять другие физические типы, которые будут отражать физические
(механические, электрические или иные) свойства носителя информации.
Пример:
type VOLTAGE is range -5e6 to +5e6;
units uV; - базовая единица - микровольт
mV= 1000 uV; - милливольт
V=1000 mV; - вольт
end units VOLTAGE;
Введение такого типа позволяет описывать и моделировать
сопряжение цифровой логической схемы с аналоговыми источниками.
Пусть входной порт ANALOG_INPUT и константа THRESHOLD
(порог) объявлены как VOLTAGE, а сигнал COMPARE (сравнение) как bit.
Тогда можно записать:
COMPARE <= '1' when ANALOG_INPUT > THRESHOLD else '0';
Массивы и записи
Как в большинстве языков программирования, массивы и записи
относятся к пользовательским типам.
Массив - это набор данных, объединенных общим именем и
различаемых по порядковым номерам (индексам). Для того чтобы ввести
объект типа массив, необходимо задать базовый тип и диапазон значений
индексов.
Страницы
- « первая
- ‹ предыдущая
- …
- 17
- 18
- 19
- 20
- 21
- …
- следующая ›
- последняя »
