19 / 63 · Теория
Основы хранения состояния: обратная связь, SR- и D-защёлки
Разберите два устойчивых состояния перекрёстной связи, запрещённый вход SR и прозрачный интервал D-защёлки.
Уроки доступны бесплатно. Запишитесь, чтобы сохранять прогресс.
Выход, не определяемый одними текущими входами
Чтобы помнить краткое нажатие переключателя после отпускания, нужно состояние. Выход комбинационной схемы определяется текущими входами, а в схеме памяти на следующий результат влияет и предыдущее состояние.
Для SR-защёлкиЗащёлка — элемент хранения, который следует за входом, пока управляющий сигнал активен, и удерживает значение, когда он неактивен. Этим она отличается от триггера, записывающего данные только на фронте. с высоким активным уровнем из двух перекрёстно соединённых NOR:
При S=R=0 устойчивы оба решения (Q,Q̅)=(1,0) и (0,1). Обратная связь удерживает ранее выбранное состояние. Однако даже при обозначении Q̅ в запрещённом режиме реальный выход может не быть дополнением Q.
| S | R | Q после установления | Значение |
|---|---|---|---|
| 0 | 0 | Прежнее Q | Хранение |
| 1 | 0 | 1 | set |
| 0 | 1 | 0 | reset |
| 1 | 1 | Оба выхода NOR равны 0 | Условие, исключённое из нормальной работы |
После одновременного снятия S=R=1 цифровая таблица истинностиТаблица истинности перечисляет все возможные комбинации входов и выход для каждой из них. Изменения во времени проверяют отдельно по временным диаграммам. Подробнее не гарантирует конечное состояние. «Запрещённый» означает не физическую невозможность входа, а отсутствие гарантии нужного хранения, поэтому проект должен его избегать. У SR-защёлки на NAND с active-lowАктивный низкий уровень (active-low) означает, что запрос или функция активны при сигнале 0. Суффикс _n — распространённое соглашение об именовании; реальное поведение задаёт спецификация. Подробнее и полярность входов, и запрещённая комбинация другие.
D-защёлка разделяет данные и разрешение
В идеальной функциональной модели исправной защёлки при enable=1 Q следует за D, при enable=0 удерживает прежнее значение.
Связь с SR объясняется выражениями , . Построение безопасной реальной защёлки из произвольных элементов с задержками — отдельная задача: необходимы временные условия изменения данных и закрытия enable.
Предположим, что оба q первоначально равны 0. D-защёлка следует за D при CLK=1 и удерживает значение при CLK=0. D-триггер захватывает D только при переходе CLK из 0 в 1.
В левой защёлке рисунка читайте CLK как E. Удерживая CLK=1, меняйте D несколько раз: Q тоже меняется. После снижения CLK до 0 изменения D уже не влияют на Q. Правый триггерТриггер записывает вход на заданном фронте такта и удерживает его до следующего фронта. Вход должен удовлетворять ограничениям setup и hold. Подробнее сравним в следующей лекции.
Не всякая обратная связь создаёт память
Соединение выхода одного инвертораИнверсия — операция NOT, меняющая 0 на 1 и 1 на 0. Черта над формулой означает применение NOT ко всему выражению под ней. Подробнее с его входом не создаёт правильную однобитную память: у нет решения 0/1. Элемент памяти должен иметь устойчивые состояния, управление входами и временные условия.
Дополнительное чтение: MIT OpenCourseWare — Sequential Logic
Попробуйте сами
У D-защёлки с высоким активным уровнем начальное Q=0. Последовательно подаются (E,D): (0,1)→(1,1)→(1,0)→(0,0)→(0,1). Каково устойчивое Q на каждом шаге?
Прочитать объяснение
0→1→0→0→0. На двух шагах с E=1 выход следует за D; последнее D=1 не сохраняется, поскольку E=0. Это идеальное поведение при выполнении временных условий.