Проектирование триггерных схем на VHDL 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Проектирование триггерных схем на VHDL



В вариантах домашнего задания необходимо спроектировать на VHDL синхронный триггер с динамическим управлением записью по фронту 0/1 или 1/0 с входом предварительной (асинхронной или синхронной) установки триггера или в 0, или в 1. Последнее усло- вие обусловлено тем, что библиотечные компоненты ПЛИС, в ко- торые синтезатор выполняет отображение VHDL-описание схемы,


не используют асинхронный сброс и установку триггера, а исполь- зуют только или сброс, или установку.

Средства VHDL, используемые для описания поведения тригге- ра, зависят от того, как разработчик представляет алгоритм его функционирования.

Если в распоряжении разработчика имеется система уравнений, по которой построена структура триггера (см. раздел «Построение синхронных триггеров с динамическим управлением записью»), то его описание на языке VHDL может быть выполнено с использова- нием логических операторов и сигнального оператора присваива- ния (листинг 3.1).

 
 

Листинг 3.1. Описание триггера по уравнениям

Данное описание требует наличия системы уравнений, описы- вающих структуру триггера, получение которых сопряжено с вы- полнением достаточно сложных процедур. Но закон функциониро- вания триггера можно задать в более простой алгоритмической форме.


Рассмотрим вариант описания алгоритма функционирования триггера, используя его характеристическое уравнения. Характери- стическое уравнение получают по таблице переходов триггера. Для этого перейдем от компактной записи таблицы переходов к её раз- вернутой форме (рис. 3.26).

       
   
 

Рис. 3.26. Две формы таблицы переходов триггера

 

Затем выполним запись функции по 1 с последующим её упро- щением. В результате получим следующее характеристическое уравнение триггера:

Qt +1 = (E 1 & Q Ú E 2 & Q) t.

Алгоритм функционирования триггера с использованием ха- рактеристического уравнения можно представить, как показано на рис. 3.27.

Примечание. В данном алгоритме CLR обозначает асинхронный вход уста- новки триггера в «0». При выполнении задания целесообразно придерживаться следующих обозначений для установочных входов, принятых в системе XILINX FOUNDATION: CLR, PREасинхронные входы установки триггера в 0 и 1 соот- ветственно, R, Sсинхронные входы установки триггера в 0 и 1 соответственно.


 

Рис. 3.27. Алгоритм функционирования триггера с использованием характеристического уравнения

 

Как видим, для того, чтобы описать данный алгоритм функцио- нирования триггера на VHDL, необходимо средство описания из- менения сигнала на входе С. Таким средством в языке VHDL явля- ется один из предопределенных атрибутов сигнала — признак event (event attribute). Атрибуты сигналов используют для получения ин- формации о событиях, которые происходят с сигналами. Обраще- ние к атрибутам имеет следующий синтаксис:

signal_name'attribute_name

Если ”C” — имя синхросигнала, то конструкция "C'event" на любом элементарном шаге по времени выдает значение true, ко- гда сигнал C изменяет свое значение, и false — в противном слу- чае.

В листинге 3.2 приведено описание закона функционирования триггера с использованием атрибута event. Заметим, что вели- чина "C'event" истинна при любом изменении сигнала C, по- этому для анализа фронта 0/1 сигнала C предусмотрена проверка C = ‘1’.


 
 

Листинг 3.2. Описание триггера с использованием характеристического уравнения

В соответствии с алгоритмом (см. рис. 3.27) асинхронный сиг- нал CLR преобладает над тактовым входным сигналом C и поэтому проверяется первым в предложении "if". Только тогда, когда сиг- нал на входе CLR имеет неактивный уровень, вступает в действие то, что предусмотрено предложением "else". При наличии актив- ного изменения на входе С исполняется последовательный сиг- нальный оператор присваивания. Булево выражение, по которому определяется новое значение выхода триггера Q, — это характери- стическое уравнение триггера, полученное из его таблицы перехо- дов.

Алгоритм функционирования триггера можно представить и путем непосредственной интерпретации его таблицы переходов (рис. 3.28).


 

Рис. 3.28. Алгоритм функционирования триггера на основе таблицы переходов

 

Задать приведенный алгоритм на языке VHDL можно с помо- щью операторов case или if.

Когда нужно выбирать среди нескольких альтернатив на осно-

вании значения только одного сигнала или выражения, обычно бо- лее читабельным и дающим лучший результат синтеза является оператор case.

Описание алгоритма функционирования триггера с использова-

нием оператора case приведено в листинге 3.3. Для его примене- ния необходимо ввести векторную переменную А и затем образо- вать её из сигналов Е 1 и Е 2 (см. листинг 3.3).

На рис 3.29 приведен алгоритм функционирования триггера с синхронным установочным входом R предварительной установки в

«0». По этому входу триггер будет установлен в «0» только при активном изменении сигнала на синхронизирующем входе.


 
 

Листинг 3.3. Описание триггера с использованием оператора case

В листинге 3.4 приведено описание триггера по данному алго- ритму с использованием оператора if.


 

Рис. 3.29. Алгоритм функционирования триггера с синхронным входом предварительной установки в «0»

 

 
 

Листинг 3.4. Описание триггера с использованием оператора if

 
 


ПОДГОТОВКА К ВЫПОЛНЕНИЮ РАБОТЫ

1. Изучить описание лабораторной работы.

2. Синтезировать структуру двухступенчатого триггера по заданной таблице переходов. Схема триггера должна иметь асин- хронные входы предварительной установки триггера в 0 и 1.

3. Построить по заданной системе уравнений структуру триг- гера с динамическим управлением записью.

4. Создать описание триггера с динамическим управлением записью на VHDL в соответствии с условиями варианта.

5. Разработать и изобразить схему исследования спроектиро- ванных триггеров с использованием макроэлементов стенда и ос- циллографа.

 

ПОРЯДОК ВЫПОЛНЕНИЯ РАБОТЫ

1. Выполнить ввод спроектированной схемы двухступенчато- го триггера в редакторе схем системы Xilinx Foundation.

2. Для облегчения отладки схемы триггера подсоединить к его входам Е 1 и Е 2 двоичный счетчик CB2CE (рис. 3.30).

 
 

Рис. 3.30. Коммутация двоичного счетчика CB2CE


3. Выполнить функциональное моделирование схемы двух- ступенчатого триггера.

4. Выполнить ввод и отладку схемы триггера с динамическим управлением записью в том же проекте, где был реализован двух- ступенчатый триггер.

5. Выполнить ввод и отладку описания триггера на VHDL в том же проекте, где были реализованы схемные варианты триггера.

6. Выполнить подготовку и размещение трех вариантов схемы триггера на кристалле, подсоединив макроэлементы стенда.

7. Выполнить временное моделирование и измерение задер- жек переключения триггерных схем.

8. Выполнить загрузку проекта в ПЛИС стенда и произвести отладку схем на макете.

9. Продемонстрировать преподавателю работу отлаженных схем на макете и на экране виртуального осциллографа.

10. Измерить задержки переключения триггерных схем.

11. Сдать преподавателю оформленный отчет в конце занятия.

 

 

ОТЧЕТ ПО РАБОТЕ

Отчет должен содержать:

1) исходные данные варианта задания;

2) синтез логической структуры синхронного двухступенча- того триггера;

3) схему двухступенчатого триггера и его условное графиче- ское обозначение;

4) схему синхронного триггера с динамическим управлением записью и его условное графическое обозначение;

5) описание триггера на VHDL;


6) схему исследования спроектированных триггеров с ис- пользованием макроэлементов стенда и осциллографа;

7) результаты экспериментальных исследований.

 

Список литературы

1. Ковригин Б.Н. Триггерные схемы: Ч. 1. Описание и класси- фикация. М.: МИФИ, 1976.

2. Ковригин Б.Н. Триггерные схемы: Ч. 2. Синтез и анализ. М.: МИФИ, 1977.

3. Зельдин Е.А. Триггеры. М.: Энергоатомиздат, 1983.

4. Агаханян Т.М., Плеханов С.П. Интегральные триггеры уст- ройств автоматики. М.: Машиностроение, 1978.

5. Угрюмов Е.П. Цифровая схемотехника. СПб.: БХВ, 2000.

6. Уэйкерли Дж. Ф. Проектирование цифровых устройств. В 2-х т. Т. 2. М.: Постмаркет, 2002.

7. Суворова Е.А., Шейнин Ю.Е. Проектирование цифровых систем на VHDL. СПб.: БХВ-Петербург, 2003.

8. Тарасов И.Е. Разработка цифровых устройств на основе ПЛИС XILINX с применением языка VHDL. М.: Горячая линия- Телеком, 2005.


 

Лабораторная работа 4

СИНХРОННЫЕ СЧЕТЧИКИ

 

Цель: овладеть методом синтеза синхронных счетчиков; приобрести практические навыки отработки проектируемых схем как моделированием с использованием САПР, так и макетировани- ем на универсальном лабораторном стенде.

 
 

ВВЕДЕНИЕ

Счетчиком называют последовательностную схему, предназна- ченную для увеличения / уменьшения хранимого кода на единицу или заданную константу. Счетчик часто имеет цепи предваритель- ной установки заданной величины, в частности нуля. Число разре- шенных устойчивых состояний счетчика называют его периодом или модулем М. Сигналы, поступающие на вход счетчика, называ- ют считаемыми. Вход счетчика, на который поступает сигнал, уве- личивающий состояние счетчика на 1, обозначают как «+1»; вход, на который поступает сигнал, уменьшающий состояние счетчика на 1, обозначают как «-1». Из любого i -го состояния под воздейст- вием сигнала «+1» счетчик переходит в состояние (i +1) mod M, а под действием сигнала «-1» — в состояние (i -1) mod M.

Схемы счетчиков подразделяются на два класса: синхронные и асинхронные. В синхронных схемах все изменения согласуются по времени с подачей считаемого сигнала на общую шину, объе- диняющую синхронизирующие входы С триггеров счетчика (рис. 4.1(а)).

В асинхронном счетчике отсутствует общая шина, на которую поступает считаемый сигнал. На вход С триггеров асинхронного счетчика сигналы могут поступать как с выхода другого триггера, так и от схем, непосредственно не связанных с синхронизирующи- ми импульсами (рис. 4.1(б)).


Если для проектирования синхронных счетчиков существуют отработанные методы, то для проектирования асинхронных счет- чиков удобных систематизированных методов нет. Все усложняет- ся тем, что различия во внутреннем строении триггеров проявля- ются именно при асинхронной работе. Поэтому разработчик схем должен иметь совершенно четкое представление о внутреннем строении используемого им типа триггера и не ограничиваться таблицей переходов, которая описывает только синхронную работу триггера.

 
 

 

Рис. 4.1. Двоичный счетчик: а) синхронный, б) асинхронный


 
 

СИНТЕЗ СИНХРОННЫХ СЧЕТЧИКОВ


Рис. 4.2. Обобщенная схема логической структуры счетчика


На рис. 4.2 приведена обобщенная схема логической структуры синхрон- ного счетчика. Из этой схемы можно уяснить принцип работы любого син- хронного счетчика.

Сигналы с выходов триггеров по- ступают на входы комбинационной схемы, которая преобразует поступив- шую информацию. Сигналы с выходов комбинационной схемы подаются на логические входы триггеров. Преобра- зованная информация не воспринима- ется триггерами до тех пор, пока на синхронизирующие входы триггеров не поступит считаемый сигнал. Ин- формация, находящаяся на входах ка- ждого триггера, так сформирована комбинационной схемой, чтобы с при- ходом очередного считаемого сигнала осуществить переход счетчика из те- кущего состояния в следующее. Функ- ции возбуждения входов i- го триггера можно записать в виде:

E 1(t) = f 1[ Q 1(t), Q 2(t),..., Q n(t)],

E 2(t) = f 2[ Q 1(t), Q 2(t),..., Q n(t)].


 

Значения всех переменных в этих выражениях определены для одного и того же момента времени t. Поэтому функции возбужде- ния триггеров являются переключательными функциями, которым соответствуют комбинационные схемы, формирующие входные сигналы для триггеров.


Следовательно, если задан тип триггера, то задача синтеза счетчика заключается в составлении функций возбуждения каждого триггера и минимизации найденных функций в задан- ном базисе.

Рассмотрим матрицы переходов триггеров, которые использу- ются при синтезе синхронных схем, в частности, счетчиков.

 

Матрица переходов триггера

Закон функционирования любого триггера можно задать с по- мощью матрицы переходов [1]. Число строк матрицы переходов для любого триггера равно четырем, что определяется числом воз- можных переходов триггера из одного состояния в другое, а коли- чество столбцов — числу логических входов триггера:

 


Q (t)


Q (t + 1)


E 1 E 2


... Em


0 - 0

0 - 1

1 - 0

1 - 1


1 2

a
a
00 00

a
a
1 2

01 01

a
a
1 2

10 10

a
a
1 2

11 11


... m

a
a
 
 
... m

a
 
... m

a
 
... m


Элемент матрицы


i

a
Q (t) Q (t +1)


представляет собой значение


входного сигнала Ei, под воздействием которого триггер переходит из состояния Q(t) в состояние Q(t+ 1 ). При этом каждый элемент матрицы может быть равен единице, нулю или являться неопреде- ленным коэффициентом, если значение сигнала на входе не влияет на данный переход триггера.

Матрицу переходов триггера составляют по таблице переходов этого триггера.



Поделиться:


Последнее изменение этой страницы: 2016-12-27; просмотров: 679; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.14.246.254 (0.052 с.)