Существует весьма простой способ перехода от реализации КС в базисе И — НЕ к реализации КС в базисе И — ИЛИ. Способ основан на применении правил де Моргана и позволяет с помощью несложного алгоритма сразу по реализации КС в базисе И — НЕ получить реализацию КС в базисе И — ИЛИ. Если в исходной КС отсутствуют элементы И—НЕ, выполняющие функцию инвертора, то преобразованная КС будет содержать ровно столько логических элементов И, ИЛИ, сколько их имеется в исходной КС. Если в исходной КС инверторы имеются, то в преобразованной КС число логических элементов (по сравнению с исходной КС) будет уменьшено ровно на число инверторов.
Преобразование сложных аналитических выражений из булева базиса в базис ИЛИ — НЕ либо И — НЕ может быть сделано с помощью метода, основанного на последовательном применении теорем де Моргана. Метод позволяет осуществлять переход от произвольной по форме булевой функции, реализованной на элементах И, ИЛИ, НЕ, к форме, реализуемой на элементах И-НЕ, ИЛИ-НЕ, в частности от минимальной ДНФ или КНФ к минимальным (в точности до одной буквы) кратчайшим формам в базисе И-НЕ либо ИЛИ-НЕ.
а) б)
Рисунок 6
Пример. Реализовать булеву функцию
f= v v v
в монофункциональных базисах И-НЕ, ИЛИ-НЕ.
Функция задана в булевом базисе. Применив правило де Моргана, преобразуем функцию в монофункциональный базис.
преобразование в базис И-НЕ.
f= v v v = v v v -
преобразование в базис ИЛИ-НЕ.
КС соответствующие данным реализациям, представлены на рис.7 а,б, соответственно.
В заключение напомним, что получение минимальных форм булевых функций в монофункциональном базисе можно представить следующим образом:
Рисунок 7. а) - реализация функции в базисе И-НЕ;
б) - реализация функции в базисе ИЛИ-НЕ.
1) получение СДНФ булевой функции;
2) получение минимальной ДНФ булевой функции на основе ее СДНФ с помощью любого известного метода минимизации булевых функций;
3) перевод минимальной ДНФ в монофункциональный базис применением теорем де Моргана в любой последовательности.
Последнее справедливо, в силу того, что применение теорем де Моргана не изменяет числа букв в выражении.
Допустимая величина коэффициента объединения по входу (І) в реальных условиях проектирования КС оказывает существенное влияние на выбор ее структуры. Предположим, булева функция аналитически представлена выражением
f= v v v
Рисунок 8
Если не учитывать коэффициент объединения по входу, то такая булева функция может быть реализована двухуровневой КС (рис. 8), являющейся оптимальным вариантом по быстродействию. Однако, если коэффициент объединения по входу І = 2, то предложенная реализация должна быть видоизменена. Преобразование КС в булевом базисе сводится к простому разделению переменных на элементах И и ИЛИ на основе ассоциативности операций конъюнкции и дизъюнкции. Преобразованная КС представлена на рис. 9. Как следует из рис.8, 9, выполненное преобразование приводит к необходимости использования четырехуровневой КС, что снижает быстродействие схемы. В общем случае, желательно проектировать КС минимальной глубины при выполнении требований на величину коэффициента І для используемого комплекта ИМС. Глубину КС можно уменьшить, если от минимальной ДНФ перейти к скобочной форме, вынося общие члены ДНФ за скобки.
В ряде случаев уменьшить глубину КС при сохранении величины коэффициента І можно, используя переход к смешанному базису, если в комплекте ИМС, используемом для проектирования КС, имеются соответствующие элементы.
Рисунок 9
Коэффициент объединения по входу U(коэффициент разветвления) некоторого логического элемента характеризует максимально возможное количество элементов схемы, входы которых могут быть подключены к его выходу. Коэффициент U является одной из технических характеристик комплекта ИМС и не связан с логикой работы ИМС. Если некоторый логический элемент α с коэффициентом разветвления U α, подключен ко входам n α > U α логических элементов, то считается, что элемент α перегружен. В этом случае необходимо так структурно преобразовать КС, возможно путем введения в нее некоторых дополнительных элементов, чтобы число нагрузок на элемент к было меньше U α. В корректно построенной КС для всех ее элементов αi должно выполняться условие отсутствия перегрузок n αi ≤ U αi Таким образом, расчет КС по коэффициенту разветвления сводится к определению перегруженных элементов и устранению перегрузок.
При построении КС с учетом коэффициента объединения по выходу наибольшее распространение получили два способа устранения перегрузок:
1) введение развязывающих усилителей;
2) дублирование перегруженных элементов.
Рисунок 10
Рассмотрим их применение на конкретных примерах. Пусть задана КС (рис. 10) в монофункциональном базисе И — НЕ с коэффициентом объединения по выходу U=2. Элемент 2 в схеме перегружен, так как его выход подключен ко входам трех логических элементов КС. Установка развязывающего усилителя, состоящего из двух последовательно соединенных элементов И—НЕ (рис. 11), на выходе элемента 2 устраняет перегрузку.
Рисунок 7.11 Рисунок 7.12
Иной способ устранения перегрузок элемента 2 сводится к его дублированию (рис. 12). Однако дублирование логического элемента повышает нагрузку на его входы, что может привести к перегрузке логических элементов, соединяемых со входами дублируемого. Ее устранение связано с введением новых дублируемых элементов и т. д. Необходимо отметить, что дублирование элементов не вносит дополнительных задержек в КС и может оказаться полезным при организации контроля правильности ее функционирования. Введение усилителей всегда вносит в КС дополнительную задержку распространения сигнала. В тех случаях, когда требуется сохранить заданное быстродействие КС и получить оптимальный вариант по числу вводимых элементов, применяют комбинированный метод, т. е. вводят усилители там, где возможно (при сохранении заданного быстродействия КС), а оставшиеся перегруженные элементы дублируют.
Вывод
Литература
1. Самофалов К.Г., Романкевич А.М., и др. Прикладная теория цифровых автоматов. - Киев. “Вища школа” 1987.
2. Соловьев Г.Н. Арифметические устройства ЭВМ. - М. “Энергия”. 1978.
3. Савельев А.Я. Прикладная теория цифровых автоматов - М. “Высшая школа”. 1987.
4. Каган Б.М. Электронные вычислительные машины и системы. - М. Энергоатомиздат. 1985.
5. Лысиков Б.Г. Арифметические и логические основы цифровых автоматов. - Минск. “Вышэйшая школа”. 1980.