22) Синтез комбинационных схем Логическая схема, выходные сигналы Zq которой описываются системой логических функций Zq = fq (X1, X2,...Xn), где Xp - входные сигналы логической схемы, p = 1, 2,..., n, q = 1, 2,..., k, называется комбинационной схемой (КС). Общей задачей структурного синтеза является построение комбинационных схем, реализующих заданные алгоритмы, с помощью простых, называемых логическими элементами. В результате структурного синтеза должен быть определен перечень логических элементов, входящих в схему, и порядок их соединения между собой. При синтезе комбинационных схем входные сигналы отождествляются с аргументами функции, а выходные сигналы - со значениями функции на тех или иных наборах входных сигналов. Номенклатура выбранных элементов должна обладать функциональной полнотой, т.е. данная номенклатура элементов должна позволять строить любую сколь угодно сложную логическую схему. Последовательность синтеза комбинационных схем состоит из следующих этапов: 1. 2. 3. 4. 5. 6. 7. 8. формализация словесного задания; составление таблицы истинности; запись логической функции в СДНФ или СКНФ; выбор функционально-полной системы логических элементов; минимизация логической функции; построение комбинационной схемы, соответствующей логической функции; проверка правильности работы схемы. При синтезе комбинационных схем формализация словесного задания обычно не вызывает затруднений и сводится к выявлению наборов переменных, на которых функция равна 1 или 0. После этого стандартным способом записывается таблица истинности. В некоторых случаях задание определяет функцию не на всех наборах, что может быть использовано для последующего упрощения функции на этапе ее минимизации. Доопределение не полностью определенных функций уже нами рассмотрено. Выполнение операций третьего этапа основано на использовании правил составления СДНФ или СКНФ. Обоснование выбора функционально-полной системы элементов определяется наличием элементов. Мы будем использовать основную систему логических элементов И, ИЛИ, НЕ. Далее производится минимизация одним из рассмотренных методов. Построение комбинационной схемы по заданной логической функции включает в себя выполнение всех логических операций, указанных в выражении функции. После построения схемы необходимо проверить правильность ее работы. При частичной проверке подают на вход схемы те наборы, на которых функция должна принять значения 0 или 1. Если выходные сигналы соответствуют этим значениям, то с большой вероятностью можно считать, что схема построена правильно. Более достоверной является полная проверка, при которой на схему подаются все 2n наборов и проверяется значение функции на выходе схемы. Имея комбинационную схему, нетрудно выполнить обратную задачу: произвести анализ схемы с целью установления вида логической функции, которую она реализует. Для решения задачи анализа необходимо: обозначить все выходные сигналы и все входные сигналы комбинационной схемы какими-либо буквами; на выходе каждого элемента схемы отметить логическую функцию, реализуемую данным элементом, аргументами каждой функции являются сигналы, являющиеся входными для данного элемента, выполнение этого пункта целесообразно начинать со стороны входных сигналов; логическая функция, записанная для элемента, выходным сигналом которого является исходный выходной сигнал комбинационной схемы, представляет собой логическую функцию комбинационной схемы, записанную для данного выходного сигнала. Для других выходных сигналов комбинационной схемы задача решается аналогичным образом. Пример. Синтезировать комбинационную схему, запрещающую поступление на вход АСУ тетрад двоично-десятичного кода, у которых количество единиц в тетрадах больше двух В моменты поступления тетрад на выходе КС должен формироваться выходной сигнал равный 1, который запрещает прохождение этой тетрады на вход АСУ в случаях, если в тетраде содержится количество единиц больше двух, или равно двум, во всех остальных случаях - выходной сигнал должен быть равен 0. Тетрады Наборы X 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Из таблицы 2.1 следует: F(X, Y, Z, V) = ZV + Y Z 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 Y V+ V 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 YZ f(X,Y,Z, V) 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 +X V+X 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 Z + + X Z + XY +XY V + XYZ + XYZV. Синтез схемы проведем на элементах основного базиса И, ИЛИ, НЕ. Представим функцию в виде карты Карно. Минимальная ДНФ имеет вид F(X, Y, Z, V) = XY + YZ + XV + YZV + YZV + YZ Построение комбинационной схемы (рис. 2.2). 0 0 0 1 0 1 1 0 0 1 1 1 1 1 1 1 Рисунок 2.2 - Комбинационная схема в основном базисе Перейдем от ДНФ функции F(X, Y, Z, V) к ее представлению в базисе “И-НЕ” F(X, Y, Z, V) = (XY) (XZ) (XV) (YZ) (ZV) (YV). На основании этого выражения построим логическую схему (рис.2.3). Рисунок 2.3 - Комбинационная схема в базисе И - НЕ Элементы, входящие в технический полный набор, выбранные для построения логической схемы, характеризуются, помимо прочего, коэффициентом объединения по входу m, коэффициентом разветвления по выходу n и задержкой сигнала ” t3. Интегрализация и унификация элементной базы приводят к необходимости ориентироваться на иные критерии оптимальности синтезируемых схем. Такими критериями могут быть: минимум количества интегральных микросхем, минимум коэффициента использования логических элементов в интегральных микросхемах, минимум выводов на разъемы и т.д. Такого рода критерии непосредственно связаны с задачами конструирования аппаратуры. При решении задачи синтеза использовался критерий минимальности дизъюнктивных или конъюнктивных нормальных форм соответствующих переключательных функций, т.е. критерий минимума количества букв, входящих в эти формы. Однако этот критерий не всегда приводит к схемам, содержащим минимальное возможное количество элементов или деталей. Иногда удается упростить схему, если она построена по формулам, отличающимся от нормальных форм. В ряде случаев это можно сделать путем вынесения за скобки общих сомножителей или слагаемых соответственно в ДНФ и КНФ. При этом необходимо условиться о критерии оценки сложности схем. Сложность каждого элемента “И”, “ИЛИ”, “И-НЕ” и т.д. растет примерно пропорционально количеству его входов. Поэтому критерием сложности всей схемы может быть общее количество входов всех логических элементов, входящих в ее состав.