Ну, последовательность повторяется после каждых 8 битов: 0 0 1 1 0 0 0 0
.Теперь log_2(8)=3
, это означает, что вам нужен 3-х элементный счетчик с функцией вывода:
0 0 0 = 0
0 0 1 = 0
0 1 0 = 1
0 1 1 = 1
1 0 0 = 0
1 0 1 = 0
1 1 0 = 0
1 1 1 = 0
Теперь я лично использую:
fun = BooleanMinimize[
BooleanFunction[{{0, 0, 0} -> 0, {0, 0, 1} -> 0, {0, 1, 0} ->
1, {0, 1, 1} -> 1, {1, 0, 0} -> 0, {1, 0, 1} -> 0, {1, 1, 0} ->
0, {1, 1, 1} -> 0}][c, b, a]]
с выводом: b && ! c
, но выможно использовать карту Карно.
Теперь вы можете искать на wolframalpha.com: logic circuit b && ! c
.
Так что теперь вам нужносделайте 3 JK-триггера для создания 3-х элементного счетчика с выходами {a, b, c}
и вам нужен только b
и c
выход.Вы можете просмотреть свои лекционные заметки, чтобы узнать, как их соединить.
Простой 4-битный 2-сторонний счетчик с использованием JK-триггеров и некоторой двоичной логики.
- Верхний
and
путь оператора используется при подсчете. - При использовании обратного отсчета путь ниже.
or
элементы используются для их объединения. - Дополнительный логический вход и
inverse
используется для определения способа подсчета.