Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

ПТЦА - Лекции / Лекция 4

.pdf
Скачиваний:
36
Добавлен:
15.02.2015
Размер:
216.88 Кб
Скачать

Синтез преобразователей кодов

Очень часто возникает необходимость перехода от одного способа кодирования к другому, например, от двоично-десятичной системы счисления к двоичной, от двоичного кода к циклическому и т. д. Подобные задачи решаются разными путями. Одним таких путей является применение комбинационных узлов, называемых преобразователями кодов. Условное обозначение преобразователя кода приведено на рисунке 1.

Рисунок 1 – Условное графическое обозначение преобразователя кода.

Одним из весьма распространенных путей реализации преобразователей кодов является метод последовательного соединения дешифратора и шифратора

(рисунок 2). Дешифратор преобразовывает входной код Х 1 , Х 2 , Х 3 в некоторую пространственную позицию, которая затем вновь кодируется шифратором в соответствии с заданием в код Y 1,Y 2 ,Y 3 .

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

Приведем пример синтеза преобразователей кодов, предназначенных для

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

по модулю 2 соответствующего разряда X k и предыдущего разряда X k 1

двоичного кода, т. е. Y k= X k X k1 .

При переходе от кода Грея к двоичному коду старшие разряды обоих кодов также совпадают, а каждый следующий разряд двоичного кода получается в результате сложения по модулю 2 полученного предыдущего разряда этого кода

и соответствующего разряда кода Грея, т. е. X k = Х k 1 Y k . Указанную

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

Преобразование четырехразрядного двоичного кода в код Грея осуществляется

в соответствии с таблицей 1. С помощью

карт Карно

(рисунок

3) найдем

минимальные ДНФ функций выхода

Y i X 1 , Х 2 , Х 3, Х 4 i=1 ,2,3,4

преобразователя кодов:

Y 1 X 1 , Х 2 , Х3 , Х 4 = X 1 ;

Y 2 X 1 , Х 2 , Х 3, Х 4 =X 1 X 2 X 1 X 2 ;

Y 3 X 1 , Х 2 , Х 3 , Х 4 = X 2 X 3 X 2 X 3 ;

Y 4 X 1 , Х 2 , Х 3 , Х 4 = X 3 X 4 X 3 X 4 ;

 

 

 

 

 

 

 

 

Таблица 1

Позиционный двоичный код

 

Циклический код Грея

 

 

 

 

 

 

 

 

 

X 1

X 2

X 3

X 4

Y 1

 

Y 2

Y 3

Y 4

0

0

0

0

0

 

0

0

0

 

 

 

 

 

 

 

 

 

0

0

0

1

0

 

0

0

1

 

 

 

 

 

 

 

 

 

0

0

1

0

0

 

0

1

1

 

 

 

 

 

 

 

 

 

0

0

1

1

0

 

0

1

0

 

 

 

 

 

 

 

 

 

0

1

0

0

0

 

1

1

0

 

 

 

 

 

 

 

 

 

0

1

0

1

0

 

1

1

1

 

 

 

 

 

 

 

 

 

0

1

1

0

0

 

1

0

1

0

1

1

1

0

 

1

0

0

 

 

 

 

 

 

 

 

 

1

0

0

0

1

 

1

0

0

 

 

 

 

 

 

 

 

 

1

0

0

1

1

 

1

0

1

 

 

 

 

 

 

 

 

 

1

0

1

0

1

 

1

1

1

 

 

 

 

 

 

 

 

 

 

X 1 X 2

 

00

01

 

11

 

10

 

00

 

0

0

 

1

 

1

 

01

 

0

0

 

1

 

1

 

11

 

0

0

 

1

 

1

 

10

 

0

0

 

1

 

1

 

 

 

 

Для функции

Y 1

 

 

 

X 1 X 2

 

00

01

 

11

 

10

 

00

 

0

1

 

0

 

1

 

01

 

0

1

 

0

 

1

 

11

 

0

1

 

0

 

1

 

10

 

0

1

 

0

 

1

 

 

 

 

Для функции

Y 2

 

 

 

X 1 X 2

 

00

01

 

11

 

10

 

00

 

0

1

 

1

 

0

 

01

 

0

1

 

1

 

0

 

11

 

1

0

 

0

 

1

 

10

 

1

0

Y

0

 

1

1

0

1

 

Для функции

3

1

0

 

1

1

1

1

1

0

 

0

1

0

1

0

1

1

0

 

1

1

0

1

1

1

1

1

 

0

1

0

0

1

1

1

1

 

1

1

0

0

0

X 3 X 4

X 3 X 4

X 3 X 4

X 1 X 2

00

01

11

10

X 3 X 4

00

0

0

0

0

01

1

1

1

1

 

 

 

 

 

11

0

0

0

0

 

 

 

 

 

10

1

1

1

1

 

 

 

 

 

 

 

Для функции

Y 4

 

Рисунок 3 – Карты Карно для нахождения МДНФ функций выхода преобразователя кодов.

Построим реализующую их логическую схему на 2-входовых элементах И и ИЛИ (рисунок 4).

Рисунок 4

Аналогичным образом можно синтезировать схему для обратного преобразования кодов.

Преобразователи кодов (ПК) могут быть весовыми и невесовыми. Весовые ПК

преобразуют информацию из одной системы счисления в другую. Основное назначение невесовых преобразование информации для ее дальнейшего отображения. В качестве примера рассмотрим преобразователь двоичного кода в код для семисегментных светодиодных индикаторов (рисунок 5). На рисунке

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

Рисунок 5 Такой преобразователь должен иметь четыре входа, т. к. для кодирования

десятичных цифр от 0 до 9 достаточно четырех двоичных, и семь выходов, по одному на каждый сегмент. Таблица истинности преобразователя, она же таблица, в соответствии с которой, например в цифре 0 должны светиться все сегменты за исключением сегмента G. В цифре 1 светятся только два сегмента B и C и т. д. В таблице 2 представлена таблица истинности преобразователя двоичного кода в семисегментный. Нули в ней проставлены для тех цифр, в которых сегмент не светится. x — неопределенные состояния.

X 3

X 2

X 1

X 0

A

B

C

D

E

F

G

0

0

0

0

1

1

1

1

1

1

0

 

 

 

 

 

 

 

 

 

 

 

0

0

0

1

0

1

1

0

0

0

0

 

 

 

 

 

 

 

 

 

 

 

0

0

1

0

1

1

0

1

1

0

1

 

 

 

 

 

 

 

 

 

 

 

0

0

1

1

1

1

1

1

0

0

1

 

 

 

 

 

 

 

 

 

 

 

0

1

0

0

0

1

1

0

0

1

1

 

 

 

 

 

 

 

 

 

 

 

0

1

0

1

1

0

1

1

0

1

1

 

 

 

 

 

 

 

 

 

 

 

0

1

1

0

1

0

1

1

1

1

1

 

 

 

 

 

 

 

 

 

 

 

0

1

1

1

1

1

1

0

0

0

0

 

 

 

 

 

 

 

 

 

 

 

1

0

0

0

1

1

1

1

1

1

1

 

 

 

 

 

 

 

 

 

 

 

1

0

0

1

1

1

1

1

0

1

1

 

 

 

 

 

 

 

 

 

 

 

1

0

1

0

x

x

x

x

x

x

x

 

 

 

 

 

 

 

 

 

 

 

1

0

1

1

x

x

x

x

x

x

x

 

 

 

 

 

 

 

 

 

 

 

1

1

0

0

x

x

x

x

x

x

x

 

 

 

 

 

 

 

 

 

 

 

1

1

0

1

x

x

x

x

x

x

x

 

 

 

 

 

 

 

 

 

 

 

1

1

1

0

x

x

x

x

x

x

x

 

 

 

 

 

 

 

 

 

 

 

1

1

1

1

x

x

x

x

x

x

x

 

 

 

 

 

 

 

 

 

 

 

В общем случае для синтеза этого ПК требуется составить семь уравнений. Найдем одно, для сегмента A, заполнив сначала для него таблицу Карно. Сверху, на рисунке 6 приведена карта Карно прямого значения функции сегмента A. Когда в таблице нулевых клеток значительно меньше и они компактно сгруппированы, полезнее искать алгебраическое выражение инверсной логической функции, т. е. Y A , ее таблица дана снизу. Функция при

этом может получиться значительно проще, т. е. содержать меньше переменных и слагаемых. Шесть двоичных наборов начиная с 1010 в таблице не определены из-за отсутствия десятичных цифр больших девятки, поэтому для минимизации выгоднее считать некоторые из них единицами. Из таблицы найдем:

Y A= X 3 X 2 X 1 X 0 X 2 X 1 X 0 .

Тогда искомое выражение будет иметь вид:

Y A= X 3 X 2 X 1 X 0 X 2 X 1 X 0 .

X 1 X 0

00

01

11

10

X 3 X 2

00

1

0

1

1

01

0

1

1

1

 

 

 

 

 

11

x

x

x

x

 

 

 

 

 

10

1

1

x

x

X 1 X 0

00

01

11

10

X 3 X 2

00

0

1

0

0

01

1

0

0

0

 

 

 

 

 

11

x

x

x

x

 

 

 

 

 

10

0

0

x

x

Рисунок 6

Соседние файлы в папке ПТЦА - Лекции