Схемотехника

Основы цифровой техники


МИНИСТЕРСТВО ОБРАЗОВАНИЯ РОССИЙСКОЙ ФЕДЕРАЦИИ
                    КАБАРДИНО-БАЛКАРСКИЙ ГОСУДАРСТВЕННЫЙ
                       УНИВЕРСИТЕТ им. Х.М. БЕРБЕКОВА



                               Ю. К. Тлостанов


                           Лабораторный практикум
                                по дисциплине

                          "ОСНОВЫ ЦИФРОВОЙ ТЕХНИКИ"



                                НАЛЬЧИК 2002
УДК 681.335.5 (075)
   ББК 73 я75
   Т 49


                                 Рецензент:
                   заместитель директора по научной работе
          Института информатики и проблем регионального управления
                    Кабардино-Балкарского научного центра

                                 Т.Х.Иванов



    Тлостанов Ю.К.

    Лабораторный практикум по дисциплине "Основы цифровой техники". – Каб.-
Балк. ун-т, 2002. – 110 с.



    Рассмотрены вопросы, связанные с проектированием и применением наиболее
распространенных цифровых  узлов  и  устройств  с  жесткой  логикой  работы,
являющихся основой для реализации различных средств обработки  информации  и
управления.
      Предназначен для студентов  специальности  220200  "Автоматизированные
системы обработки информации и управления".



   Рекомендовано РИСом университета



                                      УДК 681.335.5 (075)
                                      ББК 73 я75
                       ( Кабардино-Балкарский государственный
                        университет им. Х.М. Бербекова, 2002



                                 Содержание

|Предисловие……………………………………………………….………            |4  |
|Лабораторная работа 1. Логические элементы      |5  |
|…………………………..                                    |   |
|Лабораторная работа 2. Проектирование           |   |
|комбинационных цифровых устройств в заданном    |19 |
|базисе логических элементов…..…………………           |   |
|Лабораторная работа 3. Проектирование и         |   |
|исследование                                    |37 |
|дешифраторов……………………………………………………………………………       |   |
|Лабораторная работа 4. Двоичные                 |47 |
|сумматоры……………………………                            |   |
|Лабораторная работа 5. Цифровые                 |56 |
|компараторы………..………………                          |   |
|Лабораторная работа 6. Устройства контроля      |61 |
|работоспособности ЦУ…                           |   |
|Лабораторная работа 7. Мультиплексоры и         |69 |
|демультиплексоры...……..                         |   |
|Лабораторная работа 8. Синтез и исследование    |77 |
|триггеров………………                                 |   |
|Лабораторная работа 9. Регистры…………………….……………………|92 |
|Лабораторная работа 10. Цифровые счетчики       |100|
|импульсов.……………..                               |   |
|Принятые сокращения……………………………………………………...      |110|
|Литература…………………………………………………………………..           |111|


                                 Предисловие
                                                   При изучении наук примеры
                                           не менее поучительны, чем правила
                                                                   И. Ньютон
    Цель настоящего лабораторного практикума  -  углубление  и  закрепление
теоретических   знаний   по    проектированию    и    применению    наиболее
распространенных  цифровых   элементов,   узлов   и   устройств,   а   также
приобретение  навыков   работы   с   цифровыми   интегральными   схемами   и
устройствами, построенными на их основе.
    Все работы  лабораторного  практикума  проводятся  фронтальным  методом
бригадами, состоящими, как правило, из  двух  студентов,  по  различным  для
каждой бригады заданиям, указанным в соответствующих описаниях работ.
    Приступая   к   лабораторному   практикуму,   необходимо    внимательно
ознакомиться  с  излагаемыми  ниже  правилами,   регламентирующими   порядок
выполнения работ.
    При   подготовке   к   лабораторной   работе    необходимо    повторить
соответствующий   теоретический   материал,   внимательно   ознакомиться   с
описанием  работы,  выполнить  домашнее   задание.   Результаты   подготовки
фиксируются письменно в форме заготовки отчетов, которые выполняются  каждым
студентом в выделенной для этих  целей   тетради  (желательно  в  клетку)  и
сохраняемой до конца  лабораторного  практикума.  Заготовки  отчетов  должны
содержать цель работы, далее по каждому пункту задания:
     -  функции,  реализуемые   цифровым   устройством,   представленные   в
       аналитической или (и) табличной форме, их преобразования,  поясняющие
       процесс проектирования;
  - схему спроектированного узла или устройства;
     - в случаях, оговоренных в описании, - временные диаграммы,  поясняющие
       работу цифрового устройства;
  - таблицы для записи результатов экспериментов;
      Исследуемые цифровые узлы и устройства собираются на одном  и  том  же
закрепленном за бригадой универсальном лабораторном стенде  из  элементов  и
интегральных схем, установленных на лицевой панели стенда.
      В  начале  каждого  занятия  преподаватель   проводит   сплошной   или
выборочный опрос студентов, в результате которого им  дается  разрешение  на
выполнение работы. Для получения  разрешения на  выполнение  работы  студент
должен иметь  заготовку отчета на  выполнение  работы,  знать  теоретический
материал,  относящийся  к  данной  работе,  иметь  четкое  представление   о
содержании и порядке выполнения экспериментальной части.
      Зачет по работе выставляется  после  оформления  отчета  и  обсуждения
(защиты) с преподавателем  полученных результатов.

                            Лабораторная работа 1
                             Логические элементы
    Цель работы: а) ознакомление с  универсальным  лабораторным  стендом  и
приобретение навыков работы на стенде;
    б) исследование функционирования основных логических элементов.

                 1. Теоретические основы лабораторной работы
    Элементной базой  современных  цифровых  устройств  и  систем  являются
цифровые  интегральные  схемы.  Цифровая  интегральная  схема  (ИС)  –   это
микроэлектронное изделие,  изготовленное  методами  интегральной  технологии
(чаще   полупроводниковой),   заключенное   в   самостоятельный   корпус   и
выполняющее  определенную  функцию  преобразования   дискретных   (цифровых)
сигналов. Номенклатура выпускаемых промышленностью  цифровых  ИС  достаточно
обширна  и,  следовательно,  весьма  разнообразны  реализуемые  ими  функции
преобразования.   Простейшие   преобразования   над   цифровыми    сигналами
осуществляют цифровые ИС, получившие названия логических элементов (ЛЭ).
    Для  описания  работы  цифровых  ИС,  а  следовательно   и   устройств,
построенных  на  их  основе,  используется  математический  аппарат  алгебры
логики или булевой  алгебры.  Возможность  применения  булевой  алгебры  для
решения задач анализа и синтеза  цифровых  устройств  обусловлена  аналогией
понятий и категорий этой  алгебры  и  двоичной  системы  счисления,  которая
положена в основу представления преобразуемых устройством сигналов.

                         1.1 Основы булевой алгебры
    Основными  понятиями  булевой  алгебры  являются   понятия   логической
переменной и логической функции.
    Логической переменной называется величина, которая может принимать одно
из  двух  возможных  состояний  (значений),  одно  из  которых  обозначается
символом “0”, другое – “1” (для обозначения состояний возможно применение  и
других символов, например, “Да” и “Нет” и  др.).  Сами  двоичные  переменные
чаще обозначают символами х1, х2,… В силу определения логические  переменные
можно называть также двоичными переменными.
    Логической (булевой) функцией  (обычное  обозначение  –  у)  называется
функция двоичных переменных  (аргументов),  которая  также  может  принимать
одно  из  двух  возможных  состояний  (значений):  “0”  или  “1”.   Значение
некоторой логической функции n  переменных  определяется  или  задается  для
каждого  набора  (сочетания)  двоичных  переменных.   Количество   возможных
различных наборов, которые могут быть составлены из n аргументов,  очевидно,
равно [pic]. При  этом,  поскольку  сама  функция  на  каждом  наборе  может
принимать значение “0” или “1”,  то  общее  число  возможных  функций  от  n
переменных равно [pic].
    Таким образом, множество состояний (значений), которые могут  принимать
как аргументы, так и функции, равно  двум.  Для  этих  состояний  в  булевой
алгебре  определяются  отношение  эквивалентности,   обозначаемое   символом
равенства (=) и три  операции:  а)  логического  сложения  (дизъюнкции),  б)
логического умножения (конъюнкции),  в)  логического  отрицания  (инверсии),
обозначаемые соответственно символами:
    + или [pic] - операция дизъюнкции,
    [pic] или [pic] или & - операция конъюнкции,
    [pic] - операция инверсии (* - символ аргумента или функции).
    Постулативно полагается,  что  при  выполнении  перечисленных  операций
отношения эквивалентности имеют вид:
           а)     0 + 0 = 0,        б) 0 ( 0 = 0,         в)[pic] = 1,
                  0 + 1 = 1,            0 ( 1 = 0,             [pic]  =  0.

             1 + 0 = 1,            1 ( 0 = 0,
                  1 + 1 = 1;            1 ( 1 = 1;
На основании постулатов (1) можно  вывести  следующие  соотношения  (законы)
алгебры логики:
    1. Законы одинарных элементов (универсального множества – а),  нулевого
       множества – б), тавтологии – в)):
        а) х + 1 = 1,      б) х + 0 = х,     в) х + х = х,
            х ( 1 = х;         х ( 0 = 0;            х ( х = х.
    2. Законы отрицания (двойного отрицания – а),  дополнительности  –  б),
       двойственности – в)):
        а) [pic]       б) [pic]     в) [pic]
                       [pic];            [pic].
    3. Законы абсорбции или поглощения – а) и склеивания – б):
        а) [pic]       б) [pic]                [pic]      [pic]
    Законы двойственности (3, в), называемые также законами деМоргана, были
обобщены К. Шенноном на случай произвольного (n) числа аргументов.
    Кроме законов, перечисленных выше  и  не  имеющих  аналогов  в  обычной
алгебре (алгебре чисел),  для  алгебры  логики  справедливы  законы  обычной
алгебры:   коммутативные   или    переместительные,    дистрибутивные    или
распределительные, ассоциативные или сочетательные.
    Любая логическая функция у  n  двоичных  переменных  [pic]  может  быть
задана таблично.  Такие  таблицы,  получившие  название  таблиц  истинности,
содержат [pic] строк, в которые записываются все возможные  двоичные  наборы
значений  аргументов,  а  также  соответствующее  каждому  из  этих  наборов
значение функции.
    Пример  1.  Составить   таблицу   истинности   логической   функции   у
равнозначности  (эквивалентности)  трех  двоичных  переменных  [pic],   т.е.
функции, которая принимает единичное значение  только  при  совпадении  всех
трех аргументов, ее образующих.
    Решение.  Сначала  выпишем  все  возможные  наборы  (комбинации)   трех
переменных[pic].  Таких  наборов,  очевидно,  8.  Чтобы  не  ошибиться   при
перечислении наборов  аргументов,  нужно  сразу  приучиться  перечислять  их
единообразно – в виде возрастающей последовательности чисел,  представленных
в двоичной системе  счисления.  Для  рассматриваемого  примера  наборы  трех
переменных нужно перечислить в следующем порядке: 000, 001, 010,  011,  100,
101, 110, 111 – итого восемь двоичных чисел – от 0 до 7.

    Далее для каждого  набора  двоичных  переменных  определим,  исходя  из
смысла ситуации, соответствующее значение  функции.  В  результате  получаем
таблицу  истинности  логической  функции   "равнозначность   трех   двоичных
переменных" (табл. 1).
    Задание логической функции таблицей истинности не  всегда  удобно.  При
большом числе двоичных переменных (n ( 6) табличный способ  задания  функции
становится громоздким и теряет наглядность. Возможен и аналитический  способ
задания логических функций, который предусматривает запись функции  в  форме
логического  выражения,  устанавливающего,  какие  логические  операции  над
аргументами функции должны выполняться и в какой последовательности.
    Алгебра логики предполагает возможность  образования  сложных  функций,
т.е.  функций,  аргументы  которых  являются   функциями   других   двоичных
аргументов. Например, если [pic], а [pic]  и  [pic],  очевидно,  что  [pic].
Операция  замены  аргументов  одной  функции  другими  функциями  называется
суперпозицией  функций.  Эта  операция  дает  возможность  выразить  сложную
логическую функцию через более простые (элементарные).
    Приведем  описание  некоторых,  имеющих  большое  значение  в  цифровой
технике, элементарных логических функций и ЛЭ, реализующих эти функции.
    Функция “отрицание” – это функция  одного  аргумента  (другие  названия
функции: инверсия, логическая связь НЕ). Аналитическая  форма  задания  этой
функции: [pic]
    где [pic] - логическая функция, [pic] - аргумент.
    Электронный ЛЭ, реализующий функцию  “Отрицание”  в  виде  определенных
уровней электрических сигналов, называют инвертором или  ЛЭ  “НЕ”.  Инвертор
на схемах изображается, как показано на рис. 1, а. Вход ЛЭ  слева,  выход  –
справа.  На  выходной  линии,  в  месте  соединения  ее  с  прямоугольником,
изображается кружок – символ инверсии. На языке  цифровой  техники  инверсия
означает, что выходной сигнал (у)  противоположен  входному  (х).  Сказанное
иллюстрирует рис. 1, б, на котором приведены временные диаграммы инвертора.



    Функция “конъюнкция” – это функция двух или большего  числа  аргументов
(другие  названия  функции:  логическое  умножение,  логическая  связь   И).
Аналитическая форма задания функции двух аргумент [pic] и [pic]:
                         [pic] или [pic] или [pic].
    Функция “конъюнкция” равна  1  тогда  и  только  тогда,  когда  все  ее
аргументы  равны  1.   ЛЭ,   реализующий   функцию   “Конъюнкция”   называют
конъюнктором  или  ЛЭ  “И”.  На  рис.  2  приведены:  условное   графическое
изображение двухвходового (а) и трехвходового  (б)  конъюнкторов;  временные
диаграммы (в) и таблица истинности (г) двухвходового конъюнктора.
    ЛЭ “И” часто используют для управления потоком информации. При этом  на
один из его входов поступают сигналы, несущие  некоторую  информацию,  а  на
другой – управляющий сигнал: пропустить информацию – 1, не пропустить  –  0.
ЛЭ “И”, используемый таким образом, называют вентиль.



    Функция “дизъюнкция” – это функция двух или большего  числа  аргументов
(другие  названия  функции:  логическое  сложение,  логическая  связь  ИЛИ).
Функция равна 1, если хотя бы один из ее аргументов равен  1  (рис.  2,  в).
Обозначение функции “Дизъюнкция”:
                              [pic] или [pic].
    ЛЭ, реализующий функцию  “дизъюнкция”,  называют  дизъюнктором  или  ЛЭ
“ИЛИ”. Условное изображение и временные  диаграммы  ЛЭ  “ИЛИ”  приведены  на
рис. 3.

    Функция “штрих Шеффера” (другое название функции – логическая связь “И-
НЕ”) – это функция двух или большего числа  аргументов.  Таблица  истинности
функции “И-НЕ” представлена на рис. 4, б. Легко  видеть,  что  это  инверсия
функции “И”, т.е. отрицание конъюнкции. Функция равна 1, если равен  0  хотя
бы один из ее аргументов, функция равна 0 при равенстве всех аргументов 1.
    Обозначение функции “И-НЕ”: [pic].
    Условное  изображение  ЛЭ,  реализующего   функцию   “штрих   Шеффера”,
приведено на рис. 4, а.
    Используя   только   ЛЭ   “И-НЕ”,   можно    реализовать    любую    из
вышерассмотренных логических функций (НЕ, И, ИЛИ), как показано на  рис.  5,
а-в.



    Функция  “стрелка  Пирса”  –  это  функция  двух  или  большего   числа
аргументов (другое название функции –  логическая  связь  “ИЛИ-НЕ”).  Данная
функция является инверсией функции “ИЛИ”, значения функции  представлены  на
рис. 6, б, в формулах  обозначается  как  [pic].  Условное  изображение  ЛЭ,
реализующего функцию “ИЛИ-НЕ” приведено на рис. 6, а.
ЛЭ “ИЛИ-НЕ” также,  как  и  ЛЭ  “И-НЕ”  позволяет  реализовывать  логические
функции НЕ, ИЛИ, И. Отмеченное иллюстрирует рис. 7.

    Функция “сумма по модулю 2”(М2) – это функция двух или  большего  числа
аргументов. Обозначение в формулах: [pic] (в случае функции двух  аргументов
[pic] и [pic]). Таблица истинности функции представлена на  рис.  8,  а.  На
рис. 8, б  приведено  условное  графическое  изображение  двухвходового  ЛЭ,
реализующего эту функцию. Название функции связано с  тем,  что  [pic]  есть
арифметическая  сумма  двоичных  чисел  [pic]  и  [pic]  в  пределах  одного
разряда: 0+0=0; 0+1=1; 1+0=1; 1+1=10. В последнем случае  возникает  единица
переноса в соседний старший разряд, а в разряде самих  слагаемых  получается
ноль.  Отсюда  широкое  применение  этого  ЛЭ  при  построении   суммирующих
устройств.
    Функция М2 обладает интересным свойством,  которое  полезно  запомнить:
при инвертировании одного из  аргументов  вся  функция  инвертируется,  т.е.
[pic].
    Инверсия суммы по модулю 2 для  двух  аргументов  имеет  и  собственный
смысл: это функция равнозначности [pic];  она  равна  единице,  если  [pic].
Следовательно, для построения схем сравнения одноразрядных чисел  достаточно
проинвертировать один из аргументов или результат.
    Полезно запомнить также следующие очевидные соотношения:
                      [pic]    [pic]    [pic]    [pic]
    Первые два равенства позволяют применять ЛЭ М2 в качестве  управляемого
инвертора. Если использовать один из входов М2 как  управляющий  и  подавать
на него уровень логического 0 или 1, то информация, поступающая  по  второму
входу, будет пропускаться на выход без изменения или инвертироваться.
    В  случае  двух  аргументов   функцию   М2   называют   также   функция
неравнозначности, исключающее ИЛИ,  поскольку  полностью  совпадают  таблицы
истинности этих  функций.  Если  же  функция  М2  трех  или  большего  числа
аргументов, то применение названий “неравнозначность”, “исключающее ИЛИ”  не
правомерно.  Последнее  следует  из  сопоставления  таблиц  истинности  этих
функций  (табл.  2),  из  которой  следует,  что  это  совершенно  различные
функции.
                                                                   Таблица 2
|Аргументы |Функции                                |
|[pic]     |М2=[pic]     |Неравно|Исключающее ИЛИ |
|[pic]     |             |значнос|(один и только  |
|[pic]     |             |ть     |один)           |
|0     0   |0            |0      |0               |
|0         |1            |1      |1               |
|0     0   |1            |1      |1               |
|1         |0            |1      |0               |
|0     1   |1            |1      |1               |
|0         |0            |1      |0               |
|0     1   |0            |1      |0               |
|1         |1            |0      |0               |
|1     0   |             |       |                |
|0         |             |       |                |
|1     0   |             |       |                |
|1         |             |       |                |
|1     1   |             |       |                |
|0         |             |       |                |
|1     1   |             |       |                |
|1         |             |       |                |

    Стандартные ИС ЛЭ И, ИЛИ, И-НЕ, ИЛИ-НЕ имеют 2,  3,  4  или  8  входов.
Число аргументов, входящих в конъюнкцию (дизъюнкцию) или ее  инверсию  может
отличаться от числа  входов  ЛЭ.  Типовыми  ситуациями  являются  наличие  у
имеющегося  ЛЭ  “лишних”  (неиспользуемых)  в  данном  случае  входов   или,
напротив, нехватка у имеющегося  ЛЭ  необходимого  числа  входов.  Например,
нужно получить конъюнкцию (дизъюнкцию) или ее инверсию  пяти  переменных.  В
сериях ИС нет ЛЭ с пятью входами и придется взять элемент с восмью  входами,
у которого окажется три “лишних” входа (рис. 9, а).  Принципиально  возможно
поступить следующим образом: “лишние” входы подсоединить  к  задействованным
(рис. 9, б) или подать на них некоторые константы (логические “1” или  “0”),
не изменяющие логику работы ЛЭ (рис. 9, в).



    Рис.
    В других случаях число входов ЛЭ  меньше  числа  аргументов  конъюнкции
(дизъюнкции) или ее инверсии. Для ЛЭ И и ИЛИ решение задачи не  представляет
трудностей – для  получения  нужного  числа  входов  берется  несколько  ЛЭ,
выходы которых объединяются далее элементом того же типа (рис.  10,  а).  На
этом рисунке звездочка обозначает операцию конъюнкцию или дизъюнкцию.


                 1.2 Назначение и технические характеристики
                     универсального лабораторного стенда

    1.2.1.  Универсальный  лабораторный  стенд   (УЛС)   предназначен   для
исследования функционирования ИС основных ЛЭ и ИС типовых цифровых узлов,  а
также  для  исследования  методов  проектирования  на  их  основе   цифровых
устройств,  реализующих  некоторые,  в  общем  случае  произвольные  функции
преобразования.
    1.2.2. Используемая в УЛС элементная база  –  ИС  потенциального  типа,
логика – транзисторно-транзисторная (ТТЛ).
    1.2.3. Питание стенда  осуществляется  от  источника  постоянного  тока
напряжением 5В.
    Включение стенда осуществляется тумблером “сеть”, при  этом  загорается
расположенный рядом с тумблером светоизлучающий  диод  (индикатор  включения
УЛС).
    1.2.4.  Для  всех  ИС,  установленных  на  наборном  поле  УЛС  уровень
логической “1” представлен напряжением от 2.4  до  5В,  уровень  логического
“0” – напряжением от 0 до 0.4В.
    1.2.5. Наличие незадействованных входов ИС равносильно  подаче  на  них
уровней логической “1”.
    1.2.6. Коммутация (соединение) элементов и  ИС,  расположенных  на  УЛС
производится с помощью  гибких  изолированных  проводников,  заканчивающихся
штекерами.
    1.2.7. Задание наборов входных переменных (входных кодовых  комбинаций)
производится с помощью шестиразрядного тумблерного регистра,  расположенного
в нижнем ряду наборного поля УЛС.
    1.2.8.   Индикация   уровней   выходных   сигналов   исследуемых   схем
осуществляется с помощью светоизлучающих диодов  (8  шт.),  расположенных  в
верхнем ряду наборного поля УЛС.
    Светоизлучающие диоды загораются от сигналов уровня логической “1”.

                      2. Задание на лабораторную работу
2.1. Для ЛЭ, соответствующих вашему варианту (табл. 3):
2.1.1. Снять таблицу истинности;
2.1.2. Записать логические выражения, реализуемые ЛЭ;
2.1.3. Изобразить временные диаграммы, характеризущие работу ЛЭ.
                                                                   Таблица 3
|№ бригады |Исследуемые логические элементы         |
|(варианта)|                                        |
|1       |а) [pic]               |4И-НЕ           |
|        |б) [pic]               |2М2             |
|2       |а) [pic]               |4И-НЕ           |
|        |б) [pic]               |2М2             |
|3       |а) [pic]               |2И-НЕ           |
|        |б) [pic]               |2М2             |
|4       |а) [pic]               |2И              |
|        |б) [pic]               |2М2             |
|5       |а) [pic]               |4ИЛИ            |
|        |б) [pic]               |2М2             |


                           3. Контрольные вопросы
     1. Объясните, как на УЛС можно  проверить  исправность  соединительных
        проводников (отсутствие обрывов)?
     2. Что такое таблица истинности  ЛЭ  или  устройства,  осуществляющего
        некоторое логическое преобразование?

     3.  Укажите  размерность  таблицы  истинности  (число  строк  и  число
        столбцов) ЛЭ: 4И и 2 ИЛИ.
     4. Объясните, почему неиспользуемые входы ЛЭ “ИЛИ”, “ИЛИ-НЕ” соединяют
        с корпусом (уровнем логического “0”), а на неиспользуемые входы  ЛЭ
        “И”, “И-НЕ” подается напряжение уровня логической “1”?
     5. ЛЭ каких типов соответствуют приведенным таблицам истинности?
         а)                         б)



     6. Используя ЛЭ наборного поля получите три различных  варианта  схем,
        реализующих логическую функцию “5И-НЕ”.  Который  из  них  является
        наиболее оптимальным (рациональным)?
     7. Какую логическую функцию реализует  цепочка  из  К  последовательно
        соединенных инверторов, если К – нечетное число, К – четное  число?
        Чему эквивалентны такие цепочки?
     8. Изобразите временные  диаграммы,  характеризующие  функционирование
        ЛЭ: НЕ, 3И, 3ИЛИ, 3И-НЕ, 3М2.
     9. Записать логические выражения и составить  таблицы  истинности  ЛЭ,
        которым соответствуют приведенные временные диаграммы:



                            Лабораторная работа 2
                   Проектирование комбинационных цифровых
              устройств в заданном базисе логических элементов
    Цель  работы:  изучение  методов  проектирования   цифровых   устройств
комбинационного типа  в  заданном  функционально  полном  наборе  логических
элементов (ЛЭ):
     - основном функционально  полном  наборе  (ОФПН),  включающем  ЛЭ  «И»,
       «ИЛИ», «НЕ»;
     - монофункциональных наборах ЛЭ, «И- НЕ» или «ИЛИ НЕ».

                 1. Теоретические основы лабораторной работы
    Комбинационным  цифровым  устройством  (КЦУ)   называется   устройство,
выходные сигналы которого  в  некоторый  момент  времени  работы  однозначно
определяются лишь сигналами, действующими в тот же  момент  времени  на  его
входах. В КЦУ отсутствуют элементы памяти, поэтому  выходные  сигналы  таких
устройств формируются и сохраняются только в период действия входных.
    КЦУ применяются для выполнения целого ряда логических и  арифметических
преобразований над входными сигналами и используются в качестве  шифраторов,
дешифраторов, сумматоров, мультиплексоров и других функциональных узлов.
    В общем случае проектируемое КЦУ может быть представлено в виде черного
ящика (ЧЯ), имеющего n входов  и  m  выходов.  Единственно,  что  изначально
известно об этом ЧЯ – это  требуемый  алгоритм  его  функционирования,  т.е.
характер  связи  между  входными   воздействиями   и   выходными   сигналами
(реакциями). Проектирование сводится к определению оптимальной (в  некотором
смысле) структуры (схемы)  КЦУ  (ЧЯ),  реализуемой  в  заданном  базисе  ЛЭ.
Другими  словами,  проектирование  КЦУ  сводится  к  нахождению  схемы  КЦУ,
удовлетворяющей требуемому алгоритму  функционирования  при  двух  следующих
ограничениях: во-первых, схема КЦУ должна  быть  реализована  с  помощью  ЛЭ
заданного функционального полного  набора;  во-вторых,  поскольку  требуемый
алгоритм функционирования, в общем случае, может быть реализован  с  помощью
различных  схем,  то  должна  быть   определена   (выбрана)   некоторая,   в
определенном  смысле,  наилучшая  (оптимальная)  схема,   например,   схема,
отличающаяся минимумом аппаратурных затрат, т.е. минимальным числом  ЛЭ  или
ИС.
    Процесс проектирования КЦУ в общем случае включает следующие этапы:
1. Словесное описание алгоритма функционирования КЦУ, т.е.  описание  работы
   устройства в понятийной форме (на обычном языке).
2. Оценка размерности задачи и решение вопроса о проектировании КЦУ в  целом
   или по частям, чему предшествует разделение (условное) КЦУ  на  составные
   части. В отдельных  случаях  для  снижения  трудоемкости  и  громоздкости
   задачи проектирования КЦУ разбивается  на  ряд  более  простых  устройств
   (узлов), в совокупности реализующих требуемый алгоритм  функционирования,
   проектирование которых не составляет особых сложностей.
3.   Переход   от   словесного   к   формализованному   заданию    алгоритма
   функционирования КЦУ с помощью логических (булевых) функций.
4. Минимизация логических функций.
5. Преобразование минимальных форм логических функций к  виду,  реализуемому
   ЛЭ заданного функционально полного набора.
6. Построение схемы КЦУ по полученным (этапы 1-5) логическим функциям.

           1.1 Формы представления алгоритмов функционирования КЦУ
    Алгоритм функционирования любого КЦУ  может  быть  представлен  в  виде
словесного описания.
    Например,  алгоритм  функционирования  КЦУ,   фиксирующего   совпадение
(эквивалентность)  двух  двоичных  переменных  может  быть  задан  следующим
образом: КЦУ должно формировать на выходе сигнал уровня  логической  единицы
(у=1) тогда и только тогда, когда совпадают двоичные переменные х1 и  х2  на
его входах,  в  иных  случаях  сигнал  на  выходе  КЦУ  должен  быть  уровня
логического нуля (у=0).
    Условно сказанное можно записать в виде y = x1  ~  x2;  запись  следует
читать: «у равно х1 эквивалентно  (или  равнозначно)  х2».  Эту  же  функцию
можно представить в табличной форме (рис. 1).
    Таблица показывает, чему равен выходной сигнал схемы  у  при  различных
возможных сочетаниях входных сигналов  х1  и  х2.  Такая  таблица  именуется
таблицей истинности. Имея таблицу истинности, легко  осуществить  переход  к
аналитическому выражению функции.
    В  алгебре  логики  существуют   две   основные   аналитические   формы
представления функций: совершенная дизъюнктивная нормальная форма  (СДНФ)  и
совершенная конъюнктивная нормальная  форма  (СКНФ).  Каждая  из  этих  форм
образуется посредством суперпозиции  специально  образуемых  вспомогательных
элементарных функций – минтермов и макстермов.
    Минтерм – это конъюнкция (логическое произведение),  в  которую  входят
все n входных  переменных  в  прямой  или  инверсной  форме,  а  макстерм  –
дизъюнкция  (логическая  сумма),  в  которую  также  входят  в  прямой   или
инверсной форме все n переменных, образующих функцию.
    Количество  минтермов  и  макстермов  заданного  числа   n   переменных
совпадает с числом различных наборов переменных – 2n.
    СДНФ логической функции –  это  дизъюнкция  минтермов,  соответствующих
наборам входных переменных, для которых функция равна единице.
    СКНФ логической функции – это  конъюнкция  макстермов,  соответствующих
входным наборам, для которых функция равна нулю.

                 2. Алгоритм перехода от таблицы истинности
                 логической функции к ее записи в виде СДНФ
     1. Выбрать в таблице  такие  наборы  входных  переменных,  на  которых
        функция обращается в единицу;
     2. Записать минтермы для выбранных  наборов  входных  переменных.  При
        этом необходимо руководствоваться следующим правилом: если значение
        входной переменной в наборе –  единичное,  то  она  записывается  в
        прямой форме, если  же  значение  переменной  –  нулевое,  то  –  в
        инверсной форме;
     3. Полученные минтермы объединить между собой знаками дизъюнкции.
    Пример 1. Получить СДНФ логической функции y = x1 ~ x2.
    Решение. Из таблицы истинности (рис.1.) следует,  что  функция  у=1  на
двух наборах входных переменных: (0  0)  и  (1  1).  Для  выбранных  наборов
записываем минтермы в соответствии с п.2 приведенного выше алгоритма:
                            [pic],        [pic].
    Соединив минтермы знаком дизъюнкции, получим СДНФ функции:
                       [pic]

                 1.3 Алгоритм перехода от таблицы истинности
                 логической функции к ее записи в виде СКНФ
1. Выбрать в таблице истинности такие наборы входных переменных, на  которых
   функция принимает нулевые значения;
2.  Записать   макстермы   для   выбранных   наборов.   При   этом   следует
   руководствоваться следующим правилом: если значение входной переменной  в
   наборе нулевое,  то  она  записывается  в  прямой  форме,  если  значение
   переменной единичное, то – в инверсной форме;
3. Полученные макстермы соединить знаками конъюнкции.
    Пример 2. Получить СКНФ логической функции y = x1 ~ x2.
    Решение. Из таблицы истинности (рис.1.), следует, что функция y=x1~x2=0
на двух наборах входных переменных (0 1) и  (1  0).  Для  указанных  наборов
записываем макстермы
                               [pic] и [pic].
    Соединив их знаком конъюнкции, получим СКНФ функции:
                                    [pic]
    Нетрудно убедиться, что СДНФ и СКНФ функции эквивалентны.


                     1.4 Минимизация логических функций
    Работа любого  КЦУ  с  одним  выходом  может  быть  описана  логическим
выражением или системой m  логических  выражений,  если  у  КЦУ  m  выходов.
Другими словами, всякому КЦУ с  одним  выходом  или  каждому  из  m  выходов
многовыходного КЦУ взаимно однозначно соответствует логическое выражение,  в
котором буквы соответствуют входным  переменным,  а  знаки  операций  –  ЛЭ,
выполняющим эти операции. Подобные логические выражения именуют  уравнениями
связи «вход-выход» КЦУ. В этих  условиях  упрощение  схемы  КЦУ  сводится  к
минимизации логических выражений, соответствующих этим устройствам.
    СДНФ и СКНФ используются для первоначального  представления  логических
функций, но эти формы, как правило, неэкономичны для  построения  схем  КЦУ.
Прежде чем строить схему,  реализующую  логическую  функцию,  ее  необходимо
минимизировать, т.е. найти  такую  эквивалентную  форму  представления,  при
которой  выражение  для  функции  будет  состоять   из   наименьшего   числа
переменных (букв).
    Минимизация  логических  функций  может  быть  проведена  аналитически,
используя постулаты и законы булевой алгебры.
    Основными понятиями, которые вводятся на этапе  минимизации  логических
функций,  являются  понятия  смежных  минтермов  и  импликант,  а   основной
операцией упрощения является операция склеивания смежных минтермов.
    Смежными принято называть минтермы, отличающиеся формой вхождения в них
лишь одной переменной (в один минтерм переменная входит в прямой форме, а  в
другой – в инверсной). Например, смежными являются минтермы  [pic]  и  [pic]
(различаются формой вхождения только переменной х1).
    Два  смежных  минтерма  СДНФ  могут  быть  объединены  по   разнящемуся
аргументу, в результате  чего  происходит  их  замена  одной  конъюнкцией  с
числом переменных на единицу меньшим, чем в исходных минтермах.
    Например, [pic]
    Операция  объединения  смежных  минтермов  по   разнящейся   переменной
именуется склеиванием.
    Конъюнкция, получаемая в результате склеивания двух смежных  минтермов,
называется импликантой. Импликанты с одинаковым числом переменных  (рангом),
в свою очередь  могут  оказаться  смежными,  что  позволяет  производить  их
склеивание между собой.
    Процесс многоступенчатого склеивания приводит  к  получению  импликант,
которые не имеют себе смежных. Такие импликанты называют простыми.
    Процесс  минимизации  логических  функций  значительно  упрощают  карты
Карно. Карты  Карно  представляют  собой  прямоугольную  таблицу  (матрицу),
разбитую горизонтальными и вертикальными линиями на клетки  (ячейки).  Общее
число ячеек совпадает  с  числом  минтермов  и  равно  2n,  где  n  –  число
переменных  упрощаемой  функции.  Таким   образом,   каждая   ячейка   карты
соответствует  определенному  минтерму,  размещение  которых  осуществляется
таким  образом,  чтобы  смежные  минтермы  находились  в  соседних  ячейках.
Соседними считаются ячейки, имеющие общие стороны, а также расположенные  на
краях одних и тех же строк или столбцов карты.
    Такой порядок размещения  минтермов  обеспечивается  принятым  способом
образования наборов переменных,  соответствующих  различным  ячейкам  карты.
Все переменные разбиваются на две группы. Наборам  переменных  одной  группы
ставят в соответствие столбцы, наборам другой группы  –  строки  карты.  Для
определенности крайний левый  столбец  и  верхнюю  строку  карты  обозначают
наборами с нулевыми значениями всех  переменных  (это  условие  не  является
обязательным).
    Для функции двух переменных карта  Карно  представляет  собой  таблицу,
разделенную на четыре ячейки, по одной на каждый входной набор (рис. 2,  а).
Строки карты связаны с переменной  [pic],  столбцы  –  с  переменной  [pic].
Расположенная слева вверху ячейка соответствует входному набору  (0  0)  или
минтерму  ([pic]),  расположенная  ниже  ее  ячейка  соответствует  входному
набору (1 0) или минтерму ([pic]) и т.д.
    В случае функции трех переменных  карта  Карно  (рис.  2,  б)  содержит
восемь ячеек, по  одной  для  каждого  входного  набора,  указанного  внутри
ячейки.
    Поскольку для функции четырех переменных существует 16 входных наборов,
карта Карно разделена на 16 ячеек (рис. 2, в).
    Наряду с изложенным применяют и  другой  способ  маркировки  размещения
минтермов: столбцы  и  строки  карты  Карно,  соответствующие  переменным  в
прямой  форме,  охватывают  скобками  и  возле   них   проставляют   символы
переменных.



    Аналогично поступают для переменных, представленных в инверсной  форме.
Пример маркировки строк и столбцов карты Карно для функции  трех  и  четырех
переменных приведен на рис. 3.


|   |  |[pic]       |x2          |
|   |  |            |            |
|[pi|  |     |     |     |     |
|c] |  |     |     |     |     |
|х1 |  |     |     |     |     |
|   |  |     |            |     |
|   |  |[pic]|x3          |[pic]|


                                     а)
|     |[pic]       |х3          |      |
|     |            |            |      |
|   | |     |     |     |     |  |[pi|
|[pi| |     |     |     |     |  |c] |
|c] | |     |     |     |     |  |   |
|   | |     |     |     |     |  |   |
|   | |     |*    |     |     |  |х2 |
|   | |     |     |     |     |  |   |
|х1 | |     |     |     |     |  |   |
|   | |     |     |     |     |  |[pi|
|   | |     |     |     |     |  |c] |
|     |     |            |     |      |
|     |[pic]|x4          |[pic]|      |


                                     б)

  Рис. 3. Альтернативный способ маркировки строк и столбцов карты Карно для
                  функции трех (а) и четырех (б) переменных


    Минтермы, соответствующие определенным  ячейкам  карты,  образуются  из
наборов  групп  переменных  (рис.  2)  или  наборов  переменных  (рис.   3),
обозначающих  строку  и  столбец,   на   пересечении   которых   расположена
рассматриваемая  ячейка.  Например,   ячейке,   выделенной   на   рис.   3,б
соответствует минтерм [pic].

            1.5 Алгоритм минимизации логических функций, заданных
                        в СДНФ при помощи карт Карно
    1.  Обозначить  ячейки  карты,  соответствующие  минтермам   упрощаемой
функции.   Обозначение   состоит   в   простановке   (записи)    единиц    в
соответствующие ячейки карты. Остальные  ячейки  остаются  не  заполненными.
Для  обозначения  ячеек  карты  используют  либо   аналитическое   выражение
упрощаемой функции, либо ее таблицу истинности.
    2. 2К соседних обозначенных ячеек,  расположенных  по  столбцу  или  по
строке, либо образующих  прямоугольник  или  квадрат,  объединить  в  контур
(блок).
    При образовании блоков необходимо придерживаться следующих правил:
    2.1. Одни и те же ячейки могут входить в несколько блоков;
    2.2. Блоки должны покрывать все обозначенные ячейки;
    2.3.  Следует  стремиться  к  тому,  чтобы   количество   блоков   было
минимальным, а сами блоки покрывали по возможности большее число ячеек.
    3. Для каждого блока записать логическое выражение  в  виде  конъюнкции
тех переменных, значения  которых  совпадают  у  всех  объединенных  в  блок
ячеек. Если блок покрывает 2, 4 или более ячеек, то конъюнкции  представляют
собой  импликанты  склеиваемых  минтермов.  Ранг  полученных  таким  образом
импликант меньше ранга минтермов, объединенных в контур, на К единиц.
    4. Логические выражения  для  блоков  объединить  значками  дизъюнкции.
Полученное  выражение  представляет  собой  минимизированную   дизъюнктивную
нормальную форму (МДНФ) логической функции.
    Пример 3. Минимизировать с помощью карты Карно логическую функцию:
                                    [pic]
    Решение. Упрощаемая функция трех переменных задана своей СДНФ. Выбираем
соответствующую  карту  Карно   (рис.   3,а)   и   обозначаем   ее   ячейки,
соответствующие минтермам функции. Так как упрощаемая функция содержит  пять
минтермов, то и на карте Карно должно быть пять обозначенных ячеек (рис.4).
|       |[pic]     |[pic]     |
|       |          |          |
|[pic|  |    |    |    |    |
|]   |  |    |1   |1   |1   |
|х1  |  |    |    |    |    |
|    |  |    |1   |1   |    |
|    |  |    |          |    |
|    |  |[pic|[pic]     |[pic|
|    |  |]   |          |]   |


                  Рис. 4. Пример минимизации функции [pic]
    После заполнения карты образуем контуры, покрывающие  все  обозначенные
ячейки (в соответствии с правилами, изложенными выше).  Для  рассматриваемой
функции достаточно образовать два контура. В первый  входят  четыре  ячейки,
находящиеся в средней части карты; во второй – две  крайние  ячейки  верхней
строки карты.
    Логическое выражение для первого контура - [pic]  (так  как  только  по
[pic] совпадают обозначения ячеек, входящих  в  первый  блок);  для  второго
контура - [pic]. В результате получаем МДНФ функции: [pic].

                    1.6 Минимизация частично определенных
                       и инверсных логических функций
    Частично  (не  полностью)  определенными  называют  функции,   значения
которых заданы лишь для части множества  возможных  наборов  их  переменных.
Такие функции достаточно часто встречаются  в  задачах  проектирования  КЦУ,
где их происхождение обусловлено тем, что некоторые  сочетания  (комбинации)
входных переменных при работе КЦУ не имеют места.
    Наборы  переменных,  для  которых  функция  не   определена,   называют
избыточными или запрещенными. Например, избыточные наборы будут иметь  место
при реализации двоично-десятичного кода, т.е. при  представлении  десятичных
цифр от 0 до 9  двоичным  кодом.  Действительно,  для  такого  представления
необходимо  использовать  четыре  двоичные   переменные   (четыре   двоичных
разряда), и из общего числа 16 наборов этих переменных  использовать  только
первые 10. Следовательно, 6 наборов оказываются избыточными.
    При   минимизации   частично   определенных   функций   производят   их
доопределение, которое состоит  в  произвольном  задании  значений  функции,
соответствующих избыточным наборам. Эти значения можно  выбирать  равными  0
или 1. Доопределение выполняют  таким  образом,  чтобы  результирующая  МДНФ
функции была наиболее простой (при этом учитывается  возможность  выполнения
дополнительных склеиваний при доопределении функции).
    Пример 4. Минимизировать логическую функцию,  заданную  своей  таблицей
истинности (рис. 5, а). Значения  функции,  соответствующие  трем  последним
наборам входных переменных, не определены (что отмечено * в  столбце  yисх).
На карте Карно рассматриваемой функции (рис. 5,  б)  ячейки  для  избыточных
наборов также отмечены  звездочками.  Доопределение  функции  единицами  для
всех избыточных наборов позволяет представить ее МДНФ в виде:

                                    [pic]
Для сравнения приведем выражение исходной функции:
                                   [pic],
    которую без приема доопределения упростить невозможно.
    В пределах  определения  (на  допустимых  наборах  входных  переменных)
значения функций уисх и удоопр  совпадают.  Выяснение  тождественности  этих
функций на запрещенных наборах не представляет интереса, так как при  работе
КЦУ они не будут иметь места.
    Сократить трудоемкость минимизации иногда можно за  счет  работы  не  с
самой заданной функцией, а с ее  инверсией.  Если  число  единиц  в  таблице
истинности  превышает  половину  числа  наборов  переменных,  то  СДНФ   для
инверсии функции будет содержать меньше  конъюнкций,  чем  СДНФ  для  прямой
функции.


|х1    |х2    |х3    |уисх  |удоопр|
|0     |0     |0     |0     |0     |
|0     |0     |1     |0     |0     |
|0     |1     |0     |0     |0     |
|0     |1     |1     |1     |1     |
|1     |0     |0     |1     |1     |
|1     |0     |1     |*     |1     |
|1     |1     |0     |*     |1     |
|1     |1     |1     |*     |1     |


                                     а)

|      |[pic]     |х1         |
|      |          |           |
|[pic| |    |    |   |      |
|]   | |    |    |*  |1     |
|х3  | |    |    |   |      |
|    | |    |1   |*  |      |
|      |    |        |      |
|      |    |х2      |[pic] |
|      |[pic|        |      |
|      |]   |        |      |

                                     б)


              Рис. 5. Таблица истинности (а) и карта Карно (б)
                        частично определенной функции

    Пример 5. Упростить функцию, заданную таблицей истинности (рис. 6).
    Решение. СДНФ требуемой (прямой) функции
                                    [pic]


|х1    |х2    |х3    |y     |[pic] |
|0     |0     |0     |1     |0     |
|0     |0     |1     |1     |0     |
|0     |1     |0     |1     |0     |
|0     |1     |1     |1     |0     |
|1     |0     |0     |1     |0     |
|1     |0     |1     |0     |1     |
|1     |1     |0     |1     |0     |
|1     |1     |1     |0     |1     |

                  Рис. 6. Таблица истинности функции [pic]

    Поскольку столбец у содержит  шесть  единиц  из  восьми  возможных,  то
столбец для [pic] содержит лишь две единицы, что и отражено в таблице  (рис.
6).
    Для [pic] СДНФ будет значительно проще:
                                    [pic]
    Последнее выражение более обозримо, чем для у, и легко минимизируется:
                            [pic], откуда [pic].

 1.7 Преобразование минимальных форм логических функций к виду, реализуемому
                  ЛЭ заданного функционально полного набора

    Любая логическая функция, как было сказано выше, может быть записана  в
виде  СДНФ  или  СКНФ.  Следовательно,  любую  функцию  n  переменных  можно
представить  с  помощью  набора   трех   элементарных   функций:   инверсии,
дизъюнкции и  конъюнкции.  Возможны  и  другие  наборы  функций,  с  помощью
которых может быть выражена произвольная функция.
    Набор элементарных булевых функций называют функционально полным (ФПН),
если любая функция произвольного числа переменных  может  быть  представлена
суперпозицией функций этого набора.
    Набор логических функций инверсия (НЕ), дизъюнкция (ИЛИ)  и  конъюнкция
(И) получил наименование основного (ОФПН).
    Среди  других  наборов  функций,   образующих   ФПН,   особый   интерес
представляют так  называемые  монофункциональные  наборы,  содержащие  всего
одну булеву  функцию.  Таковыми,  в  частности,  являются  набор,  состоящий
только из функции «штрих  Шеффера»  (И-НЕ)  и  набор,  состоящий  только  из
функции «стрелка Пирса» (ИЛИ-НЕ).

             1.8 Минимальные формы в монофункциональных базисах
    Основой для получения минимальных форм  логических  функций  в  базисах
функций штрих Шеффера и стрелка  Пирса  может  служить  МДНФ,  полученная  в
результате решения задачи минимизации.
    МДНФ представляет собой  дизъюнкцию  простых  импликант  и  может  быть
представлена в обобщенном виде:
                                                   [pic]                 (1)
    где Ji – символ импликант, а d - их количество.
    Формулы функций штрих Шеффера и стрелка Пирса для случая  r  переменных
имеют вид:
                                      [pic]                              (2)
                                              [pic][pic]                 (3)
    Для перехода от МДНФ к минимальной форме в базисе функции штрих Шеффера
конъюнкции и дизъюнкции в выражении (1) должны быть заменены функциями  вида
(2). Это достигается двукратным инвертированием (1)  и  применением  теоремы
де Моргана-Шеннона. Первое инвертирование (1)  с  учетом  указанной  теоремы
приводит к соотношению:
                                                  [pic]                  (4)
    Второе инвертирование с учетом закона двойного отрицания дает:
                                                     [pic]               (5)
    Каждый из членов [pic] соотношения (5) и все это  соотношение  в  целом
представляет собой функции штрих Шеффера.
    Следовательно, (5) выражает переход от МДНФ к искомой форме  формулы  в
базисе   функций   штрих   Шеффера.   Формулу   (5)   называют   оптимальной
конъюнктивной инверсной формой логической функции или оптимальным  инверсным
произведением.
    Переход от МДНФ к минимальной форме  в  базисе  функций  стрелка  Пирса
осуществляется  заменой  импликант  в  (1)  функциями  вида  (3).  Обозначим
преобразованную  в  соответствии  с  теоремой  де  Моргана-Шеннона  инверсию
импликанты [pic] символом Gi. Тогда (4) можно переписать в виде:
                                            [pic]                        (6)
    Трехкратное инвертирование (6)  приводит  к  искомой  форме  формулы  в
базисе функций стрелка Пирса
                                              [pic]                      (7)
    Каждый член дизъюнкции в (7) и инверсия  всей  дизъюнкции  представляет
собой функции стрелка Пирса; заключительное инвертирование также может  быть
выполнено  элементами  стрелка  Пирса  (ИЛИ  -  НЕ).  Формулу  (7)  называют
оптимальной  дизъюнктивной   инверсной   формой   логической   функции   или
оптимальной инверсной суммой.
    Пример.  6.  Представить  логическую   функцию   «равнозначность   двух
переменных» в базисе функций штрих Шеффера и стрелка Пирса.
    Решение. СДНФ функции равнозначность двух переменных  (приведена  выше)
имеет вид:
                                                      [pic]              (8)
    Первое инвертирование (8)  с  учетом  теоремы  де  Моргана  приводит  к
выражению:
                 [pic].
    Второе инвертирование с учетом закона  двойного  отрицания  приводит  к
искомой форме в базисе функций штрих Шеффера:
                                                [pic]                  (8.1)
    Четырехкратное инвертирование (8.1) дает искомую форму в базисе функций
стрелка Пирса:
                                    [pic]
                                    [pic]
                                    [pic]
                                  [pic]                                (8.2)

              1.9 Проектирование схемы КЦУ в заданном базисе ЛЭ
    Каждая из элементарных логических функций, образующих ОФПН, может  быть
воспроизведена  (реализована)   соответствующими   ЛЭ:   инверторами   (НЕ),
дизъюнкторами (ИЛИ) и конъюнкторами (И), образующими ОФПН ЛЭ.
    Аналогичным образом могут быть реализованы  функции  монофункциональных
наборов: функции штрих Шеффера – с помощью ЛЭ «И-НЕ», функции стрелка  Пирса
– с помощью ЛЭ «ИЛИ -НЕ», образующих монофункциональные наборы ЛЭ.
    Основой для проектирования КЦУ  в  ОФПН  ЛЭ  служит  минимальная  форма
логической функции –  МДНФ  или  МКНФ.  Основой  для  проектирования  КЦУ  в
монобазисном  наборе  ЛЭ  служит  оптимальное  инверсное  произведение   или
оптимальная инверсная сумма.
    Пример 7. Спроектировать схему КЦУ равнозначности двух переменных а)  в
ОФПН ЛЭ, б) в монофункциональном наборе ЛЭ «И -НЕ», в) в  монофункциональном
наборе ЛЭ «ИЛИ -НЕ».
    Решение. Основой для проектирования являются  выражения  (8),  (8.1)  и
(8.2) соответственно. Схемы КЦУ, реализующие  функцию  “равнозначность  двух
переменных”, приведены на рис.7.

                    1.10 Проектирование многовыходных КЦУ
    На практике часто встречается необходимость проектирования КЦУ, имеющих
несколько (m) выходов. В этих случаях для  синтеза  схемы  устройства  можно
воспользоваться  рассмотренной  выше  последовательностью   действий,   если
представить устройство в виде совокупности соответствующего числа  (m)  КЦУ,
имеющих общие входы.  Другими  словами,  проектирование  многовыходного  КЦУ
сводится к синтезу m одновыходных схем КЦУ, имеющих общие входы х1,  х2,  …,
хn, выходы которых в совокупности образуют выходы  устройства:  у1,  у2,  …,
уm.
    Пример 8.  Спроектировать  схему  КЦУ,  вычисляющего  значения  функции
у=х2+3, если х может принимать целые значения в диапазоне от 0 до 3.
    Решение. Представим  функцию,  подлежащую  реализации  в  виде  таблицы
(рис.8.)
    В проектируемом устройстве как аргумент х, так и функция у должны  быть
представлены  в  виде  двоичных  кодов.  Перевод  х  и  у  в  двоичные  коды
осуществляется по  известным  правилам  преобразования  десятичных  чисел  в
двоичные коды. Число разрядов n и m, необходимых для представления х и  у  в
двоичном коде, определяется согласно соотношениям:
                n ? log2(xmax+1),  m ? log2(ymax+1).     (9)
    Из (9) находим число двоичных разрядов, необходимых  для  представления
аргумента х и функции у в виде ближайших больших целых чисел:
                     n ? log2(3+1)=2,  m ? log2(12+1)=4.
    Таким образом, проектируемое устройство  должно  иметь  два  входа,  на
которые поступают двоичные разряды аргумента х1 и х2  и  четыре  выхода,  на
которых формируются двоичные разряды функции у1, у2, у3, у4 (рис.9, а).  Для
получения  уравнений  связи  выходных  переменных   (реакций)   с   входными
переменными (воздействиями) изобразим таблицу истинности  (функционирования)
устройства (рис. 9, б).
|х2|х1|у4|у3|у2|у1|
|21|20|23|22|21|20|
|0 |0 |0 |0 |1 |1 |
|0 |1 |0 |1 |0 |0 |
|1 |0 |0 |1 |1 |1 |
|1 |1 |1 |1 |0 |0 |



         а)                                  б)
                Рис. 9. Условное графическое изображение (а)
          и таблица функционирования (б) проектируемого устройства

    Из таблицы функционирования для  каждого  выхода  уi  (i=1,  2,  3,  4)
получим уравнения связи в виде СДНФ:
                                   [pic],
                                   [pic],
                                   [pic].
    Упростим (минимизируем)  полученные  выражения  (выражение  для  у4  не
упрощается):
                                   [pic],
              [pic],                                                    (10)
                                   [pic].
По полученным МДНФ (10) синтезируем  схему  устройства,  используя  ОФПН  ЛЭ
(рис. 10).



          Рис. 10. Схема КЦУ, вычисляющего значения функции у=х2+3,
                     (область определения х: 0, 1, 2, 3)
                      2. Задание на лабораторную работу
2.1. Для каждого КЦУ, предусмотренного заданием (см. табл. 1):
2.1.1. Составить таблицу истинности;
2.1.2.   Составить   логические   выражения   функций,   реализуемых    КЦУ,
представленные в СДНФ и СКНФ. Доказать тождественность этих форм.
2.1.3. Минимизировать при возможности полученные  выражения,  т.е.  получить
выражения для МДНФ используя: а) метод непосредственных  преобразований;  б)
карт Карно.
2.1.4. Преобразовать полученные в п. 2.1.3.  МДНФ  к  виду,  реализуемому  в
монофункциональном базисе ЛЭ «И-НЕ».
2.1.5. Составить схему КЦУ, используя: а) ЛЭ  ОФПН;  б)  монофункционального
набора ЛЭ «И- НЕ».
2.1.6.  Собрать  схемы  КЦУ  на   стенде   и   проверить   правильность   их
функционирования.
    Примечание: пункты 2.1.1 – 2.1.5 задания должны быть выполнены дома.
                                                                   Таблица 1
|Функция,                          |№ бригады      |
|реализуемая КЦУ                   |               |
|                                  |1 |2 |3 |4 |5 |
|Неравнозначность двух переменных  |+ |  |  |  |  |
|Голосования (мажоритарного        |  |+ |  |  |  |
|контроля) «2 из 3»                |  |  |  |  |  |
|Равнозначности трех переменных    |  |  |+ |  |  |
|Четности числа «1» в трехразрядном|  |  |  |+ |  |
|двоичном слове                    |  |  |  |  |  |
|Нечетности числа «1» в            |  |  |  |  |+ |
|трехразрядном двоичном слове      |  |  |  |  |  |
|Вычисление значений функции       |  |  |  |  |  |
|у=[pic], (х принимает целые       |  |  |  |  |  |
|значения в диапазоне от 0 до 4), A|+ |+ |+ |+ |+ |
|- № бригады.                      |  |  |  |  |  |


                            3. Содержание отчета
    Для  каждого  спроектированного  и  исследованного  в  соответствии   с
заданием КЦУ должны быть приведены:
3.1. Таблица истинности и логические  выражения  функции,  реализуемых  КЦУ,
представленные в СДНФ и СКНФ.
3.2. Карты Карно, отражающие ход минимизации логических функций.
3.3.  Преобразования,  иллюстрирующие  переход  от   МДНФ   к   оптимальному
инверсному произведению.
3.4. Схемы КЦУ, реализованные в ОФПН ЛЭ и монофункциональном наборе  ЛЭ  «И-
НЕ».



                           4. Контрольные вопросы
1. Основные постулаты (аксиомы) и законы алгебры логики.
2. Понятия минтермов и макстермов. Дизъюнктивные и конъюнктивные  нормальные
   формы представления функций.
3. Понятия смежных минтермов, операции их склеивания, импликант.
4. Минимизация логических функций с помощью карт Карно.
5. Понятие функционального полного набора (ФПН). Примеры ФПН.
6. Последовательность (алгоритм) приведения  МДНФ  к  виду,  реализуемому  в
   монофункциональном наборе ЛЭ,
7. Реализовать в монофункциональном наборе  ЛЭ  «И-НЕ»  логические  функции:
   инверсия, дизъюнкция трех переменных, конъюнкция трех переменных.
8. Реализовать в монофункциональном наборе ЛЭ «ИЛИ -НЕ» логические  функции:
   инверсия, дизъюнкция трех переменных, конъюнкция трех переменных.
9. Оцените аппаратурные затраты (количество ИС),  потребные  для  реализации
   КЦУ   «равнозначность   двух   переменных»   а)   в   ОФПН   ЛЭ,   б)   в
   монофункциональных наборах ЛЭ. Какое  схемотехническое  решение  является
   предпочтительным?
10. В чем суть операции доопределения логической функции?
11. Сколько входов и выходов должно иметь цифровое  устройство,  вычисляющее
   значение функции y= 0.5·x+4, если х  может  принимать  целые  значения  в
   диапазоне от 0 до 10?
12. Какого типа ЛЭ необходимы для построения схемы,  реализующей  логическую
   функцию y= x1·x2+x1·x3+x2·x3? Укажите потребное количество ЛЭ и ИС.


                            Лабораторная работа 3
                 Проектирование и исследование дешифраторов
    Цель работы: изучение принципов проектирования дешифраторов в  заданном
базисе  логических  элементов,   а   также   исследование   функционирования
спроектированных дешифраторов и интегральных схем дешифраторов.

                 1. Теоретические основы лабораторной работы
    Дешифратором (декодером) называется цифровое устройство комбинационного
типа,  осуществляющее  преобразование  n-разрядного  двоичного  кода  в   m-
разрядный унитарный код.
    Унитарный код (код «1 из  m») может быть прямым (одна «1»  в  некотором
разряде m-разрядного двоичного кода и m-1 нулей) или обратным (один «0» и m-
1 единиц).
    Примеры записи унитарного кода для m=8:
         прямого – 0001 0000, 0100 0000, ...
         обратного – 1101 1111, 0111 1111, ...
    Схема дешифратора имеет n входов, на которые поступают  соответствующие
разряды двоичного кода  хn,  xn-1,  …,  x2,  x1  и  m  выходов,  на  которых
формируются разряды унитарного кода уm-1, ..., у1, у0. При  этом  дешифратор
реализует m функций вида:
                                                     [pic]               (1)
    Функции  (1)  соответствуют  преобразованию  двоичного  кода  в  прямой
унитарный код и могут быть записаны в виде:

                                    [pic]
                   [pic]                                                 (2)
                                    [pic]
                     [pic]
                     [pic]
    Такой системе уравнений соответствует таблица истинности (табл.1).
Изложенное выше соответствует полному  дешифратору,  т.е.  дешифратору,  для
которого m=2n. На  практике  часто  встречаются  неполные  дешифраторы,  для
которых m(2n, следовательно, реализующие лишь некоторые из функций  (2).  Из
(2) и таблицы истинности следует, что  каждой  комбинации  входных  сигналов
соответствует активное значение «1» (при преобразовании в  прямой  унитарный
код) только одного определенного выходного сигнала,  и  неактивные  значения
«0» остальных m-1 выходных сигналов. Причем номер  избранного  выхода  равен
двоичному коду, поданному на входы.  Например,  если  на  дешифратор  подана
входная комбинация, соответствующая первой строке таблицы истинности  (табл.
1), т.е. двоичный код нуля, то избранным будет выход с номером 0 (у0);  если
входная  комбинация  имеет  вид,  соответствующий  второй   строке   таблицы
истинности, т.е. двоичный код единицы - избранным будет выход  с  номером  1
(у1) и т.д.
    Дешифраторы входят в  состав  практически  всех  серий  цифровых  ИС  и
отличаются:
     - числом выходов (полные и неполные дешифраторы);
     - видом  преобразования  -  в  прямой  (прямые  выходы)  или  обратный
       (инверсные выходы) унитарный код;
     - наличием или отсутствием стробирующего (управляющего) входа.  Сигнал
       на  этом  входе  разрешает  или  запрещает  выполнение   микросхемой
       операции дешифрирования;
     - быстродействием, которое характеризуется средним  временем  задержки
       распространения сигнала от входа до выхода tзд.р.ср;
     -  энергопотреблением;  т.е.  мощностью,  потребляемой  от   источника
       питания.
Например, ИС сдвоенного дешифратора К 530 ИД-14 (рис.1, а) (в одном  корпусе
два  автономных  дешифратора  «2-4»,  выходы  инверсные)  имеет  по   одному
стробирующему входу [pic] и [pic]  в каждом дешифраторе.
    При объединении (каскадировании) информационных и стробирующих  входов,
как это показано на рис.1, б, получают дешифратор 3-х  разрядного  двоичного
кода. Входные сигналы дешифрируются первым дешифратором (при  V1=0  и  V2=1,
т.е. при х3=0, или вторым (при V1=1 и V2=0, т.е. при х3=1) дешифратором.


                     К 530 ИД 14


[pic]


 Рис.1. Дешифратор К 530 ИД 14 (а) и способ соединения двух дешифраторов для
        увеличения разрядности (наращивания числа входов-выходов) (б)


                          1.1 Линейные дешифраторы
    Схема дешифратора может быть построена в соответствии с уравнениями (2)
и представляет собой m конъюнкторов (ЛЭ «И») с n входами, каждый из  которых
реализует одну из функций fj(xn,  ...,  x1).  Такие  дешифраторы  называются
линейными (или матричными). Схема линейного дешифратора, имеющего n=3  входа
и m=2n =8 выходов и  условное  графическое  изображение  такого  дешифратора
приведено на рис. 2.



                                    [pic]

               Рис.2. Схема (а) линейного дешифратора «3 в 8»
                 и его условное графического изображение (б)

    Таблица истинности линейного дешифратора «3 в 8» представлена в табл.2.

                                                                   Таблица 2
                                    [pic]
    В  таблице  над  обозначением  разрядов   входного   кода   проставлены
соответствующие им весовые коэффициенты;  всем  не  обозначенным  в  таблице
значениям уj соответствуют неактивные уровни сигналов - «0».
    К   достоинствам   линейных   дешифраторов   относится    их    высокое
быстродействие. Для схемы (рис. 2)  время  дешифрации  (tд)  равно  среднему
времени задержки распространения одного ЛЭ «3И», т.е. tд = tзд.р.ср..
    В то же время для логических элементов, используемых в схемах  линейных
дешифраторов, характерно значительное число  требуемых  входов  (коэффициент
объединения  по  входу  Коб)  логического   элемента,   равное   разрядности
дешифрируемого числа - n. В составе ИС, выпускаемых промышленностью,  обычно
отсутствуют логические элементы с коэффициентом объединения более  восьми  и
этим значением ограничена разрядность входных чисел  линейного  дешифратора,
если не применяются дополнительные расширители по входу.
    При построении схем линейных дешифраторов   существенным  ограничением,
кроме того, является высокая требуемая нагрузочная способность  (коэффициент
разветвления по выходу Краз.)  ЛЭ  входного  регистра,  с  которых  значения
разрядов  числа  подаются  на  входы  дешифратора.  Для   любого   линейного
дешифратора требуемая нагрузочная способность  ЛЭ  входного  регистра  равна
половине общего числа логических  элементов  дешифратора:  Краз=0,5(2n.  Так
как коэффициент разветвления базовых ЛЭ  не  превышает  Краз=10(20,  то  для
линейных дешифраторов без принятия специальных мер максимальная  разрядность
дешифруемых чисел n = 4(5.



                        1.2 Пирамидальные дешифраторы
    Усовершенствование   структуры   дешифраторов    позволяет    исключить
отмеченные ограничения и сводится оно к формированию  частичных  конъюнкций,
используемых  в  дальнейшем  для  получения  требуемых   выходных   функций.
Пирамидальная структура - один из видов  структур  дешифратора,  реализующих
такой принцип построения. Последний основан на том,  что  добавление  одного
разряда входной  переменной  увеличивает  число  конъюнкций  вдвое  за  счет
умножения исходной  конъюнкции  на  дополнительную  переменную  в  прямой  и
инверсной  форме.  Поясним  сказанное  следующим  примером.  Пусть   имеется
конъюнкция двух переменных х2 · х1. При введении добавочного разряда х3  эта
конъюнкция образует две новых: х3х2х1 и  [pic]х2х1,  для  получения  которых
потребуется два двухвходовых ЛЭ «И».  Последовательно  наращивая  структуру,
можно построить пирамидальный дешифратор на произвольное число входов.
    На рис. 3 приведена  схема  пирамидального  дешифратора  трехразрядного
числа.  Пирамидальный  дешифратор  четырехразрядного  числа  можно  получить
добавлением  в  схему  (рис.  3)   третьего   каскада,   содержащего   24=16
конъюнкторов и образующего четырехбуквенные конъюнкции.
Пирамидальные  дешифраторы  отличаются  от  линейных  использованием  только
двухвходовых конъюнкторов  вне  зависимости  от  разрядности  дешифрируемого
числа, а коэффициент разветвления ЛЭ входного  регистра  и  всех  логических
элементов  дешифратора  также  равен  двум.  Таким  образом,   пирамидальные
дешифраторы свободны от ограничений, свойственных линейным дешифраторам,  но
в них используется большее количество  ЛЭ,  определяемое  как  N=4((2n-1-1).
При проектировании цифровых устройств на ИС первостепенную  роль  играет  не
количество ЛЭ в устройстве, а количество требуемых  корпусов  ИС.  В  то  же
время количество ЛЭ, располагаемых в одном корпусе ИС, определяется  главным
образом требуемым количеством выводов. Следовательно,  в  одном  корпусе  ИС
можно   расположить   большее   число   двухвходовых    конъюнкторов,    чем
трехвходовых,  и  пирамидальная  структура   дешифратора,   оцениваемая   по
требуемому числу  корпусов  ИС,  может  оказаться  эквивалентной  или  более
предпочтительной, чем линейная.


            1.3 Особенности проектирования неполных дешифраторов
    При  проектировании  дешифраторов,  для  которых  m(2n  (т.е.  неполных
дешифраторов)   некоторые   выходные   функции   уj   не   реализуются    и,
следовательно, соответствующие им входные комбинации (хn, ..., х1)  являются
избыточными  (запрещенными).   Последнее   позволяет   путем   доопределения
минимизировать некоторые функции из числа реализуемых  дешифратором  и,  как
следствие этого - упростить схему дешифратора.
    Поясним   отмеченное   следующим    примером.    Положим,    необходимо
спроектировать дешифратор с 6-ю выходами, т. е. имеющего только выходы   у0-
у5 (рис. 2). Два трехвходовых конъюнктора, реализующие функции у6 и  у7  при
этом оказываются избыточными и из схемы могут быть исключены. Но это еще  не
все возможности по упрощению  схемы  дешифратора.  Действительно,  поскольку
входные комбинации х3х2[pic] и х3х2х1 являются запрещенными, то  могут  быть
в результате доопределения минимизированы выражения для функций у2,  у3,  у4
и у5. Это следует из карт Карно (рис. 4), на которых  *  обозначены  клетки,
соответствующие запрещенным входным комбинациям.
                                    [pic]
                     Рис. 4. Карта Карно для функции у5
    На рис. показана процедура доопределения функции у5, в результате  чего
выражение для функции упрощается и принимает вид: у5=х3 х1.
    Аналогичным образом могут быть упрощены у2, у3 и у4:
[pic]Не могут быть для  рассматриваемого  примера  доопределены  и  упрощены
функции у0 и  у1, которым соответствуют крайние клетки верхней строки  карты
Карно.
    В результате получаем схему дешифратора «3 в 6», приведенную на рис.5.



                   1.4. Применение дешифратора в качестве
                     универсального логического элемента
    Дешифратор  кроме  своего  основного   функционального   назначения   -
преобразователя двоичного кода  в  унитарный,  может  быть  использован  для
реализации логических функций.
    Поясним  сказанное  на  следующем  примере.  Пусть  требуется  получить
некоторую логическую функцию:
                                 [pic]                                   (3)
      Каждое из слагаемых выражения (3) представляет собой минтерм  заданной
логической функции 3-х двоичных переменных.  В  то  же  время  трехбуквенные
минтермы  реализуются  на  выходах  дешифратора  «3-8»   (см.   рис.2,   а).
Следовательно,   реализация   функции    (3)    сводится    к    объединению
соответствующих выходов дешифратора, как это показано на рис.6.

    Аналогичным образом на базе дешифратора «3-8»  может  быть  реализована
любая иная логическая функция трех аргументов. Для реализации  произвольного
вида логических функций четырех аргументов  требуется  дешифратор  «4-16»  и
т.д. По этой причине  дешифратор  может  рассматриваться  как  универсальный
логический элемент.

                      2. Задание на лабораторную работу
    2.1. Используя ЛЭ, расположенные  на  стенде,  спроектировать  схему  и
исследовать работу (снять таблицу истинности) линейного дешифратора:
    1-я бригада - «2 в 4»; выходы прямые;
    2-я бригада - «2 в 4»; выходы инверсные;
    3-я, 4-я и  5-я  бригады  -  «2  в  4»;  выходы  прямые;  предусмотреть
стробирующий вход.
    2.2.  Используя  ЛЭ,  расположенные   на   стенде,   спроектировать   и
исследовать работу линейного неполного дешифратора:
    1-я бригада - с 7-ю прямыми выходами;
    2-я бригада - с 6-ю прямыми выходами;
    3-я, 4-я и 5-я бригады - с 5-ю прямыми выходами.
    2.3. Исследовать работу ИС дешифратора К530 ИД 14.
    2.4. Используя ИС К530 ИД 14, спроектировать схему и исследовать работу
дешифратора с 8-ю инверсными выходами.
    2.5. На базе дешифратора (п. 2.4) реализовать логическую функцию:
    1-я бригада - функция равнозначности (эквивалентности) 3-х аргументов;
    2-я бригада - функция нечетности числа  единиц  3-разрядного  двоичного
слова;
    3-я бригада - функция нечетности  числа  нулей  3-разрядного  двоичного
слова;
    4-я бригада - функция  четности  числа  единиц  3-разрядного  двоичного
слова;
    5-я бригада - функция голосования  «2 из 3».

                 3. Содержание отчета по лабораторной работе
    Для каждого пункта задания, соответствующего вашему варианту привести:
   3.1. Схему.
   3.2. Аналитические выражения реализуемых функций.
   3.3. Таблицу истинности (функционирования).

                           4. Контрольные вопросы
1. Дайте определение дешифратора.
2. Что понимают под унитарным кодом?
3. Чем отличается полный дешифратор от неполного?
4. Спроектируйте дешифратор «4-16» по
   1. линейной схеме;
   2. пирамидальной схеме.
    Какая схемная реализация является более оптимальной с точки зрения:
    а) аппаратурных затрат; б) быстродействия?
    5. Оцените потребное  количество  и  типы  ЛЭ  и  ИС,  необходимых  для
построения дешифраторов а)«6-64»,  б)«8-256»  по  линейной  и  пирамидальной
схемам.
    6. Реализовать на базе дешифратора «4-16» с прямыми выходами логическую
функцию:
    6.1. равнозначность 4-х аргументов;
    6.2. четность 4-х разрядного двоичного слова (четность числа  единиц  в
двоичном слове);
    6.3. нечетность 4-х разрядного двоичного слова;
    6.4. [pic]
    7. Каково назначение стробирующего  входа  (входа  «Разрешение»)  в  ИС
дешифраторов?
    8. Используя ИС К530 ИД 14 спроектируйте дешифратор с  16-ю  инверсными
выходами.
    9. Спроектируйте дешифратор «3 в 8» в базисе ЛЭ «ИЛИ-НЕ».


                            Лабораторная работа 4
                             Двоичные сумматоры
    Цель работы: изучение правил  выполнения  арифметических  действий  над
двоичными числами и исследование принципов построения двоичных сумматоров  и
вычитателей.

                 1. Теоретические основы лабораторной работы
               1.1 Правила выполнения арифметических операций
    Арифметические  действия  (операции)   относятся   к   числу   наиболее
распространенных операций, выполняемых цифровыми устройствами (ЦУ).
    Правила  выполнения  арифметических  операций  над  двоичными   числами
аналогичны  соответствующим  правилам  десятичной  арифметики  и  сведены  в
табл.1.
                                                                   Таблица 1
            Правила и примеры выполнения арифметических операций
                           над двоичными числами.
Двоичное сложение

|Слагаемые|Сумма    |Перенос | |Пример        |
|         |к-го     |в к+1-й | |              |
|к-го     |разряда  |разряд  | |              |
|разряда  |         |        | |              |
|       0   +   0    |0       | | 1100   –     |
|=      0            |        | |перенос       |
|       0   +   1    |0       |+|1101 – 1-е    |
|=      1            |        | |слагаемое     |
|       1   +   0    |0       | |1100 – 2-е    |
|=      1            |        | |слагаемое     |
|       1   +   1    |1       | | 11001 – сумма|
|=      0            |        | |              |


Двоичное вычитание

|Уменьш|Вычита|Разност|Заем из| |Пример        |
|аемое |емое  |ь      |       | |              |
|к-го  |к-го  |к-го   |в к+1-й| |              |
|разряд|разряд|разряда|разряда| |              |
|а     |а     |       |       | |              |
|       0        -      |0      | |010   – заем  |
|0       =        0     |       | |              |
|       0        -      |1      |–|1101 –        |
|1       =        1     |       | |уменьшаемое   |
|       1        -      |0      | |1010 –        |
|0       =        1     |       | |вычитаемое    |
|       1        -      |0      | |0011 –        |
|1        =       0     |       | |разность      |



    Двоичное умножение
|Множимое |Множитель|Произвед|  |Пример            |
|к-го     |         |ение    |  |                  |
|разряда  |к-го     |к-го    |  |                  |
|         |разряда  |разряда |  |                  |
|           0            х    |х |   1010   –       |
|0           =         0      |  |множимое          |
|                             |  |101   – множитель |
|           0            х    |+ |   1010           |
|1           =         0      |+ |0000              |
|1            х            0  |  |1010              |
|=         0                  |  |                  |
|1            х            1  |  |                  |
|=         1                  |  |                  |
|                    |        |  |110010 –          |
|                    |        |  |произведение      |

    Двоичное деление
      Делимое           Делитель            Частное          Пример
      к-го разряда     к-го разряда       к-го разряда

               0          :          0              =          ?
               0          :          1              =          0
               1          :          0              =          ?
               1          :          1              =          1


    Для выполнения арифметических операций над двоичными числами со  знаком
вводят дополнительный (знаковый)  разряд,  который  указывает,  является  ли
число положительным или отрицательным. Если число положительное, в  знаковый
разряд проставляется символ 0, если же число – отрицательное, то в  знаковый
разряд проставляется символ 1. Например, число  (+  5)  с  учетом  знакового
разряда (отделяется точкой) запишется как 0.101, а число (-3) – как 1.011.
    При сложении чисел с одинаковыми знаками  числа  складываются  и  сумме
присваивается код знака слагаемых, например
                        [pic]                  [pic]
    Несколько  усложняется  операция  сложения  чисел  с  разными   знаками
(алгебраическое сложение), что равносильно вычитанию чисел.  В  этом  случае
необходимо определить  большее  по  модулю  число,  произвести  вычитание  и
присвоить разности знак большего (по модулю) числа.
    Для упрощения  выполнения  этой  операции  слагаемые  представляются  в
обратном  или  дополнительном  кодах  поскольку   известно,   что   операция
вычитания  (алгебраического   сложения)   сводится   к   операции   простого
арифметического сложения  двоичных  чисел,  представленных  в  обратном  или
дополнительном   кодах.   Положительные   числа   в   прямом,   обратном   и
дополнительном кодах имеют один и тот же вид, а отрицательные – различный.
    Чтобы представить отрицательное двоичное число в  обратном  коде,  надо
поставить в знаковый разряд 1, а во всех  остальных  разрядах  прямого  кода
заменить единицы нулями, а нули – единицами, т.е. проинвертировать число.
    При записи отрицательного двоичного числа в дополнительном  коде,  надо
поставить 1 в знаковый разряд, а остальные  разряды  получить  из  обратного
кода числа, прибавлением 1 к младшему разряду.
    Приведем примеры записи двоичных чисел со знаками в прямом, обратном  и
дополнительном кодах.
  Число  Прямой код        Обратный код Дополнительный код
      +6      0.110               0.110          0.110
      -5      1.101               1.010          1.011
     -11      1.1011              1.0100             1.0101
    Поясним процедуру вычитания чисел 5 и 3, и 3 и 5. Последовательность  и
взаимосвязь операций представлена в табл. 2.
                                                                   Таблица 2
[pic]
    Из приведенных примеров следует, что при использовании обратного кода в
устройстве, обеспечивающем  суммирование  многоразрядных  двоичных  чисел  –
двоичном сумматоре, необходимо предусмотреть цепь циклического  переноса.  В
случае использования дополнительного кода эта цепь отсутствует.
    Из приведенного выше  можно  сделать  следующее  заключение.  В  ЦУ  (в
компьютере, в частности) нет надобности использовать два  специализированных
вычислительных устройства, одно из которых – двоичный сумматор, а  другое  –
двоичный вычитатель. Оказывается, что  применение  простого  математического
«трюка» (представление двоичных чисел в обратном  или  дополнительном  коде)
позволяет  приспособить  двоичный  сумматор  для  выполнения,  как  операций
сложения двоичных чисел, так и операций их вычитания.
    Более того,  с  помощью  двоичного  сумматора  можно  обеспечить  также
выполнение и операций умножения и деления двоичных чисел (т.е. всех  четырех
арифметических   действий),   поскольку   умножение    представляет    собой
последовательное сложение, а деление – последовательное  вычитание.  Примеры
выполнения этих операций приведены в табл. 3.

                                                                   Таблица 3
                                    [pic]
                           1.2 Двоичные сумматоры
    Суммирование многоразрядных двоичных чисел  А=anan-1…a0  и  B=bnbn-1…b0
производится путем их поразрядного сложения  с  переносом  между  разрядами.
Поэтому основным узлом  многоразрядных  сумматоров  является  комбинационный
одноразрядный  сумматор,  который  выполняет  арифметическое  сложение  трех
одноразрядных чисел (цифр): цифры данного разряда первого  слагаемого  (ai),
цифры данного разряда второго слагаемого (bi) и цифры (1 или 0) переноса  из
соседнего младшего разряда (pi). В результате сложения для  каждого  разряда
получаются две цифры – сумма для этого разряда (Si) и  перенос  в  следующий
старший разряд (pi+1).
    Условное графическое изображение одноразрядного сумматора и его таблица
истинности (функционирования) приведены на рис. 1.
|ai |bi |pi |Si|рi+|
|   |   |   |  |1  |
|0  |0  |0  |0 |0  |
|1  |0  |0  |1 |0  |
|0  |1  |0  |1 |0  |
|1  |1  |0  |0 |1  |
|0  |0  |1  |1 |0  |
|1  |0  |1  |0 |1  |
|0  |1  |1  |0 |1  |
|1  |1  |1  |1 |1  |



                 Рис. 1. Условное обозначение (а) и таблица
                   истинности (б) одноразрядного сумматора

    Для синтеза схемы одноразрядного сумматора запишем выражения для  Si  и
pi+1 (выходов сумматора):
                                                                [pic]    (1)
[pic]      (2)
    Схема  одноразрядного   сумматора,   построенная   в   соответствии   с
выражениями (1) и (2) приведена на рис. 2.
Многоразрядный параллельный сумматор может быть составлен  из  одноразрядных
сумматоров, число которых равно числу разрядов слагаемых,  путем  соединения
выхода, на котором формируется сигнал переноса  данного  разряда,  с  входом
для сигнала переноса соседнего старшего разряда.  Такой  способ  организации
переноса  называется  последовательным.   Пример   построения   3-разрядного
параллельного сумматора  демонстрирует  рис.  3.  В  сумматорах  этого  типа
перенос распространяется  последовательно  от  разряда  к  разряду  по  мере
образования суммы в каждом разряде. При  наиболее  неблагоприятных  условиях
переноса, например, при сложении чисел  11…11  и  00…01  будет  иметь  место
«пробег» единицы переноса через весь сумматор от самого  младшего  к  самому
старшему разряду. Поэтому в наихудшем случае время распространения переноса
                          Тзд.р.пер.=n(tзд.р.пер.,
где tзд.р.пер. – время задержки распространения переноса в одном разряде;
    n – число разрядов сумматора. Данный тип  сумматора  наиболее  прост  с
точки зрения схемы цепей распространения  переноса,  но  имеет  сравнительно
низкое быстродействие.



    Более  высоким  быстродействием  обладают  сумматоры   с   параллельным
переносом,  в  которых  сигналы  переноса  формируются  во   всех   разрядах
одновременно. Этой цели служат специальные схемы ускоренного переноса.
                           1.3 Двоичные вычитатели
    В п.1.1 была показана возможность замены  операции  вычитания  двоичных
чисел  операцией  их  сложения.   Для   этого   уменьшаемое   и   вычитаемое
представляются в обратном или дополнительном кодах.
    Рассмотрим  примеры  применения  двоичного  сумматора  для   выполнения
операции вычитания. На рис. 4,  а  приведена  схема  3-разрядного  двоичного
вычитателя,  в  которой  вычитаемое  представлено  в  обратном   коде.   Она
отличается от схемы двоичного параллельного сумматора (рис.  3.)  включением
3-х  инверторов,  обеспечивающих  преобразование  двоичного  числа  B=b2b1b0
(вычитаемого)  в  обратный  код  и  цепью   дополнительного   (циклического)
переноса с выхода переноса 3-го (старшего) разряда  на  вход  переноса  1-го
(младшего) разряда.
    На рис. 4,  б  изображена  схема  3-разрядного  вычитателя,  в  которой
вычитаемое (B) представлено в  дополнительном  коде.  Последнее  достигается
подачей (прибавлением) “1” к младшему разряду  обратного  кода  вычитаемого.
Необходимость в цепи циклического переноса при этом отпадает.
                     1.4 Двоичные сумматоры - вычитатели
    Теперь, когда мы знаем, что двоичные сумматоры можно  использовать  как
для  сложения,  так  и  для  вычитания,  спроектируем  схему  универсального
устройства – сумматора - вычитателя, положив в ее  основу  схему  вычитателя
(рис.  4,  б).  Чтобы  эта  схема  работала  как     3-разрядный   сумматор,
достаточно временно (условно)  исключить  из  нее  3  инвертора  и  на  вход
переноса младшего разряда подать  “0”.  В  преобразованном  виде  эта  схема
(рис. 5) вместо инверторов содержит три логических  элемента  М2  (сумма  по
модулю 2). При подаче 0 на вход V  логического  элемента  М2  информационные
биты каждого разряда двоичного числа b2b1b0 проходят через этот элемент  без
инверсии.  Таким  образом,  при  установке  0  на  управляющем  входе  схема
складывает двоичные числа a2a1a0 и b2b1b0. Результат появляется на  выходных
индикаторах. Кроме того, логический 0 на управляющем входе  V  поступает  на
вход переноса младшего разряда двоичного сумматора.
    Чтобы схема работала как 3-разрядный вычитатель, на управляющем входе V
нужно установить уровень логической 1. В этом случае логический  элемент  М2
действует как инвертор сигналов на входах B одноразрядных сумматоров.  Кроме
того, логическая 1 на управляющем входе поступает на вход переноса  младшего
разряда двоичного сумматора.


                      2. Задание на лабораторную работу
    2.1. Используя ЛЭ, расположенные на лабораторном стенде, спроектировать
схему и исследовать работу (снять таблицу  функционирования)  одноразрядного
сумматора.
    2.2.  Исследовать  работу  (снять  таблицу  функционирования)   ИС   2-
разрядного сумматора К155ИМ2.
    2.3. На базе ИС К155ИМ2  спроектировать  схему  4-разрядного  двоичного
сумматора – вычитателя и выполнить следующие арифметические операции  А+В  и
С-D (значения А, В, С,  D,  соответствующие  вашему  варианту,  приведены  в
табл.).

|№ бригады |1  |2  |3  |4  |5  |
|А         |2  |3  |3  |4  |5  |
|В         |2  |2  |3  |2  |1  |
|С         |6  |7  |5  |5  |4  |
|D         |5  |4  |1  |3  |4  |


                            3. Содержание отчета
    Для  каждого  спроектированного  и  исследованного  в  соответствии   с
заданием  устройства  должны  быть  приведены  таблицы  функционирования   и
логические выражения реализуемых ими функций и схема устройства.

                           4. Контрольные вопросы
    1. Представьте  операнды  (слагаемые  –  при  сложении;  уменьшаемое  и
       вычитаемое – при вычитании) в двоичном  обратном  коде  и  выполните
       следующие операции:
    а)  (+7)      б)      (+8)      в)      (+3)     г)      (+13)
               (+1)                         (-5)                       (+8)
(+10)

    2. Представьте операнды в двоичном дополнительном коде и  выполните  те
       же операции, что и в пункте 1.
    3. Дайте определение одноразрядного сумматора и спроектируйте его схему
       в  ОФПН  логических  элементов.   Сравните   потребные   для   этого
       аппаратурные затраты (количество ИС) с затратами,  необходимыми  для
       схемы, приведенной на рис. 2.
    4.   Укажите   достоинства   и   недостатки   двоичных   сумматоров   с
       последовательным переносом.
    5. На базе ИС К155ИМ2  спроектируйте  схему  8-разрядного  сумматора  -
       вычитателя.



                            Лабораторная работа 5
                            Цифровые компараторы
    Цель работы: изучение правил  выполнения  операции  сравнения  двоичных
чисел и исследование принципов построения цифровых компараторов.

                 1. Теоретические основы лабораторной работы
    Компаратором  (устройством  сравнения)  называют  функциональный  узел,
обеспечивающий сравнение двух чисел  А  и  В.  Если  А  и  В  –  n-разрядные
двоичные числа, то компаратор именуют цифровым.
    Простейшие  компараторы  формируют   на   выходе   однобитовый   сигнал
равенства,  или  неравенства  сравниваемых  чисел  А  и  В.  Эти   отношения
используются  как  логические  условия  в  микропрограммах,  в   устройствах
контроля  и  диагностики   ЭВМ,   в   устройствах   автоматики   компараторы
используются для сигнализации о выходе величин за  установленные  пределы  и
т.д.
    Компараторы строятся на основе поразрядных  операций  над  одноименными
разрядами обоих слов. Слова равны, если попарно  равны  все  одноименные  их
разряды. Признак (условие) равенства i-х разрядов сравниваемых слов А и В:
         [pic]             (1)
    Условие неравенства i-x разрядов:
         [pic]                      (2)
Схемная реализация приведенных условий изображена на рис. 1, а.
Схема n-разрядного компаратора на равенство показана на рис.1, б.

    Более сложные компараторы выявляют не только  факт  равенства  двух  n-
разрядных чисел, но и сравнивают числа по значению. Такие компараторы  имеют
три выхода: “A>B”, “A=B”, “AB  позволяют
каскадировать  несколько  ИС   компараторов   для   увеличения   разрядности
сравниваемых чисел. Компаратор имеет три выхода результатов сравнения:  A>B,
A=B и AB,  A=B  и  AB, A=B и AB

A=B

AB
A=B
AB
                                                                         A=B
                                                                         A