Skip to main content

19. SR-защёлка

19. SR-защёлка

🎯 Цель урока
Понять как логические вентили могут хранить информацию. Собрать SR-защёлку.

🎮 Фаза 1: Симулятор (10 мин)

Turing Complete

Пройди Level: Latch — построй защёлку из вентилей NOR.

Ключевой вопрос

Как комбинационная логика (выход зависит только от входов) может запоминать?


🧠 Фаза 2: Теория (15 мин)

Проблема: память

До сих пор все наши схемы были комбинационными:

  • Выход зависит только от текущих входов
  • Изменился вход → мгновенно изменился выход
  • Нет “памяти” о прошлом

Но процессору нужна память!

Решение: обратная связь

Что если соединить выход обратно на вход?

    ┌─────────────────────────┐
    │                         │
    │    ┌─────────┐          │
    └────┤         │          │
         │   OR    ├──────────┴──── Q
    S ───┤         │
         └─────────┘

Нажал S → Q=1 → обратная связь держит Q=1 навсегда!

Но как сбросить? Нужна схема с двумя управляющими входами.

SR-защёлка на NOR

          ┌───────────────────────────────┐
          │                               │
    R ────┤►o──┬─────────────────────────┴──── Q
          │   │    ┌─────────┐
          │   └────┤         │
          │        │   NOR   │
          │   ┌────┤         │
          │   │    └─────────┘
    S ────┤►o─┴────────────────────────────── ~Q
          └───────────────────────────────┐
          Обратные связи создают память!  │

Упрощённая схема:

    R ───┤►o─────┬───── Q
         NOR     │
         ▲       │
         └───────┼────┐
                 │    │
    S ───┤►o─────┴────┼── ~Q
         NOR          │
         ▲            │
         └────────────┘

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

SRQ (следующее)Действие
00Q (без изменений)Хранение
101Set (установка)
010Reset (сброс)
11❌ ЗапрещеноНеопределённость

Почему работает?

Режим хранения (S=0, R=0):

Допустим Q=1:
    R=0 ──┤NOR├── Q=1   (0 NOR 0 = 1? Нет! 0 NOR ~Q...)
    
Подождите, разберём подробнее:

    Верхний NOR: входы R и ~Q
    Если R=0 и ~Q=0, то Q = NOR(0,0) = 1
    
    Нижний NOR: входы S и Q  
    Если S=0 и Q=1, то ~Q = NOR(0,1) = 0
    
    Стабильно! Q=1, ~Q=0 держатся.

Режим Set (S=1, R=0):

    Нижний NOR: S=1 → ~Q = NOR(1, Q) = 0 (независимо от Q)
    Верхний NOR: R=0, ~Q=0 → Q = NOR(0,0) = 1
    
    Результат: Q=1 установлен!

🔧 Фаза 3: Собираем (20 мин)

Компоненты

КомпонентКоличество
74HC02 (NOR)1
Кнопки2 (S и R)
LED2 (Q и ~Q)
Резистор 330 Ом2
Резистор 10 кОм2

74HC02 — четыре вентиля NOR

        ┌───────────────────┐
   1Y ──┤ 1          14 ├── VCC
   1A ──┤ 2          13 ├── 4B
   1B ──┤ 3   74HC02  12 ├── 4A
   2Y ──┤ 4          11 ├── 4Y
   2A ──┤ 5          10 ├── 3B
   2B ──┤ 6           9 ├── 3A
  GND ──┤ 7           8 ├── 3Y
        └───────────────────┘

Схема соединений

    Используем 2 вентиля из 74HC02:
    
    Вентиль 1 (верхний NOR):
        Pin 2 (1A) ── R (кнопка с подтяжкой к GND)
        Pin 3 (1B) ── Pin 4 (выход вентиля 2, ~Q)
        Pin 1 (1Y) ── Q ── LED ── GND
        
    Вентиль 2 (нижний NOR):
        Pin 5 (2A) ── S (кнопка с подтяжкой к GND)
        Pin 6 (2B) ── Pin 1 (выход вентиля 1, Q)
        Pin 4 (2Y) ── ~Q ── LED ── GND

Проверка

  1. Включи питание — один LED горит (случайное состояние)
  2. Нажми S — Q=1 (LED Q горит)
  3. Отпусти S — Q всё ещё =1! (запомнил)
  4. Нажми R — Q=0 (LED Q гаснет)
  5. Отпусти R — Q=0 (запомнил)
🎉 Поздравляю!
Ты создал 1 бит памяти! Схема хранит информацию без внешнего питания… ой, с питанием, но без постоянного сигнала на входах!

⚠️ Запрещённое состояние

S=1 и R=1 одновременно:

    Верхний NOR: R=1 → Q = 0
    Нижний NOR: S=1 → ~Q = 0
    
    Q = ~Q = 0 ??? Противоречие!

Когда отпустим обе кнопки — результат непредсказуем (гонки).

Правило: Никогда не подавай S=1 и R=1 одновременно!


💡 SR-защёлка на NAND

Можно построить и на NAND (входы инверсные):

    ~S ──┤NAND├──┬── Q
              │  │
              │  └──┤NAND├── ~Q
              │           │
    ~R ───────┴───────────┘
~S~RQДействие
11QХранение
011Set
100Reset
00Запрещено

📝 Мини-задания

Сколько вентилей NOR в SR-защёлке?

Ответ: 2 вентиля

Что делает S=1, R=0?

Ответ: Устанавливает Q=1 (Set)

Почему S=1, R=1 запрещено?

Ответ: Приводит к Q = ~Q = 0, что противоречиво. При отпускании — неопределённое состояние.


✅ Чеклист

  • Понимаю роль обратной связи
  • Знаю таблицу истинности SR
  • Собрал защёлку на NOR
  • Понимаю запрещённое состояние

➡️ Следующий урок

20. D-защёлка →