Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Ермаков.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
305 Кб
Скачать
☆

4.4. Составление комбинационной схемы мультиплексора.

Мультиплексор представляет собой комбинационное устройство, имеет три адресных входа и две информационные шестнадцатиразрядные шины. Мультиплексор организуем на множестве простых мультиплексоров с одним адресным и двумя информационными входами. Изобразим простейший мультиплексор в базисе 3ИЛИ-НЕ:

Рис.4.6-Схема и условное обозначение мультиплексора.

Входы А и В информационные, вход V адресный и сигнал на нём определяет с какого из информационных передастся сигнал на выход мультиплексора. Работа мультиплексора описывается уравнением .

Мультиплексор, используемый в схеме, будет состоять из мультиплексоров, аналогичных изображённому на рис.4.6. Схема мультиплексора будет представлена в приложении.

4.5. Составление комбинационной схемы преобразователя в дополнительный код.

Полусумматоры предназначены для выполнения микрооперации коррекции и округления цифр. При сложении выполняется операция арифметического суммирования. Перейдём к описанию алгоритма реализации операции сложения.

Полусумматор работает согласно таблице 4.4:

А

В

S

P

0

0

0

0

0

1

1

0

1

0

1

0

1

1

0

1

Таблица 4.4– Таблица соответствия для полусумматора.

S=A B P=AB

На основе этих формул составим схему:

Рис 4.7–Схема и условное обозначение полусумматора.

Тогда схема преобразователя в дополнительный код (рис 4.8).

Рис 4.8–Схема преобразователя в дополнительный.

Логические элементы «сумма по модулю» и «И» реализуются в данном базисе 3ИЛИ-НЕ (см. приложение A). Для наглядности в схеме приведены их эквиваленты.

V. Пример работы устройства для реализации заданной операции.

Опишем работу устройства по блокам, входящим в него, т.к. эти блоки автономны и работа следующего блока начинается после того, как отработает предыдущий.

Блок сравнения.

Пусть задан следующий массив целых положительных чисел: А={10,15,5,16,13,22,19}, Q=7 – количество элементов массива. Представим заданные числа в двоичной системе счисления:

A[1] = 1010 = 000010102

A[2] = 1510 = 000011112

A[3] = 510 = 000001012

A[4] = 1610 = 000100002

A[5] = 1310 = 000011012

A[6] = 2210 = 000101102

A[7] = 1910 = 000100112

Согласно разработанной блок-схеме устройства опишем его работу по тактам. Данные представим в виде таблицы 5.1:

№

т

а

к

т

а

Содержимое входа устройства

Содержимое регистра

RGmax до

сравнения

Содержимое регистра

RGmax после

сравнения

Счетчик

0

00000000

1000

1

00001010

00000000

00001010

1001

2

00001111

00001010

00001111

1010

3

00000101

00001111

00001111

1011

4

00010000

00001111

00010000

1100

5

00001101

00010000

00010000

1101

6

00010110

00010000

00010110

1110

7

00010011

00010110

00010110

1111

Таблица 5.1– Работа блока сравнения по тактам.

В результате получили Amax = 00010110. Далее по поданному со счетчика сигналу начинает работать блок умножения.

Блок умножения.

8 такт:

На вход схемы подаётся тактовый импульс и единица на линию Start. На спаде 8-го такта параллельным кодом в регистры RGA и RGB заносятся значения 00010110 и 00010110. Содержимое сумматора и регистра RG обнуляются.

Между 8-м и 9-м тактами:

На выходах:

RGA = 0000 0000 0010 1100 Доп. Код = 1111 1111 1110 1010

RGB = 110 DC = 100

MUX = 0000 0011 1101 0100 RG = 0000 0000 0000 0000

SM = 0000 0011 1101 0100

Запись с выхода сумматора SM в регистр хранения RG.

9 такт:

Сдвиг в RGA и RGB.

Между 9-м и 10-м тактами:

На выходах:

RGA = 0000 0000 1011 0000 Доп. Код = 1111 1111 0101 0000

RGB = 101 DC = 100

MUX = 0000 1111 0101 0000 RG = 0000 0011 1101 0100

SM = 0001 0011 0010 0100

Запись с выхода сумматора SM в регистр хранения RG.

10 такт:

Сдвиг в RGA и RGB.

Между 10-м и 11-м тактами:

На выходах:

RGA = 0000 0010 1100 0000 Доп. Код = 1111 1101 0100 0000

RGB = 001 DC = 001

MUX = 0000 0010 1100 0000 RG = 0001 0011 0010 0100

SM = 0001 0101 1110 0100

Запись с выхода сумматора SM в регистр хранения RG.

11 такт:

Сдвиг в RGA и RGB.

Между 10-м и 11-м тактами:

На выходах:

RGA = 0000 1011 0000 0000 Доп. Код = 1111 0101 0000 0000

RGB = 000 DC = 000

MUX = 0000 0000 0000 0000 RG = 0001 0101 1110 0100

SM = 0001 0101 1110 0100

Запись с выхода сумматора SM в регистр хранения RG.

12 такт:

Полностью аналогичен 11 такту, т.к. частичное произведение равно нулю (содержимое DC равно нулю).

13 такт:

На выходе READY блока умножения появится единица, сигнализирующая об окончании умножения, а на выходе RG = 0001 0101 1110 0100 квадрат Amax.

С учетом разрядности перемножаемого числа, результат умножения будет равен:

01 1110 0100.

Одновременно в декрементный счетчик будет записано значение с регистра RG (Amax).

Блок вычитания.

14 такт:

Происходит вычитание Amax – 1 в декрементном счетчике. Двоично-десятичный счетчик сигнализирует об окончании операций путем подачи сигнала READY.

Заключение .

В ходе выполнения курсового проекта была построена схема, реализующая операцию: S = Amax–1. Операция возведения в квадрат можно было реализовать несколькими способами (в том числе используя последовательный сумматор), однако данный способ является наиболее эффективным. С учетом особенностей данного базиса 3ИЛИ-НЕ была произведена оптимизация и минимизация разработанных схем.