Синтез устройства умножения двоично-четверичных чисел в дополнительных кодах (исходные операнды - дробные десятичные числа: Мн = 48,51; Мт = 69,11; алгоритм умножения: Б)

Страницы работы

Фрагмент текста работы

Министерство образования Республики Беларусь

Беларусcкий Государственный Университет

Информатики и Радиоэлектроники

Кафедра ЭВМ

К  защите  допускаю:

____________ / /   

«___»     мая      1998 г.                         

Пояснительная   записка

к  курсовой  работе по  АИЛОВТ

на тему:

“ Синтез  устройства  умножения двоично-четверичных

чисел  в  дополнительных  кодах “

Выполнил: студент  гр.650501

Вольнов  И

Руководитель:                      

Минск    1998

Cодержание

1.   Постановка  задачи   .........................................................................................    3

2.   Разработка алгоритма умножения   .................................................................   4

3.   Разработка  структурной схемы   .....................................................................   6

4.   Разработка  функциональных схем   ...............................................................    9

 4.1. Логический синтез ОЧУС   ..............................................................................    9

  4.2. Логический синтез ОЧС      ..............................................................................   14

 5.  Синтез  ОЧС  на мультиплексорах     ...............................................................   27

6.  Синтез управляющего автомата    ....................................................................   28

 7.  Литература    .......................................................................................................   33

1.  Постановка задачи

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

Исходные данные: 

·  Табл.1 задает кодирование четверичных чисел их двоичными эквивалентами для работы в двоично-четверичной системе счисления.

Таблица 1.

Цифра

1

2

3

4

Код

00

10

01

11

·  В табл.2 приведены исходные операнды - десятичные числа.

Таблица 2.

Мн

Мт

48.51

69.11

·     Типы синтезируемых устройств:

ОЧУС – одноразрядный четверичный умножитель-сумматор. ОЧС   -- одноразрядный  четве-ричный сумматор.

·   Алгоритм умножения - “Б” (с младших разрядов множителя со сдвигом частичных  произведе-ний  влево) ;

·    Способ минимизации устройств :

OЧУС -- с помощью карт Карно-Вейча.                                                                                        ОЧС – алгоритмом  Рота.           

·     Табл.3 определяет логические элементы, входящие в состав заданных логических  базисов для построения  ОЧС и  ОЧУС.

Таблица 3

Тип устройства

Функционально-полный базис.

Базовые логические элементы

 

ОЧУС

Х1Х2

ОЧС

X1X2           X

2.Разработка  алгоритма  умножения                

Перевод сомножителей из десятичной системы счисления в четверичную:

Мн 10  à  Мн 4                                                                            Мн 4 = 300,2002

                                                                                                      Мн 2/4 = 110000,010000                             

48        4                                                                       0. 51

4          12      4                                                                   4

8        12      3           4                                               2. 04     

8          0                                                                           4

0                                                                                 0. 16

4

0, 64 

Мт 10 à Мт 4                                                                                               Мт 4 = 1011,013

Мт 2/4 = 10001010,0010       

69         4                                                                      0, 11

68        17        4                                                                4

1        16        4          4                                               0, 44

1         4          1                                                    4

0                                                           1, 76    

4

3, 04                                                                                 

Сомножители в форме с плавающей запятой:

Мн2  = 0,110000010000                   0.0011 Мт2  = 0,100010100010                    0.1000

Порядок произведения:

Р1=0. 0011                      3                                                                                                                         

Р2=0.1000                      4

Р =0.1011                      7

Перемножение мантисс приведено в табл. 4

Таблица 4

Четверичная  с/c

2/4 система счисления

1 такт

Мн

0000000

3002000

00000000000000

11000001000000

Мт

1011132

10001010101101

0000001

2010000

00000000000010

01001000000000

2 такт

Мн

0000003

0022230

00000000000011

00000101011100

Мт

0101113

00100010101011

0000022

2211122

00000000000101

01011010100101

3 такт

Мн

0000030

0222300

00000000001100

00010101110000

Мт

0010111

00001000101010

0000112

3100022

00000000101001

11100000000101

4 такт

Мн

0000300

1113000

00000000110000

01010111000000

Мт

0001011

00000010001010

0001013

1323022

00000010001011

10110111000101

5 такт

Мн

0003002

2230000

00000011000001

01011100000000

Мт

0000101

00000000100010

0010021

0213022

00001000000110

00011011000101

6 такт

Мн

0030022

2300000

00001100000101

01110000000000

Мт

0000010

00000000001000

0010021

0213022

00001000000110

00011011000101

7 такт

Мн

0300222

3000000

00110000010101

11000000000000

Мт

0000001

00000000000010

0310303

3213022

00111000110011

11011011000101

         До округления:                          Мн*Мт  = 0.0011100011001111

01 

После округления:                                                Мн*Мт = 0.0011100011010000                                                                                                                                                                                                                     

n-разрядов            

Полученный результат:                                        Мн*Мт 2/4 = 0.00111000110100     Р = 0.1011

Мн*Мт 4   =  310330

Мн*Мт 10 =  3387                 

Результат прямого перемножения операндов: Мн 10 *Мт 10 = 3352,

         Абсолютная погрешность:             = 3387-3352,53 = 38,47

Относительная погрешность:    1%

3. Разработка структурной схемы            

Структурная схема строится на основе следующих блоков

·  Многоразрядный регистр сдвига

               D1

Q1                                         сдвиг

Dn                                                               

С                                                                                   Qn

S1

S2

“+1”

Предназначен для хранения и сдвига  n-разрядного значения числа. Регистр имеет  n информационных входов  D1 – Dn , управляющий вход разрешения записи в регистр С , управ ляющие входы сдвига содержимого регистра влево S1 и вправо S2 , управляющий вход добавления 1 к содержимому регистра “+1”, выходов  Q1- Qn . Все управляющие функции выполняются при поступлении 1 на соответствующий управляющий вход.

·  Одноразрядный четверичный умножитель - сумматор  (ОЧУС)

Р3  Р4

 


P1  P2                                                  Р1’             

P2’  от младшего   

ОЧУС               к старшему

ОЧУС

Х1 Х2   Y1 Y2

ОЧУС предназначен для получения одной четверичной цифры путем перемножения диады множимого (Х1,Х2) и диады множителя (Y1,Y2), и прибавления к полученному результату диады, поступающей в виде переноса от младшего ОЧУС.                                              

·  Одноразрядный четверичный сумматор (ОЧС)

Предназначен для суммирования двух четверичных цифр и прибавления к полученной сумме единицы переноса от предыдущего ОЧС. Формирует единицу переноса в следующий ОЧС.     

                                                                                              

S1                S2

П                                                                          Z    

P1   P2     P3  P4  

·  Многоразрядный формирователь дополнения  (ФД).

Предназначен для получения дополнения многоразрядного четверичного числа. ФД имеет n двоичных входов (X1-Xn), n  двоичных выходов (Y1-Yn) и управляющий вход f. Если на него подана логическая  “1”, то ФД формирует дополнение входного числа.

                                Yn                                      Y1  

f

Xn                                       X1                                                          

·  Многоразрядный формирователь дополнительного кода (ФДК)

 


Знак                 Yn                                 Y1

f1

f2 

Знак                  Xn                                  X1                                                                     

Предназначен для получения дополнительного кода многоразрядного четверичного числа. ФДК имеет  n двоичных входов (Х1-Хn), n  двоичных выходов (Y1-Yn), отдельный вход для знака преобразуемого числа, а также управляющие входы  (f1) и (f2). При подаче управляющего сигнала (“1”) на вход f1 ФДК формирует дополнительный код числа в сооответствии с его знаком. При подаче управляющего сигнала (“1”) на вход f2 ФДК формирует двойной дополнительный код числа.

·  Дешифраторы  4 из 2-х  и  8 из 4-х

                                              

D1                                                        Q0          D1                                                      Q0

D2                                         .                            D2

.              Q4                 D3                                          

Qn    

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

Структурная  схема устройства приведена на рис.1. Она содержит регистры: множимого (Рг Мн), множителя (Рг Мт), результата (Рг Рез), формирователи дополнительного кода (ФДК) и дополнения (ФД), 14 блоков ОЧС, 15 блоков ОЧУС, счетчик для подсчета кооличества произведенных операций (Сч), дешифратор (Дш) и цепочка из 3 логических элементов для анализа знаков сомножителей.

Устройство умножения работает следующим образом:

·  После записи исходных сомножителей в регистры  Рг Мн , Рг Мт, и обнуления  Рг Рез дешифратор анализирует знаки сомножителей и формирует соответствующие управляющие сигналы на ФДК и ФД – f1 и f  соттветственно. Одновременно происходит запись в счётчик  Сч, работающий в режиме обратного счёта, количества   тактов.

·  С выходов  ФД и ФДК на входы ОЧУС поступают  по 2 двоичные цифры. Результат операции поступает в  ОЧС, где суммируется с содержимым   Рг Рез  и записывается снова в Рг Рез.

·   После проведения этих операций происходит сдвиг  Рг Мн , Рг Мт и уменьшение содержимого счетчика  Сч путем подачи управляющего сигнала на его вход С.

·  После окончания всех операций умножения и суммирования  Сч содержит нулевое значение (“0” на всех выходах), которое преобразуется элементом  ‘И-НЕ’  в  “1”, поступающую на логический  элемент ‘И’ . Если знак множителя –отрицательный, то вводится поправка по следующему правилу: если знак множимого положителен, то к произведению, содержащемуся в регистре  Рг Рез необходимо прибавить множимое с отрицательным знаком в дополнительном коде, что осуществляется  подачей  “1” на вход  f2   ФДК , записи в  Рг Мт  единицы и проведения еще одного цикла умножения-сложения, если же знак множимого отрицателен, то в качестве поправки прибавляется положительное множимое, что достигается подачей  “1” на вход  f2   ФДК (получение двойного дополнительного кода), и, далее, всё как указано выше.

Временные затраты на умножение семиразрядных сомножителей определяются в основном  затратами на образование частичных произведений, получаемых на выходах ОЧУС, и примерно равны:

Ту = 7 (tсдв + t ОЧУС + 7 t ОЧС), где    t ОЧС      - время формирования единицы переноса в ОЧС                                                                                                                                                                                                                                                                

t ОЧУС – время умножения на одном ОЧУС

tсдв     -время сдвига множимого (множителя)


 


. . . .     

Выноска 1 (без границы):               
       X2

 


. . .

“0”                            

“1”

f1                                          f

f2                                

Рисунок 1.Структурная схема  умножителя.                                                                                                                                        


4. Разработка  функциональных  схем

4.1. Логический синтез  ОЧУС

Для синтеза  ОЧУС составляется таблица истинности (табл.5), в которой X1Х2  и  Y1Y2 соответст-        венно  Мн и Мт, представленные двоичными эквивалентами, согласно принятому кодированию чет-   веричных цифр, P1`P2`-перенос из младшего  ОЧУС, P1P2 –перенос в старший  ОЧУС, P3P4 –результат операции.

Таблица 5

X1

X2

Y1

Y2

P1`

P2`

P1

P2

P3

P4

н.н

0

0

0

0

0

0

0

0

0

0

0

1

0

0

0

0

0

1

0

0

0

1

2

0

0

0

0      

1

0

0

0

1

0

3

0

0

0

0

1

1

0

0

1

1

*

4

0

0

0

1

0

0

0

0

0

0

5

0

0

0

1

0

1

0

0

0

1

6

0

0

0

1

1

0

0

0

1

0

7

0

0

0

1

1

1

0

0

1

1

*

8

0

0

1

0

0

0

0

0

0

0

9

0

0

1

0

0

1

0

0

0

1

10

0

0

1

0

1

0

0

0

1

0

11

0

0

1

0

1

1

0

0

1

1

*

12

0

0

1

1

0

0

0

0

0

0

13

0

0

1

1

0

1

0

0

0

1

14

0

0

1

1

1

0

0

0

1

0

15

0

0

1

1

1

1

0

0

1

1

*

16

0

1

0

0

0

0

0

0

0

0

17

0

1

0

0

0

1

0

0

0

1

18

0

1

0

0

1

0

0

0

1

0

19

0

1

0

0

1

1

0

0

1

1

*

20

0

1

0

1

0

0

1

0

0

0

21

0

1

0

1

0

1

1

0

0

1

22

0

1

0

1

1

0

1

0

1

0

23

0

1

0

1

1

1

1

0

1

1

*

24

0

1

1

0

0

0

0

0

0

0

25

0

1

1

0

0

1

1

0

0

1

26

0

1

1

0

1

0

0

0

1

0

27

0

1

1

0

1

1

1

0

1

1

*

28

0

1

1

1

0

0

1

0

0

1

29

0

1

1

1

0

1

0

1

0

0

30

0

1

1

1

1

0

1

0

1

1

31

0

1

1

1

1

1

0

1

1

0

*

32

1

0

0

0

0

0

0

0

0

0

33

1

0

0

0

0

1

0

0

0

1

34

1

0

0

0

1

0

0

0

1

0

35

1

0

0

0

1

1

0

0

1

1

*

36

1

0

0

1

0

0

0

0

1

0

37

1

0

0

1

0

1

1

0

0

0

38

1

0

0

1

1

0

0

0

1

1

39

1

0

0

1

1

1

1

0

1

0

*

40

1

0

1

0

0

0

0

0

1

0

41

1

0

1

0

0

1

0

0

1

1

42

1

0

1

0

1

0

0

0

0

1

43

1

0

1

0

1

1

1

0

0

0

*

44

1

0

1

1

0

0

0

0

1

1

45

1

0

1

1

0

1

1

0

1

0

46

1

0

1

1

1

0

1

0

0

0

47

1

0

1

1

1

1

1

0

0

1

*

48

1

1

0

0

0

0

0

0

0

0

59

1

1

0

0

0

1

0

0

0

1

50

1

1

0

0

1

0

0

0

1

0

51

1

1

0

0

1

1

0

0

1

1

*

52

1

1

0

1

0

0

1

0

0

1

53

1

1

0

1

0

1

0

1

0

0

54

1

1

0

1

1

0

1

0

1

1

55

1

1

0

1

1

1

0

1

1

0

*

56

1

1

1

0

0

0

0

0

1

1

57

1

1

1

0

0

1

1

0

1

0

58

1

1

1

0

1

0

1

0

0

0

59

1

1

1

0

1

1

1

0

0

1

*

60

1

1

1

1

0

0

0

1

1

0

61

1

1

1

1

0

1

0

1

1

1

62

1

1

1

1

1

0

0

1

0

1

63

1

1

1

1

1

1

1

1

0

0

*

Минимизация  функции Р1

1

*

*

1

1   

*

*

*

*

*

*

1

1

1

1

1

1

1

1

*

*

1

*

*

*

*

*

*

Минимальное покрытие   Cmin =  10111X, 11101X, 0101XX, 01X1X0, X101X0, X110X1, 10X1X1.

Или после преобразований и приведению к виду входных переменных

Похожие материалы

Информация о работе