Skip to main content

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

Логические элементы (gates) — это «кирпичики», из которых строят цифровые схемы. Они реализуют операции булевой алгебры в «железе».

🎓 В курсе nand2cpu
Подробно с практикой на 74xx: Уроки 4-9: От NAND к XOR

Обозначения на схемах

  NOT (инвертор)      AND (И)           OR (ИЛИ)
                                        
  A ──►○── Y          A ──┐             A ──┐
                          │D── Y            │)── Y
                      B ──┘             B ──┘

  NAND (И-НЕ)         NOR (ИЛИ-НЕ)      XOR (искл. ИЛИ)
                                        
  A ──┐                A ──┐            A ──┐
      │D○── Y              │)○── Y          │=)── Y
  B ──┘                B ──┘            B ──┘

Кружок на выходе = инверсия (NOT).

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

Базовые элементы

ABNOT AANDORNANDNORXOR
00100110
01101101
10001101
11011000

Микросхемы серии 74xx

МикросхемаФункцияВентилейВ курсе nand2cpu
74HC004× NAND4Урок 4
74HC024× NOR4
74HC046× NOT6Урок 5
74HC084× AND4
74HC324× OR4Урок 6
74HC864× XOR4Урок 7

Распиновка 74HC00 (4× NAND)

        ┌───∪───┐
    1A ─┤1    14├─ VCC (+5V)
    1B ─┤2    13├─ 4B
    1Y ─┤3    12├─ 4A
    2A ─┤4    11├─ 4Y
    2B ─┤5    10├─ 3B
    2Y ─┤6     9├─ 3A
   GND ─┤7     8├─ 3Y
        └───────┘

4 независимых NAND-вентиля. Каждый: два входа (A, B) → один выход (Y).

NAND — универсальный вентиль

Из NAND можно построить любой другой элемент:

NOT из NAND:           AND из NAND:
                       
A ──┬──│D○── Y         A ──┐           ┌──│D○── Y
    └──┘                   │D○──┬──────┘
                       B ──┘    └──────┘

OR из NAND:
                       
A ──│D○──┐
         │D○── Y
B ──│D○──┘
💡 Почему это важно?
В производстве микросхем дешевле делать миллионы одинаковых NAND-вентилей, чем разные типы. Поэтому внутри процессоров — в основном NAND/NOR.

Логические уровни

СерияLOW (0)HIGH (1)Питание
74HC0–0.8 В2.0–5 В2–6 В
74HCT0–0.8 В2.0–5 В5 В (совместима с TTL)
74LVC0–0.8 В2.0–3.3 В1.65–3.6 В

Подробнее: logic_levels

Практические примеры

Пример 1: Блокировка мотора

A = старт разрешён
B = ошибок нет
C = концевик НЕ нажат

Мотор = A AND B AND C

На 74HC08 (4× AND): два AND для трёх входов.

Пример 2: Сигнализация

D = дверь
W = окно
M = движение

Тревога = D OR W OR M

На 74HC32 (4× OR).

Пример 3: Детектор изменения

A = текущее состояние
B = предыдущее состояние

Изменилось = A XOR B

XOR выдаёт 1, когда входы разные — идеально для детектора фронта.

Многовходовые элементы

МикросхемаФункция
74HC113× AND (3 входа)
74HC212× AND (4 входа)
74HC40753× OR (3 входа)

Или каскадируем двухвходовые:

A ──┐
    │D──┐
B ──┘   │D── Y
C ──────┘

Связь с другими темами

  • Булева алгебра — теория за вентилями: boolean_algebra
  • Комбинационная логика — схемы из вентилей: combinational_logic
  • Сумматоры — XOR + AND = полусумматор: Акт II nand2cpu
  • Аналоговая основа — как работают логические уровни: dc_circuits

Мини‑задания

  1. Сколько NAND-вентилей нужно для NOT?

  2. На какой микросхеме 4 элемента XOR?

  3. Как из двух 2-входовых AND сделать 3-входовой?

  4. Почему NAND называют «универсальным»?

  5. Какой элемент выдаёт 1, когда входы разные?

Details
  1. Один NAND с объединёнными входами: \(NAND(A,A) = NOT(A)\).

  2. 74HC86.

  3. Каскадом: \(Y = (A \land B) \land C\).

  4. Из NAND можно построить любую логическую функцию (NOT, AND, OR, XOR…).

  5. XOR (исключающее ИЛИ).