Санкт-Петербургский национальный исследовательский университет информационных технологий, механики и оптики Кафедра вычислительной техники Дискретная математика Курсовая работа «Синтез комбинационных схем» Вариант №129 Часть I Выполнил: Ю. У. Салимзянов Группа: P3111 Преподаватель: В. И. Поляков Санкт-Петербург 2016
31
Embed
Курсовая работа · 2019. 9. 5. · Курсовая работа «Синтез комбинационных схем» Вариант №129 Часть i Выполнил:
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Санкт-Петербургский национальный исследовательский университет
информационных технологий, механики и оптики
Кафедра вычислительной техники
Дискретная математика
Курсовая работа «Синтез комбинационных схем»
Вариант №129
Часть I
Выполнил: Ю. У. Салимзянов
Группа: P3111
Преподаватель: В. И. Поляков
Санкт-Петербург
2016
Булева функция: f = 1 при -2 <= (x1x2-x3x4x5) <= 1
f = d при x1x2-x3x4x5 = -3
1. Составление таблицы истинности
№ x1x2x3x4x5 x1x2 (x1x2)10 x3x4x5 (x3x4x5)10 (x1x2-x3x4x5)10 f
0 00000 00 0 000 0 0 1
1 00001 00 0 001 1 -1 1
2 00010 00 0 010 2 -2 1
3 00011 00 0 011 3 -3 d
4 00100 00 0 100 4 -4 0
5 00101 00 0 101 5 -5 0
6 00110 00 0 110 6 -6 0
7 00111 00 0 111 7 -7 0
8 01000 01 1 000 0 1 1
9 01001 01 1 001 1 0 1
10 01010 01 1 010 2 -1 1
11 01011 01 1 011 3 -2 1
12 01100 01 1 100 4 -3 d
13 01101 01 1 101 5 -4 0
14 01110 01 1 110 6 -5 0
15 01111 01 1 111 7 -6 0
16 10000 10 2 000 0 2 0
17 10001 10 2 001 1 1 1
18 10010 10 2 010 2 0 1
19 10011 10 2 011 3 -1 1
20 10100 10 2 100 4 -2 1
21 10101 10 2 101 5 -3 d
22 10110 10 2 110 6 -4 0
23 10111 10 2 111 7 -5 0
24 11000 11 3 000 0 3 0
25 11001 11 3 001 1 2 0
26 11010 11 3 010 2 1 1
27 11011 11 3 011 3 0 1
28 11100 11 3 100 4 -1 1
29 11101 11 3 101 5 -2 1
30 11110 11 3 110 6 -3 d
31 11111 11 3 111 7 -4 0
2. Представление булевой функции в аналитическом виде
КДНФ: f = x1x2x3x4x5 v x1x2x3x4x5 v x1x2x3x4x5 v x1x2x3x4x5 v x1x2x3x4x5 v x1x2x3x4x5 v
x1x2x3x4x5 v x1x2x3x4x5 v x1x2x3x4x5 v x1x2x3x4x5 v x1x2x3x4x5 v x1x2x3x4x5 v x1x2x3x4x5
v x1x2x3x4x5 v x1x2x3x4x5
ККНФ: f = (x1 v x2v x3 v x4 v x5) (x1 v x2v x3 v x4 v x5) (x1 v x2v x3 v x4 v x5)
(x1 v x2v x3 v x4 v x5) (x1v x2 v x3 v x4 v x5) (x1 v x2 v x3 v x4 v x5) (x1 v x2 v x3 v x4 v x5)
(x1 v x2 v x3 v x4 v x5) (x1 v x2 v x3 v x4 v x5) (x1 v x2 v x3 v x4 v x5) (x1 v x2 v x3 v x4 v x5)
(x1 v x2 v x3 v x4 v x5) (x1 v x2 v x3 v x4 v x5)
3. Минимизация булевой функции методом Квайна-Мак-Класки
a) Нахождение простых импликант
№ Ko(ƒ) N(ƒ) K1(ƒ) K2(ƒ) K3(ƒ) Z(ƒ)
1 00000 v 0000x v 1-2 000xx v 1-7 0x0xx 1-9 01x00
2 00001 v 000x0 v 1-3 0x00x v 1-10 xx01x 6-12 x1100
3 00010 v 0x000 v 1-4 0x0x0 v 2-11 10x01
4 01000 v 000x1 v 2-5 0x0x1 v 4-15 11x10
5 00011 v 0x001 v 2-6 x00x1 4-19 111x0
6 01001 v x0001 v 2-9 0x01x v 7-16 x00x1
7 01010 v 0001x v 3-5 x001x v 7-21 1x10x
8 01100 v 0x010 v 3-7 xx010 v 8-22 0x0xx
9 10001 v x0010 v 3-10 010xx v 10-16 xx01x
10 10010 v 0100x v 4-6 xx011 v 13-26
11 10100 v 010x0 v 4-7 x101x v 16-28
12 01011 v 01x00 4-8 1x01x v 21-28
13 10011 v 0x011 v 5-12 1x10x 23-30
14 10101 v x0011 v 5-13
15 11010 v 010x1 v 6-12
16 11100 v 0101x v 7-12
17 11011 v x1010 v 7-15
18 11101 v x1100 8-16
19 11110 v 100x1 v 9-13
20 10x01 9-14
21 1001x v 10-13
22 1x010 v 10-15
23 1010x v 11-14
24 1x100 v 11-16
25 x1011 v 12-17
26 1x011 v 13-17
27 1x101 v 14-18
28 1101x v 15-17
29 11x10 15-19
30 1110x v 16-18
31 111x0 16-19
b) Составление импликантной таблицы
Простые импликанты (макс. кубы)
0-кубы
00000
00001
00010
01000
01001
01010
01011
10001
10010
10011
10100
11010
11011
11100
11101
1) 01x00 *
2) x1100 *
3) 10x01 *
4) 11x10 *
5) 111x0 *
6) x00x1 * * *
7) 1x10x # * #
8) 0x0xx # * * * # * *
9) xx01x * * * # * * #
Импликанты 7, 8, 9 – существенные, так как они покрывают соответствующие вершины,
непокрытые другими импликантами. Вычеркнем из таблицы строки, соответствующие
этим импликантам, а также столбцы, соответствующие вершинам, покрываемым
существенными импликантами, в результате получаем упрощенную импликатную
таблицу.
c) Определение существенных импликант
Простые импликанты (макс. кубы)
0-кубы
10001
10x01 A *
x00x1 B *
Множество существенных импликант Т =
XXX
XXX
XX
01
00
101
d) Определение минимального покрытия
Метод Петрика
Y=AvB
Возможны следующие варианты покрытия:
C1=
A
T C2=
B
T
𝑆1𝑎=11, 𝑆1
𝑏=15 𝑆2𝑎=10, 𝑆2
𝑏=14
Минимальное покрытие функции - C2 :
Cmin(f) =
100
01
00
101
XX
XXX
XXX
XX
Этому покрытию соответствует МДНФ следующего вида:
f = x1x3x4 v x1x3 v x3x4 v x2x3x5
e) Дальнейшее упрощение импликантной таблицы
Простые импликанты (макс. кубы)
0-кубы
10001
10x01 A *
x00x1 B *
Дальнейшее упрощение невозможно
a) Нахождение простых имплицент
№ Ko(ƒ) N(ƒ) K1(ƒ) K2(ƒ) K3(ƒ) Z(𝑓)
1 00100 v 0010x v 1-4 001xx v 1-9 0x1xx 1-9 00x11
2 10000 v 001x0 v 1-5 0x10x v 1-12 xx11x 6-12 1x000
3 00011 v 0x100 v 1-6 0x1x0 v 2-13 1100x
4 00101 v 1x000 2-7 0x1x1 v 6-17 x01x1
5 00110 v 00x11 3-8 x01x1 6-20 0x1xx
6 01100 v 001x1 v 4-8 0x11x v 9-18 xx11x
7 11000 v 0x101 v 4-9 x011x v 9-21
8 00111 v X0101 v 4-11 xx110 v 10-22
9 01101 v 0011x v 5-8 011xx v 12-18
10 01110 v 0x110 v 5-10 xx111 v 15-24
11 10101 v x0110 v 5-12 x111x v 18-25
12 10110 v 0110x v 6-9 1x11x v 21-25
13 11001 v 011x0 v 6-10
14 01111 v 1100x 7-13
15 10111 v 0x111 v 8-14
16 11110 v x0111 v 8-15
17 11111 v 011x1 v 9-14
18 0111x v 10-14
19 x1110 v 10-16
20 101x1 v 11-15
21 1011x v 12-15
22 1x110 v 12-16
23 x1111 v 14-17
24 1x111 v 15-17
25 1111x v 16-17
b) Составление имплицентной таблицы
Простые имплиценты (макс. кубы)
0-кубы
00100
00101
00110
00111
01101
01110
01111
10000
10110
10111
11000
11001
11111
1) 00x11 *
2) 1x000 # *
3) 1100x * #
4) x01x1 * * *
5) 0x1xx # * * * # * *
6) xx11x * * * * # * #
Импликанты 2, 3, 5, 6 – существенные, так как они покрывают соответствующие
вершины, непокрытые другими имплицентами. Вычеркнем из таблицы строки,
соответствующие этим имплицентам, а также столбцы, соответствующие вершинам,
покрываемым существенными имплицентами, в результате видно, что в ядро входят все
0-кубы.
c) Определение существенных имплицент
Множество существенных имплицент Т =
XXX
XXX
X
X
11
10
1100
0001
d) Определение минимального покрытия
Все 0-кубы попали в ядро, дальнейшее упрощение невозможно
Минимальное покрытие совпадает с ядром: Cmin(𝑓) = Т =
XXX
XXX
X
X
11
10
1100
0001
Этому покрытию соответствует МКНФ следующего вида: