Представление Системы в VHDL: Единицы Проекта
Действительно ли нам нужен VHDL? Представление Системы в VHDL: Единицы Проекта Объекты VHDL:Сигнал Спецификация Интерфейса Системы Конструкции VHDL для Описания Поведения Системы Описание Поведения при помощи Процессов Многократные Процессы в Архитектуре Определение Структуры Системы Испытание Проекта при помощи Испытательного стенда |
Глава 2
Представление Системы в VHDL: Единицы Проекта
Содержание Главы 2
2.1. Краткий обзор Главы
2.2. Знакомство со Структурой Системы
2.2.1. Как Система Связывается с Окружающей ее средой
2.2.2. Тело Системы
2.2.3. Внешняя Поддержка
2.3. Объект Интерфейса
2.3.1. Главная Единица Проекта: Объект
2.3.2. Из чего состоит Интерфейс ?
2.3.3. Элементы Объекта
2.4. Архитектура Описывает Тело
2.4.1. Без Интерфейса нет Архитектуры
2.4.2. Типы Описания Архитектуры
2.4.3. Функциональное Описание
2.4.4. Структурное Описание
2.4.5. Однн Объект - Сколько Архитекту?
2.5. Пакет Поддерживает Другие Проекты
2.5.1. Концепция Пакета
2.5.2. Использование Пакетов в VHDL
2.5.3. Предопределенные Пакеты
Резюме
2.1. Краткий обзор Главы
VHDL может быть использована как универсальный язык разработок, но его возможности более приспособлены для цифровых систем. Эта глава рассказывает о принципах описания цифровых систем в VHDL.
Секция 2 показывает, как Вы можете описывать любую систему, используя только две основных части: интерфейс, который работает со связью между системой и ее окружающей средой, и телом которое представляет собой функциональные возможности. Как только Вы поймете главные цели интерфейса, и тела, изучение VHDL станет намного более легким.
Иногда эти две части могут быть поддержаны дополнительными внешними проектами называемыми пакетами. Для лучшей ясности, эти три основных концепции VHDL объясняются в отдельных секциях:
- Объекты (Секция 3) - представляют сущность как основную единицаупроекта , описывают структуру объекта и то, как это облегчает интерфейс между системой и окружающей ее средой;
- Архитектуры (Секция 4) - представляет архитектуру как вторую ,наиболее важную единицу проекта, которая не может существовать без объекта; объясняются различные стили описания архитектуры (режимный и структурный);
- Пакеты, которые поддерживают другие единицы проекта, объясняются в Секции 5, который описывает предопределенные пакеты типа Standard, TextIO , Std_logic_1164 и описывает, как использовать их в других единицах проекта.
2.2.1 Как Система Связывается с Окружающей ее средой
Хороший пример такого элементы поддержки - вставная карта,которая ускоряет графические операции в ПК.
В то время как такая добавляющаяся карта может рассматриваться, как часть системы, ради ясности давайте рассматривать это как третий элемент проекта системы и называть это пакетом.
Все три элемента проекта системы (интерфейс, тело и добавляющиеся части) обращаются в VHDL как отдельные проектные единицы и будут рассмотрены в следующих трех секциях.
Примеры:
Позвольте нам оборудовать человека в приложенной иллюстрации компьютером. Разве теперь не будет легче человеку исполнить сложные математические действия? Очевидно да. Это ведет к заключению, что система (человек) может быть оснащена внешней поддержкой (компьютер). Подобную роль в VHDL играют пакетыРисунок:
2.3.1. Главная Единица Проекта:ОбъектКлючевые вопросы:
. Начать проект с анализа его окружающей среды - хорошая практика, нет ничего удивительного в том что объект , который описывает интерфейс между системой и ее окружающей средой - главная часть любой спецификации Без декларации объекта нет никакой спецификации VHDL любой системы. Кроме того, все,что то определено в объекте, автоматически видимо всем другим единицам проекта, связанным с этим объектом.Более того, имя системы - всегда такое же как и имя ее объекта.
Обратите внимание: Всегда начинайте любой проект системы в VHDL с декларации объекта.
.
Примеры:
Каждая система должна иметь одноименный объект проекта, который описывает ее интерфейс со внешним миром. Позвольте нам теперь определять объект проекта для системы по имени Человек:Рисунок:
2.3.2. Из чего состоит Интерфейс?
Ключевые вопросы:
Часть объекта обеспечивает спецификацию интерфейса системы и обычно включает в себя два элемента:Примеры:
: Каждый объект включает параметры системы и информационных каналов или связей, которые облегчают контакт со внешним миром.
Позвольте нам определять те два элемента объект а по имени Человек:
Рисунок:
2.3.3. Элементы ОбъектаКлючевые вопросы:
Два ключевых элемента любого интерфейса (параметры и связи) имеют их собственные, отдельные декларации в пределах каждого объектаПримеры:
Параметры и информационные каналы или связи могут быть определены более формально, используя пункты общие (параметры) и порты (связей)Рисунок:
2.4.1. Без Интерфейса нет АрхитектурыКлючевые вопросы:
Даже наиболее продвинутоеый электронные устройства, будут бесполезны, если бы мы не могли управлять ими или связываются с ними. Именно поэтому с интерфейсом обращаются как наиболее важной единицей проекта в VHDL.Его важность настолько большая, что архитектура определена в VHDL как архитектура объекта. Пример справа визуализирует эту концепцию. Обратите внимание на отношения между объектом и архитектурой и как это выражено
Примеры:
Поведение человеческого тела невозможно определить (архитектура системы Человек) в конкретной ситуации без первого определения ее типичные ответы (объект ) к стимулам Окружающей среды. По этой очень важной причине необходимо определить объект для каждойархитектуры.Рисунок:
2.4.2. Типы Описания АрхитектурыКлючевые вопросы:
Каждая система может быть описана или в терминах ее функциональных возможностей (поведение), или структурой, которая требует различных видов информации о системе. Архитектура объекта проекта может быть определена одним из двух способовб, или как описание ее структуры или как описания ее поведения.
По характеру описание структуры системы иерархическое. Это осуществлено, определением объектов проекта (служащие компонентами) и их взаимосвязей
Поведенческое описание, с другой стороны, не содержит никакой информации относительно внутренней структуры системы. Оно описывает только ожидаемое поведение системы.
Инструменты синтеза работают с обоими описаниями системы: сначала, ожидаемые функциональные возможности должны быть определены и формализованы,аи затем они должны быть преобразованы в структурный эквивалент, который является более подходящим для инструментов синтеза. Часть этого перевода может быть сделана автоматически, однако, полностью функциональный (поведенческий) синтез еще не доступен..
Примеры:
Давайте посмотрим на триггеры D-типа. Его - поведение очень простое: после того, как преобразован вход CLK ,данные от D информационного входа передаются к Q выходу (и к инвертированым не_Q выходам)..Рисунок:
2.4.3.Функциональное ОписаниеКлючевые вопросы:
Функциональное описание определяет то, что система, как ожидается, будет делать. В случае телевизора вы можете нуждаться в определении того,какие действия будут приняты в ответ на входные сигналы от кнопок дистанционного управления.И вообще, поведенческая спецификация – это описание выходов ’реакция на входные данные’
Обратите внимание: Этот тип описания не дает никакого ключа к разгадке относительно того, как эти функциональные возможности должны быть выполнены. По этой причине, синтез из поведенческого описания все еще более исследовательская проблема ,чем индустриальная практика.
Примеры:
Мы можем определить электронное устройство, описывая его поведение, то есть внося в список функции, которые устройство, как предполагается, исполняет. Посмотрите ниже на D-триггер (мы пропускаем некоторые детали, но вернемся к ним позже):Рисунок:
2.4.4.Структурное ОписаниеКлючевые вопросы:
Структурное описание определяет компоненты, которые должны использоваться ,и как они должны быть связаны, чтобы достичь ожидаемых результатов. Другими словами, оно описывает внутреннюю структуру системы.Структурный проект намного легче синтезировать, чем поведенческий, потому что он обращается к конкретным физическим компонентам. Однако, оптимизация структурной спецификации системы более трудна, потому что это требует детального знания компонентов и их действий.
Структурный тип спецификаций больше всего упрощает иерархический характер, который позволяет предварительно определенному объекту проекта быть использованным как основным блоком для более сложного.
Примеры:
Структурное описание предоставляет информацию о элементах системы и их взаимосвязями. Приложенные иллюстрации символически показывают эти взаимосвязи.Рисунок:
2.4.5. Один Объект - Сколько Архитектур?Ключевые вопросы:
Так как различные типы архитектуры могут выполнять одинаковые функции, система (объект) может быть определена различным архитектурами. Например, множество 80xx51процессоров произведенных различными продавцами , пока они имеют тот же интерфейс , можгут использоваться друг в место друга. Это означает, что одному объекту может быть сопоставлено многократное число архитектур..Обратите внимание: перемена не истинна. Например 8051 не может непосредственно заменять устройство 68HC05 из-за различного интерфейса. Так как архитектура не может иметь различные интерфейсы, она не может быть сопоставлена различным объектам.
Примеры:
Вообще, каждая единица проекта имеет только один интерфейс. Однако,она может иметь несколько альтернативных спецификаций архитектуры. Например, мы можем определять более чем десять различных архитектур для древнего 7400 (с четырьмя двойными входами NAND ворот), указывая различные доступные технологии. В цифровых выходах всея работа такая же, но их внутренняя транзисторная структура различна,онакончается различными архитектурами накремниевом уровне::
Рисунок:
2.5.1. Концепция ПакетаКлючевые вопросы:
Что вы делаете, когда стоите перед неизвестной концепцией или словом подобно " subclavian "? Наиболее вероятное- вы обратились бы за помощью, или к другому человеку, или посмотрели бы словарь. Если Вы собираетесь использовать словарь, вы могли бы сказать , что вы собираетесь использовать единицу библиотеки (то есть книгу). Кроме того, если вы живете далеко от любой библиотеки, книга может быть поставлена Вам почтой как пакет.
Используйте эти пакеты (внешние источники описания) когда что-нибудь неопределено в стандартном языке.
Примеры:
Обратите внимание, что пакет обеспечивает типичные или нетипичные способности, позволяя решать более сложные задачи. Аналогом является случай, когда кто-то болен или хочет улучшить свои физические способности, он / она может брать больничный или витамины. Те дополнительные "пакеты" служат для того, чтобы восстановить здоровье или улучшать его или ее состсяние:Рисунок:
2.5.2 Использование Пакетов в VHDLКлючевые вопросы:
Подобная ситуация , описанному на предыдущей странице происходит с VHDL спецификациями: вы можете иногда нуждаться в использовании чего-то,не определенного в стандартных VHDL библиотеках. Пакеты позволяют вам определять пункты, которые находятся вне VHDL стандартов.Пакеты определены в двух частях:
Обратите внимание: Пункты, объявленные в теле пакета не могут быть видимыми вне этого тела. Единственное ограничение в использовании пакетов –это то, что они должны быть объявлены заранее, обычно в начале объекта. Имеются два пункта, которые выполняют эту цель: библиотека и использование. Их использование объясняется в примере справа..
Примеры:
Предоженный пример представляет общую структуру пакета и иллюстрирует его е(применение) в других единицах проекта (примим, что пакет сохранен в рабочей библиотеки работе, которая является истинной для типичных компиляций)::Рисунок:
2.5.3. Предопределенные ПакетыКлючевые вопросы:
VHDL - здравая окружающая среда проекта, которая имеет несколько хорошо определенных пакетов. Наиболее популярные пакеты, определенные IEEE:В таких случаях, библиотека обычно носит имя продавца.
Примеры:
Std_logic_1164 Пакет содержит определения типов, подтипов и функций, которые расширяют VHDL стандарт во много-значную логику. Пакет содержит следующие декларации: тип std_ulogic: нерешенный логический тип 9 значный:Рисунок:
Резюме1. Каждая система должна связаться с ее окружающей средой (она должна получить некоторые данные входа от ее окружающей среды и выводить некоторые данные выхода)
2. Часть коммуникаций спецификации системы называется интерфейсом. Интерфейс между системой и ее окружающей средой описан в VHDL объектом, который является основной единицей проекта для любой системы.
3. Невозможно описать систему в VHDL без объекта.
4. Объект определяет общие параметры и порты системы. Общие параметры предоставляют такую статическую информацию для системы как выбор времени ширины шины или параметров. Порты обеспечивают каналы связи между системой и ее окружающей средой. Для каждого порта должен быть определен его способ (то есть поток данных) и тип.
5. Чтобы выполнять желательные функциональные возможности, данные должны подвергнуться некоторому преобразованию внутри системы. Это преобразование данных и вывод желательных функций обработано внутренней частью системы или телом, которое называется архитектурой
6. Архитектура - описание внутреннего действия системы, и это должна быть поставлена в соответствие объекту.
7. Архитектура может быть связана только с одним объектом, но объект может быть связан со множеством архитектур.
8. Имеются два типа описания архитектуры:
10. Пакеты определены в двух частях: декларация пакета, которая определяет интерфейс к пакету и телу пакета которое определяет тело подпрограмм и значцений косвенных констант, объявленных в интерфейсе пакета.
11. Не все пакеты будут иметь тело пакета. В частности тело пакета не нужно если нет подпрограммы или косвенных констант , определеных в декларации пакета.
12. Пункты, объявленные в декларации пакета ,видимы в других единицах проекта только если используется пункт применения.
13. Пункты, объявленные в теле пакета не могут быть видимыми внешней части тела пакета
Далее>>