Altifigence Academy

3 / 63 · Теория

Основные элементы: AND, OR, NOT и BUFFER

Связывайте схемные обозначения с таблицами истинности и составляйте условия из нескольких элементов.

Элемент задаёт функцию для всех входных комбинаций

Для входов a,b∈{0,1}a,b\in\{0,1\} AND выдаёт 1, когда оба равны 1, а OR — когда хотя бы один равен 1. NOT инвертируетИнверсия — операция NOT, меняющая 0 на 1 и 1 на 0. Черта над формулой означает применение NOT ко всему выражению под ней. Подробнее вход, BUFFER передаёт логическое значение без изменения. Реальный BUFFER тоже имеет нагрузочную способность и задержку; здесь рассматриваем только его логическую функцию.

abANDORNOT aBUFFER a
000010
010110
100101
111101

В булевой алгебреБулева алгебра оперирует значениями 0 и 1 и операциями AND, OR, NOT. Знак сложения здесь обычно означает OR, поэтому правила отличаются от сложения целых чисел. Подробнее abab означает AND, a+ba+b — OR, a‾\overline a — NOT. Поэтому 1+1=11+1=1 здесь не целочисленное сложение. Также используются обозначения a∧ba\land b, a∨ba\lor b, ¬a\neg a.

Читайте обозначение, входы и таблицу одновременно

Выберите AND и OR ниже и проверьте все наборы 00→01→10→11. Сравните прямую входную и округлую выходную стороны AND с изогнутой входной стороной OR. У NOT маленький кружок на конце треугольника обозначает инверсию. BUFFER — треугольник без кружка. Здесь показаны распространённые обозначения; в других стандартах могут применяться прямоугольники.

Переключайте AND, OR, NOT и BUFFER
AND · Таблица истинности
aby
000
010
100
111

OR означает «хотя бы один», а не «ровно один». При двух единицах OR равен 1, а XOR из следующей лекции — 0. Пропустив строку таблицы истинностиТаблица истинности перечисляет все возможные комбинации входов и выход для каждой из них. Изменения во времени проверяют отдельно по временным диаграммам., можно упустить это различие.

Соединение условий образует схему

Схема с разрешением ee, которая выдаёт сигнал при включении хотя бы одного из двух датчиков a,ba,b:

y=e(a+b)y=e(a+b)

Сначала OR формирует a+ba+b, затем AND объединяет результат с ee. При e=0e=0 выход равен 0 независимо от датчиков. Три входа дают 23=82^3=8 комбинаций: проверьте совпадение спецификации и реализации во всех восьми строках.

Прочитайте скобки выражения как соединения схемы
  1. a и b: Определите входы двух датчиков
  2. OR: Хотя бы один активен: t = a + b
  3. AND: Совместите с разрешением e: y = e · t

Минимальные правила чтения RTL

a & b, a | b, ~a — побитовые AND, OR, NOT. При векторах a=0010, b=0100 результат a & b=0000, но логическое условие a && b равно 1, поскольку оба вектора ненулевые. Унарное &a свёртывает все биты операцией AND. Побитовые, логические операции и операции свёртки имеют разные значения и ширины результата.

Таблица истинности показывает значения после стабилизации входов. Правильные обозначения и выражения не устраняют задержку распространенияЗадержка распространения — время от изменения входа до установления правильного выхода. Логическая эквивалентность выражений и их временные характеристики — разные вопросы. Подробнее или кратковременные выбросы.

Измените входы

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

Одним правилом объясните четыре комбинации с e=0 в y=e(a+b). Какие два входных набора обнаружат ошибочную реализацию y=eab?

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

При e=0 последний AND выдаёт 0 независимо от результата OR. При e=1 и (a,b)=(0,1) либо (1,0) правильная схема выдаёт 1, ошибочная — 0.

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