Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь FAQ Написать работу КАТЕГОРИИ: АрхеологияБиология Генетика География Информатика История Логика Маркетинг Математика Менеджмент Механика Педагогика Религия Социология Технологии Физика Философия Финансы Химия Экология ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Описание комбинационной схемы в потоковом стилеСодержание книги
Поиск на нашем сайте
В потоковых проектах используют параллельное присваивание. Параллельное присваивание определено в трех различных формах: безусловное параллельное присваивание, условное параллельное присваивание, параллельное присваивание по выбору.
Безусловное параллельное присваивание В качестве исходной формы описания проектируемой комбина- ционной схемы могут выступать булевские уравнения или таблица истинности, от которой легко перейти к выражениям на языке VHDL, используя логические операторы и параллельный сигналь- ный оператор присваивания (concurrent signal-assignment statement): signal-name <= expression; Его можно прочесть так: «Сигнал с именем signal-name прини- мает значение выражения expression». Присвоение значения сигна- лу задают составным оператором “<=”. В листинге 2.1 представлено описание комбинационной схемы по уравнениям (2.7) с использованием параллельных присваива- ний.
Листинг 2.1. Описание комбинационной схемы с использованием параллельного сигнального оператора присваивания Логические операторы and, or, nand, nor, xor, хпоr имеют одинаковое старшинство и выполняются слева направо в выражениях. В сложных логических выражениях порядок выпол- нения операторов регулируется скобками. Заметьте, что у операто- ра not самый высокий приоритет, так что для получения нужного результата можно не заключать в скобки подвыражение типа not А.
Условное параллельное присваивание Можно также воспользоваться условной формой параллельного сигнального оператора присваивания (conditional signal-assignment statement) с ключевыми словами when и else: signal-name <= expression when boolean-expression else expression when boolean-expression else ... expression when boolean-expression else expression; В этом случае в выражении boolean-expression отдельные буле- вы термы объединяют посредством встроенных булевых операто- ров языка VHDL, таких как and, or и not. Под булевыми тер- мами обычно понимают булевы переменные или результаты срав- нения, выполняемого с помощью операторов отношений (rela- tional operators) =, /= (не равно), >, >=, < и <=. Листинг 2.2 содержит пример использования условного парал- лельного оператора присваивания. Внешние входы схемы ради удобства записи условий представлены в виде вектора А(3 downto 0). Результаты сравнения объединяются в булево выраже- ние, помещенное в каждом операторе между ключевыми словами when и else. Каждое значение входного вектора – это двоичный набор, на котором функция равна 1. Совокупный набор условий в каждом из операторов должен покрывать все возможные комбина- ции входных сигналов. Приведенное описание представляет собой по сути СДНФ заданных функций.
Листинг 2.2. Описание комбинационной схемы с использованием условного присваивания Параллельное присваивание по выбору Параллельный оператор присваивания другого рода — это изби- рательное (по выбору) присваивание сигналу его значения (selected signal-assignment statement), синтаксис которого следующий:
with expression select signal-name <= signal-value when choices, signal-value when choices, ... signal-value when choices; Этот оператор вычисляет заданное выражение expression и при- сваивает сигналу с именем signal-name значение сигнала (signal- value), соответствующее той из альтернатив (choices), значение ко- торой равно expression. Альтернативой в каждом предложении when может быть одиночное значение expression или список значе- ний, разделенных вертикальной чертой (|). Альтернативы choices в данном операторе должны быть взаимно исключающими и в сово- купности включать все возможные случаи. В последнем предложе- нии when можно воспользоваться ключевым словом others в каче- стве указания на все значения expression, которые еще не были упомянуты. В листинге 2.3 продемонстрирован один из подходов к написа- нию программы комбинационной схемы в стиле потокового проек- тирования с использованием избирательного сигнального операто- ра присваивания. Внешние входы схемы здесь также ради удобства представлены в виде вектора. В последнем предложении when ис- пользуется ключевое слово others для указания на все другие зна- чения переменных, которые еще не были упомянуты. Данное описание предполагает задание функций в табличной фор- ме или в СДНФ.
Листинг 2.3. Описание комбинационной схемы с использованием параллельного присваивания по выбору Ту же самую архитектуру можно слегка видоизменить, чтобы воспользоваться более удобной числовой интерпретацией А в оп- ределении функции. Применяя для сигналов на входе А тип IN- TEGER, можно записать наборы в терминах целых чисел (лис- тинг 2.4). Внутри среды Foundation Express целые числа представ- ляются в двоичном формате. Для работы с ними используется тип bit_vector. Преобразование целых чисел осуществляется авто- матически, без участия пользователя. Размер битового вектора оп- ределяется как минимально допустимый для заданного диапазона значений исходного целого типа. Листинг 2.4. Описание комбинационной схемы
|
||||||||||||||||||||||
Последнее изменение этой страницы: 2016-12-27; просмотров: 261; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.136.20.252 (0.006 с.) |