JK-триггер.
Q t | Q t+1 | J | K |
0 | 0 | 0 | X |
0 | 1 | 1 | X |
1 | 0 | X | 1 |
1 | 1 | X | 0 |
00 | 01 | 11 | 10 | |||||||||||||
J1 | K1 | J2 | K2 | J1 | K1 | J2 | K2 | J1 | K1 | J2 | K2 | J1 | K1 | J2 | K2 | |
00 | 0 | X | 0 | X | 1 | X | X | 1 | X | 0 | X | 1 | – | – | ||
01 | – | – | 1 | X | X | 0 | X | 1 | X | 1 | – | – | ||||
11 | 0 | X | 1 | X | – | – | X | 1 | X | 0 | X | 0 | 1 | X |
00 | 01 | 11 | 10 | 00 | 01 | 11 | 10 | |||
00 | 0 | 1 | X | – | 00 | X | X | 0 | – | |
| 01 | – | 1 | X | – | 01 | – | X | 1 | – |
11 | 0 | – | X | X | 11 | X | – | 1 | 0 | |
10 | – | – | – | – | 10 | – | – | – | – |
00 | 01 | 11 | 10 | 00 | 01 | 11 | 10 | |||
00 | 0 | X | X | – | 00 | X | 1 | 1 | – | |
01 | – | X | X | – | 01 | – | 0 | 1 | – | |
11 | X | – | 1 | 0 | 11 | 0 | – | 0 | X | |
10 | – | – | – | – | 10 | – | – | – | – |
Функциональные схемы автоматов с различными типами триггеров предлагается построить самостоятельно.
Кодирование внутренних состояний ЦА.
Гонки в автомате.
Кодирование заключается в сопоставлении каждому состоянию автомата набора (кода) состояний элементов памяти. При этом наборы для всех состояний должны иметь одинаковую длину, а разным состояниям автомата должны соответствовать разные наборы. Если элементы памяти двоичные, то их число .
Если при переходе автомата из одного состояния в другое должны изменить свои состояния сразу несколько запоминающих элементов, то между ними начинаются состязания. Тот элемент, который выиграет эти состязания, т.е. изменит свое состояние ранее, чем другие элементы, может через цепь обратной связи изменить сигналы на входах некоторых запоминающих элементов до того, как другие, участвующие в состязаниях элементы, изменят свои состояния. Это может привести к переходу автомата в состояние, не предусмотренное его графом. Поэтому в процессе перехода из состояния am в состояние as под действием входного сигнала Zf автомат может оказаться в состоянии ak или al: (рис.36.).
Если затем при том же входном сигнале Zf автомат из аk и аl перейдет в аs, то такие состязания являются допустимыми или некритическими.
Если же в этом автомате есть переход, например, из аk в аj ¹ аs под действием того же сигнала Zf, то автомат может перейти в аj, а не в аs и правильность его работы будет нарушена (рис.37.).
Такие состязания называются критическими состязаниями или гонками и необходимо принимать меры для их устранения.
Устранить гонки можно аппаратными средствами либо используя специальные методы кодирования. Один из способов ликвидации гонок состоит в тактировании входных сигналов автомата импульсами определенной длительности. Предполагается, что кроме входных каналов х1, ..., хl имеется еще канал С от генератора синхроимпульсов, по которому поступает сигнал С = 1 в момент прихода импульса и С = 0 при его отсутствии. В связи с этим входным сигналом на переходе (am, as) будет не Zf, а CZf. Тогда, если длительность импульса tc меньше самого короткого пути прохождения тактированного сигнала обратной связи по комбинационной схеме, то к моменту перехода в промежуточное состояние ak сигнал C = 0, CZf=0, что исключает гонки. Канал С – это фактически синхровход триггера. Недостаток метода – в трудности подбора требуемой длительности импульса, т.к. она зависит от многих факторов, не поддающихся строгому учету.