В одном слове МУЛЬТИПЛЕКСОР букв больше чем транзисторов в схеме на MIN и MAX вместе взятых.Shaos wrote: 09 Jan 2026 23:40 По линку выше я писал как сделать MIN и MAX на троичных селекторах - можно переписать на полноценные MUX-ы (если на кристалле не будет полуселекторов E12 и E21):
MIN(x,y) = MUX(y,N,E12(x,N,O),x) = MUX(y,N,MUX(x,N,O,O),x)
MAX(x,y) = MUX(y,x,E21(x,O,P),P) = MUX(y,x,MUX(x,O,O,P),P)
Троичный сумматор
Moderator: haqreu
-
BEPTEP
- Doomed
- Posts: 519
- Joined: 09 Apr 2025 01:49
Re: Троичный сумматор
-
Xalva
- Writer
- Posts: 24
- Joined: 17 Apr 2025 03:01
Re: Троичный сумматор
Привет, а чего тут не ясно, для умножения!
Как в школе, столбиком, результаты суммируем.
———————————
———————————
Тут как раз и сдвиг пригодиться!
-
BEPTEP
- Doomed
- Posts: 519
- Joined: 09 Apr 2025 01:49
Re: Троичный сумматор
Привет!Xalva wrote: 11 Jan 2026 06:03Привет, а чего тут не ясно, для умножения!
Как в школе, столбиком, результаты суммируем.
(5) a
(5) b
———————————
r1 = b[1] * a
r2 = b[2] * a
r3 = b[3] * a
———————————
(25) r = r1 + r2 + r3
Тут как раз и сдвиг пригодиться!
Да уже понял. Но почему то считал что для умножения в столбик достаточной простой инверсии.
Ошибался.
-
Xalva
- Writer
- Posts: 24
- Joined: 17 Apr 2025 03:01
Re: Троичный сумматор
Почему ошибался?BEPEP wrote: 11 Jan 2026 08:22Привет!Xalva wrote: 11 Jan 2026 06:03Привет, а чего тут не ясно, для умножения!
Как в школе, столбиком, результаты суммируем.
(5) a
(5) b
———————————
r1 = b[1] * a
r2 = b[2] * a
r3 = b[3] * a
———————————
(25) r = r1 + r2 + r3
Тут как раз и сдвиг пригодиться!
Да уже понял. Но почему то считал что для умножения в столбик достаточной простой инверсии.
Ошибался.![]()
В принципе да!
Code: Select all
function MUL(a, b : tTryte) : tTryte;
begin revers(b);
for var i := low(b) to high(b) do
if b[i] < 0
then result := sum(result, shl(inv(a), i))
else if b[i] > 0
then result := sum(result, shl(a, i)) end;-
Shaos
- Admin
- Posts: 25367
- Joined: 08 Jan 2003 23:22
- Location: Silicon Valley
Re: Троичный сумматор
Ну не только инверсии - сложение ведь надо со сдвигом 
-
BEPTEP
- Doomed
- Posts: 519
- Joined: 09 Apr 2025 01:49
Re: Троичный сумматор
Перечитываю тему - ржуLavr wrote: 09 Oct 2017 15:51Собственно, из тех результатов моделирования, которые я привел в этом топике, и топике, на которыйhaqreu wrote:А откуда взялись 36 и откуда 314 применительно к этой задаче суммирования?
дал ссылку при подведении итогов своей проделанной работы.
Всё зависит от способа сложения. Я бы предпочел последовательное суммирование, вот так:
000113.jpg
А при нём мне нужен всего одноразрядный полный сумматор. В троичной логике он мне обошелся в
314 транзисторов.
В двоичной логике, поскольку конкретная задача на суммирование, я убрал из схемы 16 транзисторов
управляемого инвертора. 52 - 16 как раз 36.
----------
P.S. Если ещё учесть что всё, как и сумматор, будет построено исключительно на NANDах одних
Last edited by BEPTEP on 13 Oct 2026 18:51, edited 1 time in total.
-
BEPTEP
- Doomed
- Posts: 519
- Joined: 09 Apr 2025 01:49
Re: Троичный сумматор
Теперь раскрыта тайна 122-х транзисторного сумматора на "одинаковых" транзисторах но у некоторых со сдвинутыми порогамиShaos wrote: 10 May 2020 02:03Я придумал как сделать ещё меньше транзисторов в троичном полном сумматоре ( причём одинаковых ; )Lavr wrote:Троичную логику сколько ни полируй, она не станет лучше или проще, чем нарисовал я.haqreu wrote:Ну а что двоичная логика выигрывает, это понятно, её, как минимум, полировали долго.
Сложнее - да, проще - нет, потому что у меня модели "почти идеальны"...
Но 314 тразисторов это в 6 раз больше 52-х... И в чем преимущество?
Пока преимущество неочевидно по меньшей мере.
Если внимательно поглядеть на эту схему из троичных мультиплексоров, то можно увидеть, что 3 троичных входа управляют тремя колонками мультиплексоров (и один из входов также используется как переключаемый сигнал во второй колонке), т.е. как я и говорил в другом топике - нет никакой необходимости дублировать декодер троичного сигнала в каждом мультиплексоре - нам надо лишь поставить по паре компараторов на каждый вход - это 26*3=78 транзисторов плюс 1 на генератор тока. Далее по 10 транзисторов на преобразование выходов компараторов в 6 управляющих дифференциальных сигналов для ключей - 79+10*3=109. Далее полученные сигналы управления спускаются в каждой колонке мультиплексоров для управления ихними ключами - по 6 транзисторов на мультиплексор. У нас 10 полных мультиплексоров - это ещё 60 транзисторов - и 4 полумультиплексора - там как бы по 4 транзистора на каждый, однако там где есть P или N сигналы можно упроститься до 1 транзистора в плече, т.е. выходит по 3 транзистора на каждый из 4 полусумматоров или ещё 12. Такой же трюк можно проделать с первыми двумя мультиплексорами где есть P и N - уменьшив 60 до 56. В итоге получается 109+56+12=177 транзисторов. Самый компактный двоичный полный сумматор состоит из 24 транзисторов, но т.к. трит в полтора раза тяжелее чем бит мы будем сравнивать с 24*1.5=36. Выходит минимальный троичный полный сумматор в 4.92 раза тяжелее двоичного. Если выкинуть навороченные компараторы и обойтись простыми инверторами со сдвинутыми порогами (т.е. схитрить), то это будет по 8 транзисторов на каждый вход или 24 - на 55 транзисторов меньше, чем с компараторами или 122 всего - уже только в 3.39 раз тяжелее...
Про двоичные сумматоры: https://electronics.stackexchange.com/questions/279495/please-help-me-understand-how-this-cmos-mirror-adder-works
-
Shaos
- Admin
- Posts: 25367
- Joined: 08 Jan 2003 23:22
- Location: Silicon Valley
Re: Троичный сумматор
Пороги у всех одинаковые, просто часть CMOS-транзисторов формируют не цифровые ячейки, а аналоговые - компараторы называются, которые уже с разными порогами могут работать (т.к. они аналоговые) - я понятно излагаю, или ты опять потерялся? 
