X1
|
__
X2
|
__
X3
|
S0
|
S1
|
S2
|
S3
|
S4
|
S5
|
S6
|
S7
|
S8
|
S9
|
S10
|
S11
|
S12
|
S13
|
S14
|
0
|
0
|
0
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1
|
0
|
0
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
0
|
0
|
1
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
0
|
1
|
0
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1
|
1
|
0
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1
|
0
|
1
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
0
|
1
|
1
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1
|
1
|
1
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
На пересечении строки 000 и столбца S1 ставится S2/0, вводится новый столбец S2 и на его пересечении со строкой 000 ставится S2/0 (устойчивое состояние).
Аналогичные операции выполняются для последующих нажатий кнопок х2 («__») и хЗ («__»). При нажатии последней кнопки кода состояние выходного элемента изменяется Z = l (токораспределитель подключается к источнику питания). Для этого случая запись будет иметь вид S7/1. При отпускании последней кнопки кода ДКУ возвращается в состояние S0/0.
Состояние S8, S9, S10 и S11 вводятся для отражения событий нажатия двух или трех кнопок одновременно, например, если при нажатой кнопке xl («__») будет нажата кнопка х2 («__»), то ДКУ переходит в состоянии S8/0 (пересечение строки 110 и столбца S1). Так как состояние устойчивое, то на пересечении строки 110 и столбца S8 ставится S8/0. При отпускании одной из кнопок устройство переходит в состояния S13 или S14 и возвращается в исходное состояние. При нажатии третьей кнопки устройство переходит в устойчивое состояние S11, а при отпускании одной из кнопок в состояния S8, S9, S10.
Состояния устройства S12, S13, S14 описывают нажатие кнопок в неправильной последовательности. Так, например, после нажатия кнопки xl («__») должно последовать нажатие кнопки ____(«___»), но в случае нажатия кнопок ___ или ___ происходит переход ДКУ в состояния S14/0 и S13/0 соответственно. Из этих состояний устройство возвращается в исходное состояние S0/0.
Следует обратить внимание на то, что состояния S8 - S14 устойчивы и из них должен быть предусмотрен переход в некоторые состояния (не всегда S0) при отпускании кнопок.
Каждому столбцу (внутреннему состоянию) должна соответствовать своя комбинация состояний элементов памяти. Количество элементов памяти, необходимое для реализации всех комбинаций определяется из выражения:
m ≥log2 S = ________,
где m - количество элементов памяти; S - количество столбцов в таблице переходов и выходов.
3.2. Минимизация системы логических функций, заданных таблицей переходов и выходов.
Первичная таблица переходов обычно содержит избыточное количество столбцов, так как в каждом столбце не более одного устойчивого состояния и несколько неустойчивых. Это приводит к усложнению структуры ДКУ. Сокращение количества столбцов уменьшит число элементов памяти и упростит структуру.
Минимизация таблицы осуществляется путем объединения столбцов и исключением эквивалентных состояний.
Правила объединения столбцов:
- если в каждой строке двух столбцов символы, обозначающие состояния и комбинации выходных сигналов совпадают или хотя бы в одной строке имеется пустая клетка, то такие столбцы могут быть объединены. Столбцы, имеющие отличия хотя бы в одной строке объединять нельзя;
- в клетках результирующего столбца проставляются символы из объединяемых столбцов. Если одна из клеток пустая, то в результирующем столбце проставляются символы из заполненной клетки;
- символ состояния, соответствующий сокращенному столбцу, во всех клетках таблицы заменяется символ состояния столбца, с которым произведено объединение.
Если после объединения остается только один столбец, то это значит, что данное устройство комбинационное и таблица переходов вырождается в таблицу состояний.
После всех возможных объединений столбцов минимизированная таблица переходов будет иметь вид табл.2 (объединены столбцы________________________________________________________).
Если осталось более одного столбца, то таблица переходов и выходов преобразуется в матрицу переходов и выходов, отличающуюся тем, что вместо символов внутренних состояний в матрице указываются соответствующие комбинации состояний m элементов памяти.
Таблица 2
Минимизированная таблица переходов и выходов
__
X1
|
__
X2
|
__
X3
|
S0
|
S1
|
S2
|
S3
|
S4
|
S5
|
S6
|
S7
|
S8
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3.3. Кодирование таблицы переходов и выходов.
В рассматриваемом примере необходимы m= ______ элемента памяти, которые обозначены как yl, у2, у3, у4.
Для соседних состояний ( Si и Si+1) желательно выбирать соседние комбинации.
Состояниям таблицы Si поставлены в соответствии следующие комбинации состояний элементов памяти:
S0: yl=___, у2=___, у3=___, у4=___;
S1: yl=___, у2=___, у3=___, у4=___;
S2: yl=___, у2=___, у3=___, у4=___;
S3: yl=___, у2=___, у3=___, у4=___;
S4: yl=___, у2=___, у3=___, у4=___;
S5: yl=___, у2=___, у3=___, у4=___;
S6: yl=___, у2=___, у3=___, у4=___;
S7: yl=___, у2=___, у3=___, у4=___;
S8: yl=___, у2=___, у3=___, у4=___.
Заменой в табл.2 символов состояний на указанные комбинации состояний элементов памяти получена матрица переходов и выходов (табл.3).
Далее задается база разрядности (______________) и в соответствии с ней каждой клетке матрицы присваивается свой вес. Так как число переменных больше четырех, то удобно записать базу разрядности с помощью оператора свертывания (_____)(_________). Таким образом, код состояния входных элементов будет соответствовать старшему разряду, а код состояния элементов памяти – младшему.
Таблица 3
Do'stlaringiz bilan baham: |