- •Содержание
- •Введение
- •Анализ исходных данных
- •Описание алгоритма реализации заданной операции.
- •2.1 Операция умножения двух чисел используя алгоритм Бута
- •Блок вычитания двух чисел
- •Разработка блок-схемы устройства и описание работы цикла .
- •Составление и минимизация комбинационной схемы.
- •Представление основных элементов в требуемом базисе.
- •Описание регистров.
- •Описание работы компараторов.
- •Описание работы сумматоров.
- •Описание работы мультиплексора.
- •Реализация блока перевода в дополнительный код.
- •Составление комбинационной схемы дешифратора.
- •Реализация блока перевода в код с избытком 3.
- •Описание работы устройства для реализации заданной операции.
Описание работы устройства для реализации заданной операции.
Одним из важнейших сигналов является синхроимпульсы - СИ. Они полностью обеспечивают синхронизацию узлов устройства.
Рассмотрим потактовую работу устройства:
1 такт:
Числа A, B и С записываются в регистры RG1, RG2 и RG3 соответственно.
2 и 3 такт:
Регистры RG7, RG8 (3 такт), RG9 и RG10 (4 такт) изменяют своё состояние. Причём они работают как обычные параллельные регистры (без сдвига одного бита). Одновременно число. А представляется в виде 0, А, - А, -2А, 2А. С регистра RG10 забираются 3 младших бита. Они проходят через дешифратор. Три бита после прохождения через дешифратор, подаются на управляющие входы мультиплексора. Именно на основании этих трёх бит происходит выбор слагаемого для суммирования. Далее происходит суммирование результата выхода из мультиплексора с содержимым регистра RG12 (при первом сложении в данном регистре содержится число 0000000000).
4 такт:
Результат сложения записывается в тот же регистр RG12.
5 такт:
Происходит сдвиг влево в регистре RG7 и вправо в RG9.
6 такт:
Происходит сдвиг влево в регистре RG8 и вправо в RG10.
Сдвинутое на 2 бита влево число А представляется в виде 0, А, - А, -2А, 2А. С регистра RG10 забираются 3 младших бита. Они проходят через дешифратор. Три бита после прохождения через дешифратор, подаются на управляющие входы мультиплексора. Далее происходит суммирование результата выхода из мультиплексора с содержимым регистра RG12.
8, 11, 14,17 ,20 такт дублируют 5-ий, 9, 12, 15,18- дублируют 6-ий,
10, 13, 16,19 - дублируют 7-ий,
После 20 такта выходы регистра RG12 подаются на регистр RG13. На этот же регистр подаётся знак произведения, который получается путём сложения знаковых битов чисел. А и В по модулю 2. Именно в этом регистре будет содержаться результат умножения.
21 такт:
Запись результата умножения в регистр RG13.
22 такт:
Далее происходит перевод 4 младших бит в двоично-десятичный код, а потом в код с избытком.
Завершающим тактом будет запись результата в регистр RG11.
Временные диаграммы содержатся в приложениях.
Для более подробного описания программы рассмотрим работу схемы на числах.
A =19 = (0000010011)2 ;
B=18 = (000010010,0)2
С=15 = (0.0000001111)2
Должен быть следующий результат:
А*В-С=19*18-15=342-15=327
327=(101000111)2 ;
Согласно схеме устройства, анализируем три младших бита числа B:
100. Следовательно, необходимо добавить к сумматору -2А.
-
+
0
0
0
0
0
0
0
0
0
0
1
1
1
1
0
1
1
0
1
0
1
1
1
1
0
1
1
0
1
0
Далее сдвигаем числа А и В на два разряда вправо и влево соответственно.
A = (0001001100)2 ; B = (0000001001)2
Анализируем три младших бита числа B:
001.Необходимо добавить к сумматору А
-
+
1
1
1
1
0
1
1
0
1
0
0
0
0
1
0
0
1
1
0
0
0
0
0
0
1
0
0
1
1
0
Сдвигаем числа А и В на два разряда вправо и влево соответственно.
A = (0100110000)2 ; B = (0000000010)2
Анализируем три младших бита числа B:
010. Необходимо добавить к сумматору А
-
+
0
0
0
0
1
0
0
1
1
0
0
1
0
0
1
1
0
0
0
0
0
1
0
1
0
1
0
1
1
0
Сдвигаем числа А и В на два разряда вправо и влево соответственно.
A = (0011000000)2 ; B = (0000000000)2
Анализируем три младших бита числа B:
000. Необходимо добавить к сумматору 0
Сумма остаётся прежней.
Сдвигаем числа А и В на два разряда вправо и влево соответственно.
A = (1100000000)2 ; B = (0000000000)2
Анализируем три младших бита числа B:
000. Необходимо добавить к сумматору 0
Сумма остаётся прежней.
Сдвигаем числа А и В на два разряда вправо и влево соответственно.
A = (0000000000)2 ; B = (0000000000)2
Анализируем три младших бита числа B:
000. Необходимо добавить к сумматору 0
Сумма остаётся прежней.
Получили результат умножения А * В = (0.0101010110)2 =(342) 10
Знак положительный, так как 0+0 mod 2 = 0.
Занак А*В положительный.
Переводим числа в дополнительный код
А*В=0.0101010110
Анализируем число С. Знак положительный.
Нужно перевести в лополнительный код, причем знаковый бит подаём 1.
Сдоп=1.1111110001
После суммирования получается :
+1.1111110001
0.0101010110
1|0.0101000111
Анализируем знак результата. Он равен 0.
Значит, результатвычисления будет : 0.0101000111, что в переводе в десятичную систему равен 327.
327=327.
Если брать отрицательные числа при умножении, то все действия по вычислению будут такие же. А к результату запишется знак, который так же вычисляется методом XOR двух чисел.
После получения результата нужно перевести 4 младших бита в двоично-десятичный, а потом в код с избытком 2.
Например результат:
(0.0000100100)2 =(36) 10
0100→0100→0111
На результат: 0.0000100111
Заключение.
В ходе выполнения курсового проекта была построена схема устройства для вычисления функции F=(А*В)-С. Разработанная схемам позволяет работать с числами размерностью 5 бит + 1 знаковый бит. При разработке схемы была организована возможность увеличение разрядов результата вычисления (результат вычисления равен 11 бит). В данной схеме была реализована возможность перевода последних 4 бита результата в коде с избытком 3.
В данной работе были разработаны схемы устройств, входящих в состав АЛУ: сумматоров, триггеров, регистров, мультиплексоров, дешифратора, компараторов. Все элемент были расписаны в алгебре Жигалкина.
Данное устройство может использоваться в различных применениях, где требуется выполнение заданной операции.
Список использованной литературы
Проектирование цифровых систем на комплектах микропрограммируемых БИС. Под редакцией В. Г. Колесникова.
Сергеев Н. П., Вашкевич Н.П. Основы вычислительной техники. – М.: Высшая школа.
Угрюмов Е.П. Проектирование элементов и узлов ЭВМ.
Фистер М. Логическое проектирование цифровых вычислительных машин.
Приложение А
Общая комбинационная схема разработанного устройства
Приложение Б
Схема блока умножения чисел
Приложение В
Временные диаграммы устройства
Временная диаграмма для умножения
Временная
диаграмма сложения
