Немного базовой информации - троичное вычисление, в отличие от двоичного имеет еще одно состояние -1 (в дополнение к 0 и 1). Для обозначения уровней сигналов мы примем распространненную систему где буква N обозначает -1, буква O обозначает 0, а буква P обозначает +1.
Для некоторой унификации и стандартизации троичных элементов предлагается набор соглашений о входах и выходах троичных схем с 12 или 24 контактами и двуполярным питанием (-5В и +5В). Компоненты будем обозначать TRInn, где nn - две десятичные цифры, первая из которых будет обозначать категорию компонента:
Code: Select all
TRI0n - программируемые троичные элементы
TRI1n - унарные троичные функции
TRI2n - бинарные троичные функции
TRI3n - арифметические операции
TRI4n - селекторы и переключатели
TRI9n - элементы памяти
Пока мы не заостряем внимание на каких компонентах сделаны эти троичные элементы - на компараторах, электронных ключах, транзисторах или на оптоэлектронике - в любом случае требования по входам и выходам должны выполняться и элементы в общем случае должны быть совместимы.
Унарные троичные функции (TRI1n)Shaos wrote:В феврале 2006 к имени TRInn было предложено добавлять букву, обозначающую элементню базу, на которой реализован троичный компонент. А именно (на примере TRI11):
TRI11 - базовое решение на основе компараторов, диодов и дешёвых CMOS-ключей;
TRI11C - использование исключительно CMOS-транзисторов;
TRI11A - использование аналоговой природы сигнала (операционники, сохранение заряда конденсатора и т.д.);
TRI11D - использование высококачественных дорогих электронных ключей DG403 (и других из той же серии);
TRI11O - использование оптопар;
TRI11Z - использование стабилитронов и биполярных транзисторов (автор Ronin);
TRI11M - имитация троичного компонента с помощью микроконтроллера (получается после программирования TRI00).
P.S. Добавлено в сентябре 2011: Если решение гибридное, то предлагается использовать несколько букв, причём для обозначения дешёвых ключей (в совокупности с другими подходами) можно использовать букву S (switch) - например TRI43OS будет означать троичный селектор с оптопарами на входе и дешёвым CMOS-ключом на выходе. Ещё можно букву B добавить для биполярных транзисторов.
-----------------------------------------------------------------------------
Cчетверенный унарный универсальный элемент TRI10:
Code: Select all
1) I1 - первый вход
2) O1 - первый выход
3) I2 - второй вход
4) O2 - второй выход
5) I3 - третий вход
6) O3 - третий выход
7) I4 - четвертый вход
8) O4 - четвертый выход
9)
10)-5В - отрицательное питание
11) 0В - земля
12)+5В - положительное питание
-----------------------------------------------------------------------------
Счетверенный троичный буфер TRI11:
Code: Select all
1) I1 - первый вход
2) O1 - первый выход
3) I2 - второй вход
4) O2 - второй выход
5) I3 - третий вход
6) O3 - третий выход
7) I4 - четвертый вход
8) O4 - четвертый выход
9)
10)-5В - отрицательное питание
11) 0В - земля
12)+5В - положительное питание
-----------------------------------------------------------------------------
Счетверенный троичный инвертор TRI12:
Code: Select all
1) I1 - первый вход
2) O1 - первый выход
3) I2 - второй вход
4) O2 - второй выход
5) I3 - третий вход
6) O3 - третий выход
7) I4 - четвертый вход
8) O4 - четвертый выход
9)
10)-5В - отрицательное питание
11) 0В - земля
12)+5В - положительное питание
Бинарные троичные функции (TRI2n)
-----------------------------------------------------------------------------
Строенный бинарный универсальный элемент TRI20:
Code: Select all
1) A1 - первый аргумент первой функции
2) B1 - второй аргумент первой функции
3) C1 - результат первой функции
4) A2 - первый аргумент второй функции
5) B2 - второй аргумент второй функции
6) C2 - результат второй функции
7) A3 - первый аргумент третьей функции
8) B3 - второй аргумент третьей функции
9) C3 - результат третьей функции
10)-5В - отрицательное питание
11) 0В - земля
12)+5В - положительное питание
Программируемые троичные элементы (TRI0n)
-----------------------------------------------------------------------------
Строенный унарный универсальный элемент с программным управлением TRI01:
Code: Select all
1) I1 - первый вход
2) O1 - первый выход
3) I2 - второй вход
4) O2 - второй выход
5) I3 - третий вход
6) O3 - третий выход
7) RN - результат если I=N
8) RO - результат если I=O
9) RP - результат если I=P
10)-5В - отрицательное питание
11) 0В - земля
12)+5В - положительное питание
-----------------------------------------------------------------------------
Бинарный универсальный элемент с программным управлением TRI02 потребует больше 12 контактов, т.к. только 9 уйдут под установку кода выполняемой бинарной функции. Либо можно реализовать потриадную загрузку "программы" из трех триад.