Логические основы цифровой техники Понятие о логической функции и логическом устройстве
Скачать 1.86 Mb.
|
3. Синтез комбинационных устройств Канонические формы представления логических функций Синтез логического устройства распадается на несколько этапов. На первом этапе функцию, заданную в словесной, табличной или других формах требуется представить в виде логического выражения с использованием некоторого базиса. Дальнейшие этапы сводятся к получению минимальных форм функций, обеспечивающих при синтезе наименьшее количество электронного оборудования и рациональное построение функциональной схемы устройства. Для первого этапа обычно используется базис И, ИЛИ, НЕ независимо от базиса, который будет использован для построения логического устройства. Для удобства последующих преобразований приняты следующие две исходные канонические формы представления функций: совершенная дизъюнктивная нормальная форма (СДНФ) и совершенная конъюнктивная нормальная форма (СКНФ). Совершенная дизъюнктивная нормальная форма (СДНФ). Дизъюнктивной нормальной формой (ДНФ) называется такая форма представления функции, при которой логическое выражение функции строится в виде дизъюнкции ряда членов, каждый из которых является простой конъюнкцией аргументов или их инверсий. Примером ДНФ может служить выражение Приведем форму представления функции, не являющуюся ДНФ. Например, функция представлена не в ДНФ, так как последний член не является простой конъюнкцией аргументов. Также не является ДНФ следующая форма представления функции: Если в каждом члене ДНФ представлены все аргументы (или их инверсии) функции, то такая форма называется СДНФ. Выражение (1) не является СДНФ, так как в нем лишь третий член содержит все аргументы функции. Если исходная функция задана в табличной форме, то СДНФ может быть получена непосредственно. Таблица 1
Пусть задана функция в форме табл.1. Для этой функции СДНФ имеет вид Каждый член в (2) соответствует некоторому набору значений аргументов, при котором f(x1,x2,x3) равна 1. Каждый из наборов аргументов, при которых f(x1,x2,x3) равна 1 (3-, 4-, б-, 8-й столбцы наборов), обращает в единицу соответствующий член выражения (2), вследствие чего и вся функция оказывается равной единице. Можно сформулировать следующее правило записи СДНФ функции, заданной таблицей истинности. Необходимо записать столько членов в виде конъюнкций всех аргументов, сколько единиц содержит функция в таблице. Каждая конъюнкция должна соответствовать определенному набору значений аргументов, обращающему функцию в единицу, и если в. этом наборе значение аргумента равно нулю, то в конъюнкцию входит инверсия данного аргумента. Следует отметить, что любая функция имеет единственную СДНФ. Совершенная конъюнктивная нормальная форма (СКНФ). Конъюнктивной нормальной формой (КНФ) называется форма представления функции в виде конъюнкции ряда членов, каждый из которых является простой дизъюнкцией аргументов (или их инверсий). Примером КНФ может служить следующая форма представления функции: Приведем форму представления функций, не являющейся КНФ: эта форма не является КНФ, так как в ней первый член не связан с остальными операцией конъюнкции). В СКНФ в каждом члене КНФ должны быть представлены все аргументы. Для перехода от КНФ к СКНФ необходимо добавить к каждому члену, не содержащему всех аргументов, члены вида хi *хi , где аргумент, не представленный в члене. Так как хi *х =0, то такая операция не может повлиять на значение функции. Добавление хi *х, к некоторому члену Y образует выражение вида Yvхi *х , которое можно привести к виду Справедливость данного равенства вытекает из распределительного закона, она может быть показана также путем раскрытия скобок в правой части выражения рассмотрим переход от КНФ к СКНФ: Подставив сюда значения z1 и z2, получим соответствующие члены приведенного выше выражения при переходе от КНФ к СКНФ. Совершенная КНФ функции легко строится по таблице истинности. Рассмотрим в качестве примера функцию, приведенную в табл 1. Выражение содержит столько членов, связанных операцией конъюнкции, сколько нулей имеется среди значений функции f(x1,x2,x3) в таблице истинности. Таким образом, каждому набору значений аргументов, на котором функция равна нулю, соответствует определенный член СКНФ, принимающий на этом наборе значений нуль. Так как члены СКНФ связаны операцией конъюнкции, то при обращении в нуль одного из членов функция оказывается равной нулю. Таким образом, можно сформулировать правило записи СКНФ функции, заданной таблицей истинности. Следует записать столько конъюнктивных членов, представляющих собой дизъюнкции всех аргументов, при скольких наборах значений аргументов функция равна нулю и если в наборе значение аргумента равно единице, то в дизъюнкцию входит инверсия этого аргумента. Любая функция имеет единственную СКНФ. Структурная схема логического устройства может быть построена непосредственно по канонической форме (СДНФ или СКНФ) реализуемой функции. Получающиеся при этом схемы для функций (5.2) и (5.3) показаны на рис. 5.1,а и б. Недостаток такого метода построения структурных схем. обеспечивающего в общем правильное функционирование устройства, состоит в том, что получающиеся схемы чаще всего неоправданно сложные, требуют использования большого числа логических элементов, имеют низкие экономичность и надежность. Во многих случаях удается так упростить логическое выражение, не изменив функции, что соответствующая структурная схема оказывается существенно более простой. Методы такого упрощения функции называются методами минимизации функции. 5. Минимизация функций с использованием карт Карно В таблице 6.1 приведена иллюстрация карты Карно для функций трех и четырех аргументов. Аргументы функции делятся на две группы, комбинации значении аргументов одной группы приписываются столбцам таблицы, комбинации значений аргументов другой группы — строкам таблицы. Столбцы и строки обозначаются комбинациями, соответствующими последовательности чисел в коде Грея (это сделано для того, чтобы склеивающиеся клетки находились рядом). Обозначения столбца и строки, на пересечении которых находится клетка таблицы, образуют набор, значение функции на этом наборе записывается в клетку. Для получения минимизированной функции охватываются областями клетки таблицы, содержащие 1. Как и в случае минимизации с помощью карт Вейча, области должны быть прямоугольной формы и содержать 2К клеток (при целочисленном значении к). Для каждой области составляется набор из двух комбинаций: приписанных столбцам и приписанных строкам, на пересечении которых расположена область. При этом если области соответствуют несколько комбинаций кода Грея, приписанных столбцам или строкам, то при составлении набора области записывается общая часть этих комбинаций, а на месте различающихся разрядов комбинаций ставятся звездочки. Например, для функции, представленной табл. 6.3, области I будет соответствовать набор 1.00 или член Для получения минимальной КНФ (МКНФ) областями охватываются клетки, содержащие 0, и члены МКНФ записываются через инверсии цифр, получаемых для наборов отдельных областей. 6. Логические элементы. Физическое представление логических значений Логические функции и их аргументы принимают значения лог.О и лог. 1. При этом следует иметь в виду, что в устройствах логическим уровням (лог.Ои лог. I) соответствуют напряжения определенного уровня (или формы). Наиболее часто встречается так называемый потенциальный способпредставления логических уровней. В этом случае используется напряжение двух уровней (рис. 7.1,а,б): высокий (по значению модуля) уровень соответствует лог. 1 (уровень лог. 1), низкий уровень — лог. О (уровень лог.О). Такой способ представления логических величин называется положительной логикой. Относительно редко применяется так называемаяотрицательная логика, при которой лог. I соответствует низкий уровень напряжения, а лог.О— высокий уровень. В дальнейшем, если это не оговаривается особо, будем пользоваться только положительной логикой. Преобразователи кодов В цифровых устройствах часто возникает необходимость преобразования числовой информации из одной двоичной системы в другую (из одного двоичного кода в другой). Примером такого преобразования может служить преобразование чисел из двоичного кода 8421, в котором выполняются арифметические операции, в двоичный код 2 из 5 для передачи по линии связи. Эта задача выполняется устройствами, называемымипреобразователями кодов. Для преобразования кодов можно пользоваться двумя методами: методом, основанным на преобразовании исходного двоичного кода в десятичный и последующем преобразовании десятичного представления в требуемый двоичный код; методом, основанным на использовании логического устройства комбинационного типа, непосредственно реализующего данное преобразование. Первый метод структурно реализуется соединением дешифратора и шифратора и удобен в тех случаях, когда можно использовать стандартные дешифраторы и шифраторы в интегральном исполнении. Рассмотрим подробнее второй метод на конкретных примерах преобразования двоичных кодов. Преобразование кода 8421 в код 2421. Обозначим переменные, соответствующие отдельным разрядам кода 8421,x4,x3,x2,x1; то же для кода 2421:y4,y3,y2,y1В табл. 1 приведено соответствие комбинаций обоих кодов. Таблица 1
Каждая из переменных у4,yз,y2,y1 может рассматриваться функцией аргументов x4,x3,x2,x1 и, следовательно, представлена через эти аргументы соответствующим логическим выражением. Для получения указанных логических выражении представим переменные у4,yз,y2,y1таблицами истинности в форме карты Карно (табл.7.2).Получим минимальную форму логических выражений, представленных через операции И, ИЛИ, НЕ и через операцию И-НЕ: |