Преобразование в базис И-НЕ:
= + = = + = (*)Далее проводится оценка сложности комбинационной схемы управления (КСУ):
1- если в схеме используется прямой вход
2- если в схеме используется инверсный вход
S
= (2 + 1) + (1 + 1) + (1 + 1) + (2 + 1) + (1 + 1) + (1 + 1) = 14S
= (2 + 1) + (1 + 1) + (1 + 1) = 7Так как S
> S , следовательно, целесообразно использование триггера D-типа.Для построения схемы сдвигающего регистра, требуется определить выражения, отражающие логику формирования входных сигналов каждого разряда, учитывая кольцевую структуру регистра. Чтобы получить искомые выражения необходимо вместо индексов у переменных в формуле (*) подставить значения, соответствующие номерам разрядов от 1 до 8, при этом, если результат вычислений значения индекса окажется меньше или равен 0, то к результату следует прибавить число, указывающее количество разрядов в проектируемом кольцевом сдвигающем регистре; если результат окажется больше 8, то из него следует вычесть это число. Используя указанное правило, получим следующие выражения, описывающие логику формирования сигналов на входе JK-триггера каждого из 8-ми разрядов регистра:
= = = = = = = = =Проектирование триггерного устройства. Исходными данными для проектирования являются функция внешних переходов триггера и условия переключения его выходного сигнала по отношению к синхросигналу С.
Таблица 4: Таблица внешних переходов D триггера
D | |||
0 | 0 | 0 | 0 |
0 | 1 | 0 | |
1 | 0 | 1 | |
1 | 1 | 1 | 1 |
Описание работы триггера можно представить в виде таблицы внутренних состояний и переходов триггерного устройства.
Таблица 5: Таблица внутренних состояний и переходов триггерного устройства
№ состояния | Состояние сигналов CD | Q выхода | |||
00 | 01 | 11 | 10 | ||
1 | (1) | 2 | - | 4 | 0 |
2 | 1 | (2) | 3 | - | 0 |
3 | - | 6 | (3) | - | 0 |
4 | 1 | - | - | (4) | 0 |
5 | (5) | 6 | - | 8 | 1 |
6 | 5 | (6) | 7 | - | 1 |
7 | - | 6 | (7) | - | 1 |
8 | 1 | - | - | (8) | 1 |
Количество внутренних состояний можно сократить, объединяя строки таблицы. В данном случае наиболее целесообразным является объединение строк (1, 2, 4), (3), (5, 6, 7), (8).
Минимизированная таблица внутренних состояний и переходов D триггера имеет следующий вид:
Таблица 6
№ состояния | Состояние сигналов CD | Q выхода | |||
0 | 1 | 11 | 10 | ||
1, 2, 4 | (1) | (2) | 3 | (4) | 0 |
3 | - | 6 | 3 | - | 0 |
5, 6, 7 | (5) | (6) | (7) | 8 | 1 |
8 | 1 | - | - | (8) | 1 |
Преобразуем таблицу 6 в соответствии с количеством новых состояний триггера в таблицу 7. Так как число внутренних состояний уменьшилось до S = 4, то для кодирования этих состояний достаточно k = log (S) = 2 внутренних переменных. Обозначим их как
и .Эту операцию необходимо выполнить таким образом, чтобы в триггере не возникали критические состязания между сигналами обратных связей (состязания, приводящие к несанкционированным переходам тирггера из состояния в состояние). Эти состязания будут устранены, если коды соседних состояний будут отличаться значениями не более, чем в одном из разрядов, т. е. переходы между соседними внутренними состояниями будут реализованы изменением только одной внутренней переменной. Составим граф переходов, отвечающий этому требованию, где 00, 01, 11, 10 – коды внутренних состояний 1, 2, 3, 4 соответственно. Эти коды определяются значениями переменных
и , например, код 01 соответствует значениям = 0 и = 1.Граф переходов для 2-х переменных имеет следующий вид:
Минимизированная таблица 7 имеет следующий вид:
Таблица 7
№ состояния | Состояние сигналов CD | Q выхода | |||
0 | 1 | 11 | 10 | ||
1, 2, 4 | (1) | (1) | 2 | (1) | 0 |
3 | - | 3 | (2) | - | 0 |
5, 6, 7 | (3) | (3) | (3) | 4 | 1 |
8 | 1 | - | - | (4) | 1 |
Так как число внутренних состояний уменьшилось до S = 4, то для кодирования этих состояний достаточно k = log (4) = 2 внутренних переменных. Обозначим их как
и . Каждому внутреннему состоянию триггера поставим в соответствие набор значений переменных , .