
книги из ГПНТБ / Сарингулян, Э. В. Арифметические и логические основы цифровых машин учеб. пособие
.pdfВ целом ряде случаев синтез элементов и узлов первого класса сводится к решению подобных задач для цифровых автоматов с нулевой памятью, которые относятся ко второму классу. Цифровые автоматы второго класса преобразуют ин формацию в зависимости от значения входной последователь ности сигналов и называются комбинационными или логиче скими. Реализация заданного алгоритма функциональной схе мой автомата без элементов памяти достаточно просто осуще ствляется при использовании аппарата алгебры логики. Кро ме того, при решении задач анализа и синтеза логических схем алгебра логики позволяет находить наиболее простые функ
циональные структуры этих элементов |
п узлов. |
вы |
|
Предметом |
рассмотрения алгебры |
логики является |
|
сказывание. |
Высказывание — это предложение, о значении |
||
истинности которого можно сказать, что оно или истинно, |
или |
ложно. Значение истинности высказываний при логическом описании схем ЭЦВМ оценивается единицей, если оно истинно, и нулем, если оно ложно. Если значение истинности высказы вания не зависит от значений истинности других высказыва нии, то такое высказывание является простым. Простое выска зывание рассматривается в задачах анализа и синтеза как двоичная, или логическая, переменная, принимающая значе ние 0 или 1.
Если значение истинности высказывания зависимо, то вы сказывание называется сложным. Сложное высказывание рас сматривается как логическая функция, которая принимает только значение пуля или единицы в зависимости от двоичных аргументов, и определяется как двоичная, или переключатель ная, функция. Нз логических операций, или связей, рассмот рим те, которые наиболее часто применяются в решении задач анализа и синтеза элементов и узлов цифровых машин.
Отметим 'некоторые свойства переключательных, или логи ческих, функций [2]:
1) любая логическая функция п аргументов определена на 2п наборах (набором называется совокупность значений аргу ментов) ;
2) число различных логических функций п аргументов равно 2т\
3) каждой логической функции соответствует 2,!-разряд- ное число, количество различных чисел при этом равно 2'т.
Переключательные функции в общем случае образуются в результате логических операций над логическими переменны ми и могут быть заданы таблицами своих значений в зависи мости от значений аргументов. Подобные таблицы носят наз
вания таблиц истинности (табл. |
3.1 и 3j2). |
Существуют четыре переключательные функции одного ар |
|
гумента fo(x), / 1(дг), /2(x), Ы х')> |
каждая из которых определе |
на на двух наборах (.v=0 и я = |
1). |
50
|
|
|
|
|
Т а б л и ц а |
3.1 |
Табличное задание переключательной функции одного аргумента |
|
|||||
Функции |
Наборы |
|
Условное |
|
|
|
|
|
|
обознаце |
Название функции |
|
|
/(А ) |
А = 0 |
х - |
1 |
пи е |
|
|
|
|
|||||
фу н кци и |
|
|
||||
|
|
|
|
|
|
|
/ . {X) |
0 |
0 |
|
0 |
Константа нуля |
|
/ . (А) |
0 |
1 |
|
X |
Переменная |
|
|
1 |
0 |
|
X |
Инверсия х (логическое |
от |
/г (-И |
|
рицаиие х) |
|
|||
/з(А) |
1 |
1 |
|
1 |
Константа единицы |
|
Функция /о (а) на обоих наборах равна нулю и поэтому оп ределяется константой куля. Функция fi (а) принимает .на набо рах те же значения, что ;и аргумент а,и называется (Переменной а. Функция / 2(а) принимает значения, противоположные значе ниям аргумента, и носит название инверсии х или отрицания х. Черта над аргументом имеет смысл знака отрицания. Функ ция /з(а) тождественно равна 1 на обоих наборах и поэтому определяется .константой единицы.
Существует шестнадцать различных логических функций двух аргументов (а, у), каждая из которых определена на че тырех наборах.
Остановимся на наиболее часто применяемых логических функциях при решении задач анализа и синтеза преобразова телей цифровой информации.
Логическое отрицание
Рассматривая отрицание как некоторую логическую функ цию, можно записать:
/ ( а-)=--л-. (3.1)
В цифровых автоматах отрицание реализуется логическим элементом НЕ, часто выполняемым в виде схемы инвертора. Выходные сигналы элемента НЕ формируются в зависимости от сигналов на входе в соответствии с табл. 3.1 (рис. 3.1).
JC |
LJ р |
f |
|
1i о |
|
|
Рис. |
3.1 |
Ь
Т а б л и ц а 3.2
СЛ
Табличное задание переключательной функции двух аргументов
Наборы
Функция |
а = 0 |
а —0 |
X = 1 |
а =1 |
|
|
|
у = () У=| |
у , 0 у = 1 |
||
/о U. У) |
4) |
0 |
0 |
0 |
|
Л (-V, у) |
0 |
0 |
0 |
1 |
|
/з ( а , у) |
0 |
0 |
1 |
0 |
|
А (х. у) |
0 |
0 |
1 |
1 |
|
А {х, у) |
0 |
1 |
0 |
0 |
|
л и . |
У) |
0 |
1 |
0 |
1 |
л и . |
у) |
0 |
1 |
1 |
0 |
л и. У) |
0 |
1 |
1 |
1 |
|
/в и . у) |
1 |
0 |
0 |
0 |
|
л и. У) |
1 |
и |
0 |
1 |
|
/щ и. У) |
1 |
0 |
1 |
0 |
|
/ и (х, У) |
1 |
0 |
1 1 |
||
/ 1 2 и. у) |
1 |
1 |
0 |
0 |
|
/и и. у) |
1 |
1 |
0 |
1 |
|
/l 4и, у) |
1 |
1 |
1 |
0 |
|
л 6 и. У) |
1 |
1 |
1 |
1 |
Услorиос обозначен но Фу 11КЦП II
0
а у; х Л. у; л-у
А-Ду
X
у А а
У
' х о у ; |
|
л ~ и |
А у у; |
|
А -К у |
а |
! |
у |
Л' |
оо у |
|
У |
|
|
У |
X |
X |
|
|
|
А - * у |
||
А | |
У |
|
|
1 |
|
Название функции
Константа нуль Логическое умножение (конъюнкция)
Функция запрета по у Переменная а Функция запрета по х Переменная у
Сложение по модулю 2, логическая неравнознач ность
Логическое сложение (дюзъюнкция)
Функция Вебба, стрелка Пирса Логическая равнозначность
Инверсия у
Импликация у в х Инверсия а Импликация а в у Операция Шеффера Константа единица
Логическое умножение, конъюнкция
Рассматривая конъюнкцию, или логическое умножение, в виде некоторой переключательной функции двух аргументов, запишем (табл. 3.2):
f(x, у) =х-у\ |
или f(x, у) =х/\У, |
или f(x, |
у) = х у . |
(3.2) |
|
Конъюнкция двух аргументов обращается |
в единицу толь |
||||
ко на наборе, когда х = 1, у — 1, на |
остальных трех наборах |
||||
функция принимает значение 0. |
нескольких аргументов, |
||||
Конъюнкция |
может зависеть от |
||||
тогда |
|
|
|
|
|
/(-И , А-,, . . . , х п) = А-, А, . . . Ал. |
|
||||
Функция f (x i,a2,..., а „) |
принимает значение, равное |
едини |
|||
це, если все переменные |
а ,- равны единице, и функция |
равна |
нулю, когда хотя бы один из аргументов принимает значение нуля.
Реализуется логическое умножение в машинах с помощью элемента И, называемого также схемой совпадения Си. При двух входах на элементе И он известен в литературе как вен тиль или клапан. В соответствии с логической функцией fix, у) выходной сигнал на элементе И принимает код 1, если на входе все сигналы имели значение 1 (табл. 3.2, рис. 3.2).
f ( a c ,y ) = х у
Рис, 3.2
Логическое сложение, дизъюнкция
Дизъюнкция, или логическое сложение, как логическая функция двух аргументов представляется в следующем виде
(табл. 3.2):
f{x, |
у) = х у у или f(x, у) — х+у. |
(3.3) |
Дизъюнкция двух аргументов обращается в нуль только на |
||
наборе, когда х = |
0, у = 0, на остальных трех наборах |
функ |
ция принимает значение 1.
Логическое сложение может быть выполнено по отношению к нескольким переменным.
Тогда
/(■■И, Л'а, а 3, . . . , а „) = Aj V -v2V -v3 V •■ V х п.
53
Дизъюнкция принимает значение единицы, если хотя бы од на из переменных х, имеет значение единицы, и функция рав на нулю, когда все аргументы равны нулю.
Логическое сложение в электронных цифровых вычисли
тельных машинах выполняется с помощью логического |
эле |
|
мента ПЛИ, называемого также собирательной |
схемой |
Сб. |
(рис. 3.3). В соответствии с логической фу надпей |
у) |
сиг |
нал кода 1 па выходе элемента ИЛИ формируется при дейст вии на его входах хотя бы одного сигнала кода 1.
X --------- |
и д и |
|
Рис. 3.3
Логическая неравнозначность, логическое суммирование по модулю два
Рассмотрим логическую неравнозначность как некоторую логическую функцию двух аргументов (табл. 3.2)
У ( Х , У ) = Х ** У ими / ( X , у ) = Х О у, <3
Определяя эту функцию как логическую операцию суммиро вания по модулю два, можно провести аналогию с операцией арифметического сложения без учета переноса в следующий старший разряд.
Неравнозначность реализуется с помощью логической схе мы ИЛИ— ИЛИ, сипнал на выходе которой принимает код 1, если один из входных сигналов равен единице, а другой нулю
(рис. 3.4). |
|
|
|
||
X |
|
ИДИ - И А И |
- f (эс ,У )= э с ® У |
||
У |
|
||||
|
|
|
|
||
|
|
Рис. 3.4 |
|
|
|
|
|
Логическая функция |
запрета |
|
|
Логическая функция запрета записывается |
следующим |
||||
образом (см. |
табл. 3.2): |
|
|
||
■пли |
f(x, |
у) = хАу (функция запрета по у) |
. (3.5) |
||
f{x, |
у ) —уАх (функция запрета по х). |
(3.5') |
|||
|
54
Реализация этой функции осуществляется с помощью эле мента запрета ЭЗ, который обеспечивает выходной сигнал кода 1, если по запрещающему входу действует сигнал кода О
(рис. 3.5).
DC - |
э з . |
f ( x , 4 ) = х а у |
1гпрещзющии вход,
ЭЗ, |
f (Х.у;= У Л ас |
аЗэпрещэющий вход
Рис. 3.5
Если проанализировать возможность выражения одних ло гических функций через другие, то можно отметить, что логи ческое умножение является отрицанием операции Шеффера, логическое сложение — отрицанием функции Вебба, логиче ская равнозначность— отрицанием логического суммирования по модулю два, импликация двух высказываний—отрацаииим функции запрета. В рассмотренной группе переключательных функций логические зависимости взаимно попарно инверсны. Выявляется возможность осуществления логических зависимо стей через рассмотренную совокупность логических элементов: НЕ, И, ИЛИ, ИЛИ— ИЛИ, ЭЗ. На рис. 3.6 показаны схемы реализации операции Шеффера, функции Вебба, логической равнозначности, импликации xby. Техническая задача нахож дения совокупности логических элементов, с помощью которых можно реализовать любую логическую схему, определяется математической задачей отыскания функционально полной си стемы логических функций для выражения любой сложной логической зависимости [2].
Примерами функционально полных систем, или базисов, служат:
1) отрицание, конъюнкция, дизъюнкция;
2) конъюнкция, отрицание;
3)дизъюнкция, отрицание;
4)операция Шеффера;
5)стрелка Пирса.
В книге Поспелова Д. А. «Логические методы анализа и синтеза схем» приводятся доказательства образования бази сов указанными системами, основанные на теореме о пред ставлении любой переключательной функции через конъюнк цию, дизъюнкцию, отрицание и на формулах преобразования исходных переключательных функций в другие логические за висимости.
55
—» |
н е |
f (Х,У)= ху = ос j у |
|
ос у У |
н е |
|
= 3CHJ |
|
f C x > y ) - |
X — |
ос© у |
|
f(CC,y)= Х@у *= рссоу |
ЭЗ |
селу |
не --- '>■' f (х\у) = X Л у S эс~ у |
Рис. 3.6
Одна из основных задан синтеза схем ЭЦВМ заключается в выборе элементов для построения логических схем. Большое разнообразие функциональных структур в машине определяет основное требование к выбору логических элементов: возмож ность путем последовательного соединения элементов и пере становки их входов получать любую сложную логическую схему. При анализе и синтезе цифровых автоматов преиму щественно используется первый базис:
/(л-) — л-, f ( x , у) = л-■у, / (-V, у) = л- V У,
реализуемый набором логических элементов НЕ, И, ИЛИ.
Свойства логических функций дизъюнкции, конъюнкции и отрицания
Логическое сложение и логическое умножение обладают рядом свойств, аналогичных свойствам обычных операций сло жения и умножения. Можно убедиться в этом, рассмотрев ос новные законы алгебры логики:
1. Переместительный закон, закон коммутативности, для логического сложения
л- V У = У V -v. |
(3.6) |
2. Переместительный закон, закон |
коммутативности, для |
лог1тческого ум ноже ния |
(3.7) |
х у —ух. |
56
3. Сочетательный задан, закон ассоциативности, для логи ческого сложения
(л- V у) V z -л- V (уV д)- |
(3.8), |
4. Сочетательный закон, заков ассоциативности, для логи ческого умножения
(xy)z = x[yz). |
(3.9) |
5. Распределительный, дистрибутивный, закон |
|
x(y\/z) = xy\/(xz), |
(3.10) |
Л- V (yz) = (X V у) {X \у z), |
(3.11) |
последнее равенство не имеет места в обычной алгебре.
Таким образом, логические зависимости, содержащие опе рации дизъюнкции и конъюнкции, можно преобразовывать по правилам обычной алгебры, считая формально дизъюнкцию операцией сложения, а конъюнкцию — операцией умножения.
Выражения (3.6), (3.7), (3.8), (3.9), (3.10) аналогичны со ответствующим формам законов обычной алгебры, что позво ляет над логическими функциями выполнять действия как над алгебраическими зависимостями: раскрывать скобки, заклю чать скобки, выносить общий множитель.
6. Закон инверсии для логического сложения
х \ / у = х у . |
(3.12) |
Взяв отрицание от обеих частей приведенного равенства, получим соотношение
х V У — х у,
которое выражает дизъюнкцию через конъюнкцию и отрицание. При п переменных, связанных операцией логического сло
жения, закон инверсии имеет следующую аналитическую форму:
пгг
2 = П
/-1 i=i
7. Закон инверсии для логического умножения
ху = X V у. |
(3.13) |
Применив отрицание к указанному равенству, получим вы ражение конъюнкции через дизъюнкцию и отрицание
ху ~ х V V.
57
Распространяя закон инверсии на логические функции с п переменными, связанными операцией конъюнкции, молено записать
ПП
П•*/= 2
i~i с-=1
Закон инверсии не имеет аналога в обычной алгебре.
Рассмотрим теперь ряд простых, но весьма важных соот ношений при эквивалентных преобразованиях сложных логи ческих функций к более простому виду:
а \ / а = |
а ; |
(3.14) |
а а = |
а ; |
(3.15) |
a v 1= |
1; |
(3.16) |
а * 1= а ; |
(3.17) |
|
а . О = |
а: |
(3.18) |
д--0 — 0; |
(3.19) |
|
а V а = |
1; |
(3.20) |
А •А = |
0. |
(3.21) |
II как следствие из приведенных соотношений получаем:
А V А V А V а V ... V А = а;
А Л А Д А Л а Л ... Л А = а ;
А V У V Z у7А 2= 1:
x - y - z - y = 0.
Часто для упрощения сложных логических функций исполь зуются следующие зависимости:
а V ху — х — операция поглощения; (3.22)
х у \/х у = |
х —операция склеивания; |
(3.23) |
|
а V Ау \/ А2 = |
а ; |
(3.24) |
|
а (а V у) = а ; |
|
(3.25) |
|
а (а V у) (а V |
2 ) = а ; |
(3.26) |
|
A v Ay = |
а V .у; |
(3.27) |
|
А V AV = |
А V у. |
(3.28) |
58
§ 3.2. Формы логических функций и их минимизация
Любая логическая функция может быть выражена различ ными формами в зависимости от способов применения элемен тарных логических операций к переменным и их группам.
При задании переключательных функций таблицами истин ности переход к аналитической записи с помощью операций первой функционально полной системы наиболее удобно для практического применения выполнять в нормальной дизъюнк тивной или нормальной конъюнктивной формах. Для образо вания этих форм введем некоторые понятия.
Логическая функция и переменных, принимающая значение единицы только на одном из наборов, называется конституентой единицы, или элементарной конъюнкцией. На остальных
(2" = 1) |
наборах функция равна 0. |
При |
количестве наборов 2П число конституент единицы |
равно также 2п. Котиституенту единицы Q выражают через ло гическое произведение переменных и их отрицаний. Для логи
ческих |
функций двух аргументов число элементарных конъ |
||
юнкций |
равно четырем |
(табл. 3.2). Ими являются |
функции |
f1(х, у ), / 2(х, y ) , f а{х, у ) , |
h (х, у ) . Конъюнкция /] (х, у) |
есть ча |
стный случай конституент единицы. Учитывая значения пере менных на соответствующих наборах, конституенты единицы можно представить через логические произведения аргументов следующим образом:
/, (х, у) = х - у; |
/ 2{х, у) = х -у; |
/а(х , У) = х-у, |
/ 8(х, у) = х •у. |
Отрицания берутся над теми переменными, которые на на борах, на которых функция равна значению 1, имеют код 0.
Число переменных, составляющих элементарную конъюнк цию, называется ее рангом. Для приведенных конституент ранг
т= 2:
fi (х, у) = Q P ; / 2(х, у) = Q<2>; / 4(х, у) = QW .
При выполнении преобразований логических функций ис пользуются понятия соседних и изолированных [конъюнк ций [1].
Элементарные конъюнкции Q(m) и Qt%m) т-го ранта являют ся соседними, если возможно последующее их преобразование:
Q‘m>= |
x t |
= х, |
и |
|
_ |
0%п) = |
xtQ2m_1) = х,- Q("'~ ]> |
|
или |
|
|
59