ЛР3 > Реализация типовых комбинационных устройств

Комбинационное устройство

Тема: Комбинационные устройства – мультиплексор, демультиплексор, шифратор (кодер), дешифратор (декодер).

 

 Структура курса лабораторных работ: Основы Verilog 

 1. Знакомство со средой моделирования ModelSim
 2. Исследование комбинационных устройств
 3. Комбинационные устройства
 4. Исследование последовательностных логических устройств 
 5. Исследование арифметических устройств
 6. Исследование конечных автоматов
 7. Исследование многофункциональных устройств
 8. Простой процессорный модуль

1. Теоретические сведения

Комбинационным устройством называется такое устройство, выходные сигналы которого зависят только от текущих значений входных сигналов.

К комбинационным устройствам относятся мультиплексоры, демультиплексоры, шифраторы, дешифраторы и др.

Мультиплексором называется комбинационное логическое устройство, предназначенное для управления передачей данных от нескольких источников одному выходному каналу. В соответствии с определением, мультиплексор должен иметь один выход и две группы входных контактов: информационные и адресные. Код, поступающий на адресные входы, определяет, какой из информационных входов в данный момент подключен к выходному каналу. Если количество адресных входов мультиплексора равно n, то максимально возможное количество его информационных входов будет 2n.

Логическое уравнение, описывающее работу четырехканального мультиплексора (имеющего 4 информационных сигнала D0…D3 и 2 адресных сигнала А0…А1) показано ниже:

Схема простейшего одноразрядного мультиплексора 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 показана на рисунке:

Его таблица истинности приведена ниже:

A

Q0

Q1

0

D

0

1

0

D

Такой демультиплексор реализуется на языке Verilog с помощью набора следующих операторов:

       

 

    Шифратором или кодером называется комбинационное логическое устройство, преобразующее входной код из десятичной системы счисления в двоичную. Входам шифратора последовательно присваиваются значения десятичных чисел, а активный логический уровень сигнала на одном из входов воспринимается шифратором как подача соответствующего десятичного числа. На выходе шифратора формируется соответствующий двоичный код. Соответственно, если шифратор имеет n выходов, то количество входных сигналов не должно превышать 2n. Шифратор, который имеет 2n входов и n выходов называется полным. Если количество входов шифратора меньше 2n, он называется неполным.

    Набор логических уравнений, описывающих работу шифратора чисел от 0 до 7 в двоичный код (x0…x7
– входные сигналы, Q0…Q2 – выходные сигналы) показан ниже:

 

    Дешифратором или декодером называется комбинационное логическое устройство для преобразования чисел из двоичной системы счисления в десятичную. Это значит, что каждому входному двоичному числу ставиться в соответствие сигнал, формируемый на определенном выходе дешифратора. Дешифратор, который имеет n входов и 2n выходов называется полным. Если количество выходов дешифратора меньше 2n, он называется неполным.

    Набор логических уравнений, описывающих работу двухразрядного дешифратора (Q0…Q1
– входные сигналы, x0…x3
– выходные сигналы) показан ниже:

 

 Самостоятельная работа

Задание 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».