1. Комбинационные схемы и этапы их проектирования
Комбинационные схемы и этапы их проектирования
Цифровая электроника окружает нас повсюду: от простейших контроллеров в микроволновых печах до сложнейших процессоров в смартфонах. В основе всех этих устройств лежат логические схемы. Глобально их можно разделить на два больших класса: схемы с памятью (последовательностные) и схемы без памяти. В этом курсе мы сосредоточимся на втором типе, который является фундаментом цифровой схемотехники.
Комбинационная схема (КС) — это цифровое устройство, состояние выходов которого в любой момент времени однозначно определяется комбинацией сигналов, поданных на его входы в этот же самый момент.
Главная особенность комбинационных схем заключается в отсутствии элементов памяти. Устройство «не помнит», какие сигналы подавались на него секунду назад. Как только меняется входной сигнал, мгновенно (с поправкой на микроскопическую физическую задержку) меняется и результат на выходе.
Представьте себе автоматические двери в супермаркете. Датчик движения фиксирует человека (входной сигнал равен ), и мотор немедленно раздвигает створки (выходной сигнал равен ). Как только человек уходит и датчик перестает его фиксировать (вход равен ), двери закрываются (выход равен ). Дверям не нужно знать, сколько людей прошло до этого — их реакция зависит только от текущего состояния датчика.
!Интерактивная модель системы предупреждения
Язык логики: от слов к математике
Чтобы спроектировать комбинационную схему, инженеру необходимо перевести словесное описание задачи на строгий математический язык. Для этого используется аппарат булевой алгебры.
Любая комбинационная схема реализует одну или несколько булевых функций. Булева функция принимает на вход набор логических переменных (которые могут принимать значения или ) и возвращает логическое значение (также или ).
Основным инструментом для описания работы КС является таблица истинности. Это таблица, в которой перечислены все возможные комбинации входных сигналов и соответствующие им требуемые значения на выходе.
Количество строк в таблице истинности строго зависит от количества входов и вычисляется по формуле , где — количество строк, а — количество входных переменных. Например, для схемы с тремя входами таблица будет состоять из строк.
Четыре этапа проектирования
Создание любого цифрового устройства — это строго регламентированный процесс. Проектирование комбинационных схем всегда проходит через четыре последовательных этапа. Пропуск любого из них приведет либо к неработоспособности устройства, либо к его крайней неэффективности.
!Схема этапов проектирования комбинационной схемы
1. Словесное описание и постановка задачи
На этом этапе формулируется техническое задание. Инженер должен четко определить, сколько у схемы будет входов, сколько выходов, и по какому правилу входные сигналы должны преобразовываться в выходные.
> Хорошо сформулированное словесное описание — это половина успеха. Ошибка на этом этапе приведет к тому, что вы идеально спроектируете схему, которая делает совершенно не то, что нужно заказчику.
2. Формализация (составление таблицы истинности)
Словесное описание переводится в таблицу истинности. Инженер методично перебирает все возможные комбинации нулей и единиц на входах и, руководствуясь логикой из первого этапа, проставляет нули и единицы в столбце выходов.
3. Минимизация логической функции
Получив таблицу истинности, можно сразу записать логическое уравнение (например, в виде совершенной дизъюнктивной нормальной формы — СДНФ). Однако такое уравнение часто получается громоздким. Если строить схему по неоптимизированному уравнению, потребуется слишком много логических элементов.
Минимизация — это процесс упрощения логического выражения с использованием законов булевой алгебры или графических методов (например, карт Карно). Цель минимизации — получить функцию, которая делает абсолютно то же самое, но требует минимального количества математических операций.
Зачем нужна минимизация в реальном мире?
4. Синтез логической схемы
На финальном этапе минимизированное математическое уравнение превращается в принципиальную электрическую схему. Инженер заменяет математические операции (умножение, сложение, инверсию) на соответствующие графические символы логических элементов (И, ИЛИ, НЕ) и соединяет их линиями, символизирующими провода.
Практический пример: Система электронного голосования
Чтобы закрепить понимание этапов, пройдем весь путь проектирования на конкретном примере.
Этап 1: Словесное описание Нам нужно спроектировать систему тайного голосования для жюри из трех человек. У каждого члена жюри есть кнопка («За»). Решение принимается большинством голосов. Если два или три члена жюри нажали кнопку, загорается зеленая лампа (решение принято). Если кнопку нажал только один человек или никто не нажал — лампа не горит.
Определяем переменные:
Этап 2: Формализация Составим таблицу истинности. У нас 3 входа, значит будет строк.
| A | B | C | Y (Результат) | Пояснение | |---|---|---|---|---| | 0 | 0 | 0 | 0 | Никто не проголосовал | | 0 | 0 | 1 | 0 | Проголосовал только C | | 0 | 1 | 0 | 0 | Проголосовал только B | | 0 | 1 | 1 | 1 | Проголосовали B и C (большинство) | | 1 | 0 | 0 | 0 | Проголосовал только A | | 1 | 0 | 1 | 1 | Проголосовали A и C (большинство) | | 1 | 1 | 0 | 1 | Проголосовали A и B (большинство) | | 1 | 1 | 1 | 1 | Проголосовали все трое |
Этап 3: Минимизация Если записать функцию «в лоб» по строкам, где , мы получим сложное выражение:
Такая схема потребует множества элементов. Применив законы склеивания и поглощения булевой алгебры (или карту Карно), мы можем значительно упростить это выражение. Логика подсказывает: решение принимается, если согласны А и В, ИЛИ согласны В и С, ИЛИ согласны А и С.
Минимизированная функция выглядит так:
Этап 4: Синтез Теперь читаем полученную формулу и переводим её в «железо»:
Схема готова. Мы прошли путь от абстрактной идеи «голосование большинством» до конкретного чертежа устройства, готового к сборке на заводе или реализации внутри микроконтроллера.