![]() КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Атрибуты
Объекты Объекты являются контейнерами для хранения различных значений в рамках модели. Идентификаторы объектов содержать буквы, цифры и знаки подчеркивания. Идентификаторы должны начинаться с буквы, не должны заканчиваться знаком подчеркивания, и знаки подчеркивания не могут идти подряд. Прописные и строчные буквы в VHDL не различаются. Все объекты должны быть явно объявлены перед использованием, за исключением переменной цикла в операторе for, которая объявляется по умолчанию. Каждый объект характеризуется типом и классом. Типы разделяются на предопределенные в VHDL и определяемые пользователем. Тип показывает, какого рода данные может содержать объект. Класс показывает, что можно сделать с данными, содержащимися в объекте. В VHDL определены следующие классы объектов: · Constant – константы. Значение константы определяется при ее объявлении и не может быть изменено. Константы могут иметь любой из поддерживаемых типов данных. · Variable – переменные. Значение, хранимое в переменной, меняется везде, где встречается присваивание данной переменной. Переменные могут иметь любой из поддерживаемых типов данных. · Signal – сигналы. Сигналы представляют значения, передаваемые по проводам и определяемые присвоением сигналов (отличным от присвоения переменных). Сигналы могут иметь ограниченный набор типов (обычно bit, bit_vector, std_logic, std_logic_vector, integer, и, возможно, другие, в зависимости от среды разработки). Повторное использование присваивания сигналов в наборе параллельных операторов не допускается. В наборе последовательных операторов такое присваивание допустимо и даст значение сигнала, соответствующее последнему по порядку присваиванию. Синтаксис объявления объектов: Constant { name [, name] }: Type [ (index_range [, index_range ]) ]:= initial_value; Variable { name [, name] }: Type [ (index_range [, index_range ]) ] [:= initial_value ]; Signal { name [, name] }: Type [ (index_range) ]; Диапазон значений индексов задается в виде int_value to int_value или int_value downto int_value. Атрибуты (или иначе свойства) определяют ктеристики объектов, к которым они относятся. Стандарт VHDL предусматривает как предопределенные, так и определяемые пользователем атрибуты, однако современные инструментальные средства в большинстве своем поддерживают только предопределенные атрибуты. Для обращения к атрибутам объекта используется символ “’” (например A1’left). В VHDL определены следующие атрибуты: ‘left – левая граница диапазона индексов массива ‘right – правая граница диапазона индексов массива ‘low – нижняя граница диапазона индексов массива ‘high – верхняя граница диапазона индексов массива ‘range – диапазон индексов массива ‘reverse_range – обращенный диапазон индексов массива ‘length – ширина диапазона индексов массива Компоненты Объявление компонента определяет интерфейс к модели на VHDL (entity и architecture), описанной в другом файле. Обычно объявление компонента совпадает с соответствующим объявлением entity. Они могут различаться только значениями по умолчанию. Эти значения используются, когда какой-либо из отводов компонента остается не присоединенным (ключевое слово open) при установке компонента в схему. Оператор объявления компонента может находиться внутри объявления architecture или в заголовке пакета (package). Соответствующие компоненту объявления entity и architecture не обязательно должны существовать в момент анализа схемы. В момент моделирования или синтеза должны существовать объявления entity и architecture для компонентов, которые не только объявлены, но и установлены в схему. Это позволяет, например, конструктору задать объявления библиотечных элементов, а реальное их описание (объявления entity и architecture) задавать по мере использования этих элементов в конструкции. Объявление компонента записывается следующим образом: Component name [ port(port_list); ] end component;
Дата добавления: 2015-06-30; Просмотров: 484; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |