Цифровые комбинационные схемы
Combinational circuitsсостоят из логических ворот. Эти схемы работают с двоичными значениями. Выход (ы) комбинационной схемы зависит от комбинации имеющихся входов. На следующем рисунке показанblock diagram комбинационной схемы.
Эта комбинационная схема имеет n входных переменных и m выходов. Каждая комбинация входных переменных влияет на выходные данные.
Методика расчета комбинационных схем
Найдите необходимое количество входных переменных и выходов из заданных спецификаций.
Сформулировать Truth table. Если имеется n входных переменных, то будет 2n возможных комбинаций. Найдите выходные значения для каждой комбинации входных данных.
Найди Boolean expressionsдля каждого выхода. При необходимости упростите эти выражения.
Реализуйте приведенные выше логические выражения, соответствующие каждому выходу, используя Logic gates.
Конвертеры кода
Мы обсудили различные коды в главе «Коды». Конвертеры, которые преобразуют один код в другой, называютсяcode converters. Эти преобразователи кода в основном состоят из логических вентилей.
пример
Конвертер двоичного кода в код Грея
Давайте реализуем преобразователь, который преобразует 4-битный двоичный код WXYZ в его эквивалентный код Грея ABCD.
В следующей таблице показаны Truth table преобразователя 4-битного двоичного кода в код Грея.
Двоичный код WXYZ | WXYZ Код серого ABCD |
---|---|
0000 | 0000 |
0001 | 0001 |
0010 | 0011 |
0011 | 0010 |
0100 | 0110 |
0101 | 0111 |
0110 | 0101 |
0111 | 0100 |
1000 | 1100 |
1001 | 1101 |
1010 | 1111 |
1011 | 1110 |
1100 | 1010 |
1101 | 1011 |
1110 | 1001 |
1111 | 1000 |
Из таблицы истинности мы можем написать Boolean functions для каждого выходного бита кода Грея, как показано ниже.
$$ A = \ sum m \ left (8,9,10,11,12,13,14,15 \ right) $$
$$ B = \ sum m \ left (4,5,6,7,8,9,10,11 \ right) $$
$$ C = \ sum m \ left (2,3,4,5,10,11,12,13 \ right) $$
$$ D = \ sum m \ left (1,2,5,6,9,10,13,14 \ right) $$
Давайте упростим вышеуказанные функции, используя 4 переменных K-Maps.
На следующем рисунке показан 4 variable K-Map для упрощения Boolean function, A.
Сгруппировав 8 соседних, мы получили $ A = W $.
На следующем рисунке показан 4 variable K-Map для упрощения Boolean function, B.
Есть две группы по 4 смежных. После группировки мы получим B как
$$ B = {W} 'X + W {X}' = W \ oplus X $$
Точно так же после упрощения мы получим следующие булевы функции для C и D.
$$ C = {X} 'Y + X {Y}' = X \ oplus Y $$
$$ D = {Y} 'Z + Y {Z}' = Y \ oplus Z $$
На следующем рисунке показан circuit diagram 4-битного двоичного кода в преобразователь кода Грея.
Поскольку выходы зависят только от текущих входов, этот преобразователь 4-битного двоичного кода в код Грея представляет собой комбинационную схему. Точно так же вы можете реализовать другие конвертеры кода.
Генератор битов четности
В зависимости от типа генерируемого бита четности существует два типа генераторов битов четности. Even parity generatorгенерирует бит четности. По аналогии,odd parity generator генерирует бит нечетной четности.
Генератор четности
Теперь давайте реализуем генератор четности для 3-битного двоичного входа, WXY. Он генерирует бит четности P. Если на входе присутствует нечетное количество единиц, то бит четности P должен быть равен «1», чтобы результирующее слово содержало четное количество единиц. Для других комбинаций входных данных, бит четности, P должен быть равен «0». В следующей таблице показаныTruth table генератора четности.
Двоичный вход WXY | Бит четности P |
---|---|
000 | 0 |
001 | 1 |
010 | 1 |
011 | 0 |
100 | 1 |
101 | 0 |
110 | 0 |
111 | 1 |
Из приведенной выше таблицы истинности мы можем написать Boolean function для бита четности как
$$ P = {W} '{X}' Y + {W} 'X {Y}' + W {X} '{Y}' + WXY $$
$ \ Rightarrow P = {W} '\ left ({X}' Y + X {Y} '\ right) + W \ left ({X}' {Y} '+ XY \ right) $
$ \ Rightarrow P = {W} '\ left (X \ oplus Y \ right) + W {\ left (X \ oplus Y \ right)}' = W \ oplus X \ oplus Y $
На следующем рисунке показан circuit diagram генератора четности.
Эта схема состоит из двух Exclusive-OR gatesпо два входа каждый. Первый вентиль Исключающее ИЛИ, имеющий два входа W и X, дает выход W X. Этот выход задается как один вход второго элемента Исключающее ИЛИ. Другой вход этого второго логического элемента «Исключающее ИЛИ» - Y и дает на выходе W ⊕ X ⊕ Y.
Генератор нечетной четности
Если на входе присутствует четное количество единиц, то бит нечетной четности P должен быть равен «1», чтобы результирующее слово содержало нечетное количество единиц. Для других комбинаций ввода, бит нечетной четности, P должен быть «0».
Выполните ту же процедуру, что и генератор четности, для реализации генератора нечетной четности. Вcircuit diagram генератора нечетной четности показан на следующем рисунке.
Приведенная выше принципиальная схема состоит из логического элемента Ex-OR на первом уровне и элемента Ex-NOR на втором уровне. Поскольку нечетная четность прямо противоположна четной, мы можем разместить инвертор на выходе генератора четной четности. В этом случае первый и второй уровни содержат логический элемент ExOR на каждом уровне, а третий уровень состоит из инвертора.
Проверка четности
Существует два типа средств проверки четности в зависимости от типа проверки четности. Even parity checkerпроверяет ошибки в переданных данных, которые содержат биты сообщения вместе с четностью. По аналогии,odd parity checker проверяет ошибки в переданных данных, которые содержат биты сообщения вместе с нечетной четностью.
Проверка четности
Теперь давайте реализуем схему проверки четности. Предположим, 3-битный двоичный вход, WXY передается вместе с битом четности P. Итак, результирующее слово (данные) содержит 4 бита, которые будут приняты как входные данные средства проверки четности.
Это порождает even parity check bit, E. Этот бит будет равен нулю, если полученные данные содержат четное количество единиц. Это означает, что в полученных данных нет ошибки. Этот бит проверки четности будет равен единице, если полученные данные содержат нечетное количество единиц. Это означает, что в полученных данных есть ошибка.
В следующей таблице показаны Truth table проверки четности.
4-битные полученные данные WXYP | Бит проверки четности E |
---|---|
0000 | 0 |
0001 | 1 |
0010 | 1 |
0011 | 0 |
0100 | 1 |
0101 | 0 |
0110 | 0 |
0111 | 1 |
1000 | 1 |
1001 | 0 |
1010 | 0 |
1011 | 1 |
1100 | 0 |
1101 | 1 |
1110 | 1 |
1111 | 0 |
Из приведенной выше таблицы истинности мы можем заметить, что значение бита проверки четности равно «1», когда в полученных данных присутствует нечетное количество единиц. Это означает, что булева функция бита проверки четности являетсяodd function. Функция исключающее ИЛИ удовлетворяет этому условию. Следовательно, мы можем напрямую написатьBoolean function бит проверки четности как
$$ E = W \ oplus X \ oplus Y \ oplus P $$
На следующем рисунке показан circuit diagram проверки четности.
Эта схема состоит из трех Exclusive-OR gatesпо два входа каждый. Ворота первого уровня производят выходные данные $ W \ oplus X $ & $ Y \ oplus P $. Схема исключающего ИЛИ, которая находится на втором уровне, дает на выходе $ W \ oplus X \ oplus Y \ oplus P $.
Проверка нечетной четности
Предположим, 3-битный двоичный вход, WXY передается вместе с битом нечетной четности P. Итак, результирующее слово (данные) содержит 4 бита, которые будут приняты как входные данные средства проверки нечетности.
Это порождает odd parity check bit, E. Этот бит будет равен нулю, если полученные данные содержат нечетное количество единиц. Это означает, что в полученных данных нет ошибки. Этот бит проверки нечетной четности будет равен единице, если полученные данные содержат четное количество единиц. Это означает, что в полученных данных есть ошибка.
Выполните ту же процедуру, что и при проверке четности, для реализации средства проверки на нечетность. Вcircuit diagram средства проверки нечетной четности показано на следующем рисунке.
Вышеуказанная принципиальная схема состоит из вентилей Ex-OR на первом уровне и вентилей Ex-NOR на втором уровне. Поскольку нечетная четность прямо противоположна четной, мы можем разместить инвертор на выходе средства проверки четности. В этом случае первый, второй и третий уровни содержат два логических элемента Ex-OR, один вентиль Ex-OR и один инвертор соответственно.