Допомога у написанні освітніх робіт...
Допоможемо швидко та з гарантією якості!

Синтез комбінаційної схеми

КонтрольнаДопомога в написанніДізнатися вартістьмоєї роботи

За отриманими функціями збудження та виходу будуємо схему автомата Мілі. Вона представлена у додатку 2. За отриманими функціями збудження та виходу будуємо схему автомата Мура. Вона представлена у додатку 3. Побудуємо на основі останнього cтовпця функції збудження і переведемо ці функції у зручний базис (і-ні). Отримуємо МДНФ і МКНФ булевой функції за допомогою метода карт Карно. Схеми карт Карно… Читати ще >

Синтез комбінаційної схеми (реферат, курсова, диплом, контрольна)

1. Синтез комбінаційної схеми

1.1 Визначення значень БФ

Булева функція 5 змінних F (x1,x2,x3,x4,x5) задається своїми значеннями, які визначаються 7-разрядовими двійковими еквівалентами чисел: по значенню чисел, А (на наборах 0−6), В (на наборах 7−13), С (набори 14−20), по значенню (А+В+С) (набори 21−27) і на наборах 28−31 функції приймає невизначені значення.

А= 1 011 000;

В= X101000;

С= XXXXXXX;

(А+В+С) = XX11001;

Відповідно, значення функцій F (x1,x2,x3,x4,x5) на наборах від 0 до 31 буде мати вигляд:

Таблиця 1

Х1

Х2

Х3

Х4

Х5

F

X

X

X

X

X

X

X

X

X

X

X

Х

Х

Х

1.2 Мінімізація БФ (Карти Карно)

Отримуємо МДНФ і МКНФ булевой функції за допомогою метода карт Карно. Схеми карт Карно приведені нижче:

Таблиця 2 — Карта Карно для МДНФ

X

X

X

X

X

X

X

X

X

X

X

X

X

X

В результаті мінімізації, отримаємо:

Y=|x3|x4|x5+x1x4x5+|x2|x3x4+|x1|x3x4|x5

Таблиця 3 — Карта Карно для МКНФ

X

X

X

X

X

X

X

X

X

X

X

X

X

X

В результаті мінімізації, отримаємо:

Y=(x4+|x5)(x1+|x3)(x1+|x2+|x5)(|x1+|)

1.3 Мінімізація БФ (Квайна-МакКласки)

Отримуємо МДНФ і МКНФ булевої функції за допомогою метода Квайна-МакКласки. Для цього будуємо комплекси кубів, які відрізняються між собою кількістю одиниць (в двох сусідніх кубів ця різниця дорівнює одиниці) і склеюємо набори сусідніх кубів які відрізняються лише однією одиницею. Біля наборів що склеюються ставимо знак ««.Далі набори що склеюються повинні відрізнятись на одиницю і мати спільні Х. Склеювання проводимо поки не залишиться лише не склеюванні набори.

Спочатку знайдемо МДНФ. Комплекси кубів та їх склеювання.

C0:

C1:

000X0

0X000

X0000

0001X

0X010

X0010

010X0

X1000

1000X

100X0

10X00

1X000

00X11

X0011

01X10

100X1

10X01

1001X

10X10

1010X

101X0

1X100

11X00

0X111

X0111

0111X

X1110

10X11

1X011

101X1

1X101

1011X

1X110

1110X

111X0

X1111

1X111

11X11

111X1

1111X

C2 :

0X0X0

X00X0

XX000

X001X

100XX

10XX0

10X0X

1XX00

X0X11

10XX1

10X1X

101XX

1X10X

1X1X0

XX111

X111X

1XX11

1X1X1

1X11X

111XX

C3:

10XXX

1X1XXX

1X1X1

Складемо таблицю покривань:

Таблиця 4 — Покривання

01X10

0X0X0

X00X0

XX000

X001X

1XX00

X0X11

XX111

X111X

1XX11

10XXX

1X1XX

1X1X1

Ядро: X0X11

Будуємо скорочену таблицю покривань:

Таблиця 5 — Скорочена таблиця покривань

01X10

0X0X0

X00X0

XX000

X001X

1XX00

Найменша МДНФ:

Y=x1x4x5+|x1x2x4|x5+|x1|x3|x5+|x3|x4|x5+|x2|x3|x5+|x2|x3x4+x1|x4|x5+|x2x4x5+x3x4x5

Тепер знайдемо МКНФ. Для цього повторимо всі попередні дії для ДНФ.

C0:

C1:

00X01

0X001

X0001

0010X

001X0

0X100

1000X

100X0

10X00

001X1

0X101

X0101

0011X

0X110

X0110

010X1

01X01

X1001

0110X

011X0

X1100

100X1

10X01

1X001

100X1

10X10

1X010

1010X

101X0

1X100

0X111

01X11

X1101

011X1

X1110

0111X

1X101

1X110

11X01

11X10

111X0

1110X

X1111

111X1

1111X

C2:

XXX01

0X1XX

XX10X

XX1X0

X11XX

Таблиця покривань приведена нижче:

Таблиця 6 — Покривання

10X0X

10XX0

01XX1

1XX10

XXX01

0X1XX

XX10X

XX1X0

X11XX

Ядро: XXX01

01XX1

1XX10

Будуємо скорочену таблицю покривань:

Таблиця 7 — Скорочена таблиця покривань

0X1XX

XX10X

XX1X0

X11XX

Найменша МКНФ:

Y=(x4+|x5)(x1+|x2+|x5)(|x1+x3)(|x3+x4)(|x3+x5) (|x2+|x3)

1.4 Опис мінімізації БФ заданими методами

Для вибору мінімальної з МДНФ і МКНФ оцінимо складність схеми за допомогою ціни по Квайну. Ціна по Квайну визначається як сумарне число входів логічних елементів у складі схеми.

Такий підхід обумовлений тим, що:

— складність схеми легко обчислюється по БФ, на основі яких будується схема: для ДНФ складність дорівнює сумі кількості літер, (літері зі знаком відповідає ціна 2), і кількість знаків диз’юнкції, збільшеного на 1 для кожного диз’юнктивного виразу.

— усі класичні методи мінімізації БФ забезпечують мінімальність схемі саме у змісті ціни по Квайну.

Схема з мінімальною ціною по Квайну часто реалізується з найменшим числом конструктивних елементів — корпусів інтегральних мікросхем.

Для даних функцій ми маємо:

С (МДНФ)=43

С (МКНФ)=21

Так як ціна МКНФ менше, то для реалізації схеми будемо використовувати МКНФ.

1.5 Приведення БФ до заданого базису

Заданий базис: 3 АБО, так як це не повний функціональний базис, то ми використовуємо базис 3 АБО-НІ.

Y=|(|(Х1Х3))+|(|(|Х3|X5))+|(|(|X1|X2|X3))+|(|(|X2|X4|X5))+|(|(X2X4|X5))+ |(|(|X1X2|X4X5))

Для реалізації функції по останньому виразу необхідно 15 елементів 3 АБО-НІ (Рис.1). Ранг даної схеми дорівнює 5.

Рисунок 1 — Комбінаційна схема

1.6 Аналіз комбінаційної схеми методом П-алгоритму

Для аналізу методом П-алгоритму ми пронумерували кожен вихід елемента схеми.

Нульове покриття С0:

10XX0

1XX10

XXX01

0X1XX

2. Проектування керуючих автоматів Мілі та Мура

2.1 Вибір вихідних даних

Граф схема складається з чотирьох блоків E, F, G, H і вершин BEGIN та END.

Вони обираються наступним чином:

— блок E 17 mod 5 = 2;

— блок F 7 mod 5 = 2;

— блок G 1 mod 5 = 1;

— блок H 25 mod 5 = 0.

Блоки E, F, G, H з'єднуються між собою схемою яка має вигляд :

Рисунок 2 — Алгоритм Граф-схема алгоритму показана в додатку 1.

Тип тригера обирається за формулою: 17mod4=1.

Отже для автомата Мілі використовуємо D тригер, а для Мура — JK. Серія інтегральних мікросхем для побудови принципових мікросхем КР 555.

2.2 Структурний синтез автомата Мілі

2.2.1 Розмітка ГСА для автомата Мілі

Для автомата Мілі розмітка ГСА позначається буквою bi. Відмічаються входи в вершини, які слідують за операторними. Виходячи з цього ми отримуємо для автомата Мілі 21 стан.

2.2.2 Кодування станів

Оскільки ми використовуємо D тригер, а його особливістю є те, що вихід тригера такий же як стан у момент часу (t+1), то для оптимального кодування будуємо таблицю переключення автомата, тобто записуємо скільки разів автомат переключається у певний стан.

Таблиця 8 — Переключення автомата

Стан

Кількість переключень

b0

b1

b2

b3

b4

b5

b6

b7

b8

b9

b10

b11

b12

b13

b14

b15

b16

b17

b18

b19

b20

Оптимальне кодування станів буде таким:

Таблиця 9 — Оптимальне кодування станів

Стан

Кількість переключень

Кодування

b0

b2

b4

b5

b7

b9

b10

b11

b12

b15

b16

b17

b18

b19

b1

b3

b6

b8

b13

b14

b20

2.2.3 Таблиця переходів автомата Мілі

На основі ГСА і закодованих стані будуємо таблицю 10 переходів автомата.

Останній стовбець таблиці 10 заповнюється за допомогою оберненої таблиці переходів Dтригера .

булевий мінімізація комбінаційний керуючий автомат

Таблиця 10 — Переходи автомата

b (t)

K (b (t))

b (t+1)

K (b (t+1))

x

y

ФЗ

b0

b1

y2y4

D2D4D5

b1

b2

y7

D5

b2

b3

|x1

y1y9

D2D5

b9

x1

y8

D1

b3

b4

y2y4

D4

b4

b5

y7

D3

b5

b6

|x1

y1y9

D3D5

b11

x1

y8

D3D4

b6

b7

y3y6

D2

b7

b2

x5

y7

D5

b8

|x5x6

y3

D3D4D5

b9

|x5|x6

y8

D1

b8

b10

y3y6

D4D5

b9

b4

x2

y2y4

D4

b10

|x2

y3y6

D4D5

b10

b5

x5

y7

D3

b11

|x5|x6

y8

D3D4

b12

|x5x6

y1y8

D2D3

b11

b7

x2

y3y6

D2

b12

|x2

y1y8

D2D3

b12

b13

x4

y4

D2D3D4

b16

|x3

y3y10

D1D5

b13

b14

y4y5

D1D2D3

b14

b15

y1y2

D1D2

b15

b0

|x4x2

y4y5

;

b20

x4

y3

D1D3D4

b18

|x1|x2|x4

y5y9

D1D3

b0

x1|x2|x4

;

;

b16

b15

y1y2

D1D2

b17

b0

|x3

y2y6

;

b19

x3

y7

D2D4

b18

b16

x4|x3

y3y10

D1D5

b17

x3x4

y6

D1D4

b17

|x4x1

y6

D1D4

b0

x1|x3|x4

y2y6

;

b19

x1|x3x4

y7

D2D4

b19

b0

x1

;

;

b18

|x1

y5y9

D1D3

b20

b0

y2y6

;

Побудуємо на основі останньої колонки Таблиці 13 функції збудження і приведемо їх до базису І-НІ:

D1=| (| (b2x1) | (b7|x5|x6) |(b12|x3) |b13|b14|(b15×4) |(b15|x1|x2|x4) |b16|(b18|x3x4) | (b18x3x4) |(b18|x4x1) |(b19|x1))

D2=|(|b0|(b2|x1) |b6|(b10|x5x6) |(b11×2) |b11|(b12×4) |b13|b14|b16|(b17×3) |(b18|x1x3|x4))

D3=|(|b4|b5|(b7|x5x6) | (b10×5) |(b10|x5|x6) |(b10Vx5x6) |(b11|x2) |(b12×4) |b13|(b15×4) |(b15|x1|x2) |(b19|x1))

D5=|(|b0|b1|(b2|x1) |(b5|x1) |b5x7) |(b7|x5x6) |b8|(b9|x2) |(b12|x3) |(b18|3×4))

На основі передостанньої колонки Таблиці 10 будуємо функції виходу:

Y1=|(|(b2|x1) | (b5|x1) | (b10|x5x6) | (b11×2) |b14|b16)

Y2=|(|b0|b3| (b9x2) |b14|b16|(b17|x3) |(b18|x1|x3|x4) |b20)

Y3=|(|b|(b7|x5x6) |b8| (b9|x2) |(b11×2) |(b12|x3) |(b15×4) |(b18|x3x4))

Y4=|(|b0|b3|(b9x2) |(b12×4) |b13|(b15|x4x2))

Y5=|(|b13|(b15×2|x4) |(b15|x1|x2|x4) |b19)

Y6=|(|b6|b8|(b9|x2) |(b11×2) |(b16|x3) |(b18x3x4)(b18×1|x4) |(b18|x1|x3|x4) |b20)

Y7=|(|b1|b4|(b7x5) |(b10×5) |(b17×3) |(b18|x1x3|x4))

Y8=|(| (b2|x1) |(b5x1) |b7|x5|x6) |(b10|x5|x6) |(b11|x2))

Y9=|(|(b2|x1) |(b5|x1) |(b15|x1|x2|x4) |(b19|x1))

Y10=|(|(b12|x3) |(b18×4|x3))

За отриманими функціями збудження та виходу будуємо схему автомата Мілі. Вона представлена у додатку 2.

2.3 Структурний синтез автомата Мура

2.3.1 Розмітка ГСА для автомата Мура

Для автомата Мура розмітка ГСА позначається буквою аi (Додаток 1).

Відмічаються всі операторні вершини, вершина початку та кінця позначається а0. Таким чином для автомата Мура ми отримали 23 стани.

2.3.2 Кодування станів

Для оптимального кодування станів автомата використовуємо евристичний метод. Для цього будуємо матрицю Т. Перший стовбець цієї матриці номер вихідного стану, другий — номер стану в який переключається автомат, а третій кількість переходів між даними станами.

Матриця Т:

i

j

P (i, j)

Оптимальне кодування станів буде таким:

Таблиця 11 — Оптимальне кодування станів

a0

a1

a2

a3

a4

a5

a6

a7

a8

a9

a10

a11

a12

a13

a14

a15

a16

a17

a18

a19

a20

a21

a22

2.3.3 Таблиця переходів автомата Мура

На основі ГСА і закодованих стані будуємо таблицю13 переходів автомата.

Останній стовбець таблиці 12 заповнюється за допомогою оберненої таблиці переходів JKтригера (таблиця 12).

Таблиця 12 — Обернена таблиці переходів JKтригера

Q (t)

Q (t+1)

J

K

X

X

X

X

Таблиця 13 — Переходи автомата

а (t)/y

K (a (t))

a (t+1)

K (a (t+1))

x

ФЗ

a0

a1

J3

a1/y2y4

a2

J2J3

a2/y7

a4

|x1

K4

a5

x1

K3

a3/y3y6

a2

x5

K1

a5

|x5|x6

K1K3

a6

|x5x6

K4K5

a4/y1y9

a7

J1K3J4

a5/y8

a7

x2

J1

a8

|x2

J1J3K4

a6/y3

a8

J5

a7/y2y4

a9

K2

a8/y3y6

a9

x5

K2K3J4

a11

|x5|x6

K2J4

a12

|x5x6

K2

a9/y7

a10

|x1

J2K4

a11

x1

J3

a10/y1y9

a3

J3J4

a11/y8

a3

x2

J2

a12

|x2

K4

a12/y1y8

a14

x4

K3

a16

|x3|x4

K3K5

a17

x3|x4

J1

a13/y5y9

a16

|x3x4

J1

a17

x3x4

J3J5

a17

x1|x4

J3J5

a21

|x1|x3|x4

J3

a22

|x1|x3|x4

J5

a14/y4

a15

J4K5

a15/y4y5

a18

K1

a16/y3y10

a18

K1J4

a17/y6

a21

|x3

K5

a22

x3

K3

a18/y1y2

a0

x1|x2|x4

J5

a19

x2|x4

J2

a20

x4

J3

a13

|x1|x2|x4

K4

a19/y4y5

a0

K2J5

a20/y3

a21

K4

a21/y2y6

a0

K3J4J5

a22/y7

a0

x1

J4

a13

|x1

K5

Побудуємо на основі останнього cтовпця функції збудження і переведемо ці функції у зручний базис (і-ні).

J1=|(|a4|a5|(a12|x3x4) |(a13|x3x4))

J2=|(|a1|(a9|x1) |(a11×2) |(a18×2|x4))

J3=|(|a0|a1|(a5|x2)|(a9x1) |a10|(a13x3x4) |(a13×1|x4) |(a13|x1|x3|x4) |(a18×4))

J4=|(|a4|(a8x5) |(a8|x5|x6) |a10|a14|a16|a21|(a22×1))

J5=|(|a6|(a13x3x4) |(a13×1|x4) |(a13|x1x3|x4) |(a18×1|x2|x4) |a19|a21)

K1=|(|(a3x5) |(a3|x5|x6) |a15|a16)

K2=|(|a7|(a8x5) |(a8|x5|x6) |(a8|x5x6) |a19)

K3=|(|a2x1) |(a3|x5|x6) |a4|(a8x5) |(a12×4) |(a12|x3|x4) |(a17×3) |a21)

K4=|(|a2|x1) |(a3|x5x6) |(a5x2) |(a9|x1) |(a11|x2) |(a18|x1|x2|x4) |a20)

K5=|(|(a3|x5x6) |a12|x3|x4) |(a17|x3) |(a22|x1))

Y1=a4+a10+a12+a18

Y2=a1+a7+a18+a21

Y3=a3+a6+a8+a16+a20

Y4=a1+a7+a14+a15+a19

Y5=a13+a15+a19

Y6=a3+a8+a17+a21

Y7=a2+a9+a22

Y8=a5+a11+a12

Y9=a4+a10+a13

Y10=a16

За отриманими функціями збудження та виходу будуємо схему автомата Мура. Вона представлена у додатку 3.

Показати весь текст
Заповнити форму поточною роботою