Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
АиЛОВТ, заочка, курсач, В13.docx
Скачиваний:
59
Добавлен:
27.04.2018
Размер:
396.34 Кб
Скачать

4.2 Логический синтез одноразрядного четверичного сумматора

ОЧС - это комбинационное устройство, имеющее 5 входов и 3 выхода:

  • 2 разряда одного слагаемого (множимого);

  • 2 разряда второго слагаемого (регистр результата);

  • вход переноса из младшего ОЧС.

Принцип работы ОЧС описывается с помощью таблицы истинности (таблица №3).

Разряды обоих слагаемых закодированы: 0 – 10; 1 – 00; 2 -11; 3 -01.

Таблица истинности ОЧС

Таблица №3

A1

A2

B1

B2

p

П

S1

S2

Пример операции в четверичной с/с

0

0

0

0

0

0

1

1

1+1+0=02

0

0

0

0

1

0

0

1

1+1+1=03

0

0

0

1

0

1

1

0

1+3+0=10

0

0

0

1

1

1

0

0

1+3+1=11

0

0

1

0

0

0

0

0

1+0+0=01

0

0

1

0

1

0

1

1

1+0+1=02

0

0

1

1

0

0

0

1

1+2+0=03

0

0

1

1

1

1

1

0

1+2+1=10

0

1

0

0

0

1

1

0

3+1+0=10

0

1

0

0

1

1

0

0

3+1+1=11

0

1

0

1

0

1

1

1

3+3+0=12

0

1

0

1

1

1

0

1

3+3+1=13

0

1

1

0

0

0

0

1

3+0+0=03

0

1

1

0

1

1

1

0

3+0+1=10

0

1

1

1

0

1

0

0

3+2+0=11

0

1

1

1

1

1

1

1

3+2+1=12

1

0

0

0

0

0

0

0

0+1+0=01

1

0

0

0

1

0

1

1

0+1+1=02

1

0

0

1

0

0

0

1

0+3+0=03

1

0

0

1

1

1

1

0

0+3+1=10

1

0

1

0

0

0

1

0

0+0+0=00

1

0

1

0

1

0

0

0

0+0+1=01

1

0

1

1

0

0

1

1

0+2+0=02

1

0

1

1

1

0

0

1

0+2+1=03

1

1

0

0

0

0

0

1

2+1+0=03

1

1

0

0

1

1

0

0

2+1+1=10

1

1

0

1

0

1

1

0

2+3+0=11

1

1

0

1

1

1

1

1

2+3+1=12

1

1

1

0

0

0

1

1

2+0+0=02

1

1

1

0

1

0

0

1

2+0+1=03

1

1

1

1

0

1

1

0

2+2+0=10

1

1

1

1

1

1

0

0

2+2+1=11

В ОЧС на информационные входы не могут прийти коды 2 и 3, поэтому в схеме появляются безразличные наборы.

Минимизацию выходов ОЧС проведем с помощью метода Квайна-Мак-Ласки.

Минимизация выхода П

Заменим все конституенты единицы их двоичными номерами (в скобках термы, на которых функция не определена):

К={(00010), (00011), (00111), 01000, 01001, (01010), (01011), 01101, (01110), (01111), (10011), 11001, (11010), (11011), (11110), (11111)}.

Выполним разбиение комплекса К на группы. Признаком образования i - й группы является количество единиц в двоичном номере конституенты единицы.

Номер группы

Двоичные номера

конституент единицы

1

(00010), 01000

2

(00011), 01001, (01010)

3

(00111), (01011), 01101, (01110), (10011), 11001, (11010)

4

(01111), (11011), (11110)

5

(11111)

Попарно сравним соседние по номеру группы.

К02

К01

(00011)

01001

(01010)

(00010)

0001*

0*010

01000

0100*

010*0

К03

К02

(00111)

(01011)

01101

(01110)

(10011)

11001

(11010)

(00011)

00*11

0*011

*0011

01001

010*1

01*01

*1001

(01010)

0101*

01*10

*1010


К03

К04

(00111)

(01011)

01101

(01110)

(10011)

11001

(11010)

(01111)

0*111

01*11

011*1

0111*

(11011)

*1011

1*011

110*1

1101*

(11110)

*1110

11*10


К04

К05

(01111)

(11011)

(11110)

(11111)

*1111

11*11

1111*


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

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

К11

К12

К13

К14

К15

*1001

01*01

010*0

0100*

010*1

011*1

110*1

*1001

01*01

010**

0100*

01**1

*10*1


К21 = {*1001, 01*01, 010**, 01**1, *10*1, 0100*}

Строим импликантную таблицу. Формирование минимального покрытия сводится к выявлению обязательных простых импликант и построению на их основе тупиковых форм.

Простые импликанты

Конституенты единицы

01000

01001

01101

11001

*1001

*

*

01*01

*

*

010**

01**1

*10*1

0100*

*

*


Fmin = {010**, 01**1, *10*1}

Fmin =

Эффективность минимизации:

Минимизация выхода S1.

Заменим все конституенты единицы их двоичными номерами (в скобках термы, на которых функция не определена):

K = {00000, (00011), 00101, (00111), 01000, (01010), 01101, (01111), 10001, (10011), 10100, (10110), (11010), (11011), 11100, (11110)}

Выполним разбиение комплекса К на группы. Признаком образования i - й группы является количество единиц в двоичном номере конституенты единицы.

Номер группы

Двоичные номера

конституент единицы

0

00000

1

01000

2

(00011), 00101, (01010), 10001, 10100

3

(00111), 01101, (10011), (10110), (11010), 11100

4

(01111), (11011), (11110)

Попарно сравним соседние по номеру группы.

К01

К00

01000

00000

0*000

К02

К01

(00011)

00101

(01010)

10001

10100

01000

010*0

К02

К03

(00011)

00101

(01010)

10001

10100

(00111)

00*11

001*1

01101

0*101

(10011)

*0011

100*1

(10110)

101*0

(11010)

*1010

11100

1*100

К04

К03

(01111)

(11011)

(11110)

(00111)

0*111

01101

011*1

(10011)

1*011

(10110)

1*110

(11010)

1101*

11*10

11100

111*0

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

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

К12

К14

0*000

001*1

0*101

010*0

1*100

100*1

101*0

011*1

111*0

0*000

0*1*1

0*101

1*1*0

1*100

010*0

100*1

К21 = {0*000, 0*101, 1*100, 0*1*1, 1*1*0, 010*0, 100*1}

Простые импликанты

Конституенты единицы

00000

00101

01000

01101

10001

10100

11100

0*000

0*101

*

*

1*100

*

*

0*1*1

1*1*0

010*0

*

100*1

Строим импликантную таблицу. Формирование минимального покрытия сводится к выявлению обязательных простых импликант и построению на их основе тупиковых форм.

Fmin = {0*000, 0*1*1, 1*1*0, 100*1}

Fmin =+++

Эффективность минимизации:

Минимизация выхода S2

Заменим все конституенты единицы их двоичными номерами (в скобках термы, на которых функция не определена):

К = {00000, 00001, 00101, (00110), (01010), (01011), 01100, (01111), 10001, (10010), (10110), (10111), 11000, (11011), 11100, 11101}

Номер группы

Двоичные номера

конституент единицы

0

00000

1

00001

2

00101, (00110), (01010), 01100, 10001, (10010), 11000

3

(01011), (10110), 11100

4

(01111), (10111), (11011), 11101

Попарно сравним соседние по номеру группы.

К01

К00

00001

00000

0000*

К01

К02

00001

00101

00*01

(00110)

(01010)

01100

10001

*0001

(10010)

11000


К03

К02

(01011)

(10110)

11100

00101

(00110)

*0110

(01010)

0101*

01100

*1100

10001

(10010)

10*10

11000

11*00


К03

К04

(01011)

(10110)

11100

(01111)

01*11

(10111)

1011*

(11011)

*1011

11101

1110*


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

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

К11

К13

К15

*0001

00*01

0000*

*1100

11*00

1110*

*0001

00*01

0000*

*1100

11*00

1110*

К21 = {*0001, *1100, 00*01, 11*00, 0000*, 1110*}

Простые имп

ликанты

Конституенты единицы

00000

00001

00101

01100

10001

11000

11100

11101

*0001

*1100

00*01

11*00

0000*

1110*



Все первичные импликанты являются существенными.

Fmin = {*0001, *1100, 00*01, 11*00, 0000*, 1110*}

Fmin =

Эффективность минимизации:

Преобразуем П, S1, S2 к заданному логическому базису:

П =

S1 =

S2 =

Построение функциональной схемы ОЧУ состоит из объединения функциональных схем для каждого выхода. Построенная схема – схема 2.