- •1. Двоичные сигналы в цифровой технике
- •2. Интегральные технологии
- •3. Переключательные схемы. Логические элементы и (and), или (or), не (not)
- •4. Переключательные схемы. Логические элементы и-не (nand) или-не (nor) исключающее или (xor), эквивалентность (xnor), буфер
- •5. Ассоциативность функций и (and), или (or), и-не (nand) или-не (nor), xor, xnor.
- •6. Степени интеграции микросхем. Позитивная и негативная логика
- •7. Операции кубического исчисления конъюнкция (and), дизъюнкция (or), исключающее или (xor)
- •8. Операции кубического исчисления пересечение, объединение и дополнение
- •9. Кубические покрытия элементов и (and), или (or), и-не (nand) или-не (nor), xor, xnor (доделать!!!)
- •10. Два подхода в минимизации систем булевых функций
- •11. Автоматизация проектирования
- •12. Сумматоры
- •13. Мультиплексоры
- •14. Демультиплексоры
- •15. Дешифраторы
- •16. Шифраторы
- •17. Программируемые логические матрицы (плм или pla)
- •18. Программируемая матричная логика (пмл или pal)
- •19. Универсальные логические модули на основе мультиплексоров (lut)
- •20. Асинхронные триггеры: rs-триггер, r*s*-триггер
- •21. Асинхронные триггеры: jk-триггер, j*k*-триггер
- •22. Асинхронные триггеры: d-триггер, vd-триггер, т-триггер
- •23. Синхронные триггеры
- •24. Одноступенчатые и двухступенчатые триггеры
- •25. Параллельные регистры. Последовательные регистры
- •26. Последовательно-параллельные регистры
- •27. Синтез триггеров на базе других триггеров (доделать!!!)
- •28. Определение абстрактного цифрового автомата
- •29. Автомат Мили
- •30. Автомат Мура
- •32. Задание автомата графом переходов
- •33. Табличный способ задания автоматов
- •34. Автоматная лента
- •35. Задание автомата деревом функционирования
- •36. Матричный способ представления автомата
- •37. Алгоритм трансформации автомата Мура в автомат Мили
- •38. Алгоритм перехода от автомата Мили к автомату Мура
- •39. Концепция операционного и управляющего автомата
- •40. Принцип микропрограммного управления
- •41. Содержательные и закодированные гса
- •42. Канонический метод структурного синтеза сложного цифрового автомат
- •43. Канонический метод синтеза микропрограммных автоматов Мили
- •44. Кодирование состояний автоматов с целью минимизации аппаратурных затрат
- •45. Противогоночное кодирование состояний автоматов. Кодирование состояний автоматов, реализуемых на плис
- •46. Канонический метод синтеза микропрограммных автоматов Мура
- •47. Vhdl-модель управляющего автомата Мили
- •48. Vhdl-модель управляющего автомата Мура
- •49. Vhdl-модель операционного автомата
- •50. Синтез канонической структуры операционного автомата
- •51. Характеристики операционного автомата. Явление гонок в операционных автоматах
- •52. Эквивалентные операции и обобщенный оператор
- •53. Операционный автомат типа I
- •54. Операционный автомат типа м
- •55. Оа типа im с параллельной комбинационной частью
- •56. Оа типа im с последовательной комбинационной частью
- •57. Операционный автомат типа s
- •58. Дребезг механических переключателей и метод его устранения
- •59. Делитель частоты
10. Два подхода в минимизации систем булевых функций
Существует два подхода в минимизации систем булевых функций:
- минимизация каждой функции в отдельности;
- совместная минимизация функций системы.
Рассмотрим первое направление. Если произвести минимизацию булевых функций, входящих в систему, независимо друг от друга, то общая схема будет состоять из изолированных подсхем. Ее можно иногда упростить за счет объединения участков подсхем, реализующих одинаковые члены, входящие в несколько булевых функций системы.
Пусть в результате минимизации функций получены следующие МДНФ:
На рис. 2.57 показана реализация системы функций без учета общих частей (термов). Аппаратурные затраты по критерию Квайна без учета инверсий для данной реализации составляют Cb = 18.
На рис. 2.58 показана реализация системы функций с объединением общих частей . Аппаратурные затраты по критерию Квайна без учета инверсий для данной реализации составляют Cb = 14.Очевидно, что данная реализация является более простой (экономичной).
Рисунок 2.57 – Реализация системы функций без учета общих частей
Рисунок 2.58 – Реализация система функций с объединением общих частей
Данный метод не всегда эффективен. Ниже это будет проиллюстрировано примером.
Рассмотрим второе направление. Существуют различные методы, в данном случае предлагается метод минимизации системы булевых функций, являющийся модификацией метода Квайна-Мак-Класки. Алгоритм минимизации следующий. (Для КНФ алгоритм аналогичен).
1. Выписать все минтермы функций (можно в кубической форме), входящие в систему. Каждому минтерму присвоить признак, содержащий номера функций системы, в которые входит рассматриваемый минтерм, например, минтерм 0 (f1, f3) 0000, минтерм 15 (f1) 1111.
2. Выполнить склеивание как в методе Квайна-Мак-Класки. Если признаки склеиваемых элементарных произведений (минтермов и далее импликант) не содержат общих номеров, склеивание не выполняется, поскольку эти элементарные произведения не относятся к одной функции. Результату склеивания (импликантам) присваивать признак, состоящий из номеров функций, общих для двух склеиваемых минтермов или импликант. Не участвовавшие в склеивании импликанты и минтермы являются простыми импликантами и все они составляют сокращенную ДНФ системы, записываемой в виде функции .
3. Построить таблицу покрытий функции , как в методе Квайна-Мак-Класки, с той лишь разницей, что для каждого минтерма выделяется столько столбцов, сколько различных номеров функций содержит его признак. Далее все аналогично, строится минимальная форма функции .
4. Произвести получение выражений МДНФ для каждой функции системы по функции .
Замечание. Если функция не полностью определена, наборы, на которых она не определена, должны участвовать в склеивании, но в таблицу покрытий не вносятся.
Рассмотрим пример. Пусть дана система булевых функций (табл. 2.8). Найдем МДНФ системы булевых функций.
Таблица 2.8 – Таблица истинности системы булевых функций
0 0 0 |
1 1 |
0 0 1 |
0 0 |
0 1 0 |
0 1 |
0 1 1 |
0 1 |
1 0 0 |
0 0 |
1 0 1 |
1 1 |
1 1 0 |
1 0 |
1 1 1 |
1 0 |
Выполняем склеивания.
-
0-кубы
1-кубы
0 – 000 (f1, f2)
v
0 (f1, f2) 2 (f2) = 0х0 (f2)
2 – 010 (f2)
v
2 (f2) 3 (f2) = 01х (f2)
3 – 011 (f2)
v
2 (f2) 6 (f1) нельзя
5 – 101 (f1, f2)
v
3 (f2) 7 (f1) нельзя
6 – 110 (f1)
v
5 (f1, f2) 7 (f1) = 1х1 (f1)
7 – 111 (f1)
v
6 (f1) 7 (f1) = 11х (f1)
В склеивании не участвовали все 1-кубы и два 0-куба 000 (f1) и 101 (f2). Это простые импликанты. Они составляют сокращенную ДНФ функции . Все они войдут в таблицу покрытий.
Строим таблицу покрытий (табл. 2.9)
Таблица 2.9 – Таблица покрытий
Простые импликанты |
Минтермы функции |
||||||||
000 |
010 |
011 |
101 |
110 |
111 |
||||
f1 |
f2 |
f2 |
f2 |
f1 |
f2 |
f1 |
f1 |
||
A |
0x0 (f2) |
|
v |
v |
|
|
|
|
|
B |
01x (f2) |
|
|
v |
v |
|
|
|
|
C |
1x1 (f1) |
|
|
|
|
v |
|
|
v |
D |
11x (f1) |
|
|
|
|
|
|
v |
v |
E |
000 (f1, f2) |
v |
v |
|
|
|
|
|
|
F |
101 (f1, f2) |
|
|
|
|
v |
v |
|
|
Ядро функции составляют простые импликанты B, D, E, F. Остальные импликанты являются лишними и не будут входить в тупиковую и минимальную ДНФ. Т.е. МДНФ функции будет состоять только из ядра.
МДНФ : .
По МДНФ функции строим МДНФ и МДНФ .
МДНФ : .
МДНФ : .
Аппаратурные затраты по критерию Квайна без учета инверсий и с учетом объединения общих частей выражения () составляют Cb =16.
Попробуем для минимизации рассмотренной системы воспользоваться первым подходом, предполагающим минимизацию каждой функции отдельно.
Карта Карно для функции представлена на рис. 2.59
Рисунок 2.59 – Карта Карно для функции
Карта Карно для функции представлена на рис. 2.60
МДНФ : .
Рисунок 2.60 – Карта Карно для функции
МДНФ : .
Общих частей у МДНФ функций нет, в результате аппаратурные затраты по критерию Квайна без учета инверсий составляют Cb =20. По оценке аппаратурных затрат видно, что раздельная минимизация функций системы уступает совместной, хотя последняя является более трудоемкой.