ВУЗ: Томский государственный университет систем управления и радиоэлектроники
Категория: Учебное пособие
Дисциплина: Дискретная математика
Добавлен: 28.11.2018
Просмотров: 16645
Скачиваний: 202
201
Заполняем правую часть таблицы. В верхней строке записано: 0000. Если
на вход ϕ (рис. 10.5) подать импульс, то автомат должен перейти в состояние
0001. Это произойдет в том случае, если тактовый импульс поступит на вход
триггера D и не пройдет на входы триггеров В и С. В строке 0000 в правой ча-
сти таблицы записываем 001. Пусть автомат перешел в состояние 0001. Второй
тактовый импульс должен пройти на входы триггеров С и D одновременно. То-
гда триггер С перейдет в единицу, а триггер D – в нуль. Во второй сверху стро-
ке в правой части записываем 011. Третий импульс должен перевести автомат в
состояние 0011. Так как после второго импульса установилось состояние 0010,
то для перевода автомата в состояние 0011 необходимо подать импульс только
на вход триггера D. В третьей строке записываем 001. И так далее до строки 7,
после чего с подачей импульса должно установиться состояние 000. В колонках
правой части ставим три единицы, обозначающие: триггеры B, C, D сменят
свои состояния на противоположные.
Вторая половина таблицы заполняется точно так же. Получилась таблица
соответствия для трех функций. Список их минимальных форм имеет вид:
;
;
1.
B
C
D
f
AC D
ACD
f
AD
AD
f
=
+
=
+
=
Умножим каждое из полученных выражений на ϕ:
(
) ;
B
T
AC D
ACD
=
+
ϕ
(
) ;
C
T
AD
AD
=
+
ϕ
1
.
D
T = ⋅ ϕ = ϕ
На основе этих функций строим автомат. Его схема приведена на рисун-
ке 10.6.
Рис. 10.6
Y
R
S TT
A
T
А
φ
R
S TT
B
T
B
R
S TT
C
T
C
R
S TT
D
T
D
&
&
1
&
&
1
&
&
f
B
f
C
T
B
T
C
202
· · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · ·
Упражнения
1.
Автомат на рисунке 10.6 находится в состоянии 0110. Ука-
жите состояние q, в котором окажется автомат, если принять A = 1,
а затем на вход подать один импульс, где q – десятичное число.
Считать, что значение A входит в код q.
2.
Автомат на рисунке 10.6 находится в состоянии 0111. На
вход его подали два импульса, а затем установили A = 1. Укажите
состояние q, в котором окажется автомат, где q – десятичное число.
Считать, что значение A входит в код q.
· · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · ·
10.4 Триггер типа JK
Один из вариантов триггера JK изображен на рисунке 10.7. Отличается он
от вышерассмотренного T-триггера только тем, что элементы Шеффера 3 и 4
являются не двухвходовыми, а трёхвходовыми. Эти добавленные входы обо-
значены буквами J и K, обозначающие единичный и нулевой входы соответ-
ственно. Во всём остальном схемы триггеров T и JK одинаковы. Однако по сво-
им функциональным возможностям они существенно различаются.
Рис. 10.7
JK-триггер меняет свои состояния под действием отрицательных фронтов
прямоугольных импульсов, поступающих на его синхровход, обозначенный на
рисунке 10.7 буквой «С» русского алфавита. Изменение уровней напряжения на
входах J и K обычно происходит в те моменты времени, когда на синхровходе
напряжение равно нулю.
S
Q
&
3
φ
3
&
P
&
5
φ
5
&
Q
&
4
φ
4
&
&
6
φ
6
&
P
1
1
φ
1
1
2
φ
2
J
C
K
R
203
JK-триггер может работать в одном четырёх режимов. Рассмотрим их:
1)
J = K = 0. Синхроимпульсы, поступающие на вход С, состояние триг-
гера не меняют. Это режим хранения информации;
2)
J = 0, K = 1. В этом случае под действием синхроимпульса триггер пе-
реходит в нулевое состояние независимо от предыдущего;
3)
J = 1, K = 0. Синхроимпульс переводит триггер в единичное состоя-
ние;
4)
J = 1, K = 1. Триггер под действием синхроимпульса переходит в про-
тивоположное состояние (превращается в T-триггер).
Условное обозначение JK-триггера приведено на рисунке 10.8.
Рис. 10.8
Триггер JK, как и Т-триггер, является двухтактным.
10.5 Синтез многотактных автоматов на JK-триггерах
Метод построения многотактных автоматов с использованием JK-
триггеров рассмотрим на примере. Пусть требуется разработать схему, состоя-
ния которой менялись бы в последовательности следующих трёхзначных дво-
ичных чисел, начиная с исходного 011:
011, 100, 010, 000, 101, 111, 110, 001, …
и так далее по замкнутому циклу. В десятичной системе эта последователь-
ность имеет вид: 3, 4, 2, 0, 5, 7, 6, 1, … .
Так как всего имеется восемь различных состояний, то для построения
схемы необходимо три триггера. Обычно в автоматах выделяется одно состоя-
ние, называемое начальным (исходным). В данном случае начальным является
состояние 011, следовательно, к шине Y (установка исходного состояния) при-
соединяем вход R триггера А, вход S триггера В и вход S триггера С.
Автомат согласно условию работает по замкнутому циклу, следователь-
но, строить таблицу переходов можно с любого состояния. Пусть это будет со-
стояние 011, как указано в условии, где последовательность начинается с дво-
ичного числа 011 (табл. 10.3). В левой колонке, обозначенной «Дес.», записаны
C
R
S TT
Q
Q
K
J
204
десятичные числа заданной последовательности состояний. В колонках A, B, C
приведены те же числа, но в двоичном коде. В правой части таблицы содержит-
ся шесть колонок, так как JK-триггеры имеют по два входа. Каждому из этих
входов соответствует определённая булева функция. Задача синтеза автомата
сводится к нахождению булевых функций, выступающих в роли уравнений
входов.
Таблица 10.3
Дес. A B C J
A
K
A
J
B
K
B
J
C
K
C
3
4
2
0
5
7
6
1
0 1 1
1 0 0
0 1 0
0 0 0
1 0 1
1 1 1
1 1 0
0 0 1
1 ×
× 1
0 ×
1 ×
× 0
× 0
× 1
0 ×
× 1
1 ×
× 1
0 ×
1 ×
× 0
× 1
1 ×
× 1
0 ×
0 ×
1 ×
× 0
× 1
1 ×
× 0
Заполняем таблицу.
Под действием первого синхроимпульса должно установиться состояние
100, как это указано во второй строке таблицы в колонках A, B, C. Триггер
А перейдет в состояние единицы, если на вход J
A
поступит высокий уровень.
Следовательно, в колонке J
A
строки 011 записываем единицу. В колонке K
A
при
этом ставим крестик (неопределенное состояние), так как триггер А перейдет в
единичное состояние независимо от того, высокий или низкий уровень будет на
входе K
A
. Триггер В перейдет в состояние нуля, если на вход K
B
подать высокий
уровень, а на вход J
B
– безразлично какой, высокий или низкий. Следовательно,
в колонке K
B
записываем единицу, а в колонке J
B
– крестик (неопределённость).
То же самое относится и к колонкам J
С
и K
С
.
Допустим, что первый синхроимпульс прошел на вход схемы и установил
ее в состояние 100. Под действием второго импульса автомат должен перейти в
состояние 010. Триггер А перейдет в нулевое состояние, если на вход K
A
подать
высокий уровень. На входе S
A
при этом может быть высокий или низкий уро-
вень – безразлично какой из них. Следовательно, в колонке K
A
записываем еди-
ницу, а в колонке J
A
ставим крестик, т. е. неопределённость.
205
Триггер В перейдет в состояние единицы, если при любом уровне на вхо-
де K
B
на вход J
B
поступит высокий уровень. В связи с этим в колонке J
B
запи-
сываем единицу, а в колонке K
B
– крестик (неопределённость).
Триггер С должен остаться в нулевом состоянии. Это возможно, если на
входе J
C
будет поддерживаться низкий уровень, а на входе K
C
может быть как
низкий уровень, так и высокий. Это неопределённость. Следовательно, в ко-
лонке J
С
записываем нуль, а в колонке K
C
– крестик.
Аналогично заполняем всю правую часть таблицы, после чего рассматри-
ваем её как таблицу соответствия для шести функций, являющихся, согласно
[48], уравнениями входов. СДНФ их имеют вид:
J
A
= (0, 3); [4, 5, 6, 7];
K
A
= (4, 6); [0, 1, 2, 3];
J
B
= (1, 4, 5); [2, 3, 6, 7];
K
B
= (2, 3, 6); [0, 1, 4, 5];
J
C
= (0, 6); [1, 3, 5, 7];
K
C
= (3, 7); [0, 2, 4, 6],
где в квадратных скобках перечислены неопределённые состояния.
В результате минимизации получаем:
;
C
B
BC
J
A
+
=
;
C
K
A
=
;
C
A
J
B
+
=
;
C
A
K
B
+
=
;
B
A
B
A
J
C
+
=
.
B
K
C
=
Схема автомата приведена на рисунке 10.9. Буквой Y на схеме обозначена
установка исходного состояния. Импульсы генератора подаются на шину С, к
которой подключены синхровходы всех триггеров.
Рис. 10.9
Y
&
S
A
C
J
C
K
R
TT A
S
B
J
C
K
R
TT B
S
C
J
C
K
R
TT C
&
1
&
&
1
1
1