Логические основы проектирования цифровых устройств.

Хорошевич Павел Александрович

План

  1. Области применения цифровой электроники.
  2. Отличие цифрового сигнала от аналогового. Последовательная и параллельная передача сигнала.
  3. Основы булевой алгебры.
  4. Базовые логические элементы.
  5. Построение комбинационных устройств.

Постановка задачи

Робот пылесос периодически должен становиться на зарядку. Зарядка должна начинаться, когда:

  • аккумулятор робота НЕ заряжен
  • ИЛИ полы подметены
  • И помыты.

Спроектируйте устройство, которое будет определять, нужно ли роботу двигаться в сторону зарядного устройства или продолжать уборку. Информация поступает с датчиков в виде сигнала да/нет.

Аккумулятор робота НЕ заряжен ИЛИ полы подметены И помыты.

Формализация задачи

Обозначим буквами входы и выходы модуля. Входные и выходные состояния обозначим да (истина) - 1, нет (ложь) - 0.

Цифровой и аналоговый сигналы

Аналоговый сигнал

Непрерывный сигнал напряжения

Непрерывный сигнал напряжения

Цифровой сигнал

Дискретные уровни напряжения

Дискретные уровни напряжения

В цифровой электронике в любой точке схемы может быть только один из уровней напряжения - или высокий или низкий.

Высокое состояние часто называют истиной или 1, низкое состояние - ложью или 0.

Напряжение, представляющее 0 или 1 зависит от выбранных компонентов. Как правило, +5 В считается высоким уровнем, 0 В - низким.

  • 1: диапазон от +2.4 до +5 В
  • 0 : диапазон от +0.8 до 0 В.

Булева алгебра

Соотношения между логическими высказываниями можно записать с помощью операций булевой алгебры. Операции выполняются только над двумя значениями - ИСТИНА и ЛОЖЬ.

Операции булевой алгебры:

  • Отрицание (НЕ);
  • Дизъюнкция (ИЛИ);
  • Конъюнкция (И)

Отрицание

Результатом выполнения операции будет инверсия значения. Операция отрицания - унарная.

Обозначение операции

  • \[\neg A\]
  • \[\overline A\]

\[\overline A = Y\]

\[\overline A\] \[Y\]
0 1
1 0

Дизъюнкция

Результат дизъюнкции ИСТИНА, если хотя бы один из операндов ИСТИНА. Дизъюнкцию называют логическим сложением.

Обозначение операции

  • \[A\vee B\]
  • \[A+B\]

\[A + B = Y\]

\[A\] \[B\] \[Y\]
0 0 0
0 1 1
1 0 1
1 1 1

Конъюнкция

Результат конъюнкции ИСТИНА, только если оба операнда ИСТИНА. Конъюнкцию называют логическим умножением.

Обозначение операции

  • \[A\wedge B\]
  • \[AB\]

\[AB = Y\]

\[A\] \[B\] \[Y\]
0 0 0
0 1 0
1 0 0
1 1 1

Приоритет операций

Логические операции выполняются в следующем порядке:

  1. Выражения в скобках
  2. Отрицание
  3. Логическое умножение (конъюнкция)
  4. Логическое сложение (дизъюнкция)

Формализация задачи

Логическое выражение описывающее работу модуля:

Задача

Задача

\[ \overline A+BC \]

Таблица истинности

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

\(A\) \(B\) \(C\) \(Y\)
0 0 0 1
0 0 1 1
0 1 0 1
0 1 1 1
1 0 0 0
1 0 1 0
1 1 0 0
1 1 1 1

Дизъюнктивная нормальная функция

\(A\) \(B\) \(C\) \(Y\)
0 0 0 1
0 0 1 1
0 1 0 1
0 1 1 1
1 0 0 0
1 0 1 0
1 1 0 0
1 1 1 1

Запишем значение \(Y\) через сумму логических умножений тех строк таблицы в которых значение \(Y=1\):

\[ Y= \overline A\ \overline B\ \overline C + \overline A\ \overline B\ C + \overline A\ B\ \overline C + \overline A\ B\ C + A\ B\ C \]

Упростим полученное выражение с помощью тождеств булевой алгебры.

Тождества булевой алгебры

  1. \(A+B=B+A\)
  2. \(AB=BA\)
  3. \(A+(B+C)=(A+B)+C\)
  4. \(A(BC)=(AB)C\)
  5. \(A(B+C)=AB+AC\)
  6. \((A+B)(C+D)=\\=AC+AD+BC+DB\)
  7. \(\overline 1=0\)
  8. \(\overline 0=1\)
  9. \(A\cdot0=0\)
  10. \(A\cdot1=A\)
  11. \(A+0=A\)
  1. \(A+1=1\)
  2. \(A+A=A\)
  3. \(AA=A\)
  4. \(\overline{\overline A}=A\)
  5. \(A+\overline A=1\)
  6. \(A\overline A=0\)
  7. \(\overline{A+B}=\overline A\ \overline B\)
  8. \(\overline{AB}=\overline A+\overline B\)
  9. \(A+\overline A B=A+B\)
  10. \(\overline A+AB=\overline A+B\)

Тождества булевой алгебры

\[ Y=\overline A\ \overline B\ \overline C +\overline A\ \overline B\ C +\overline A\ B\ \overline C +\overline A\ B\ C +A\ B\ C \]

\[ Y=\overline A\ \overline B(\overline C+C)+\overline A\ B(\overline C+C)+ABC \]

\[ Y=\overline A\ \overline B + \overline A\ B + ABC \]

\[ Y=\overline A(\overline B+B)+ABC \]

\[ Y=\overline A + A(BC)=\overline A+BC \]

Логические элементы

Комбинационные устройства

Комбинационная схема состоит из набора логических элементов. Состояние выходов схемы определяется только состоянием входов в тот же момент времени.

Шифратор

Шифратор - это комбинационное устройство предназначенное для преобразования десятичного кода в двоичный.

Дешифратор

Дешифратор преобразует двоичное число в другой необходимый код.

Дешифратор

7-сегментный дисплей с дешифратором:

Полусумматор и сумматор

Для сложение двух двоичных чисел применяется сумматор.

Последовательностные устройства

В последовательностных схемах состояние выходов зависит от текущих значений на входах в настоящий и предыдущие моменты времени. Работы схемы зависит от её предыдущих состояний.

Основой для построения последовательностных устройств являются триггеры. Триггер позволяет хранить двоичное число.

D-триггер

Значение с входа D сохраняется в динамическом D-триггере после появления положительного перехода на входе синхронизации С:

Регистр

Регистр - это последовательностное устройство предназначенные для хранения двоичного числа.

Для хранения одного бита в регистре используется триггер. Для хранения n-разрядного двоичного числа необходимо n триггеров. Схемы регистров в данной лабораторной работе составлены с помощью D-триггеров.

Выделяют 4 режима записи и чтения:

  • Последовательный ввод - параллельный вывод (SIPO - Serial-in to Parallel-out);
  • Последовательный ввод - последовательный вывод (SISO - Serial-in to Serial-out);
  • Параллельный ввод - последовательный вывод (PISO - Parallel-in to Serial-out);
  • Параллельный ввод - параллельный вывод (PIPO - Parallel-in to Parallel-out).

Регистр с последовательной записью

Счётчик

Схема

Схема