Троичный сумматор

Уравновешенная троичная система счисления - форум переехал с http://ternary.info

Moderator: haqreu

BEPEP
Fanat
Posts: 75
Joined: 09 Apr 2025 01:49

Re: Троичный сумматор

Post by BEPEP »

Shaos wrote: 13 Apr 2025 16:10
Shaos wrote: 09 Apr 2025 07:48 Я думал про то, что у полного троичного сумматора надо бы 4 входа иметь т.к. всё равно выходит 2 выхода (т.к. сумма будет от -4 до +4), но т.к. "Full Adder" это всё-таки 3 входа, то 4-входвовый сумматор можно обозвать "Fuller Adder" т.е. ещё более полный сумматор :lol:
Вот что мне DDT сгенерило для 4-входового Fuller-Adder-a :roll:

Получается 22 троичных мультиплексора (или 20 микросхем DG403 - чуть меньше из-за того, что в схеме есть полумультиплексоры E12 и E21)
Это , в пересчёте на транзисторы, больше 200 штук получается, так?
Да и по деньгам, даже у дядюшки Ляо один DG403 - 100 рублей штучка. На 6 трит ~12круб надо. :question:
На макетке, как Лавр, собрать, потом разобрать и для других поделок оставить :lol:

Это, конечно, всё удобно в плане моделирования и сборки. Примерно, как у Лавра полный двоичный сумматор на одних элементах И-НЕ. Элегантно! :D
Проектирование какого большого проекта в этом нуждается. Но по хардкору круче! :kruto: :ebiggrin:
User avatar
Shaos
Admin
Posts: 23989
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Re: Троичный сумматор

Post by Shaos »

Да с DG403 всё получается просто и красиво, но дорого :mrgreen:
Я тут за главного - если что шлите мыло на me собака shaos точка net
BEPEP
Fanat
Posts: 75
Joined: 09 Apr 2025 01:49

Re: Троичный сумматор

Post by BEPEP »

Shaos wrote: 13 Apr 2025 20:57 Да с DG403 всё получается просто и красиво, но дорого :mrgreen:
Дорого ещё пол беды. DG403 элементом не является. Это уже некоторое поделие в себя кучу элементов вмещающее, выполняющее некоторую функцию.
В двоичной логике базовых элемента три. Но всего из двух базовых элементов можно построить любую функцию двоичной логики. Тот же XOR - не базовый элемент. Это уже нечто состоящее из базовых элементов. Его можно по разному реализовать.
Аналогия с высокоуровневыми языками программирования тут уместна. На каком PHP, javascript или вообще HTML любой школьник писать что-нибудь сможет. Для него уже кем-то и когда-то разработаны компиляторы или интерпретаторы. Для него это будет просто и красиво. У него голова не болит, но и не думает. :wink: На ассемблере современные программы писать не практично просто.
Надстройки над надстройками, это не фундамент, это какие-то верхние этажи здания, над которыми ещё один этаж кто-то построить решил.
А сумматор - это фундамент! Его не нужно эмулировать в железе, его надо разрабатывать из базы.

В троичной логике база одна единственная - транзистор. Вернее два транзистора - N и P канальные ключи :mrgreen:
User avatar
Shaos
Admin
Posts: 23989
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Re: Троичный сумматор

Post by Shaos »

Естественно DG403 это чуть более сложный прибор, но из 2 чипов DG403 можно построить 2 троичных селектора, а на троичных селекторах можно построить всё остальное ;)

А то как делать троичные селекторы на кристалле, я размышлял в других топиках, и даже сделал реальный чип в 2015 году, где это работало, но делать свой чип это ещё дороже, чем строить троичные схемы на DG403...
Я тут за главного - если что шлите мыло на me собака shaos точка net
BEPEP
Fanat
Posts: 75
Joined: 09 Apr 2025 01:49

Re: Троичный сумматор

Post by BEPEP »

Хе-хе. Размечтался я о 100 транзисторах. Блок-схемка-то моя кривая - не работает как надо :mrgreen:
Получается правильно ещё с двумя блоками, т.е. 118 транзюков выходит.
Пока ничего выкладывать не буду, всё проверю тогда выложу. 100 транзисторов пока зачёркиваем :obye:
BEPEP
Fanat
Posts: 75
Joined: 09 Apr 2025 01:49

Re: Троичный сумматор

Post by BEPEP »

Shaos wrote: 13 Apr 2025 22:10 Естественно DG403 это чуть более сложный прибор, но из 2 чипов DG403 можно построить 2 троичных селектора, а на троичных селекторах можно построить всё остальное ;)

А то как делать троичные селекторы на кристалле, я размышлял в других топиках, и даже сделал реальный чип в 2015 году, где это работало, но делать свой чип это ещё дороже, чем строить троичные схемы на DG403...
Я на ваш форум и попал благодаря Вашей статье на Хабре про разработку и изготовление чипа. :kruto: Давно его читал внимательно, просто сейчас заклинило прямо - хочу собрать троичный калькулятор! Непреодолимое желание имею :mrgreen:
Тема эта от Лавра задела. Прям пригорело одно место :ebiggrin:

Разобрался я с блок-схемой. Ещё один элемент пришлось создавать, из уже готового просто 4 транзюка выкинуть и всё в порядке. Просто добавилось 14 транзисторов. Сидел сегодня на javascript эмулятор работы этого чуда писал. Написал! Всё работает - считает. Ошибок нет, удобная штука получилась. Прикреплю к теме ниже.
эмулятор.png
"Новый" элемент:
Сильная_Б_3.png
Я назвал его "Сильная Б" , так как при плюсе и минусе на двух входах всегда побеждает вход Б - он сильнее :ebiggrin:
эмулятор.zip
День ревизий закончен. По итогу где-то убыло, где то прибыло. Но так или иначе 114 транзюков. Дальше будем посмотреть.
You do not have the required permissions to view the files attached to this post.
BEPEP
Fanat
Posts: 75
Joined: 09 Apr 2025 01:49

Re: Троичный сумматор

Post by BEPEP »

Да что ж такое. Опять косяк. +1 +1 -1 не хочет правильно считать. Ладно, завтра думать буду.
BEPEP
Fanat
Posts: 75
Joined: 09 Apr 2025 01:49

Re: Троичный сумматор

Post by BEPEP »

Если этот вариант использовать без входа Б или В(без разницы, на одном из них постоянный ноль нужен) то получается сумматор на 3 входа. Если на эти входы добавить ещё один элемент(14 транзисторов) то получается 4-х входовой. Сегодня, надеюсь, допилю уже 4 входа и за одно подумаю над х3. Два варианта нарисую.
User avatar
TernarySystem
Doomed
Posts: 625
Joined: 27 Jul 2018 12:07

Re: Троичный сумматор

Post by TernarySystem »

BEPEP wrote: 14 Apr 2025 14:04 Да что ж такое. Опять косяк. +1 +1 -1 не хочет правильно считать. Ладно, завтра думать буду.
Здравствуйте BEPEP, давно уже меня никто так не смешил, как Вы вчера заявлением о разработке нового элемента "Сильная Б", ржу уже второй день, Вам удалось...
Ваша "Сильная Б" - это бинарная троичная функция, которую Вы задаёте таблицей истинности. Я надеюсь, что Вам известно что такое базис логических операций? Истинностные значения в Вашей таблице истинности связаны этими логическими операциями, а посему для получения наименьшего количества транзисторов необходимо найти минимальную форму функции. Первым этапом Вы должны получить совершенную форму, а затем используя логические законы, синтезировать сокращённую форму. Конечной целью Вашего синтеза будет тупиковая форма или минимальная - это будет зависеть каким уровнем алгебры логики Вы обладаете... Например Ваша "Сильная Б" имеет такую тупиковую форму ТДНФ - X1¬Y1 V X2 ¬ ( Y1 V ¬Y1 ), X1 - это Ваше "Б" если что. И тогда не будет косяков.
А Lavr однажды мудро выразился - "СДНФ не обманешь ".
Теперь стосовно Вашей схемы "Сильная Б" - сопротивления будут сильными источниками теплоты, количество которой будет равно квадрату тока умножить на сопротивление и умножить на время действия сигнала. Это будет не логический элемент а полупроводниковый паяльник и это будет технический тупик. Ничего личного, так это работать не будет, закон Джоуля -Ленца.
Красота КМОП технологии заключается в малом использовании мощности. КМОП схемы потребляют энергию только в момент переключения - в динамике, а в статическом потребление практически равно 0. Канал полевого транзистора в открытом состоянии практически имеет очень малое сопротивление и у тут бинго, Вы добавляете сопротивление и садите его на землю с одной стороны, а с другой на второе плечо источника питания. "Сильная Б" будет гореть первой в схеме Вашего сумматора. И это не симуляция, а реальный мир...
User avatar
FizikS
Maniac
Posts: 264
Joined: 11 Oct 2018 00:52
Location: г. Клинцы, Брянская обл.

Re: Троичный сумматор

Post by FizikS »

TernarySystem wrote: 15 Apr 2025 02:27 И это не симуляция, а реальный мир...
Я тоже пытался симулировать троичные элементы на транзисторах. Симулятор показывал запредельные токи, от которых транзисторы будут гореть как свечки. Поэтому, как здесь выяснили и показали, либо переключатели либо хитровыдуманные полевые транзисторы (таковых, скорее всего в природе и не найдешь).
BEPEP
Fanat
Posts: 75
Joined: 09 Apr 2025 01:49

Re: Троичный сумматор

Post by BEPEP »

TernarySystem wrote: 15 Apr 2025 02:27
BEPEP wrote: 14 Apr 2025 14:04 Да что ж такое. Опять косяк. +1 +1 -1 не хочет правильно считать. Ладно, завтра думать буду.
Здравствуйте BEPEP, давно уже меня никто так не смешил, как Вы вчера заявлением о разработке нового элемента "Сильная Б", ржу уже второй день, Вам удалось...
Ваша "Сильная Б" - это бинарная троичная функция, которую Вы задаёте таблицей истинности. Я надеюсь, что Вам известно что такое базис логических операций? Истинностные значения в Вашей таблице истинности связаны этими логическими операциями, а посему для получения наименьшего количества транзисторов необходимо найти минимальную форму функции. Первым этапом Вы должны получить совершенную форму, а затем используя логические законы, синтезировать сокращённую форму. Конечной целью Вашего синтеза будет тупиковая форма или минимальная - это будет зависеть каким уровнем алгебры логики Вы обладаете... Например Ваша "Сильная Б" имеет такую тупиковую форму ТДНФ - X1¬Y1 V X2 ¬ ( Y1 V ¬Y1 ), X1 - это Ваше "Б" если что. И тогда не будет косяков.
А Lavr однажды мудро выразился - "СДНФ не обманешь ".
Теперь стосовно Вашей схемы "Сильная Б" - сопротивления будут сильными источниками теплоты, количество которой будет равно квадрату тока умножить на сопротивление и умножить на время действия сигнала. Это будет не логический элемент а полупроводниковый паяльник и это будет технический тупик. Ничего личного, так это работать не будет, закон Джоуля -Ленца.
Красота КМОП технологии заключается в малом использовании мощности. КМОП схемы потребляют энергию только в момент переключения - в динамике, а в статическом потребление практически равно 0. Канал полевого транзистора в открытом состоянии практически имеет очень малое сопротивление и у тут бинго, Вы добавляете сопротивление и садите его на землю с одной стороны, а с другой на второе плечо источника питания. "Сильная Б" будет гореть первой в схеме Вашего сумматора. И это не симуляция, а реальный мир...
Я уже разобрался с этой схемой. В ваших "морских знаках" мне дольше разбираться нужно будет. Уж простите. Ещё один элемент надо было создать. Чутка попозже заходите - посмеётесь ещё. :ebiggrin: Я ему тоже название придумал. Потому как тут вам не там. :lol: Это не дизъюнкция, конъюнкция и отрицание :mrgreen:
В топике этом писал, что тут КМОП применительно только к комплементарным парам. Тут для полноценной КМОП надо однополярное питание и забыть про троичность, либо огород транзисторов городить надо.
BEPEP
Fanat
Posts: 75
Joined: 09 Apr 2025 01:49

Re: Троичный сумматор

Post by BEPEP »

FizikS wrote: 15 Apr 2025 03:01
TernarySystem wrote: 15 Apr 2025 02:27 И это не симуляция, а реальный мир...
Я тоже пытался симулировать троичные элементы на транзисторах. Симулятор показывал запредельные токи, от которых транзисторы будут гореть как свечки. Поэтому, как здесь выяснили и показали, либо переключатели либо хитровыдуманные полевые транзисторы (таковых, скорее всего в природе и не найдешь).
В ключевом режиме ничего гореть не должно, если в самой схеме коротыша нет. У меня тут в одном единственном элементе есть коротыш. Он при единице на одном входе и нуле на другом получается. Писал о нём и почему он не страшен тут. Повторюсь: потому что в связке с остальной схемой этот элемент никогда на ноль не сможет попасть. Если только перед ним что из строя выйдет.
Ключевой режим транзистора - это вкл/выкл. Как дверца в публичном туалете, система типа занято - свободно :lol:
Могут, конечно, интервалы временные отставать и находит коса на камень. Но это уже следующие этапы разработки. И они для моего поделия не критичны. Я его в космос запускать не собираюсь.
У меня, собственно, все блоки это переключатели и есть. И ничего кроме переключателей. Переключатели на полевых транзисторах только, а не на реле или ещё на чём.
BEPEP
Fanat
Posts: 75
Joined: 09 Apr 2025 01:49

Re: Троичный сумматор

Post by BEPEP »

Для наглядности, о чём я выше писал, про элемент в котором коротыш при нуле на входе А и +1 или-1 на входе У получается.
х2.png
Но этого варианта логически никак не получается.
Для проверки симулятор:
Сумматор_х2.zip
You do not have the required permissions to view the files attached to this post.
BEPEP
Fanat
Posts: 75
Joined: 09 Apr 2025 01:49

Re: Троичный сумматор

Post by BEPEP »

На полусумматор х2 расходуется 30 транзисторов. Условные названия блоков, не суть: на блок "И" - 4 транзистора, на блок "ИЛИ" - 14 транзисторов, на блок "Управляемое НЕ" - 12 транзисторов. Схемы блоков тут все выкладывал.
Сумматор х3 - обрезок, который Лавр тут ваял. У меня получилось пока вот что:
Сумматор_х3.png
Проверял по ТБ , всё , во всех направлениях чётко работает:
ТБх3.png
Симулякр сумматора х3:
Сумматор_х3.zip
Теперь по транзисторам: два полусумматора х2 - 60 транзисторов, один блок "ИЛИ"- 14 транзисторов. Итого: 74 транзистора.
В пику Админу, у которого вышло 122 на х3, и уж тем паче Лавру с его 314 транзисторами. :mrgreen:

Сумматор х4 попозже выложу. Но там монстр получается, требующий чуть меньше 140 транзисторов. :idea:
You do not have the required permissions to view the files attached to this post.
BEPEP
Fanat
Posts: 75
Joined: 09 Apr 2025 01:49

Re: Троичный сумматор

Post by BEPEP »

TernarySystem wrote: 15 Apr 2025 02:27
BEPEP wrote: 14 Apr 2025 14:04 Да что ж такое. Опять косяк. +1 +1 -1 не хочет правильно считать. Ладно, завтра думать буду.
Здравствуйте BEPEP, давно уже меня никто так не смешил, как Вы вчера заявлением о разработке нового элемента "Сильная Б", ржу уже второй день, Вам удалось...
Ваша "Сильная Б" - это бинарная троичная функция, которую Вы задаёте таблицей истинности. Я надеюсь, что Вам известно что такое базис логических операций? Истинностные значения в Вашей таблице истинности связаны этими логическими операциями, а посему для получения наименьшего количества транзисторов необходимо найти минимальную форму функции. Первым этапом Вы должны получить совершенную форму, а затем используя логические законы, синтезировать сокращённую форму. Конечной целью Вашего синтеза будет тупиковая форма или минимальная - это будет зависеть каким уровнем алгебры логики Вы обладаете... Например Ваша "Сильная Б" имеет такую тупиковую форму ТДНФ - X1¬Y1 V X2 ¬ ( Y1 V ¬Y1 ), X1 - это Ваше "Б" если что. И тогда не будет косяков.
А Lavr однажды мудро выразился - "СДНФ не обманешь ".
Теперь стосовно Вашей схемы "Сильная Б" - сопротивления будут сильными источниками теплоты, количество которой будет равно квадрату тока умножить на сопротивление и умножить на время действия сигнала. Это будет не логический элемент а полупроводниковый паяльник и это будет технический тупик. Ничего личного, так это работать не будет, закон Джоуля -Ленца.
Красота КМОП технологии заключается в малом использовании мощности. КМОП схемы потребляют энергию только в момент переключения - в динамике, а в статическом потребление практически равно 0. Канал полевого транзистора в открытом состоянии практически имеет очень малое сопротивление и у тут бинго, Вы добавляете сопротивление и садите его на землю с одной стороны, а с другой на второе плечо источника питания. "Сильная Б" будет гореть первой в схеме Вашего сумматора. И это не симуляция, а реальный мир...
Всё, я понял причину неудержимого смеха. Сам только что увидел - тоже ржал, как конь. :ebiggrin: Бывает - исправил:
Сильная_Б_3.png
За одно ещё один блок сюда добавлю. Я его обозвал "Вычитающий Повторитель":
Выч_Повт_3.png
Два входа передают на два выхода идентичные сигналы. Но если на входе будет комбинация -1 +1(в двух возможных вариантах) то на выходах будет 0. Только таб. истинности тут не совсем уместен. Повторитель всё таки. 2 входа - 2 выхода.
Блок схему пока не сделал. Это для сумматора х4 нужно. Завтра, наверное, выложу.
-----------------
Перезалил последнюю схему. Таблицу подправил. Следует её читать так: если надо свериться с линией А, то она в верхней строке, левый столбец - значения Б. И наоборот, если надо проверить линию Б то это верхняя строка, а левый столбец - значения линии А.
You do not have the required permissions to view the files attached to this post.
Last edited by BEPEP on 15 Apr 2025 17:09, edited 2 times in total.