Altifigence Academy

1 / 63 · Теория

Цифровые сигналы: когда напряжение означает 0 или 1

Различайте логические значения и напряжения, рассчитывайте входные пороги, запас помехоустойчивости и задержку распространения.

Что вы должны научиться создавать

В этом курсе вы в быстром темпе изучаете основы цифрового логического проектирования на университетском уровне и сразу проверяете их на схемах. Для начала достаточно школьной алгебры; в практикумах RTL полезны основы программирования. Основная последовательность тем: логические элементы → комбинационные схемы → элементы памяти → конечные автоматы. Дополнительные разделы посвящены трактам обработки данных и интерфейсам.

Недостаточно запомнить правило «высокое напряжение означает 1». Нужно уметь объяснить, в каком диапазоне и начиная с какого момента гарантируется правильное логическое значение.

Логическое значение — интерпретация напряжения

Логическая схема оперирует 00 и 11, но напряжение на проводнике меняется непрерывно. Вход не выше VILV_{IL} интерпретируется как 0, не ниже VIHV_{IH} — как 1. Между порогами ни одна интерпретация не гарантируется. Фактические допустимые напряжения и пороги определяет документация компонента.

Рассмотрим учебную схему на 3.3 V. Числа ниже не являются спецификацией конкретного изделия.

Напряжение на входе приёмникаГарантированная интерпретация
0–0.8 VЛогический 0
Выше 0.8 V, ниже 2.0 VНи 0, ни 1 не гарантированы
2.0–3.3 VЛогическая 1

1.4 V — не «третье логическое значение». Это выход за условия, при которых цифровая модель даёт гарантию. При переходе от 0 к 1 вход проходит эту область, поэтому необходимо также задавать момент наблюдения выхода.

От напряжения к логической функции
  1. Выход передатчика: Гарантия низкого и высокого напряжения при допустимой нагрузке
  2. Проводник и помехи: Напряжение приёмника может отличаться от напряжения передатчика
  3. Вход приёмника: VIL и VIH определяют допустимые области логических значений
  4. Логическая функция: Выход гарантирован после стабилизации входа и истечения задержки

Запас между выходными и входными уровнями

Пусть максимальное низкое напряжение передатчика VOL=0.2 VV_{OL}=0.2\,\mathrm V, а минимальное высокое VOH=2.8 VV_{OH}=2.8\,\mathrm V. Тогда запас помехоустойчивостиЗапас помехоустойчивости — разность между гарантированным выходным напряжением передатчика и порогом распознавания входа приёмника. Его вычисляют по статическим нормам напряжения. равен:

NML=VIL−VOL=0.6 V,NMH=VOH−VIH=0.8 VNM_L=V_{IL}-V_{OL}=0.6\,\mathrm V,\qquad NM_H=V_{OH}-V_{IH}=0.8\,\mathrm V

Даже после добавления +0.4 V помехи к низкому выходу получается 0.6 V: значение остаётся в диапазоне низкого входного уровня. Это статический запас при соблюдении требований к напряжению и нагрузке. Одного этого числа недостаточно для оценки коротких импульсов или отражений в проводниках.

Рассматривайте функцию вместе со временем

Если входы AND равны 11, выход равен 1. Но это не гарантирует 1 непосредственно в момент изменения входов. Сложите максимальные задержки элементов вдоль каждого пути и выберите наибольшую сумму как верхнюю границу. Для двух последовательных элементов с максимумами 2 ns и 3 ns модель требует ждать до 5 ns после стабилизации входа.

Оставить вход неподключённым — не то же самое, что подать 0. В симуляторе X означает неизвестное значение, Z — высокоимпедансное состояние драйвера; ни одно не соответствует единственному физическому напряжению. Интерактивные упражнения курса используют устойчивую модель 0/1.

Дополнительное чтение: MIT OpenCourseWare — The Digital Abstraction

Практикум · пересеките границу запаса помехоустойчивости

При каком изменении напряжения логическое значение перестаёт быть гарантированным?

VIL=0.8 V; VIH=2 V; VOL=0.2 V; VOH=2.8 V. NM_L=0.6 V; NM_H=0.8 V. Между входными порогами ни одно логическое значение не гарантировано. Это статическая учебная модель.

  1. Выберите передачу 0. Выход фиксирован на худшем низком уровне 0.20 V. При помехе +0.60 V приёмник получает 0.80 V, и 0 всё ещё гарантирован.
  2. Правой стрелкой добавьте ещё 10 mV помехи. При 0.81 V индикация изменится на «не гарантировано». Это не означает немедленного перехода к 1.
  3. При передаче 1 вычитайте помеху из 2.80 V. До −0.80 V включительно приём 1 гарантирован, при −0.81 V — уже нет.
  4. Если более сильная помеха перенесёт напряжение в противоположный допустимый диапазон, приёмник может выдать корректный логический уровень, хотя передаваемые данные будут искажены. Допустимое напряжение и правильные данные — разные условия.

Вход за пределами 0–VDD в упражнении не обрезается принудительно до допустимого диапазона. Допустимый входной диапазон реального компонента, ток ограничения и условия переходных импульсов проверяют отдельно по документации. Здесь мы не прогнозируем повреждение конкретного компонента или его динамическую реакцию.

Попробуйте сами

Передаваемая 1 имеет выходное напряжение 2.80 V, а помеха составляет −0.85 V. Можно ли заключить, что приёмник прочитает 0? Сравните с передачей 0 при добавлении помехи +2.00 V.

Прочитать объяснение

В первом случае получается 1.95 V — между порогами, поэтому не гарантированы ни 0, ни 1. Во втором 0.20+2.00=2.20 V: приёмник видит 1, хотя передавался 0. Допустимое логическое значение ещё не означает сохранности данных.

Выбор действует в этом браузере. Его можно изменить внизу страницы.