Реализация булевой функции схемой из функциональных элементов — различия между версиями
(→Схемная сложность: описка) |
|||
Строка 1: | Строка 1: | ||
== Логические элементы == | == Логические элементы == | ||
− | ''Функциональный элемент'' (англ. ''Combinational element'') — устройство, предназначенное для обработки информации в цифровой форме. Функциональный элемент имеет ''входы'' и ''выходы''. | + | '''Функциональный элемент''' (англ. ''Combinational element'') — устройство, предназначенное для обработки информации в цифровой форме. Функциональный элемент имеет ''входы'' и ''выходы''. |
Сигналы на входах функционального элемента — аргументы функции, которую реализует функциональный элемент, сигналы на выходах — значение функции от аргументов. | Сигналы на входах функционального элемента — аргументы функции, которую реализует функциональный элемент, сигналы на выходах — значение функции от аргументов. | ||
− | Если входные и выходные сигналы — являются нулями и единицами, элемент называется ''логическим'' (англ. ''logic gate''). | + | Если входные и выходные сигналы — являются нулями и единицами, элемент называется '''логическим''' (англ. ''logic gate''). |
При подаче на входы логического элемента любой комбинации двоичных сигналов, на выходах также возникает сигнал — значение [[Определение булевой функции|булевой функции]]. | При подаче на входы логического элемента любой комбинации двоичных сигналов, на выходах также возникает сигнал — значение [[Определение булевой функции|булевой функции]]. | ||
Строка 25: | Строка 25: | ||
|Стрелка Пирса | |Стрелка Пирса | ||
|- | |- | ||
− | + | |Традиционная форма | |
|[[Image:AND_logic_element.png]] | |[[Image:AND_logic_element.png]] | ||
|[[Image:OR_logic_element.png]] | |[[Image:OR_logic_element.png]] | ||
Строка 32: | Строка 32: | ||
|[[Image:NOR_logic_element.png]] | |[[Image:NOR_logic_element.png]] | ||
|- | |- | ||
− | + | |Прямоугольная форма | |
|[[Image:AND_logic_relement.png]] | |[[Image:AND_logic_relement.png]] | ||
[[Image:AND_logic_relement2.png]] | [[Image:AND_logic_relement2.png]] | ||
Строка 43: | Строка 43: | ||
[[Image:NAND_logic_relement2.png]] | [[Image:NAND_logic_relement2.png]] | ||
|[[Image:NOR_logic_relement.png]] | |[[Image:NOR_logic_relement.png]] | ||
− | |||
[[Image:NOR_logic_relement2.png]] | [[Image:NOR_logic_relement2.png]] | ||
|} | |} | ||
Строка 50: | Строка 49: | ||
{{Определение | {{Определение | ||
− | |definition= '''Схемная сложность''' функции <tex>f</tex> относительно базиса <tex>B</tex> — это минимальное количество функциональных элементов из набора <tex>B</tex>, необходимое для реализации функции <tex>f</tex> в базисе <tex>B</tex>. | + | |definition= '''Схемная сложность''' функции <tex>f</tex> относительно базиса <tex>B</tex> (англ. ''Circuit complexity'') — это минимальное количество функциональных элементов из набора <tex>B</tex>, необходимое для реализации функции <tex>f</tex> в базисе <tex>B</tex>. |
Схемную сложность функции <tex>f</tex> в базисе <tex>B</tex> обозначают так: <tex>size_B(f)</tex> | Схемную сложность функции <tex>f</tex> в базисе <tex>B</tex> обозначают так: <tex>size_B(f)</tex> | ||
}} | }} | ||
Строка 64: | Строка 63: | ||
{{Определение | {{Определение | ||
− | |definition= '''Глубина схемы''' для функции <tex>f</tex> относительно базиса <tex>B</tex> — это максимальная длина пути от входа до выхода по схеме соответствующей функции <tex>f</tex>, состоящей из элементов набора <tex>B</tex>, где за единицу длины принимается один элемент схемы. | + | |definition= '''Глубина схемы''' для функции <tex>f</tex> относительно базиса <tex>B</tex> — это максимальная длина пути от входа до выхода по схеме соответствующей функции <tex>f</tex>, состоящей из элементов набора <tex>B</tex>, где за единицу длины принимается один элемент схемы. |
Глубину схемы для функции <tex>f</tex> в базисе <tex>B</tex> обозначают <tex>depth_B(f)</tex> | Глубину схемы для функции <tex>f</tex> в базисе <tex>B</tex> обозначают <tex>depth_B(f)</tex> | ||
}} | }} | ||
Строка 76: | Строка 75: | ||
}} | }} | ||
Доказательство аналогично доказательству предыдущей теоремы. | Доказательство аналогично доказательству предыдущей теоремы. | ||
+ | |||
+ | == Смотри также == | ||
+ | * [[Простейшие методы синтеза схем из функциональных элементов]] | ||
+ | * [[Сумматор]] | ||
+ | * [[Каскадный сумматор]] | ||
+ | * [[Контактная схема]] | ||
== Источники == | == Источники == | ||
− | * Кормен, Т., Лейзерсон, Ч., Ривест, Р. Алгоритмы: построение и анализ | + | * Кормен, Т., Лейзерсон, Ч., Ривест, Р. Алгоритмы: построение и анализ — 960 с. — ISBN 5-900916-37-5 |
− | * [http://en.wikipedia.org/wiki/Logic_gate | + | * [http://en.wikipedia.org/wiki/Logic_gate Wikipedia — Lodic gate] |
− | * [http://www.intuit.ru/department/calculate/lancalc/2/ Лекция "Схемы из функциональных элементов" в | + | * [http://www.intuit.ru/department/calculate/lancalc/2/ Лекция "Схемы из функциональных элементов" в НОУ "ИНТУИТ"] |
[[Категория: Дискретная математика и алгоритмы]] | [[Категория: Дискретная математика и алгоритмы]] | ||
[[Категория: Схемы из функциональных элементов ]] | [[Категория: Схемы из функциональных элементов ]] |
Версия 22:56, 2 января 2017
Содержание
Логические элементы
Функциональный элемент (англ. Combinational element) — устройство, предназначенное для обработки информации в цифровой форме. Функциональный элемент имеет входы и выходы. Сигналы на входах функционального элемента — аргументы функции, которую реализует функциональный элемент, сигналы на выходах — значение функции от аргументов.
Если входные и выходные сигналы — являются нулями и единицами, элемент называется логическим (англ. logic gate). При подаче на входы логического элемента любой комбинации двоичных сигналов, на выходах также возникает сигнал — значение булевой функции.
Отождествление переменных
Отождествление переменных осуществляется при помощи ветвления проводников.Подстановка
Чтобы осуществить подстановку одной функции в другую нужно выход логического элемента, который реализует первую функцию, направить на вход логического элемента, который реализует вторую функцию.
Изображение логических элементов на схемах
Тип элемента | И | ИЛИ | НЕ | Штрих Шеффера | Стрелка Пирса |
---|---|---|---|---|---|
Традиционная форма | |||||
Прямоугольная форма |
Схемная сложность
Определение: |
Схемная сложность функции | относительно базиса (англ. Circuit complexity) — это минимальное количество функциональных элементов из набора , необходимое для реализации функции в базисе . Схемную сложность функции в базисе обозначают так:
Теорема: |
Для любых базисов , и функции верно неравенство , где константа зависит только от базисов и . |
Доказательство: |
Пусть базис | состоит из функций . Каждый функциональный элемент базиса можно собрать с помощью не более чем элементов из базиса . Собрать в базисе можно следующим образом: заменить каждый элемент схемы в базисе на схему соответствующей функции в базисе . Такая сборка использует не более чем в раз больше функциональных элементов, чем соответствующая схема в . Параметр зависит только от выбранных базисов.
Глубина схемы
Определение: |
Глубина схемы для функции | относительно базиса — это максимальная длина пути от входа до выхода по схеме соответствующей функции , состоящей из элементов набора , где за единицу длины принимается один элемент схемы. Глубину схемы для функции в базисе обозначают
Примечание: понятие глубины имеет смысл только для схем с ограниченной степенью входа (bounded fan-in).
Теорема (аналогична теореме про схемную сложность): |
Для любых базисов , и функции верно неравенство , где константа зависит только от базисов и . |
Доказательство аналогично доказательству предыдущей теоремы.
Смотри также
- Простейшие методы синтеза схем из функциональных элементов
- Сумматор
- Каскадный сумматор
- Контактная схема
Источники
- Кормен, Т., Лейзерсон, Ч., Ривест, Р. Алгоритмы: построение и анализ — 960 с. — ISBN 5-900916-37-5
- Wikipedia — Lodic gate
- Лекция "Схемы из функциональных элементов" в НОУ "ИНТУИТ"