Использование стандартных КМОП микросхем и КМОП транзисторов
Moderator: haqreu
-
- Admin
- Posts: 24097
- Joined: 08 Jan 2003 23:22
- Location: Silicon Valley
Re: Использование стандартных КМОП микросхем и КМОП тран...
Почитал книжки по CMOS-процессам - только путём играния с разницей в размерах n-MOS транзистора и p-MOS транзистора (меняя тем самым сопротивление канала) можно сдвигать границу переключения инвертора влево и вправо от середины, получая тем самым возможность легко и непринуждённо строить троичные схемы управления CMOS-ключами, на которых в свою очередь легко можно построить троичные селекторы (мультиплексоры/демультиплексоры)!
P.S. Вроде бы именно этот метод описан в статье 1984 года Mouftah, H.T. Garba, A.I. VLSI implementation of a 5-trit full adder.
Где бы её бесплатно достать?...
P.S. Вроде бы именно этот метод описан в статье 1984 года Mouftah, H.T. Garba, A.I. VLSI implementation of a 5-trit full adder.
Где бы её бесплатно достать?...
-
- Admin
- Posts: 24097
- Joined: 08 Jan 2003 23:22
- Location: Silicon Valley
Re: Использование стандартных КМОП микросхем и КМОП тран...
Ещё интересный момент выудил из книжки про CMOS - если использовать CMOS элемент 2ИЛИ-НЕ как инвертор (т.е. объединив его входы вместе), то порог срабатывания должен сдвинуться влево (ближе к нулю), а если использовать элемент 2И-НЕ как инвертор, то вправо (ближе к напряжению питания), т.е. теоретически из одного 2ИЛИ-НЕ и одного 2И-НЕ можно построить преобразователь троичного сигнала в два двоичных, которые можно отправить на управление CMOS-ключём...
-
- Admin
- Posts: 24097
- Joined: 08 Jan 2003 23:22
- Location: Silicon Valley
Re: Использование стандартных КМОП микросхем и КМОП тран...
MPil добавляет на старом форуме (25 октября 2012 года):MPil wrote:Есть более свежий российский патент, вот тут.
В схеме управления используются инверторы между одной из шин питания и землей, поэтому сквозного тока никогда нет.
В патенте описан троичный инвертор, но можно подавать любые 3 сигнала через КМОП-ключи. Используя две части этого вентиля, можно строить и более сложные троичные устройства.(Д.В.Морозов, М.М.Пилипко, А.С.Коротков. РЕАЛИЗАЦИЯ УСТРОЙСТВ ТРОИЧНОЙ ЛОГИКИ НА ОСНОВЕ СТАНДАРТНОЙ МОП ТЕХНОЛОГИИ, Микроэлектроника - том 38, ¹ 3, Май-Июнь 2009, С. 224-236)
MPil wrote:Статья 1984 года вот. Проблема таких инверторов со сдвинутым порогом в том, что среднее логическое состояние не запирает канал ни в одном из транзисторов. В результате льётся статический ток в десятки микроампер вместо тех пикоампер, которые бывают в режиме отсечки в двух других состояниях.
В патенте, который я упоминал, эта проблема решена. Но беда в том, что троичность искусственная: внутри этого троичного устройства сигнал расщепляется на двоичные сигналы, а потом собирается обратно. Поэтому троичный инвертор требует 24 транзистора вместо 2 в двоичном. Сумматор А+В+С=S+Co требует около 140 транзисторов, тогда как двоичный КМОП сумматор - 28 (сейчас есть схемы и на 8 транзисторах).
Я пробовал строить умножители - двоичный 8*8 разрядов и троичный 5*5 (близкие по числу комбинаций). В троичном использовались полные троичные сумматоры A+B+C+D=S+Co. Там проигрыш по числу транзисторов примерно в 2 раза.
Last edited by Shaos on 15 Feb 2015 17:17, edited 2 times in total.
Я тут за главного - если что шлите мыло на me собака shaos точка net
-
- Supreme God
- Posts: 16703
- Joined: 21 Oct 2009 08:08
- Location: Россия
Re: Использование стандартных КМОП микросхем и КМОП тран...
А так примерно и получается и в самой простой схеме на КМОП-вентилях,Shaos wrote:В патенте, который я упоминал, эта проблема решена. Но беда в том, что троичность искусственная: внутри этого троичного устройства сигнал расщепляется на двоичные сигналы, а потом собирается обратно.
которую я уже пару раз тут приводил:

Выбором порогов включения КМОП-ключей по сути вводятся две двоичности:
в положительной полярности и в отрицательной.
И этого, на мой взгляд, никак не избежать, пока мы реализуем троичность
на элементах с двумя естественными состояниями "открыто"-"закрыто".
Для реализации минимальной троичной схемотехники нужен элемент с тремя
естественными состояниями.
У Брусенцова удачно подвернулись кольца. Мы же пока такого подходящего
электронного компонента не нашли...

iLavr
-
- Banned
- Posts: 2139
- Joined: 20 Mar 2005 13:41
- Location: От туда
Re: Использование стандартных КМОП микросхем и КМОП тран...
Начните с реле. Среди них есть такие.Lavr wrote:И этого, на мой взгляд, никак не избежать, пока мы реализуем троичность на элементах с двумя естественными состояниями "открыто"-"закрыто". Для реализации минимальной троичной схемотехники нужен элемент с тремя естественными состояниями.
У Брусенцова удачно подвернулись кольца. Мы же пока такого подходящего электронного компонента не нашли...
-
- Supreme God
- Posts: 16703
- Joined: 21 Oct 2009 08:08
- Location: Россия
Re: Использование стандартных КМОП микросхем и КМОП тран...
Ну тогда можно и кольцами попользоваться...HardWareMan wrote:Начните с реле. Среди них есть такие.Lavr wrote:Для реализации минимальной троичной схемотехники нужен элемент с тремя естественными состояниями.
У Брусенцова удачно подвернулись кольца. Мы же пока такого подходящего электронного компонента не нашли...

пошибче, чем реле будут...

Я всё же так понимаю, что мы хотим электронный компонент без намоточных
изделий...
Кстати говоря... в нано-исследованиях вроде бы тристабильные эффекты попадались.
А если на доступной элементной базе, то самый минимальный элемент с естественными
тремя состояниями - это схема на туннельных диодах:

Я об ней уже говорил вот здесь... Но в таких элементах неудобно,
что входы и выходы не разделены.
iLavr
-
- Banned
- Posts: 2139
- Joined: 20 Mar 2005 13:41
- Location: От туда
Re: Использование стандартных КМОП микросхем и КМОП тран...
Я же сказал: начните. Первые компьютеры тоже были большими и неповоротливыми, правильно?Lavr wrote:Ну тогда можно и кольцами попользоваться...Они по быстродействию пошибче, чем реле будут...
-
- Supreme God
- Posts: 16703
- Joined: 21 Oct 2009 08:08
- Location: Россия
Re: Использование стандартных КМОП микросхем и КМОП тран...
А зачем такой даунгрейд? Я лично пользуюсь несколько улучшенным вариантом вот этой схемы NAND при моделировании троичности:HardWareMan wrote:Я же сказал: начните. Первые компьютеры тоже были большими и неповоротливыми, правильно?Lavr wrote:Ну тогда можно и кольцами попользоваться...Они по быстродействию пошибче, чем реле будут...

Да она несколько "попахивает" схемотехнически сдвоенной двоичностью -
это не отнять, но троичную свою функцию вполне успешно реализует...
Даже если делать её в реале на сборках или simd-компонентах, это всё-равно
достаточно малогабаритный и быстродействующий троичный элемент получится...
Ну а реле... ну если в ретро-смысле кому-либо охота Конрада Цузе вспомнить...
то можно и с реле начать...
Но мне представляется, что это слишком далёкая реминисценция...

iLavr
-
- Admin
- Posts: 24097
- Joined: 08 Jan 2003 23:22
- Location: Silicon Valley
Ещё вот так можно (эмулируя больший физический размер того или иного CMOS-крыла инвертора путём размножения транзисторов в этом крыле):

P.S. С другой стороны это получение двух двоичных сигналов из одного троичного ( -2.5V -> 11, 0V -> 10, +2.5V -> 00 ) и может быть признано "фейком" поборниками чистой троичности...

P.S. С другой стороны это получение двух двоичных сигналов из одного троичного ( -2.5V -> 11, 0V -> 10, +2.5V -> 00 ) и может быть признано "фейком" поборниками чистой троичности...
Я тут за главного - если что шлите мыло на me собака shaos точка net
-
- Admin
- Posts: 24097
- Joined: 08 Jan 2003 23:22
- Location: Silicon Valley
Вот собственно одиночный троичный мультиплексор-демультиплексор (половинка TRIMUX на обычных КМОП-транзисторах, подключенный как буфер:

и как инвертор:

Меняя уровни на трёх входах управления (три источника напряжения справа внизу) можно получить любые унарные троичные функции...
P.S. По схеме - слева внизу стоит блок расщепления троичного сигнала in в два двоичных - out1 и out2, которые инвертируясь дают out1i и out2i, далее ещё раз инвертируясь дают out1p и out2p (это надо для крутости фронтов) - последние 4 сигнала используются для управления четырмя CMOS-ключами (справа-вверху), подключенными как 2 переключателя, коммутирующих 3 напряжения снизу-справа для получения выходного троичного сигнала out (первое напряжение (V3) идёт на выход если in=0, второе (V4) если in=2.5 и третье (V5) если in=5).
P.P.S. Может мне такую микросхему у MOSIS заказать для начала?

и как инвертор:

Меняя уровни на трёх входах управления (три источника напряжения справа внизу) можно получить любые унарные троичные функции...
P.S. По схеме - слева внизу стоит блок расщепления троичного сигнала in в два двоичных - out1 и out2, которые инвертируясь дают out1i и out2i, далее ещё раз инвертируясь дают out1p и out2p (это надо для крутости фронтов) - последние 4 сигнала используются для управления четырмя CMOS-ключами (справа-вверху), подключенными как 2 переключателя, коммутирующих 3 напряжения снизу-справа для получения выходного троичного сигнала out (первое напряжение (V3) идёт на выход если in=0, второе (V4) если in=2.5 и третье (V5) если in=5).
P.P.S. Может мне такую микросхему у MOSIS заказать для начала?

Я тут за главного - если что шлите мыло на me собака shaos точка net
-
- Supreme God
- Posts: 16703
- Joined: 21 Oct 2009 08:08
- Location: Россия
-
- Admin
- Posts: 24097
- Joined: 08 Jan 2003 23:22
- Location: Silicon Valley
Это смотря что принять за нольLavr wrote:А что-то я юмора не понял... 0.. 2,5В... 5В...Это что за троичность?
Вроде как всё время говорили про -U, 0, +U... или нет?

Представь, что ты меряешь напряжение, подцепив общий провод вольтметра на 2.5В - тогда получится "правильная" уравновешенная троичность

P.S. Это же CMOS - цепляем его на питание от -5В до +5В и меряем выход от 0В - кстати надо попробовать так сэмулировать...
Я тут за главного - если что шлите мыло на me собака shaos точка net
-
- Admin
- Posts: 24097
- Joined: 08 Jan 2003 23:22
- Location: Silicon Valley
Вот - поправил, чтобы было православненькоShaos wrote:Это смотря что принять за нольLavr wrote:А что-то я юмора не понял... 0.. 2,5В... 5В...Это что за троичность?
Вроде как всё время говорили про -U, 0, +U... или нет?
Представь, что ты меряешь напряжение, подцепив общий провод вольтметра на 2.5В - тогда получится "правильная" уравновешенная троичность
P.S. Это же CMOS - цепляем его на питание от -5В до +5В и меряем выход от 0В - кстати надо попробовать так сэмулировать...


Вот архивчек с примерами инверторов и этого тримукса, если кто хочет поиграца

http://www.nedopc.org/nedopc/upload/cmos-trimux.zip (4K)
LTspice IV качать у авторов: http://www.linear.com/designtools/software/#LTspice
Я тут за главного - если что шлите мыло на me собака shaos точка net
-
- Admin
- Posts: 24097
- Joined: 08 Jan 2003 23:22
- Location: Silicon Valley
Вот так эта штука работает:
Пара out1i и out2p очень удобно представляет входной троичный сигнал - когда вход отрицательный, то out2p=TRUE, а когда положительный, то out1i=TRUE, когда же оба FALSE, то на входе значение, близкое к нулю (варианта TRUE/TRUE быть не может). Если заказывать такую микруху, то было бы полезно вытянуть наружу и эти промежуточные значения, назвав их NEP, EQN, EQP, NEN (такие названия для этих сигналов я использовал 10 лет назад в троичных схемах на компараторах). Получается, что один троичный мультиплексор займет 1+3+1+4=9 выводов, значит в DIP28 влезет как минимум два троичных мультиплексора...
P.S. Вот ещё пересчитал с частотой 3 МГц и вывел потребляемый ток - как видим при околоноля схемка жрёт 0.5 mA:

Code: Select all
in out1p out2p out1i out2i out
N 1 1 0 0 V3
O 1 0 0 1 V4
P 0 0 1 1 V5
P.S. Вот ещё пересчитал с частотой 3 МГц и вывел потребляемый ток - как видим при околоноля схемка жрёт 0.5 mA:

Я тут за главного - если что шлите мыло на me собака shaos точка net
-
- Admin
- Posts: 24097
- Joined: 08 Jan 2003 23:22
- Location: Silicon Valley
Re: Использование стандартных КМОП микросхем и КМОП тран...
Моё предположение 2011 года оказалось верным:Shaos wrote:Ещё интересный момент выудил из книжки про CMOS - если использовать CMOS элемент 2ИЛИ-НЕ как инвертор (т.е. объединив его входы вместе), то порог срабатывания должен сдвинуться влево (ближе к нулю), а если использовать элемент 2И-НЕ как инвертор, то вправо (ближе к напряжению питания), т.е. теоретически из одного 2ИЛИ-НЕ и одного 2И-НЕ можно построить преобразователь троичного сигнала в два двоичных, которые можно отправить на управление CMOS-ключём...

P.S. CMOS-модели NOR и NAND описаны тут
P.P.S. Получается, что пользуясь стандартными CMOS блоками NOR/NAND и аналоговыми выключателями (transmission gates) можно строить ЛЮБЫЕ троичные комбинационные схемы на стандартном технологическом CMOS-процессе VLSI (но не FPGA или ASIC)!
P.P.P.S. А вот элементы памяти внутри придётся делать двоичными - разделять троичный сигнал на два двоичных и управлять ими двумя двоичными ячейками статической памяти (это если Lavr раньше не придумает флип-флап-флоп на троичных элементах MAX и MIN ; ) ...
Я тут за главного - если что шлите мыло на me собака shaos точка net