- •Часть 1
- •Раздел 1. Этапы развития и эволюция интеллектуальных свойств эвм
- •Тема 1.1. Этапы развития эвм. Особенности традиционных и интеллектуальных эвм
- •Тема 1.2. Эволюция интеллектуальных свойств эвм
- •Раздел 2. Информационные основы построения эвм
- •Тема 2.1. Системы счисления. Формы представления, виды кодирования и форматы чисел, применяемые в эвм
- •2.1.1. Системы счисления, применяемые в эвм
- •2.1.2. Формы представления чисел в эвм
- •2.1.3. Кодирование чисел в эвм
- •2.1.4. Форматы данных, применяемые в эвм
- •Тема 2.2. Выполнение арифметических операций в эвм
- •2.2.1. Выполнение операций сложения/вычитания чисел, представленных в форме с фиксированной точкой
- •2.2.2. Выполнение операций умножения чисел, представленных в форме с фиксированной точкой
- •2.2.3. Выполнение операций деления чисел, представленных в форме с фиксированной точкой
- •2.2.4. Выполнение операций сложения/вычитания чисел, представленных в форме с плавающей точкой
- •2.2.5. Выполнение операций умножения/деления чисел, представленных в форме с плавающей точкой
- •Раздел 3. Логические основы построения эвм
- •Тема 3.1. Основные элементы алгебры логики
- •Тема 3.2. Синтез комбинационных устройств. Основные методы минимизации логических функций
- •3.2.1. Синтез комбинационных устройств
- •3.2.2. Сложность логических формул. Основные методы минимизации логических функций
- •Тема 3.3. Функциональная полнота различных наборов элементарных логических функций
- •3.3.1. Полная совокупность элементарных логических функций
- •3.3.2. Абсолютная полнота наборов элементарных логических функций
- •Тема 3.4. Синтез комбинационных устройств в различных базисах
- •Тема 3.5. Некоторые особые случаи синтеза комбинационных схем.
- •3.5.1. Синтез комбинационных схем с несколькими выходами
- •3.5.2. Синтез комбинационных схем, характеризующихся не полностью определенной функцией
- •Тема 3.6. Принципы построения функциональных устройств
- •3.6.1. Элементный базис для построения функциональных устройств
- •3.6.2. Построение различных функциональных устройств (с использованием триггеров и без)
- •Тема 3.7. Синтез цифровых автоматов
- •3.7.1. Определения
- •3.7.2. Задание ца с памятью
- •3.7.3. Структурный синтез ца с памятью. Выбор функционально полной системы элементов для синтеза ца с памятью
- •Раздел 4. Принципы построения и функционирования эвм и устройств эвм
- •Тема 4.1. Основные сведения о принципах организации, составе и порядке функционирования эвм
- •4.1.1. Основные понятия о принципах организации эвм
- •4.1.2. Состав и порядок функционирования эвм
- •Тема 4.2. Функциональная организация эвм
- •Тема 4.3. Режимы работы эвм
- •Тема 4.4. Принципы построения и функционирования обрабатывающих подсистем эвм
- •4.4.1 Общие сведения о принципах построения обрабатывающих подсистем эвм
- •4.4.2. Устройство управления
- •4.4.3. Арифметико-логическое устройство
- •4.4.4. Микропроцессорная память
- •4.4.5. Организация прерывания в многопрограммных эвм
- •Тема 4.5. Принципы построения устройств памяти
- •4.5.1. Общие сведения об устройствах памяти
- •4.5.2. Методы размещения и поиска информации в памяти
- •4.5.3. Организация памяти в многопрограммных системах
- •4.5.4. Иерархическая организация внутренней памяти эвм
- •4.5.5. Защита памяти в многопрограммных эвм
- •Тема 4.6. Организация ввода-вывода в многопрограммных эвм
- •Раздел 5. Развитие структуры и архитектуры эвм
- •Тема 5.1. Основные тенденции и направления развития структуры эвм и подсистем эвм
- •5.1.1 Общие сведения об основных тенденциях и направлениях развития структуры эвм
- •5.1.2. Развитие обрабатывающей подсистемы
- •5.1.3. Развитие подсистемы внутренней памяти
- •5.1.4. Развитие подсистемы ввода-вывода
- •5.1.5. Развитие подсистемы управления и обслуживания
- •Тема 5.2. Развитие операционных сред (архитектур) в эвм
- •5.2.1. Архитектура виртуальных эвм
- •5.2.2. Архитектура объектной эвм
- •5.2.3. Архитектура интеллектуальной эвм
- •Тема 5.3. Языки функционального и логического программирования и соответствующие им компьютеры
- •5.3.1. Общие сведения об языках функционального и логического типов
- •5.3.2 Языки программирования логического типа
- •5.3.3. Языки программирования функционального типа
- •5.3.4. Логические и функциональные машины
- •Раздел 6. Параллельные компьютеры для интеллектуальных систем
- •Тема 6.1. Особенности интеллектуальных систем обработки знаний. Классификация параллельных архитектур
- •Тема 6.2. Особенности многопроцессорных систем
- •Тема 6.3. Графодинамические параллельные асинхронные машины
- •Литература
Тема 3.2. Синтез комбинационных устройств. Основные методы минимизации логических функций
3.2.1. Синтез комбинационных устройств
Комбинационным устройством (КУ) будем называть устройство, не обладающее памятью и в котором выходные сигналы в любой момент времени определяются только комбинацией входных сигналов, реализующее любой наперед заданный закон преобразования двоичной информации.
Синтез комбинационного устройства подразделяется на 4 этапа:
1) составление таблицы истинности синтезируемого КУ согласно его определению, назначению и описанию принципов работы;
2) составление математических формул для логических функций, описывающих работу синтезируемого КУ согласно таблице истинности;
3) анализ полученных функций с целью построения различных вариантов ее математического выражения (на основании законов алгебры логики) и нахождение наилучших из них в соответствии с тем или иным критерием;
4) составление функциональной (логической) схемы КУ из элементов НЕ, И, ИЛИ.
Рассмотрим синтез КУ на примере синтеза полусумматора, имеющего 2 входа (слагаемые x1 и x2) и 2 выхода (цифры суммы S и переноса P).
1-й этап. Составим таблицу истинности КУ (таблица 3.3).
Таблица 3.3. Таблица истинности комбинационного устройства
1-я цифра – слагаемое x1 |
0 |
0 |
1 |
1 |
2-я цифра – слагаемое x2 |
0 |
1 |
0 |
1 |
Цифра переноса P |
0 |
0 |
0 |
1 |
Цифра суммы S |
0 |
1 |
1 |
0 |
2-й этап
Методика перехода от таблицы истинности к аналитическому выражению подробно изложена в [9]. Приведем только конечную форму и правила записи аналитического выражения функции на основании таблицы истинности.
Аналитическое выражение функции записывается в одной из двух форм:
а) совершенной дизъюнктивной нормальной форме (СДНФ)
(3.1)
где xi (x1, x2...xn) – двоичные переменные (входные аргументы),
j–номер набора аргументов в таблице истинности,
[xi]j – индекс, определяющий, что значения переменной xi берутся из таблицы истинности для j-набора;
б) совершенной конъюнктивной нормальной форме (СКНФ)
(3.2)
Эти формы называются нормальными, потому что все члены функций в данном случае имеют вид элементарных дизъюнкций или конъюнкций.
Они называются совершенными, потому что все члены этих выражений имеют высший ранг, т.е. являются конституентами.
Напомним правила получения аналитической записи логической функции для некоторого КУ [9].
Правило 1
Для того чтобы получить аналитическое выражение функции, заданной таблично, в СДНФ, необходимо составить сумму (V) конституент единицы для всех наборов входных двоичных переменных, для которых реализация функции fj = 1, причем символ любой переменной в некоторой конституенте берется со знаком отрицания, если конкретное значение переменной [xi]j в рассматриваемом наборе равно 0.
Применив это правило для функций P и S полусумматора, на основании таблицы 3.3 получим:
;(3.3а)
.
Правило 2
Для того чтобы получить аналитическое выражение функции, заданной таблично, в СКНФ, необходимо составить произведение (конъюнкцию) конституент нуля для всех наборов входных двоичных переменных, для которых реализация функции fj = 0, причем символ любой переменной в некоторой конституенте берется со знаком отрицания, если ее конкретное значение [xi]j в рассматриваемом наборе равно 1.
Применив это правило для функций P и S полусумматора, на основании таблицы 3.3, получим:
(3.3 б)
Формы представления функций СДНФ и СКНФ являются каноническими. К ним можно перейти не только от табличной, но и от произвольной аналитической записи функции.
В общем случае переход от произвольной формы к СДНФ или СКНФ производится в 3 шага:
1. С помощью многократного применения законов инверсии (НЕ) общие и групповые отрицания снимаются так, чтобы инверсия оставалась только у одиночных переменных.
2. С помощью распределительных законов производится переход к одной из нормальных форм:
– для перехода к СДНФ – применяется закон 1-го рода;
– для перехода к КНФ – закон 2-го рода.
3. Производится преобразование членов ДНФ или КНФ в соответствующие конституенты при помощи правила развертывания.
Пример 3.1
Преобразовать функцию , заданную в некоторой произвольной форме, в СДНФ и СКНФ.
Решение:
1-шаг – применяя к исходной функции правило инверсии, снимаем общие и групповые отрицания
2-шаг – применяя распределительные законы, приводим функцию к ДНФ и КНФ.
а)
б)
3-шаг – применяя правила развертывания, преобразуем функцию в СДНФ и СКНФ
а)
б)
3–й этап
Анализ и оптимизация (минимизация) логических функций являются важнейшими в синтезе КУ. Поэтому эти вопросы будут рассмотрены отдельно (см. подраздел 3.2.2.).
4-й этап
Построение схемы основано на прямом замещении элементарных произведений, сумм и отрицаний соответственно конъюнкторами (&), дизъюнкторами (1) и инверторами (1).
На рисунках 3.2 и 3.3 приведены функциональные схемы полусумматора, реализующие функции P и S, представленные в СДНФ и СКНФ соответственно.
Рисунок 3.2.
Рисунок 3.3.