Память в один бит: защёлки, триггеры, дребезг
Паспорт модуля
| Параметр | Значение |
|---|---|
| Аудитория | 🟡🔴 полностью; 🟢 — занятия 1–2; пройдены М1, М4 |
| Аутентичная задача | построить честную кнопку без дребезга и однобитную ячейку памяти — без них ни один такт процессора не будет достоверным |
| Объём | 4 занятия × 60–90 мин |
| Оборудование | 74HC00, 74HC74 ×2, кнопки, резисторы 10 кОм (подтяжки), осциллограф (желателен), RP2350 для записи дребезга |
| Ограничения | 5 В |
Аутентичная задача. После модуля обучающиеся смогут: объяснить и показать на осциллограмме, чем «запомнить бит» отличается от «вычислить бит», и собрать D-триггер с чистым тактовым входом.
Цели
| № | Обучающиеся … | Блум—Андерсон | Миллер | Проверка |
|---|---|---|---|---|
| 1 | объясняют обратную связь: почему два перекрёстных NAND «помнят» | понимать | знает | устный разбор со схемой |
| 2 | собирают RS-защёлку и D-триггер, различают уровень и фронт | применять | показывает как | практикум |
| 3 | обнаруживают дребезг кнопки инструментально и устраняют его | анализировать | показывает как | осциллограмма/лог RP2350 «до/после» |
| 4 | объясняют метастабильность и правило синхронизатора | понимать | знает | квиз + 🔴 разбор кейса |
Оценивание
| Занятие | Цель | Средство | Тип |
|---|---|---|---|
| 2 | 1, 2 | защёлка + 74HC74 проходят сценарии записи | формирующее |
| 3 | 3 | артефакт «две осциллограммы/лога: дребезг и чистый фронт» | формирующее |
| 4 | 4 | квиз 5 вопросов; 🔴 — разбор кейса «счётчик иногда прыгает через 2» | итоговое |
Путь и разборы
| № | Тема | Разминка | Ядро |
|---|---|---|---|
| 1 | RS-защёлка на NAND | таблица NAND (М1) | worked example перекрёстной связи; запрещённая комбинация |
| 2 | D-триггер 74HC74 | сценарии RS | уровень (защёлка) vs фронт (триггер); входы /S, /R — подтянуть к VCC! |
| 3 | Дребезг | 3 вопроса зан. 2 | записать дребезг: RP2350 считает фронты одной «одиночной» кнопки (обычно 3–15 за нажатие); лечение: RS-защёлка на перекидной кнопке или RC+триггер Шмитта 74HC14 |
| 4 | Метастабильность | лог дребезга | нарушение setup/hold; правило двух триггеров (синхронизатор) — вернётся в М15 при вводе кнопок в ПЛИС |
stateDiagram-v2
[*] --> Q0: /R импульс
Q0 --> Q1: /S импульс (запись 1)
Q1 --> Q0: /R импульс (запись 0)
note right of Q1: состояние держится обратной связью,\nпока есть питание
Метастабильность без мистики: если данные меняются в окно setup/hold относительно фронта, выход триггера может на непредсказуемое время зависнуть между уровнями. Вероятность мала, но не нулевая; лекарство инженерное — синхронизатор из двух последовательных триггеров на асинхронных входах. Это одно из немногих мест курса, где честно звучит слово «вероятность» применительно к цифровой схеме.
Типичные ошибки: висящие /S и /R у 74HC74 — триггер «сам сбрасывается» (подтяжки 10 кОм к VCC обязательны); кнопка без подтяжки — вход плавает; лечение дребезга программной задержкой «на глаз» без понимания длительности (сначала измерь — потом лечи, это правило курса).
Уровни
RS-защёлка по схеме + опыт «кнопка мигает сама» на счётчике RP2350.
Полный тракт: кнопка → антидребезг → D-триггер; артефакт с осциллограммами.
Кейс метастабильности; расчёт MTBF синхронизатора по формуле из даташита/аппноута; T-триггер из D — мост к счётчикам М8.