Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
6_ЛАБ_КЛ_2КСМ_2015-16.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
799.23 Кб
Скачать

МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ

ХЕРСОНСЬКИЙ НАЦІОНАЛЬНИЙ ТЕХНІЧНИЙ УНІВЕРСИТЕТ

Кафедра інформацiйних технологій

МЕТОДИЧНІ РЕКОМЕНДАЦІЇ

та контрольні завдання до виконання лабораторних робіт

з дисципліни „Комп’ютерна логіка”

для студентів другого курсу

для напряму підготовки 6.050102 “Комп’ютерна інженерія”

за професійним спрямуванням “Комп’ютерні системи та мережі”

галузі знань 0501 “Інформатика та обчислювальна техніка”

факультету кібернетики та системної інженерії

Частина 6 (лабораторна робота 6)

Херсон – 2016 р.

Методичні рекомендації та контрольні завдання до виконання лабораторних робіт з дисципліни „Комп'ютерна логіка” для студентів другого курсу напряму підготовки 6.050102 “Комп’ютерна інженерія” (за професійним спрямуванням “Комп’ютерні системи та мережі”) галузі знань 0501 “Інформатика та обчислювальна техніка”. Частина 6 (лабораторна робота 6).

Укладач: Веселовська Г.В., доцент кафедри інформаційних технологій ХНТУ, к.т.н., доцент, кількість сторінок 43.

Рецензент: Гучек П.Й., доцент кафедри інформаційних технологій ХНТУ, к.т.н., доцент.

Затверджено

на засіданні кафедри інформаційних технологій ХНТУ,

протокол № 1 від 30.08.2016 р.

Завідувач кафедри інформаційних технологій ХНТУ, д.т.н., професор, заслужений діяч науки і техніки України

____________________ В.Є.Ходаков

Відповідальний за випуск В.Є.Ходаков, завідувач кафедри інформаційних технологій ХНТУ, д.т.н., професор, заслужений діяч науки і техніки України.

Лабораторна робота 6

Тема: Методи мінімізації перемикальних функцiй. Частина 2. Метод Карно-Вейча (графiчний метод мiнiмiзацiї перемикальних функцій); побудова поліному Жегалкина для заданої перемикальної функції за допомогою методу Карно-Вейча; методи мiнiмiзацiї кон`юнктивних нормальних форм перемикальних функцiй; мiнiмiзацiя частково визначених перемикальних функцiй i систем перемикальних функцiй, методи факторизації перемикальних функцій.

Мета роботи: опановування особливостей технологiй мінімізації перемикальних функцій за допомогою методу дiаграм Карно-Вейча, побудови поліному Жегалкина заданої перемикальної функції за допомогою методу карт Карно-Вейча, методiв мiнiмiзацiї кон`юнктивних нормальних форм перемикальних функцій, методiв мiнiмiзацiї частково визначених перемикальних функцiй i систем перемикальних функцій, факторного алгоритму знахождення форми, близької до абсолютно мінімальної.

Базові поняття, що пiдлягають опановуванню:

- особливостi методу дiаграм Карно-Вейча як графiчного методу мiнiмiзацiї перемикальних функцій;

- технологiї роботи з методом дiаграм Карно-Вейча;

- технологія побудови поліному Жегалкина для заданої перемикальної функції за допомогою методу карт Карно-Вейча;

- методи мiнiмiзацiї кон`юнктивних нормальних форм перемикальних функцiй.

- методи мiнiмiзацiї частково визначених перемикальних функцiй;

- методи мiнiмiзацiї систем перемикальних функцiй;

- факторизація перемикальних функцій.

1 Основные теоретические сведения

1.1 Метод диаграмм Карно-Вейча (графический метод минимизации переключательных функций)

Метод диаграмм Карно-Вейча позволяет быстро получать минимальные ДНФ переключательных функций от небольшого числа переменных: в основном, диаграммы Карно-Вейча применяются для функций с числом переменных не более четырех; метод особенно удобен для функций от четырех переменных; указанный метод также можно использовать для функций от трех переменных, но для них обычно используются другие методы.

Метод Карно-Вейча широко используется на практике благодаря простоте и удобству. После небольшой тренировки, формируется навык определения минимальной ДНФ по диаграмме Карно-Вейча с первого взгляда.

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

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

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

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

Для диаграмм Карно-Вейча характерно следующее:

- каждой клетке диаграммы соответствует свой набор;

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

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

Таблица 1 – Общий вид диаграммы Карно-Вейча для переключательной функции двух переменных

Таблица 2 – Общий вид диаграммы Карно-Вейча для переключательной функции трех переменных

Таблица 3 – Общий вид диаграммы Карно-Вейча для переключательной функции четырех переменных

Представленная в таблице 3 диаграмма Карно-Вейча для переключательной функции четырех переменных была получена путем добавления к диаграмме Карно-Вейча для функции трех переменных (таблица 2) еще одной такой же таблицы для функции трех переменных. Аналогично можно получить диаграмму для функции пяти и более переменных.

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

Таблица 4

Конституенты, соответствующие горизонтально расположенной паре единиц в левой части таблицы 4, склеиваются по переменной x3 и порождают элементарное произведение, состоящее из двух букв: х1х23 v x1x2x3 = x1x2

То же справедливо и для вертикально расположенной пары единиц в правой части таблицы 4, склеивающихся по переменной x2 и порождающих элементарное произведение из двух букв: 1х23 v /x1/x2/x 3 = /x1/x3

Важной особенностью диаграмм Карно-Вейча является то, что столбцы и строки, расположенные по краям диаграммы, считаются соседними. Для приведенного выше примера, данное утверждение означает, что имеет место склеивание по переменной x1, в результате которого, следуя указанному правилу, получаем элементарное произведение x2/x3.

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

Из рассмотренных ранее методов известно, что возможно дальнейшее склеивание получаемых элементарных произведений.

На диаграммах Карно-Вейча они тоже располагаются рядом.

Общее правило склеивания на диаграммах Карно-Вейча можно сформулировать следующим образом:

- склеиванию подлежат прямоугольные конфигурации, заполненные единицами и содержащие число клеток, являющееся степенью числа 2;

- новое элементарное произведение определяется как произведение переменных, не меняющих своего значения на всех склеиваемых наборах.

Для переключательной функции от n переменных и при количестве склеиваемых наборов М, число m оставшихся в элементарном произведении переменных определяется из формулы m = n - log2M.

Рассмотрим принцип построения карты Карно-Вейча детальнее для наиболее применимого случая переключательной функции четырех переменных.

Как правило, вдоль границ диаграммы Карно-Вейча по вертикали разме-щают переменные x1 и x2, а по горизонтали ˗ переменные x3 и x4. Пары пере-меных выписываются в порядке (00), (01), (11), (10) (с применением кода Грея). Далее в таблицу заносят значения функции для данных значений переменных.

Для функции обобщенного вида f = (f0000 f0001 f0010 f0011 f0100 f0101 f0110 f0111 f1000 f1001 f1010 f1011 f1100 f1101 f1110 f1111), получим следующий промежуточный результат:

x3

0

0

1

1

x4

0

1

1

0

x1

x2

0

0

f0000

f0001

f0011

f0010

0

1

f0100

f0101

f0111

f0110

1

1

f1100

f1101

f1111

f1110

1

0

f1000

f1001

f1011

f1010

На полученной карте Карно-Вейча, находим все максимально возможные блоки единиц вида 2k × 2l; где k, l ∈ N, учитывая следующее: карта является закольцованной; блоки могут пересекаться, но не должны включать друг друга.

Для каждого блока, выписываем вектор, в котором размещаем: знак «–», если переменная в пределах блока меняла значение; значение переменной (0 либо 1), если переменная в пределах блока не меняла значения.

Для тех позиций вектора i, в которых стоит знак σ ∈ {0, 1}, в элементарную кон`юнкцию добавляется xiσ.

Дизъюнкция всех полученных элементарных кон`юнкций и является сокращённой ДНФ.

Пдведем итоги рассмотренной информации о методе Карно-Вейча.

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

Считается, что: левый край диаграммы Карно-Bейча примыкает к ее правому краю, а верхний край диаграммы примыкает к ее нижнему краю.

После получения минимального покрытия всех единиц диаграммы Карно-Вейча, минимальная ДНФ булевой функции записывается как дизъюнкция элементарных конъюнкций, соответствующих выделенным блокам единиц в диаграмме.

Рассмотрим пример применения изложенных выше соображений, найдя для функции f = (1010 0110 0111 1101) сокращённую ДНФ.

Для решения задачи, построим следующую карту Карно-Вейча:

На основании карты Карно-Вейча, получим следующие блоки:

(0 0 − 0) = /x1 /x2 /x4; (0 − 1 0) = /x1 x3 /x4; (− 0 1 0) = /x2 x3 /x4;

(− 1 0 1) = x2 /x3 x4; (1 1 0 −) = x1 x2 /x3; (1 0 1 −) = x1 /x2 x3;

(1 − − 1) = x1x4

В результате, получаем сокращённую ДНФ следующего вида:

/x1 /x2 /x4 ∨ /x1 x3 /x4 ∨ /x2 x3 /x4 x2 /x3 x4 x1 x2 /x3 x1 /x2 x3 x1x4.

Рассмотрим другие примеры применения метода Карно-Вейча.

Пример 1. Необходимо найти с помощью диаграммы Карно-Вейча минимальную ДНФ переключательной функции f, заданной СДНФ вида f =х1х2х3 v х12х3 v /х123 v /х1231х23. Для решения задачи, составим диаграмму Карно-Вейча, соответствующую функции f (таблица 5).

Таблица 5

Минимальное покрытие всех единиц данной диаграммы возможно только блоками по две единицы. Каждому такому блоку соответствует своя конъюнкция. Следовательно, минимальная ДНФ функции f = х1х2 v /х12 v х1х3.

Пример 2. Переключательная функция f1 имеет диаграмму Карно-Вейча, представленную таблицей 6. Тогда минимальная ДНФ функции f1 примет вид f1 = х1х2х3 v /х1х4.

Таблица 6

Пример 3. Переключательная функция f2 имеет диаграмму Вейча, представленную таблицей 7. Тогда минимальная ДНФ функции f2 примет следующий вид: f21х2х4 v х2х34 v х1х3 v /х2х3х4 v х1х2х3x4.

Таблица 7

Пример 4. Пусть переключательная функция f3 имеет диаграмму Вейча, представленную таблицей 8. Тогда минимальная ДНФ функции f3 примет следующий вид: f334 v /х3х4.

Таблица 8

Пример 5.

Пусть переключательная функция f4 имеет диаграмму Вейча, представленную таблицей 9. Тогда минимальная ДНФ функции f4 примет следующий вид: f4=/х3х4 v /х1х4 v х1х34.

Таблица 9

Пример 6. Пусть переключательная функция f5 имеет диаграмму Вейча, представленную таблицей 10. Тогда минимальная ДНФ функции f5 примет следующий вид: f53 v х4.

Таблица 10

Пример 7. Пусть переключательная функция f6 имеет диаграмму Вейча, представленную таблицей 11. Тогда минимальная ДНФ функции f6 примет следующий вид: f63х4 v /х34 v х1х2х3.

Таблица 11