Перестановкой входов нашёл несколько более оптимальных решений:Shaos wrote:- схема определения знака трёхразрядного троичного числа - 2 микросхемыShaos wrote: Прикинул на бумаге, что вторая схема подключения DG403 позволяет таким образом покрыть любые троичные функции с любым количеством аргументов, причём это дело можно автоматизировать - вплоть до автоматической разводки платы по таблицам истинности реализуемых функций!
Для того чтобы представлять для чего сколько нужно корпусов при таком подходе, привожу конкретные числа:
- NOT требует 2 микросхемы (точнее 50% от 2 микросхем - см. нижнюю часть второй схемы),
- MIN или MAX требуют по 2 микросхемы (точнее 75% от них),
- полусумматор требует 6 микросхем (точнее 83% от них),
- полный сумматор - ориентировочно 12 микросхем,
- троично-двоичный преобразователь 2t4b - ориентировочно 8 микросхем,
- троично-двоичный преобразователь 3t5b - ориентировочно 21 микросхема (что говорит о том, что троично-двоичные преобразователи экономичнее делать на основе двоичных ROM или PAL).
- схема сдвига влево (RLA) и вправо (RRA) - 4 микросхемы (75% от них)
- унарный трёхразрядный универсальный троичный элемент (OPA) - 4 микросхемы (75% от них)
- бинарный трёхразрядный универсальный троичный элемент (OPB) - 12 микросхем
- троично-двоичный преобразователь 1t2b - 2 микросхемы (75%)
- троично-двоичный преобразователь 2t4b - 8 микросхем (подтверждено)
- троично-двоичный преобразователь 3t5b - 18 микросхем
- троично-двоичный преобразователь 4t7b - 39 микросхем
- троично-двоичный преобразователь 5t8b - 83 микросхемы
- троично-двоичный преобразователь 6t10b - 162 микросхемы
Всё равно видно, что для преобразования троичного адреса в двоичный надо использовать двоичные же микросхемы (ROM или PAL)
P.S. С обратным преобразованием не лучше:
- двоично-троичный преобразователь 2b1t - 1 микросхема
- двоично-троичный преобразователь 4b2t - 11 микросхем
- двоично-троичный преобразователь 5b3t - 32 микросхемы
- двоично-троичный преобразователь 7b4t - 80 микросхем
- двоично-троичный преобразователь 8b5t - 154 микросхемы
- двоично-троичный преобразователь 10b6t - лучший известный вариант состоит из 309 микросхем
P.P.S. Умножители:
- 1x1=2 - 2 микросхемы
- 2x2=4 - 30 микросхем
- 3x3=6 - 188 микросхем
- 4x4=8 - 1088 микросхем