Тема: Комбинационные устройства – мультиплексор, демультиплексор, шифратор (кодер), дешифратор (декодер)
1. Теоретические сведения
Комбинационным устройством называется такое устройство, выходные сигналы которого зависят только от текущих значений входных сигналов.
К комбинационным устройствам относятся мультиплексоры, демультиплексоры, шифраторы, дешифраторы и др.
Мультиплексором называется комбинационное логическое устройство, предназначенное для управления передачей данных от нескольких источников одному выходному каналу. В соответствии с определением, мультиплексор должен иметь один выход и две группы входных контактов: информационные и адресные. Код, поступающий на адресные входы, определяет, какой из информационных входов в данный момент подключен к выходному каналу. Если количество адресных входов мультиплексора равно n, то максимально возможное количество его информационных входов будет 2n.
Логическое уравнение, описывающее работу четырехканального мультиплексора (имеющего 4 информационных сигнала D0…D3 и 2 адресных сигнала А0…А1) показано ниже:
1
|
Q = D0*A1‘*A0’ + D1*A1‘*A0 + D2*A1*A0’ + D3*A1*A0
|
Схема простейшего одноразрядного мультиплексора 2-в-1 показана на рисунке:
Таблица истинности такого мультиплексора приведена ниже:
A0 | Q |
0 | D0 |
1 | D1 |
Такой мультиплексор реализуется на языке Verilog с помощью следующего оператора:
Assign Q = (~A0 & D0) | (A0 & D1);
Демультиплексором называется комбинационное логическое устройство, предназначенное для управления передачей данных от одного входного канала на несколько выходных. В соответствии с определением, демультиплексор в общем виде имеет один информационный вход, n адресных входов и 2n выходов.
Набор логических уравнений, описывающих работу четырехканального демультиплексора (имеющего 1 входной информационный сигнал D, 2 адресных сигнала А0…А1 и 4 выходных сигнала Q0…Q3) показан ниже:
1
2
3
4
5
6
7
|
Q0 = D*A1‘*A0’
Q1 = D*A1‘*A0
Q2 = D*A1*A0′
Q3 = D*A1*A0
|
Схема простейшего одноразрядного демультиплексора 1-в-2 показана на рисунке:
Его таблица истинности приведена ниже:
A | Q0 | Q1 |
0 | D | 0 |
1 | 0 | D |
Такой демультиплексор реализуется на языке Verilog с помощью набора следующих операторов:
1
2
|
Assign Q0 = ~A0 & D0;
Assign Q1 = A0 & D1;
|
Шифратором или кодером называется комбинационное логическое устройство, преобразующее входной код из десятичной системы счисления в двоичную. Входам шифратора последовательно присваиваются значения десятичных чисел, а активный логический уровень сигнала на одном из входов воспринимается шифратором как подача соответствующего десятичного числа. На выходе шифратора формируется соответствующий двоичный код. Соответственно, если шифратор имеет n выходов, то количество входных сигналов не должно превышать 2n. Шифратор, который имеет 2n входов и n выходов называется полным. Если количество входов шифратора меньше 2n, он называется неполным.
Набор логических уравнений, описывающих работу шифратора чисел от 0 до 7 в двоичный код (x0…x7
– входные сигналы, Q0…Q2 – выходные сигналы) показан ниже:
1
2
3
|
Q0 = x1 + x2 + x3 +x5 + x7
Q1 = x2 + x3 + x6 + x7
Q2 = x4 + x5 + x6 + x7
|
Дешифратором или декодером называется комбинационное логическое устройство для преобразования чисел из двоичной системы счисления в десятичную. Это значит, что каждому входному двоичному числу ставиться в соответствие сигнал, формируемый на определенном выходе дешифратора. Дешифратор, который имеет n входов и 2n выходов называется полным. Если количество выходов дешифратора меньше 2n, он называется неполным.
Набор логических уравнений, описывающих работу двухразрядного дешифратора (Q0…Q1
– входные сигналы, x0…x3
– выходные сигналы) показан ниже:
1
2
3
4
|
x0 = Q0‘*Q1’
x1 = Q0 *Q1‘
x2 = Q0′*Q1
x3 = Q0*Q1
|
Самостоятельная работа
Задание 1.
Реализуйте мультиплексор (демультиплексор) и проверьте его работу в среде ModelSim в соответствии с заданным вариантом:
1. Восьмиразрядный мультиплексор 4-в-1 (количество информационных сигналов – 4, разрядность – 8 бит).
2. Четырехразрядный мультиплексор 5-в-1 (количество информационных сигналов – 5, разрядность – 4 бит).
3. Одноразрядный мультиплексор 8-в-1 со входом разрешения работы EN. Активный уровень сигнала EN – логический «0». При подачи на вход EN сигнала с уровнем логической «1», выходной сигнал мультиплексора должен устанавливаться в высокоимпедансное состояние.
4. Восьмиразрядный демультиплексор 1-в-4 (количество выходных сигналов – 4, разрядность – 8 бит).
5. Четырехразрядный демультиплексор 1-в-5 (количество выходных сигналов – 5, разрядность – 4 бит).
6. Одноразрядный демультиплексор 1-в-8 со входом разрешения работы EN. Активный уровень сигнала EN – логический «0». При подачи на вход EN сигнала с уровнем логической «1», выходные сигналы демультиплексора должны устанавливаться в высокоимпедансное состояние.
Задание 2.
Реализуйте шифратор (дешифратор) и проверьте его работу в среде ModelSim в соответствии с заданным вариантом:
1. Шифратор, преобразующий цифры от 0 до 9 в двоично-десятичный код.
2. Шифратор, преобразующий цифры от 0 до 15 в двоичный код.
3. Шифратор, преобразующий цифры от -5 до 4 в двоичный дополнительный код.
4. Полный четырехразрядный дешифратор.
5. Двоично-десятичный дешифратор.
6. Дешифратор для семисегментного индикатора. Преобразует входной 4-разрядный двоичный код в отображаемые на индикаторе шестнадцатиричные цифры от 0 до F. Расположение сегментов индикатора показано на рисунке:
Активный уровень сигнала для включения сегмента – логический «0».