Альтернатива архитектуры фон Неймана. Надежды на троичную логику.

Когда я изучил Архитектуру фон Неймана, я пришел к выводу, что он заложил такие принципы, которые будут жить «веками». Эти принципы, а именно, принцип двоичного кодирования, принцип однородности памяти, принцип адресуемости памяти и принцип последовательного программного управления резко подняли планку для конкурентов фон Неймана.

Даже сейчас (когда только что изобретен световой компьютер, а точнее, двоичное кодирование светом в рамках чипа) супер современные компьютеры все равно не провозгласили новых принципов архитектуры ЭВМ. Принципы остались прежними, поменялся только способ (с электронного двоичного кодирования на световое двоичное кодирование). Свет это или тьма, но двоичное кодирование оно и в Африке двоичное кодирование, и поэтому принципы остались прежними, а если быть компетентнее, то первый принцип - принцип двоичного кодирования.

Но я не хочу никого заряжать пессимизмом. Мне от этого оптимистичнее не станет. Появилась альтернатива! Заслуженный научный сотрудник МГУ Николай Петрович Брусенцов, главный конструктор троичной ЭВМ «Сетунь» (уже все ясно), изобрел уже понятно что. Но что-то помешало внедрить технологию, а также новую, я подчеркиваю, архитектуру на производство и как не трудно догадаться на рынок.

В наше время задумались о будущем. Вспомнили оптиков и вспомнили Брусенцова. Есть идеи по созданию троичного оптического компьютера, которому следует довольствоваться только тремя положениями: 0-выключено, 1-низкий, 2-высокий. Все поняли, что это надежда на развитие вычислительной техники и на создание светлого будущего. Но как только напишут диссертацию, сразу же умывают руки. Иногда теория приятна более чем практика – словно мечта относительно были. Демагогия, однако.

А теперь самое время понять суть этой логики. Троичная логика использует три истинностных значения:

• 1 — истина

• 0 — неизвестно

• ¬1 — ложь

Если акцентировать наше драгоценное внимание на сходства и различия с двоичной логикой, то можно выделить лишь одно отличие – второе положение «неизвестно». Несмотря на его неубедительность, оно создает убедительное преимущество троичной логики над двоичной логикой. Код троичной логики имеет больший КПД.

Пора перейти к интересному. Итак, представление десятичных чисел троичным кодом.

Десятичное число 0 1 2 3 4 5 10

Троичное число 0 1 1¬1 10 11 1¬1¬1 101

Давайте разбираться.

Xn...X3 X2 X1 — это число

X1 – разряд единиц

X2 – разряд троек

X3 – разряд девяток

Далее и дальше прибавляется по три.

Очевидная, однако, вещь, что разряды читаются справа налево. Число переводится в десятичную систему счисления путем сложения «веса» всех разрядов, задействованных в числе.

Внимание! Определение веса разряда вместе с его значением!

Когда в разряде находится «1», вес разряда не замысловат, т.е. вес разряда единиц = 1, троек = 3, девяток = 9, и т.д.

Когда в разряде находится «¬1», вес разряда становится с минусом, т.е. вес разряда единиц = -1, троек = -3, девяток = -9, и т.д.

Когда в разряде находится «0», вес разряда равен нулю, т.е. вес разряда единиц = 0, троек = 0, девяток = 0, и т.д.

Возьмем число «1¬1¬1». Теперь переводим:

Итак, слева направо:

Вес разряда единиц = -1

Вес разряда троек = -3

Вес разряда девяток = 9

Число в десятичной системе счисления = (-1)+(-3)+9=5

Итак, 1¬1¬1=5

Троичный триггер – это двоичный триггер + еще одно устойчивое значение. Итого 3 устойчивых значения. Можно сказать, что это троичная ячейка памяти.

Схема - kpikulev narod ru>

Один логический элемент 2ИЛИ-НЕ (именно такие на схеме) состоит из двух двухзатворных транзисторов, три — из шести, плюс три транзистора доступа, всего — девять транзисторов на одну трёхразрядную ячейку памяти.

А теперь приведу примеры логических операций:

Логическое умножение

1-й сомножитель 0 1 0 ¬1 0 1 ¬1 1 ¬1

2-й сомножитель 0 0 1 0 ¬1 ¬1 1 1 ¬1

Произведение 0 0 0 0 0 ¬1 ¬1 1 1

Логическое сложение

1-е слагаемое 0 1 0 ¬1 0 1 ¬1 1 ¬1

2-е слагаемое 0 0 1 0 ¬1 ¬1 1 1 ¬1

Сумма 0 1 1 ¬1 ¬1 0 0 ¬1 1

Перенос 0 0 0 0 0 0 0 1 ¬1

Логическое отрицание

Инвертируемое 0 1 ¬1

инверсия 0 ¬1 1

В итоге, я осмелюсь сказать, что троичный компьютер с троичной логикой будет гораздо быстрее наших двоичных компьютеров с двоичной логикой, т.к. за один такт выполняется больше операций. И данные будут описаны меньшим количеством кода, что позволит хранить больше информации. По-моему этого хватает, чтобы наконец их разработать для широких масс людей.

Пишет
Константин Валерьевич