Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

УП часть 2 ТА

.pdf
Скачиваний:
28
Добавлен:
31.05.2015
Размер:
681 Кб
Скачать
☆

Ю. С. Акинина, C.В. Тюрин

ЭЛЕМЕНТЫ ТЕОРИИ АВТОМАТОВ (Часть II)

Учебное пособие

Воронеж 2012

ФГБОУ ВПО «Воронежский государственный технический университет»

Ю. С. Акинина, C.В. Тюрин

ЭЛЕМЕНТЫ ТЕОРИИ АВТОМАТОВ (Часть II)

Утверждено Редакционно-издательским советом университета в качестве учебного пособия

Воронеж 2012

УДК 519.713 (075)

Акинина Ю.С., Тюрин С.В.Элементы теории автоматов (Часть II). Учеб. пособие. Воронеж: Воронеж. гос. техн. ун-т, 2012. 84 с.

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

Освещены вопросы программируемых логических интегральных схем. Изложены принципы построения и функционирования некоторых последовательностных устройств.

Учебное пособие предназначено для студентов технических вузов, обучающихся по специальности 230101 "Вычислительные машины, комплексы, системы и сети".

Табл. 30. Ил. 34. Библиогр.: 14 назв.

Научный редактор д-р техн. наук С.Л. Подвальный

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

к. т. н. Олейникова С.А.;

Печатается по решению редакционно-издательского совета Воронежского государственного технического университета.

©Акинина Ю.С., Тюрин С.В., 2012

©Оформление. Издательство Воронежского государственного технического университета, 2012

1. МИНИМИЗАЦИЯ ЛОГИЧЕСКИХ ФУНКЦИЙ

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

Для рассмотрения вопроса минимизации необходимо сформулировать следующие определения.

Совершенной дизъюнктивной нормальной формой (СДНФ)

логической функции f (x1,..., xn ) называется дизъюнкция

элементарных конъюнкций максимального ранга (n), соответствующих наборам всех входных переменных, на которых значение логической функции равно 1.

Дизъюнктивной нормальной формой (ДНФ) логической

функции f (x1,..., xn ) называется дизъюнкция элементарных конъюнкций функции, ранг хотя бы одной из которых меньше

максимального ранга (n).

 

 

 

 

 

Сокращенной

дизъюнктивной нормальной

формой

логической

функции

f (x1,..., xn )

называется

такая

ДНФ,

реализующая

f (x1,..., xn ) , которая

состоит из

элементарных

конъюнкций, ранг хотя бы одной из которых меньше максимального ранга (n) и которые не могут быть более склеены (т.е. объединены) между собой. Такие элементарные конъюнкции принято называть

импликантами.

Тупиковой дизъюнктивной нормальной формой логической функции f (x1,..., xn ) называется такая ДНФ, реализующая

f (x1,..., xn ) , в которой ни одна из импликант не является лишней, то есть ни одна из импликант не может быть удалена из

формулы.

 

 

 

Кратчайшей

дизъюнктивной нормальной

формой

логической функции

f (x1,..., xn ) называется такая

ДНФ,

реализующая f (x1,..., xn ) , в которой количество импликант минимально по сравнению с другими ДНФ, реализующими

функцию f (x1,..., xn ) .

 

 

 

 

Минимальной

дизъюнктивной

нормальной

формой

логической

функции

f (x1,..., xn ) называется такая

ДНФ,

реализующая

f (x1,..., xn ) , в которой

минимально количество

букв переменных по сравнению с другими ДНФ, реализующими функцию f (x1,..., xn ) .

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

Исходная таблица истинности

СДНФ логической функции

Сокращенная ДНФ функции

Тупиковая ДНФ функции

Кратчайшая и минимальная ДНФ функции

Задача минимизации логических функций осложнена

следующими обстоятельствами:

 

1. Общее

количество

ДНФ логической функции

f (x1,..., xn ) ,

зависящей от

n-переменных, определяется

величиной 23n . Число “3” определяется тем, что возможны три исхода: любая логическая переменная может входить в ДНФ со значением инверсии, без знака инверсии, может не входить в

элементарную конъюнкцию, то есть

 

D

 

= 23n , где

 

D

 

-

 

 

 

 

мощность множества D, состоящего из объектов ДНФ логической функции f (x1,..., xn ) [1].

2.Среди множества D содержится одна единственная

СДНФ логической функции f (x1,..., xn ) и некоторое количество тождественных ей сокращенных и тупиковых ДНФ, реализующих

функцию f (x1,..., xn ) . В настоящее время не существует какого-

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

3. Вид тождественной ДНФ логической функции существенно зависит от формы записи СДНФ и порядка преобразований, производимых над СДНФ логической функции.

Все известные на сегодня способы минимизации логических функций могут быть поделены на 2 большие группы:

1.Методы минимизации одновыходных логических

функций.

2.Методы минимизации системы логических функций, зависящих от n-аргументов.

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

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

1.

a × K +

a

× K = K - склеивание, где a - переменная, К

– элементарная конъюнкция.

 

 

 

a × K +

 

× K = a × K +

 

× K + K

 

 

2.

a

a

-

неполное

склеивание.

 

 

 

 

 

 

 

 

 

3.a × K1 + a × K 2 = a × K1 + a × K 2 + K1 K 2 - обобщенное

склеивание.

4. K1 × K 2 + K1 = K1 - поглощение.

1.1 Методы минимизации логических функций на основе прямых преобразований СДНФ

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

Проиллюстрируем применение метода Квайна для минимизации логической функции F(a,b,c) , заданной следующей

таблицей истинности (табл. 1.1):

Таблица 1.1

a

b

c

F(a,b,c)

0

0

0

1

0

0

1

1

0

1

0

1

0

1

1

0

1

0

0

0

1

0

1

1

1

1

0

1

1

1

1

1

Выпишем СДНФ функции F(a,b,c) :

F СДНФ (a,b,c) =

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

abc + abc + abc + abc + abc + abc

(1.1)

Пронумеруем каждую конъюнкцию из (1.1) следующим образом:

 

 

1

 

 

 

2

 

3

 

4

5

 

6

 

F СДНФ (a,b,c) = abc+ abc+ abc+ abc+ abc+ abc

(1.2)

Затем, склеиваем (если это возможно) каждый из членов выражения (1.2) с последующими членами это выражения и

записываем полученные импликанты так, как показано в таблице

1.2.:

Таблица 1.2

Номера склеиваемых

Импликанты, полученные

конъюнкций

в результате склеивания

 

(если склеивание возможно)

1-2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

abc + abc = ab

1-3

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

abc + abc = ac

1-4

 

 

 

 

не склеиваются

1-5

 

 

 

 

не склеиваются

1-6

 

 

 

 

не склеиваются

2-3

 

 

 

 

не склеиваются

2-4

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

abc + abc = bc

2-5

 

 

 

 

не склеиваются

2-6

 

 

 

 

не склеиваются

3-4

 

 

 

 

не склеиваются

3-5

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

abc + abc = bc

3-6

 

 

 

 

не склеиваются

4-5

 

 

 

 

не склеиваются

4-6

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

abc + abc = ac

 

5-6

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

abc + abc = ab

 

Соединяя полученные импликанты знаками дизъюнкции, получаем сокращенную ДНФ логической функции F (a,b,c) :

F Сокр. ДНФ (a,b,c) =

 

 

 

 

 

 

 

 

 

 

 

ab + ac + bc + bc + ac + ab

(1.3)

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

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

1.2 Метод испытания импликант

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

Существо метода состоит в следующем: из формулы, являющейся сокращенной ДНФ, выбирается испытываемая импликанта (можно произвольным образом). Выбранная импликанта приравнивается к 1. Далее определяются значения логических переменных, обращающих в 1 испытываемую импликанту. Из сокращенной ДНФ удаляется испытываемая импликанта, а в оставшуюся часть сокращенной ДНФ подставляются найденные значения логических переменных, обращающих в 1 испытываемую импликанту. Если в результате такой подстановки значение логической функции равно единичному значению, то испытываемая импликанта является лишней (избыточной) и может быть удалена из сокращенной ДНФ логической функции. После удаления лишней импликанты также испытываются все импликанты, входящие в сокращенную ДНФ.

Рассмотрим метод испытания импликант на примере.

Пусть логическая функция F(a,b,c) , представлена в виде

сокращенной ДНФ, полученной по методу Квайна (1.3):

 

F Сокр. ДНФ (a,b,c) = ab + ac + bc + bc + ac + ab

(1.3)

Испытаем импликанты в (1.3). Первой будем испытывать импликанту ab .

Импликанта ab обращается в 1 при следующих значениях логических переменных:

1.ab =1, при a =0, b =0. Подставляя найденные значения

в(1.3), предварительно исключив из формулы испытываемую импликанту, получим:

1× c +1× c + 0 × c + 0 × c + 0 × 0 = 1 Þ импликанта ab является

лишней и должна быть удалена из формулы.

Таким же образом испытаем оставшиеся в формуле импликанты.

2. ac =1, при a =0, c =0.

b × 0 + b ×1 + 0 × 0 + 0 × b = b Þ импликанта ac не является лишней. Оставляем ее в формуле.

3. bc = 1, при b =0, c =1.

a × 0 + 0 × 0 +1× c + a × 0 = c Þ импликанта bc не является лишней. Оставляем ее в формуле.

4. bc =1, при b =1, c =0.

 

 

×1+ 0 × 0 + a × 0 + a ×1 = 1

 

 

является лишней и

 

a

Þ импликанта bc

должна быть удалена из формулы.

 

 

 

 

5.

ac =1, при a =1, c =1.

ac

 

 

0 × 0 +

 

×1 + 1× b = 1

Þ

импликанта

является лишней и

b

должна быть удалена из формулы.

 

 

 

 

6.

ab =1, при a =1, b =1.

 

 

 

 

0 ×

 

+ 0 × c = 0 Þ

импликанта ab

 

 

 

c

не

 

является лишней.

Оставляем ее в формуле.

После испытания импликант получаем одну из тупиковых ДНФ логической функции F (a,b,c) :

F Тупиковая ДНФ (a,b, c) =

 

 

 

 

 

ac + bc + ab

(1.4)

1

 

 

 

 

 

Если начать испытание импликант в (1.3) не с первой импликанты, а с какой-либо другой, выбранной произвольным образом, то можно получить некоторое количество тождественных сокращенных и тупиковых ДНФ, реализующих