stringtranslate.com

Вычитатель

В электронике вычитатель — цифровая схема , которая выполняет вычитание чисел — может быть спроектирована с использованием того же подхода, что и у сумматора . Процесс двоичного вычитания кратко описан ниже. Как и в случае с сумматором, в общем случае вычислений над многобитными числами в выполнении вычитания для каждого бита разности участвуют три бита : уменьшаемое ( ), вычитаемое ( ) и заем из предыдущей (менее значимой) позиции порядка битов ( ). Выходами являются бит разности ( ) и бит заема . Вычитатель лучше всего понять, учитывая, что вычитаемое и оба заемных бита имеют отрицательные веса, тогда как биты X и D положительны. Операция, выполняемая вычитателем, заключается в перезаписи (которая может принимать значения -2, -1, 0 или 1) в виде суммы .

,

где ⊕ представляет собой исключающее или .

Вычитатели обычно реализуются в двоичном сумматоре с небольшими затратами при использовании стандартной записи в дополнительном коде , предоставляя селектор сложения/вычитания для переноса и инвертируя второй операнд.

(определение дополнительного кода)

Вычитатель половины

Рисунок 1: Логическая схема полувычитателя

Полувычитатели могут быть спроектированы с помощью комбинационных булевых логических схем [2], как показано на рисунках 1 и 2. Полувычитатель — это комбинационная схема , которая используется для выполнения вычитания двух бит. Он имеет два входа, уменьшаемое и вычитаемое, и два выхода: разность и заимствование . Сигнал заимствования устанавливается, когда вычитателю необходимо заимствовать из следующей цифры в многоразрядном вычитании. То есть, когда . Поскольку и являются битами, тогда и только тогда, когда и . Важный момент, который стоит упомянуть, заключается в том, что схема полувычитателя в стороне реализует и не так как на схеме задано как

.

Это важное различие, поскольку само вычитание не является коммутативным , но бит разности вычисляется с использованием вентиля XOR , который является коммутативным.

Полувычитатель, использующий только вентиль NAND.
Рисунок 2: Полувычитатель, использующий только вентиль NAND.

Таблица истинности для половинного вычитателя выглядит следующим образом:

Используя таблицу выше и карту Карно , находим следующие логические уравнения для и :

.

Следовательно, упрощенная схема полувычитания, в частности, позволяющая избежать перекрестных дорожек, а также отрицательного логического элемента, выглядит следующим образом:

 X ── XOR ─┬─────── |XY|, 0, если X равен Y, 1 в противном случае ┌──┘ └──┐  Y ─┴─────── И ── заимствовать, равно 1, если Y > X, 0 в противном случае

где линии справа — это выходы, а остальные (сверху, снизу или слева) — входы.

Полный вычитатель

Полный вычитатель — это комбинационная схема , которая используется для выполнения вычитания трех входных битов : уменьшаемого , вычитаемого и заема в . Полный вычитатель генерирует два выходных бита: разность и заем из . устанавливается, когда предыдущая цифра заимствуется из . Таким образом, также вычитается из , а также вычитаемое . Или в символах: . Как и полувычитатель, полный вычитатель генерирует заем из , когда ему нужно заимствовать из следующей цифры. Поскольку мы вычитаем и из , заем из должен быть сгенерирован, когда . Когда генерируется заем из , к текущей цифре добавляется 2. (Это похоже на алгоритм вычитания в десятичной системе счисления. Вместо добавления 2 мы добавляем 10, когда заимствуем.) Следовательно, .

Таблица истинности для полного вычитателя:

Следовательно, уравнение имеет вид:

Смотрите также

Ссылки

  1. Основы цифровой электроники Элайджи Мванги
  2. Белтран, А.А., Нонес, К., Салангуит, Р.Л., Сантос, Дж.Б., Сантос, Дж.М. и Дизон, К.Дж. (2021). Маломощный полусумматор/вычитатель на основе затвора NAND с использованием технологии КМОП.

Внешние ссылки