Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лабораторная работа _6 .doc
Скачиваний:
111
Добавлен:
23.05.2015
Размер:
9.87 Mб
Скачать

6.3 Пример построения мажоритарного элемента в пакете Multisim

Мажоритарными элементами (МЭ) называются ПС, имеющие нечетное число М логически равноправных входов Хр и выполняющие функцию

где v = (Xn,...., X1), Xp = 0 и 1, p = 1, 2, ..., M,

L = (M + 1) / 2 - пороговый уровень (арифметическая сумма входных сигналов).

Трехвходовой МЭ выполняет функцию f = X3X2 V X3X1 V X2X1. Действительно, f = 1 только при равенстве двух или трех сигналов из Хр, р = 1, 2, 3. Если Х2Х1 = 0, то f = (X2 V X1)X3, а при X3 = 1 функция f = X2 V X1.

Алгоритм построения МЭ такой же, как и для ПС.

Например, построим МЭ с M = 13. За основу примем одноразрядный двоичный сумматор и построим схему МЭ, следуя правилам арифметического сложения значений входных переменных X13,...X1. Весь ход рассуждений аналогичен предыдущему примеру, однако есть и некоторая особенность (рис. 6.6). В частности, по условию L = 7, следовательно, КС должна быть построена для дешифрирования именно этого числа. Но возможно найти решение и без специальной КС, если в конечный результат добавить искусственно «1». Тогда при L = 7 единица будет на выходе переноса старшего разряда выходного сумматора. Этот разряд и будет выходом всей схемы МЭ в целом. Таким же способом можно синтезировать любой мажоритарный элемент.

Рис. 6.9 Мажоритарный элемент с М = 13

Рис. 6.10 Временные диаграммы для мажоритарного элемента

(см. рис. 6.6)

Рис. 6.11 Мажоритарный элемент с М = 13 в пакете MAX+Plus II

Рис. 6.12 Временные диаграммы для мажоритарного элемента

Рис 6.13 Матрица временных задержек

Программа:

SUBDESIGN mazoritarny_element

(M[0..12] : INPUT;

Y : OUTPUT;)

VARIABLE A, L;

BEGIN

A = M0+M1+M2+M3+M4+M5+M6+M7+M8+M9+M10+M11+M12;

IF A>= L;

THEN Y = VCC;

ELSE Y = GND;

ENDIF;

END;

В интегральном исполнении выпускаются мажоритарные элементы (Majority Logic Gate), имеющие 3 (533ЛПЗ и 561ЛП13) и 5 (МС14530В) входов. Функция, выполняемая 3-входовым. МЭ, совпадает с функцией переноса одноразрядного сумматора: f=X1X2VX1X3VX2X3, где Xp— входные сигналы функционирование 5-входового МЭ МС14530B описывается выражением:

F=(I1I2I3VI1I2I4VI1I2I5VI1I3I4VI1I3I5VI1I4I5VI2I3I4VI2I3I5VI2I4I5VI3I4I5)P, (6.1)

где P (Polarity) — сигнал инвертирования функции выхода МЭ.

Из соотношения (1) при подстановке определенных значений некоторых сигналов следует, что 5-входовой МЭ может использоваться для выполнения различных переключательных функций:

I5=1, I4=0 => F=(I1I2 V I2I3 V I2I3)  Р – 3-входовой МЭ, с возможностью инвертирования функции выхода F,

I5=I4=0 => F=I1I2I3Р – 3-входовой ЛЭ И/И-НЕ,

I5=I4=1 => F=(I1 V I2 V I3)P – 3-входовой ЛЭ ИЛИ/ИЛИ-НЕ,

I5=I4 => F=(IlI2IЗ V I1I4 V I2I4 V I3I4)Р – 4-входовая пороговая схема с порогом L = 3 и неравными весами входов (вход I4 имеет вес вдвое больший, чем остальные входы) с воз­можностью инвертирования функции выхода.

6.4 Построение преобразователей

6.4.1 Прямой, обратный и дополнительный коды

Для выполнения в ЭВМ арифметических операций необходимо использовать специальное кодирование отрицательных чисел. Для представления знака числа требуется введение дополнительного знакового разряда. Знак минус принято кодировать символом «1», а знак плюс – символом «0».

Прямой код. Прямой код целого n-разрядного двоичного числа задается соотношением:

где – модуль числа, а прямой код(для наглядности знаковый разряд отделяется точкой). Числу 0 может быть приписан любой знак. Таким образом, прямой код числапроизвольного знака получается добавлением к модулю числазнакового разряда, значение которого и определяет знак числа.

То есть, имеем: знаковый разряд располагается слева от числа и отделяется от последнего точкой, например: +5 = 0.101;-5=1.101.

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

Обратный код. Обратный код целого n-разрядного двоичного числа определяется соотношением:

где – модуль числа,

Число 0 в обратном коде имеет два представления: 0.0…00 – положительный и 1.1…11 – отрицательный нули. В (n+1)-разрядных (с учетом знакового разряда) прямом и обратном кодах могут быть представлены числа

То есть, имеем: обратный код двоичного отрицательного числа получается из прямого кода равного ему положительного числа инвертированием значений всех его разрядов. Например, обратный код числа -510=1.1012 есть 1.010.

Дополнительный код. Пусть требуется найти разность двух целых положительных n-разрядных чисел:

и ,

где ,.

Так как разность , то вычитание эквивалентно сложению с отрицательным числом. В двоичной системе счисления:

Максимальное значение X получается при для всех:

(6.2)

Таким образом, и . Разность

(6.3)

где . Так как значения , то . Положительное число на­зывается дополнением Y до 2n. Из соотношения (6.3) следует, что , т. е. вычитание сводится к сложению, но результат надо скорректировать на 2n (вычесть из разности число 2n). Из выражения (6.2) следует, что

поэтому

так как . Поскольку , то

где

Разность (6.3) можно представить в виде:

(6.4)

где ,

Величина называется дополнительным кодом положительного числа X (совпадает с пря­мым кодом), а величина дополнительным кодом отрицательного числа -Y. Здесь значение n-го разряда определяет знак числа (0 – число положительное, 1 – число отрицательное). Из (6.4) следует, что знаковый разряд имеет вес -2n.

Если число Y может иметь любой знак, то дополнительный код

(6.5)

где ,.

Из определения (6.5) следуют правила получения дополнительного кода отрицательных чисел (пра­вила преобразования прямого кода в дополнительный). Для этого необходимо: записать модуль отрицательного числав двоичной системе счисления; взять инверсию от каждого разряда числа, т.е. вычислить число; сложить полученное числос единицей, т.е. вычислить число; записать 1 вn-й разряд.