КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Синтез логических схем 1 страница
Различные логические функции отражают условия работы компьютера и возможный его состав, если каждой элементарной логической операции ставится в соответствие реальный физический элемент. Это означает, что логические функции можно использовать в качестве тех аналитических форм, по которым строятся логические схемы различных узлов ЭВМ. Любая сложная логическая функция может быть выражена через элементарные функции, составляющие функционально полную систему. Любая сложная логическая функция может представлять собой реализацию некоторой части компьютера, если эта часть построена с помощью набора элементов, реализующего все функции одной из функционально полных систем. Набор элементов, отвечающий любой функционально полной системе элементарных логических функций, называется функционально полным набором логических элементов [2]. Для построения узлов компьютера чаще всего используются элементы, обеспечивающие реализацию таких элементарных логических операций (функций), как отрицание, конъюнкция, дизъюнкция, операция Шеффера и операция Пирса. Логические элементы именуются в соответствии с реализуемыми функциями. Для реализации отрицания используется инвертор (элемент НЕ), для реализации конъюнкции — конъюнктор (элемент И), для реализации дизъюнкции — дизъюнктор (элемент ИЛИ), для реализации операции Шеффера — элемент Шеффера (элемент И — НЕ), для реализации операции Пирса — элемент Пирса (элемент ИЛИ — НЕ). Для реализации логических функций, заданных своими дизъюнктивными нормальными формами, можно использовать набор элементов И, ИЛИ, НЕ. Элементы И реализуют элементарные конъюнкции, элементы ИЛИ — дизъюнкции, элементы НЕ используются для инвертирования значений соответствующих переменных. Ясно, что реализация д. н. ф. возможна только тогда, когда элементы И имеют количество входов, не меньшее ранга реализуемых конъюнкций, а элемент ИЛИ имеет количество входов, не меньшее числа конъюнкций в реализуемой д. н. ф. Если эти условия не выполняются, то конъюнкции и дизъюнкция реализуются по частям, что усложняет общую логическую схему; к усложнению схемы ведет и увеличение числа конъюнкций в д. н. ф., так как для реализации каждой конъюнкции требуется, по крайней мере, один элемент И. Следовательно, в общем случае более простой логической функции отвечает и более простая логическая схема. Для упрощения начальных форм логических функций проводятся специальные действия, или минимизация логических функций. Основная цель минимизации логических функций — получение их минимальных нормальных форм, дизъюнктивных или конъюнктивных. В общем случае минимальная форма определяется следующим образом: дизъюнктивная или конъюнктивная нормальная форма логической функции называется минимальной, если она содержит наименьшее число двоичных переменных, их отрицаний и логических операций по сравнению со всеми другими эквивалентными дизъюнктивными или соответственно конъюнктивными нормальными формами. Если число переменных мало то минимизация логических функций может быть осуществлена вручную путем непосредственных преобразований. Минимизация сложных логических функций проводится, как правило, с использованием машинных методов, т. е. путем реализации соответствующих алгоритмов на ЭВМ. Непосредственное преобразование состоит в том, что минимизация исходной логической функции осуществляется в результате понижения ранга конъюнкций (дизъюнкций) в результате использования основных законов алгебры логики, их следствий или же логических тождеств, например , или же При проведении эквивалентных преобразований необходимо получить минимальную форму функции (формулы), т. е. такую, которая не содержит «лишних» двоичных переменных и «лишних» членов. При этом «лишними» двоичными переменными и членами логической формулы называются такие, значения которых не влияют на значение преобразуемой формулы. Так, например, в формуле лишней является переменная т. к. значение истинности рассматриваемой функции не зависит от значений этой переменной. Покажем, что это действительно так: В приведенном примере мы провели так называемую «склейку», т.е. удалили элемент Отметим, что на последнем этапе преобразований возможно удаление «лишних» членов с помощью применения операции «обобщенной склейки». Поясним это на следующем примере. Пусть имеется Д. Н. Ф. Рассмотрим таблицу истинности для функции при различных значениях и :
В первом случае Во втором: В третьем: И в четвертом случае Отсюда видно, что значение истинности Д. Н. Ф. не зависит от значения а тогда Синтез логической схемы заключается в ее построении по заданным условиям работы соответствующего узла компьютера. Эти условия определяют количество входов и выходов узла, а также закон соответствия наборов входных и выходных сигналов. Алгоритм синтеза может включать в себя следующие шаги: 1. Формирование логических условий работы рассматриваемого узла путем составления таблицы его работы, или таблицы истинности, для соответствующих логических функций. Таблица работы узла составляется непосредственно по заданным условиям его работы. 2. Получение по таблицам истинности аналитических представлений логических функций, описывающих рассматриваемый узел, в виде совершенных д. н. ф. или к. н. ф. 3. Минимизация логических функций, проводимая с целью получения в конечном итоге наиболее простой логической схемы. Минимизированные функции приводятся к виду, который отвечает наиболее простой их реализации с помощью логических элементов заданного набора. 4. Построение логической схемы по минимизированным логическим функциям. При проведении работ по синтезу логических схем могут выполняться не все действия из указанных четырех, или же логические функции, описывающие рассматриваемый узел заданы. Если же логические функции не поддаются минимизации, то действия по третьему пункту сводятся к преобразованию функций с целью получения их форм, удобных для реализации посредством логических элементов заданного набора. Следует заметить, что при синтезе схем, описывающих работу какого-либо узла компьютера, чаще используют элементарные конъюнкции и, соответственно, С. Д. Н. Ф. в силу того, что в этом случае удобнее проводить необходимые преобразования. В этом случае обычно стараются выявить так называемые «соседние» [2] конъюнкции, т.е. элементарные конъюнкции одного ранга состоящие из одних и тех же логических переменных и отличающихся инвертированием только одной переменной, т.е. если в некоторую конъюнкцию входит переменная , то в «соседнюю» входит Например, конъюнкции и являются «соседними». Ниже рассмотрим примеры синтеза схем, но, прежде чем начать рассмотрение этих примеров, приведем примеры условных обозначений принятые для наиболее часто используемых элементов.
Рисунок 1
Так как работа некоторого узла компьютера задается таблицей истинности, сформулируем правила, по которым производится построение дизъюнктивных и конъюнктивных нормальных форм [2]: Правило 1. Для построения совершенной дизъюнктивной нормальной формы логической функции от двоичных переменных, заданной таблицей истинности, необходимо по каждому набору двоичных переменных, на котором функция принимает значение единицы, записать конъюнкцию -го ранга, включающую все переменные, и полученные конъюнкции соединить знаками дизъюнкции; при записи конъюнкций двоичные переменные равные нулю инвертируются, т.е. в конъюнкцию включаются их отрицания, а остальные включаются без изменений. Правило 2. Для построения совершенной конъюнктивной нормальной формы логической функции от двоичных переменных, заданной таблицей истинности, необходимо по каждому набору двоичных переменных, на котором функция принимает значение нуля, записать дизъюнкцию -го ранга, включающую все переменные, и полученные дизъюнкции соединить знаками конъюнкции; при записи дизъюнкций двоичные переменные равные единице инвертируются, т.е. в дизъюнкцию включаются их отрицания, а остальные включаются без изменений. Теперь мы можем приступить к примерам реализации схем. В первом примере приводится устройство, имеющее входов и один выход. Такие устройства носят название мультиплексоров. Работа простейшего мультиплексора на три входа задана таблицей истинности [2]:
Согласно правилу, приведенному выше, выпишем элементарные конъюнкции[1]: Тогда Несложно подсчитать, что для реализации данной логической схемы потребуется пять конъюнкторов (И), семь инверторов (отрицаний, НЕ) и один дизъюнктор (ИЛИ), т.е. тринадцать элементов, поэтому проведем минимизацию. выделим соседние конъюнкции и добавим «лишнюю» конъюнкцию проведем группировку после проведения «склейки», получаем . При реализации последней схемы требуется уже два инвертора, две схемы ИЛИ и два элемента И, т. е. всего шесть элементов. Если же использовать закон инверсии для дизъюнкции, то Для последнего варианта потребуется три схемы ИЛИ, одна НЕ и одна И, т. е. пять элементов. Блок-схема устройства имеет вид Рисунок 2
Теперь рассмотрим вариант минимизации и синтеза данной схемы с использованием с. к. н. ф. В этом случае и в этом случае на начальном этапе минимизации мы можем применять только законы алгебры логики
теперь можно провести группировки, а затем и склейки с целью понижения ранга дизъюнкций после проведения обобщенной склейки получим В результате мы получили ту же самую конечную функцию, проведя значительно больше преобразований и затратив существенно больше усилий, нежели в первом случае. Последний пример прекрасно иллюстрирует тот факт, почему обычно при проектировании различных устройств обычно проводят минимизацию дизъюнктивных, а не конъюнктивных совершенных нормальных форм, о чем уже говорилось выше. Этап минимизации логических функций имеет особенности также тогда, когда производится синтез схем с несколькими выходами. Такие схемы называют - полюсниками, считая количеством входов, а — количеством выходов. Для получения наиболее простой схемы - полюсника при минимизации и преобразований описывающих его функций необходимо стремиться к тому, чтобы в выражениях функций по одним выходам максимально использовались выражения функций (или их частей) по другим выходам. Рассмотрим пример синтеза схемы - полюсника, заданного следующей таблицей [2]:
Дата добавления: 2014-11-29; Просмотров: 1036; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |