Эта статья прислана на конкурс.
Сергей Клунный
Сегодня в поле нашего внимания попал весьма интересный класс вычислительных машин, называемых электромеханическими. Классифицировать данные устройства сложно, так как они попадают в категорию между полностью механическими («Паскалина», «Z1») и полностью электронными (как, например, «ENIAC»). К примерам практического применения вышеприведенных механизмов в работе рабочей модели можно отнести знаменитые «MARK-1» и «Z3». Должно быть, каждый знает об этих машинах, но в наше время их физическое устройство кажется чем-то очень громоздким и нелогичным.
Первым, что попадёт в наш обзор, будет, пожалуй, самый главный элемент - электромагнитное реле. Характеризуется как электромеханическое устройство, основной задачей которого является способность замыкать и размыкать электрическую цепь при подаче напряжения на один из выводов. Структура реле очень простая: электромагнит и несколько контактных групп. При включении электромагнитной катушки происходит сдвиг переключателя, который приводится в одно из трёх состояний: размыкается, замыкается или переключается. Собственно, вышеприведённые состояния соответствуют формулировкам как нормально замкнутые, нормально разомкнутые и переключающие контакты. Такие интересные свойства реле всецело дают возможности для реализации как минимум простейших логических устройств.
(Примечание: далее по тексту в качестве параметров имеется в виду: наличие напряжения – логическая единица, его отсутствие – логический ноль.)
Рис. 1. Реле. Схематическое обозначение
Существует также базовый элемент цифровой схемы, именуемый «логический вентиль», который по совместительству является также простейшей единицей в вычислительных устройствах. В современной схемотехнике выделяют три вентиля: Не, И-Не, Или-Не. Это связано с тем, что создание этих элементов на базе полупроводников существенно проще, чем остальных. В нашем же случае на протяжении всей статьи реализации подверглись логические устройства практически для всех основных логических операций, которые имеют хождение в современной технике.
Проще всего реализовать логический вентиль «НЕ»: на рисунке 2 видно, что для этого потребуется всего лишь одно реле. За рубежом этот вентиль называют «NOT». Результатом данного вентиля будет инверсия входного сигнала. То есть, если на входе «1», то на выходе «0», и наоборот.
Рис. 2. Логический вентиль «НЕ»
Также просто можно создать вентиль «ДА», называемый также «повторитель» или «YES» . Очевидно, что он дает на выходе 1, если на входе 1, и 0, если на входе 0. Также этот вентиль можно собрать из соединенных последовательно элементов «НЕ»
Рис. 3. Логический вентиль «ДА»
Следующим идет логический вентиль «2ИЛИ» (зарубежное название «OR»). Он выполняет операцию дизъюнкции (логическое сложение). Этот вентиль требует двух входных операндов, причем когда они равны нулю, то на выходе будет логический ноль, иначе – логическая единица. Как видно на схеме, для реализации данного вентиля необходимо два электромагнитных реле. Здесь и далее цифра два указывает на то, что у нас два входа.
Рис. 4. Логический вентиль «2ИЛИ»
«Монтажное ИЛИ» — эта реализация практически не используется в современном мире, но для релейных схем она вполне пригодна. Результат у этого устройства такой же, как и вентиля «ИЛИ». Очевидно, на выходе будет единица тогда, когда хотя бы на одном входе есть единица.
Рис. 5. «Монтажное ИЛИ»
Вентиль «2И» (или «AND») выполняет операцию конъюнкции (логическое умножение): необходимо два входных операнда, на выходе будет логическая единица тогда и только тогда, когда на обоих входах будет логическая единица.
Рис. 6. Логический вентиль «2И»
Следующими идут более сложные вентили, основанные на комбинации двух простых:
2И-НЕ (он же «NAND», «штрих Шеффера»). Он выполняет операцию дизъюнкции с последующей инверсией результата. Проще говоря, на выходе будет логический ноль тогда и только тогда, когда на обоих входах логическая единица.
Рис. 7. Логический вентиль «2И-НЕ»
2ИЛИ-НЕ («NOR», «стрелка Пирса»). Этот вентиль выполняет логическую операцию конъюнкции с последующей инверсией результата. На выходе будет единица тогда и только тогда, когда на обоих входах будет логический ноль.
Рис. 8. Логический вентиль «2ИЛИ-НЕ»
«Сложение по модулю два» («2Исключающее ИЛИ», «неравнозначность», «XOR»). Дает на выходе единицу только тогда, когда на входы подаются различные значения (т.е. единица и ноль или ноль и единица). Реализовать это уже сложнее. На рисунке 9 видно, что нам необходимо 8 реле.
Рис. 9. «Сложение по модулю два»
«Равнозначность» («эквивалентность», «2Исключающее ИЛИ-НЕ», «XNOR»). Это логическое устройство дает на выходе единицу тогда, когда на входы подаются одинаковые значения (т.е. или два нуля, или две единицы).
Рис. 10. «Равнозначность»
Мы получили все основные логические элементы. Конечно, можно использовать всего парочку вентилей, чтобы создавать любые (!) схемы. Но очевидно, что вентиль, созданный из других элементов, часто будет более громоздок, чем самостоятельный. Например, с помощью вентилей «И» и «НЕ» (или «ИЛИ» и «НЕ») можно получить все остальные. Используя только элемент И-НЕ (или ИЛИ-НЕ) также получаются любые другие вентили. Такие наборы принято называть функционально полными логическими базисами. Их четыре штуки:
- И, НЕ (2 элемента)
- ИЛИ, НЕ (2 элемента)
- И-НЕ (1 элемент)
- ИЛИ-НЕ (1 элемент).
На этом наша статья заканчивается. Конечно, из приведенных в статье элементов можно собирать более сложные устройства: сумматоры, триггерную память, счетчики, регистры, точно так же, как это сделано на полупроводниковых приборах. Есть и подводные камни (дребезг контактов например), но говорить о них мы не будем — все это решается при реализации.
В завершение следует отметить, что для создания первой вычислительной машины (Z3) ее создатель, Конрад Цузе, использовал 2600 реле. Его машина потребляла 4000 ватт, весила тонну, при этом работая на частоте 5.3Гц. И стоила более 50000 рейхсмарок (>210 000 $ сороковых годов!). Я думаю, что в наши дни можно обойтись существенно меньшими затратами, габаритами и количеством электромагнитных реле.
Обсудить статью в специально созданной ветке форума. Эта статья прислана на конкурс.
© Текст, иллюстрации - Сергей Клунный
© Железные призраки прошлого - 2011 г.
Опубликовано 04.12.2011 г.
Дополнения или поправки на phantom@sannata.ru
|