
- •Ю.В.Шаповалов Схемотехника эвм Конспект лекций
- •Глава 1.
- •Глава 2. Основы алгебры логики.
- •§1. Функции алгебры логики и их основные свойства.
- •Диаграммы Венна.
- •Здесь 0 представлен как класс, совсем не имеющий точек, а 1 – как класс всех точек квадрата.
- •§2. Формы записи булевых функций. Табличная запись.
- •Аналитическая запись.
- •§3. Основная теорема.
- •§4. Выражение функции в сднф и скнф с помощью аналитических преобразований.
- •§5. Способы выявления равносильности булевых функций.
- •§6. Свойства функций сложения по модулю 2.
- •Алгоритм построения.
- •§7. Основные классы функций алгебры логики.
- •Класс линейных функций от n аргументов (Ln).
- •Класс функций, сохраняющих единицу (к1).
- •Класс монотонных булевых функций (м).
- •Класс самодвойственных функций (u).
- •Подставляя функции φi вместо аргументов XI, получаем
- •Найдем значение функции f2 на противоположных наборах аргументов
- •§8. Полные системы булевых функций.
- •Раздел 2. Минимизация булевых функций.
- •§1. Сокращенные, тупиковые и минимальные формы булевых функций.
- •§2. Метод Квайна.
- •Алгоритм метода Квайна.
- •§3. Гарвардский метод.
- •§4. Метод импликантных матриц.
- •§5. Минимизация булевых функций с помощью карт Вейча.
- •Правила склеивания с помощью карт Вейча.
- •Метод Блека-Порецкого.
- •§6. Минимальные конъюнктивные нормальные формы булевых функций.
- •Из них обязательными является ас и . Функция имеет две минимальные формы:
- •§8. Абсолютные минимальные представления булевых функций.
- •Раздел 3.
- •§1. Синтез логических схем на интегральных элементах.
- •Синтез схем на элементах типа «не-или».
- •Берем двойное отрицание от каждой суммы
- •Импликанты и объединяются по правилу 1, а не объединяется с ними:
- •§2. Синтез логических схем на мультиплексорах.
- •Глава 3. Структурный и абстрактный синтез устройств вм.
- •Глава 4.Сверхбольшие интегральные схемы
- •4.1. Классификация сбис программируемой логики
- •1. Степень интеграции
- •Соединений.
- •4. Технология изготовления программируемого элемента
- •4.2 Семейство max Общая характеристика.
- •Программируемая матрица соединений.
- •Макроячейка.
- •Разделяемый расширитель.
- •Блок ввода/вывода
- •Глава 5. Методы и средства функционального синтеза
- •2.4. Детерминированные методы расчета элементов и узлов
Алгоритм построения.
Чтобы булеву функцию, заданную таблицей значений или любым другим способом, представить в виде многочлена, достаточно:
записать функцию в виде суммы по mod 2 минтермов, равных единице на тех же наборах, на которых равна заданная функция;
все аргументы, входящие в полученное выражение в инверсной форме, заменить с помощью соотношения
;
раскрыть скобки и сделать приведение подобных членов с учетом тождества:
x, если n нечетно;
0, если n четно.
N
Пример. Представить в виде многочлена функцию f14(AB):
f7(AB)=
m0+m1+m2=
m0
m1
m2=
Пример. Представить в виде многочлена функцию f9(AB):
f9(AB)=
m0+m3=
m0
m3=
.
На базе функции 1, /\ и строится алгебра Жегалкина, но по своим свойствам она более близка к обычной алгебре и отличается от последней лишь тем, что логическое сложение заменено сложением по mod 2.
§7. Основные классы функций алгебры логики.
Рассмотрим пять классов булевых функций, которые называются замечательными классами, так как функции, принадлежащие к этим классам, обладают следующими свойствами: любая булева функция, полученная с помощью операций суперпозиции и подстановки из функций одного класса, обязательно будет принадлежать к тому же классу.
Напомним, что подстановкой называется замена одних аргументов функции другими или изменение порядка записи аргументов; суперпозицией называется подстановка в функцию вместо ее аргументов других функций.
Класс линейных функций от n аргументов (Ln).
В соответствии с теоремой Жегалкина любая булева функция представлена в виде полинома.
Булева функция называется линейной, если она может быть представлена полиномом первой степени, т.е. записана в виде
f(x1 x2 … xn)= α0 α1 x1 α2 x2 … αn xn,
где α0, α1, … , αn – коэффициенты, равные 0 или 1.
Число различных линейных функций n переменных равно числу различных наборов вида <α0 α1 … αn > и равно 2n+1.
Пример. n=2. Класс L2 состоит из 8 функций:
f0(xy)=0; f3(xy)=x; f5(xy)=y;
f6(xy)=
;
f9(xy)=1
x
y;
f10(xy)=1 y; f12(xy)=1 x; f15(xy)=1.
Отметим, что переключательные функции одного аргумента все линейны:
L1: f0(x)=0, f1(x)=x, f2(x)=1 x, f3(x)=1.
Теорема. При суперпозиции линейных функций и при подстановке в эти функции других переменных получаются линейные переключательные функции и только они.
Дано f1(x1 x2 … xn)= α0 α1 x1 … αn xn;
φ1(y1
y2 …
)=
b10
b11 y1
…
;
φ2(y1
y2 …
)=
b20
b21 y1
…
;
. . . . . . . . . . . . . . . . . . . .
φn(y1
y2 …
)=
bn0
bn1
y1
…
,
Подставим φi вместо xi функции f1 , получим выражение f2, в котором постоянные коэффициенты умножаются на линейные функции. Приведя подобные члены, получим представление функции f2 в виде линейного полинома.
Пример. f1(x1 x2 x3)=1 x1 x2 x3;
x1=φ1(y1 y2 y3 y4)= y1 y3 y4;
x2=φ2(y1 y2)= 1 y1 y2;
x3=φ3(y1 y2 y3 y4)= 1 y1 y2 y3 y4;
f2(y1 y2 y3 y4)= 1 φ1(y1 y2 y3 y4) φ2(y1 y2) φ3(y1 y2 y3 y4)=
=1 y1 y3 y4 1 y1 y2 1 y1 y2 y3 y4=1 y1.
При любых подстановках xi функция остается линейной.
Из линейных функций нельзя получить нелинейную, а наоборот можно.
Класс функций, сохраняющих нуль (К0).
Если функция на нулевом наборе аргументов <00…0> равна нулю, то говорят, что функция сохраняет нуль:
f(000…0)=0.
При фиксированном
n число таких функций
составляет половину всех булевых функций
n аргументов, т.е.
.
Пример. n=2. В класс К0 входят следующие функции:
f0(xy), f1(xy) , f2(xy) , f3(xy) , f4(xy) , f5(xy) , f6(xy) , f7(xy).
При суперпозиции переключательных функций, сохраняющих нуль, и при подстановке в эти функции других переменных получаются переключательные функции, сохраняющие нуль и только они.
Пусть имеем
f1(x1
x2
… xn),
φ1(y1
y2
…
),
…, φn(y1
y2
…
).
Все эти функции сохраняют нуль на нулевом наборе. Подставив вместо xi функции φi, получим новую функцию
f2(y1
y2
…
)=
f1(φ1,φ2,
…,φn ).
Найдем значение f2 на нулевом наборе:
f2 (00 …0)= f1 (000 …0)=0.
Так как на нулевом наборе все аргументы равны нулю, то любая подстановка этих аргументов не изменит значение функции.