Логисторная логика

Логисторная логика это набор концепций, применение которых может позволить ускорить вычисления, сократить затраты энергии на вычисления и увеличить плотность транзисторов на кристалле без существенного изменения техпроцесса. Она находится в разработке и статья ниже является лишь первичным результатом. Мы надеемся что она вызовет интерес в научных кругах и среди энтузиастов и разработка будет продолжена.

Логисторная логика предполагает:

  1. Параллельно — последовательное, а не последовательное как в CMOS, выполнение операций на уровне логических элементов (альтернатива CMOS)

  2. Не стандартный метод кодирования 0 и 1

  3. Использование Логисторов (тип транзисторов)

  4. Использование двуполярного питания

  5. Использование «grid array» расположения гейтов (вертикально и горизонтально на виде сверху)

В процессорах математические операции описываются логическими схемами, которые представлены последовательным подключением CMOS транзисторных сборок.

Время выполнения этих операций определяется суммой времен выполнения каждой из последовательно подключенных транзисторных CMOS сборок

Чтобы продемонстрировать задержки, возникающие при последовательном подключении CMOS сборок представим симуляцию, выполненную в LTSpice на основе реальных spice моделей 10нм FinFET:

aa476229a89072555d8f583681e5c253.webp

На графике ниже виден исходный сигнал (зеленый) и задержки, возникающие после двух (синий) и после 4-х инверторов (красный)

688d9a374c590e09484e1e6219862f8d.webp

Предлагается новый тип транзистора — логистор:

aa070d5effb51552f61b6fdfe7ba00b2.png

В логисторе выходной сигнал (между Source и Drain) «изолирован» от управляющего сигнала — между Gate и Base, соответственно логисторы могут также использоваться вместо оптронов

В comsol semiconductor была произведена симуляция логистора, которая показала возникновение канала между Source и Drain при подаче положительного напряжения на Gate и отрицательного на Base. Ниже показан канал при отсутствии и наличии напряжения между Source и Drain:

d174e831770752825907a592199979aa.webp25b0f812467eeb4e387469af27bf2ddf.webp

Расчетная Вольт-Амперная характеристика логистора:

55b37dabd4e64fccdbc4ec5f79410ffa.webp

Благодаря двуполярному питанию, которое будет описано ниже, не требуется обеспечивать полное «запирание» логистора при закороченных Gate и Base, благодаря чему возможен подбор профиля допинга при котором логистор «качественнее» запирается и позволяет пропускать втрое большие токи чем NMOS при прочих равных.

Входные значения в ALU, построенном на базе логисторной логики должны иметь ниже описанный метод кодирования 0 и 1:

70ee9e2b49d9c2beaa62b3551ecb2109.webp

Где выходное значение — это напряжение между выходами и землей. Как видно, каждый бит передается по двум проводам.

Единичные логические операции в логисторной логике принципиально описываются следующим образом:

69756b2f83471f7a9e7e40db345d72e9.gif

Где «результат» — наличие (1) или отсутствие (0) пути

В логисторной логике логические цепи отличны от CMOS, TTL и других технологий. В случае отсутствия ограничения степени параллельности (в «полной» логисторной логике) цепи строятся таким образом, чтобы при выполнении операции не возникало «to Gate» операций. Другими словами в ALU запрещена подача сигнала с Drain на Gate.

dacbf025cf14240028106d78875c503a.webp

В результате операции выполняются параллельно, а не последовательно как у CMOS

Пример построения «полной» логисторной схемы для сумматора двух 4-х битных чисел

A1, A2, A3, A4; B1, B2, B3, B4 — биты первого и второго числа; outputs — результат

Инвертированные входы представлены как проводящие ключи, не инвертированные — не проводящие

08163e07c5cbd15487e44022af8879b0.webp

В логисторной логике формат выхода не регламентирован и может не совпадать с форматом входа, поэтому правая часть (комплиментарная) не обязательна и приведена для понимания метода составления комплиментарных схем.

В полной логисторной логике каждый выход должен иметь независимую логическую схему.

Ниже представлена симуляция в Logisim без комплиментарной части. справа сверху — стандартная схема сумматора; справа снизу — схема необходимая для построения полных логисторных схем

883f6854db42922374e6239dd00ec747.webp

Далее представлена симуляция логисторного сумматора двух 3-х битных чисел в falstad:

6d220f7ae3ad221c327d92c39faee8e0.jps

Для подтверждения работоспособности логической части логисторной логики была запроектирована в EasyEDA и изготовлена на JLCPcb плата:

2ecd047ca29b2dcb519d39e9d2cdd71f.webp03ee2065430adc3615ee784f80ab2ab9.jpg

Виду того что логисторы не существуют, были использованы оптроны. Плата работает и выдает ожидаемые значения, что неопровержимо доказывает верность логической части логисторной логики.

Для достижения высокой плотности размещения логисторов рекомендуется объединить Base всех логисторов и разместить Base на обратной стороне Substrate. Gates рекомендуется располагать горизонтально и вертикально. Source и Drain соседних Логисторов необходимо объединять, так что к одному Source / Drain будут присоединяться 4 Gate

Стоит обратить особое внимание на то что в статье описана логисторная логика без ограничения степени параллельности (полная), где степень параллельности — примерное количество Gates которое может запитываться с одного Drain. Для увеличения производительности обязательно использование ограничения степени параллельности. При этом исчезает требование — использовать независимую схему для каждого выходного бита. Использование каскадирования перед логисторной логикой для увеличения токов для насыщения большого количества Gates — является очевидным, но наихудшим решением

По техническим причинам коллектив далее не может продолжать работу над проектом и описать оптимальное решение внедрения ограничения степени параллельности, а также не обладает ресурсами для реализации чипа на базе логисторной логики, поэтому материал передаются в доработку научному сообществу и энтузиастам

Разработано в ЛНМО; Авторы: Артем Родичкин, Анна Евсеева, Полина Маслова, Семен Архипов, Инна Миронова, Чечулин Михаил

© Habrahabr.ru