Студопедия Главная Случайная страница Задать вопрос

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

Триггеры





В общем случае возможны разные типы элементов памяти — триггеры. Триггеры бывают синхронными и асинхронными. Некоторые разновидности триггеров, например, RS-триггеры, допускают как синхронное, так и асинхронное исполнение. Триггер называется синхронным, если его работа управляется тактовым сигналом (обозначаемым C или CLK от англ. clock).

Фронты тактового сигнала разбивают непрерывное время на дискретный набор интервалов, называемых тактами. Фронтом называется изменение уровня сигнала с низкого на высокий (положительный фронт, positive edge) или с высокого на низкий (отрицательный фронт, negative edge). Для простоты будем считать, что схемы работают по положительному фронту, то есть входные сигналы считываются при высоком уровне тактового сигнала и игнорируются при низком уровне.

Самыми распространенными типами элементов памяти являются D-, RS- (SR-) и JK-триггеры. D-триггеры (от англ. delay) являются синхронными, RS- (от англ. reset/set) и JR-триггеры (от англ. jump/kill) могут быть как синхронными, так и асинхронными. Ниже представлены таблицы переходов для данных типов триггеров.

D\T 0 1 RS\T 0 1 JK\T 0 1

0 0 0 00 0 1 00 0 1

1 1 1 01 1 1 01 0 0

10 0 0 10 1 1

11 1 0

 

D-триггер является не чем иным, как единичной задержкой: он запоминает и воспроизводит на выходе (с задержкой) то, что подается ему на вход.

RS-триггер устанавливает состояние в 1, если S=1; сбрасывает состояние в 0, если R=1; не изменяет состояние, если RS=00; комбинация RS=11 запрещена.

JK-триггер работает как RS-триггер (где J=S, K=R), но при подаче на вход комбинации JK=11 инвертирует состояние.

Задание. Определить функцию перехода синхронных D-, RS- и JK-триггеров.

D: Q(t+1) = D(t)

RS: Q(t+1) = ~R(t)&(Q(t)|S(t)) | (x&S&R), x — неопределенное значение.

JK: Q(t+1) = ~Q(t)&J(t) | Q(t)&~K(t)

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

Задание. Реализовать единичную задержку через (D-триггер), используя:

1) синхронные RS-триггеры;

2) синхронные JK-триггеры.

Триггеры можно определить через схемы из функциональных элементов с обратными связями. Формально семантику таких схем мы определять не будем. Идея заключается в том, что выходное значение схемы стабилизируется не сразу, а после серии итераций (входы нужно держать неизменными некоторое время). Полученное стабильное состояние и есть выходное значение. Например, асинхронный RS-триггер можно представить следующей схемой.

Эта схема на языке Verilog описывается следующим образом.

// асинхронный RS-триггер

module rs_flipflop(q, n, r, s);

output q, n;

input r, s;

nor gate1(q, r, n);

nor gate2(n, s, q);

endmodule /* rs_flipflop */

 

Домашнее задание. Нарисовать схему для синхронного JK-триггера, описать схему на языке Verilog, написать функциональный тест.






Дата добавления: 2015-08-27; просмотров: 180. Нарушение авторских прав

Studopedia.info - Студопедия - 2014-2017 год . (0.011 сек.) русская версия | украинская версия