Этап структурного синтеза
На этапе структурного синтеза, как уже сказано выше, необходимо определить функции переходов и функции выходов, описывающие комбинационную схему устройства.
Для этого необходимо составить таблицу, связывающую состояния входов и выходов. Эту таблицу называют таблицей состояний. Она составляется на основании таблицы переходов с учетом используемых элементов памяти.
В качестве элементов памяти будем использоваться асинхронные RS – триггеры [3,5] с прямыми входами.
Таблица 2.6 является таблицей состояний этого триггера. Условное обозначение триггера приведено на рис. 2.2 (R и S – входы триггера; Q – прямой выход триггера; - инверсный выход триггера).
При R=0 и S=0 триггер занимает то состояние, в которое он был установлен в предыдущий момент времени. При R=1 и S=0 триггер устанавливается в состояние «0» (Q=0). При R=0 и S=1 – в состояние «1» (Q=1). Состояние входов R=1 и S=1 является запрещенным, так как при этом на обоих его выходах устанавливается уровень «0», а после перехода входов в состояние «0» состояние триггера окажется неопределенным, то есть в силу случайных причин он может установиться или в состояние «0» или в состояние «1».
Таблица 2.7 – является таблицей состояний для примера 1, составленной на основании таблицы переходов 2.3.
Каждая строка таблицы состояний соответствует клетке таблицы переходов.
Во втором слева столбце записаны содержания клеток таблицы переходов. В левой части таблицы указывается входное состояние (состояние входов КС), которое формируется из состояния внешних входов и состояния элементов памяти в данный момент времени (входное состояние а1 а2 а3 Q1 Q2 ).
В правой части указывается состояние входов элементов памяти и состояний внешних выходов устройства ( R1R2 S1 S 2 Z1 Z2).
Таким образом, таблично задаются функции переходов F (R1), F(R2), F(S1), F(S2) и функций выходов F (Z1) и F (Z2).
При этом для каждого входного состояния соответствующая функция переходов равна «1» или «0», или не определена в зависимости от того, изменяет свое состояние соответствующий триггер или нет.
Например, для записи, соответствующей клетке (0)00, входное устойчивое состояние (0) соответствует состоянию входов 000 и состоянию триггеров 00.
Триггеры не меняют своего состояния и находятся в нулевом состоянии.
Следовательно, для сохранения этого состояния триггеров на входы установки триггеров R1 и R2 в нуль можно подавать либо «0», либо «1», то есть состояние входа не определено, поэтому ставится и для R1 и для R2 прочерк.
Для соответствующего неустойчивого состояния «0» R2 = 1 в обязательном порядке, так как триггер с выходом Q2 переходит из состояния «1» в состояние «0».
Входы S1 и S2 для этих двух состояний имеют значение «0», так как оба триггера находятся в состоянии «0» для входного состояния (0) (устойчивого), а для входного состояния «0» (неустойчивого) первый триггер в состоянии «0», а второй переходит в нуль. Значение выходов z1 и z2 проставляются в соответствии с таблицей переходов. Для состояния (0)00 и 000 z1 =0; z2 =0. Точно по такому же принципу заполняются другие строки таблицы состояний, каждая из которых соответствует клетке таблицы переходов.
Далее по табличному представлению функций переходов и функций выходов определим их аналитические выражения в минимальной дизъюнктивной нормальной форме.
В данном случае все функции, кроме F(Z2), определяются просто ввиду того, что они равны единице только на одном наборе – путем подбора функций F(R1), F(R2), F(S1), F(S2), содержащих минимальное количество букв (аргументов), так как они на других наборах либо равны нулю, либо не определены, и путем записи соответствующей конъюнкций для F(Z1), включающей все буквы, так как эта функция полностью определена.
Для минимизации F(Z2), используем метод Квайна-Мак-Класки [3,8,17]. Минимизация этим методом производится путем проведения операций склеивания над комбинациями, на которых функция равна единице и не определена.
Так как эта функция равна единице на значительно большем числе наборов, чем число наборов, где она равна нулю, то проведём минимизацию для инверсной функции , а затем проведём инверсию результата.
Это значительно сократить число операций при нахождении минимальной дизъюнктивной нормальной формы функции.
Указанные операции проведены в таблице 2.9. Все наборы, на которых F(Z2) равна нулю, разбиты в этой таблице на группы, в каждой из которых в каждом наборе одинаковое число единиц. Наборы расположены друг за другом в порядке возрастания числа единиц, а затем проведена последовательно операция склеивания между всеми наборами соседних групп до тех пор, пока это возможно [3]. Склеивающиеся наборы отмечаются галочкой.
Получившиеся простые импликанты образуют сокращенную дизъюнктивную нормальную форму (сокращенную ДНФ).
F(Z2)=a͞1a͞2a͞3 + a͞2a͞3 Q͞2 + a͞1a͞3 Q1 + a͞1a͞2Q2
Из этой сокращенной ДНФ с помощью импликантной матрицы [3] определяются тупиковые нормальные формы.
В импликантной матрице (таблица 2.10) определены простые импликанты, входящие в единственную в данном случае тупиковую форму, которая является одновременно и минимальной
Таблица 2.3
ЭП | Входы а1 а2 а3 | ||||||||
Q1 | Q2 | ||||||||
(0)00 | 100 | (0)01 | (0)01 | (0)01 | (0)01 | (0)01 | (0)01 | ||
(1)00 | (1)00 | 200 | (1)01 | (1)01 | (1)01 | (1)01 | (1)01 | ||
(2)00 | (2)01 | (2)00 | 300 | (2)01 | (2)01 | (2)01 | (2)01 | ||
000 | (3)01 | (3)01 | (3)10 | (3)01 | (3)01 | (3)01 | (3)01 |
|
|
| ||||||||||||||||||
| ||||||||||||||||||
Таблица 2.7
№ п.п | Запись в клетке таблицы переходов | Входное состояние (входы КС) | Входы ЭП | Выходы | ||||||||
а1 | а2 | а3 | Q1 | Q2 | R1 | R2 | S1 | S2 | Z1 | Z2 | ||
(0)00 | - | - | ||||||||||
(1)00 | - | - | ||||||||||
(2)00 | - | - | ||||||||||
000 | - | |||||||||||
100 | - | |||||||||||
(1)00 | - | - | ||||||||||
(2)01 | - | - | ||||||||||
(3)01 | - | - | ||||||||||
(0)01 | - | - | ||||||||||
200 | - | |||||||||||
(2)00 | - | - | ||||||||||
(3)01 | - | - | ||||||||||
(0)01 | - | - | ||||||||||
(1)01 | - | - | ||||||||||
300 | - | |||||||||||
(3)10 | - | - | ||||||||||
(0)01 | - | - | ||||||||||
(1)01 | - | - | ||||||||||
(2)01 | - | - | ||||||||||
(3)01 | - | - | ||||||||||
(0)01 | - | - | ||||||||||
(1)01 | - | - | ||||||||||
(2)01 | - | - | ||||||||||
(3)01 | - | - | ||||||||||
(0)01 | - | - | ||||||||||
(1)01 | - | - | ||||||||||
(2)01 | - | - | ||||||||||
(3)01 | - | - | ||||||||||
(0)01 | - | - | ||||||||||
(1)01 | - | - | ||||||||||
(2)01 | - | - | ||||||||||
(3)01 | - | - |
Таблица 2.8
N п/п | Запись в клет- ке таблицы переходов | Входное состояние (входы КС) | Выходы Z | |||||||
Т | Q1 | Q2 | R1 | R2 | S1 | S2 | Пример 2 Z2 | Пример 3 Z3 | ||
(0)0,0 | - | - | ||||||||
10,0 | - | |||||||||
(1) 0,0 | - | - | ||||||||
20,0 | - | |||||||||
(2) 0,1 | - | - | ||||||||
31,1 | - | |||||||||
(3)1,1 | - | - | ||||||||
00,1 | - |
![]() | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||
![]() |
до тех пор, пока это отл
![]() |
По полученным аналитическим выражениям может быть вычерчена схема устройства, в которую будут входить логические элементы, реализующие функциям «И», «ИЛИ», «НЕ», составляющие логический преобразователь (комбинационную схему), и триггеры являющиеся элементами памяти.
Аналогичные операции на этапе структурного синтеза выполняются и для таблицы 2.8, являющейся таблицей состояний для примеров 2 и 3. Простые импликанты для функций переходов примера 2 и примера 3 F(R1), F(R2), F(S1), F(S2) определяются методом Квайна-Мак-Класки соответственно в таблицах 2.11, 2.12, 2.13,2.14.
В результате получаются аналитические выражения функций переходов для примера 2 и примера 3.
Сокращенная ДНФ:
Минимальная ДНФ:
Функция выходов для примера 2 будет Она получилась путем склеивания наборов 6 и 7, на которых z=1. Функция выходов для примера 3 будет
, так как значение выхода совпадает с состоянием элемента памяти Q2.
Таким образом, для всех примеров определены шесть объектов, описывающие цифровое устройство. Следовательно, могут быть построены схемы устройств.
Соответствующие схемы приведены на рис.2.3 и 2.4. Схема рис. 2.4 соответствует примеру 2 (выход F(Z2)) и примеру 3 (выход F(Z3)), так как функции переходов для обоих примеров одинаковы, а функции выходов разные.