Перейти к содержанию
    

Проектирование асинхронных стейт-машин

Теперь немного о индикации. Для dual-rail domino индикация промежуточных состояний вычислительной функции не требуется. Это не очевидно в начале. Мне на старте работы с этой технологией казалось, что разные по скорости пути должны конфликтовать и разряжать высокоомные точки в процессе вычислений. Однако спайс-моделирование рипл-керри сумматора полностью развеяло мои сомнения.

Дело вот в чем. Индикация сигнализирует об окончании всех переходных процессов. В BD схемах это делается в лоб: рассчитывается максимально возможная задержка с учетом PVT разброса, и с ее выхода берется как бы сигнал завершения. В Вашем случае - Вы просто симулировали, убеждались что глитчей нет, и делали вывод о правильности выбранной точки для индикации. Неплохо, но не совсем правильно. Согласно теории, Вы должны построить граф, соответствующей Вашей логической схеме, и уже анализируя каждое ребро и каждую вершину графа, делать вывод - куда нужно ставить индикатор, а куда нет. Отсюда и вывод, что Вы сделали не полную индикацию. Возможно, я и не прав.

 

Тем не менее, я считаю, что в Вашем случае и не нужно делать полную индикацию, поскольку вся схема целиком должна работать в обычных для синхронных схем PVT corners. Т.е. от нее не требуют работы при питании 150мВ, и не нужно охлаждать до -100С. Т.е. никакого экстрима. Если Вы гарантируете работу схемы в заданных диапазонах - это самое главное. Но основных достоинств SI схем со строгой индикацией, вы лишаетесь.

 

По крайне мере, теперь мне стало ясно, над чем Вы работаете.

Возвращаясь к главному вопросу этого топика. Я занимаюсь немного другими асинхронными схемами (это уже и так уже стало понятно). Поэтому могу только посоветовать почитать об т.н. Elastic circuits. Это разработка Кишиневского, который изначально работал с Варшавским, а потом слинял в Америку, и уже лет 20 работает в Интел. Он в свое время приложил руку к открытию Российского отделения Интел, и он же придумал Elastic - некое подобие самосинхронных схем, которое интел по некоторой информации активно использует в своих разработках. Информации по этим схемам очень мало, как и вообще по технологиям интела. Но какие то статьи Кишиневского есть в интернете. Возможно, это окажется Вам полезным, именно в ключе разработки кастома под high prefomance. По работам Таубина, которые я упоминал ранее в ключе связки домино+dual rail, я не слышал о практической реализации. Так что возможно, Вы первый, кто это использует на практике.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Дело вот в чем. Индикация сигнализирует об окончании всех переходных процессов. В BD схемах это делается в лоб: рассчитывается максимально возможная задержка с учетом PVT разброса, и с ее выхода берется как бы сигнал завершения. В Вашем случае - Вы просто симулировали, убеждались что глитчей нет, и делали вывод о правильности выбранной точки для индикации. Неплохо, но не совсем правильно. Согласно теории, Вы должны построить граф, соответствующей Вашей логической схеме, и уже анализируя каждое ребро и каждую вершину графа, делать вывод - куда нужно ставить индикатор, а куда нет. Отсюда и вывод, что Вы сделали не полную индикацию. Возможно, я и не прав.

 

Тем не менее, я считаю, что в Вашем случае и не нужно делать полную индикацию, поскольку вся схема целиком должна работать в обычных для синхронных схем PVT corners. Т.е. от нее не требуют работы при питании 150мВ, и не нужно охлаждать до -100С. Т.е. никакого экстрима. Если Вы гарантируете работу схемы в заданных диапазонах - это самое главное. Но основных достоинств SI схем со строгой индикацией, вы лишаетесь.

Ну даже не знаю. Расчетный пайплайн в Монте-Карло симуляции с sigma=6 работал при напряжении питания 0.6 вольта. Разброс по температуре до -100С - не знаю, думаю, что модели, которые есть у меня, такой диапазон не поддерживают. Однако и симуляции от 0 до 125С никаких аномалий не выявили. Реальный кремний в таком режиме работать не сможет, поскольку небольшая часть проекта была собрана с использованием стандартных библиотек, а они не характеризовались для низких напряжений и широкого диапазона температур.

 

По крайне мере, теперь мне стало ясно, над чем Вы работаете.

Возвращаясь к главному вопросу этого топика. Я занимаюсь немного другими асинхронными схемами (это уже и так уже стало понятно). Поэтому могу только посоветовать почитать об т.н. Elastic circuits. Это разработка Кишиневского, который изначально работал с Варшавским, а потом слинял в Америку, и уже лет 20 работает в Интел. Он в свое время приложил руку к открытию Российского отделения Интел, и он же придумал Elastic - некое подобие самосинхронных схем, которое интел по некоторой информации активно использует в своих разработках. Информации по этим схемам очень мало, как и вообще по технологиям интела. Но какие то статьи Кишиневского есть в интернете. Возможно, это окажется Вам полезным, именно в ключе разработки кастома под high prefomance. По работам Таубина, которые я упоминал ранее в ключе связки домино+dual rail, я не слышал о практической реализации. Так что возможно, Вы первый, кто это использует на практике.

Спасибо за информацию - попробую поискать.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Ну даже не знаю. Расчетный пайплайн в Монте-Карло симуляции с sigma=6 работал при напряжении питания 0.6 вольта. Разброс по температуре до -100С - не знаю, думаю, что модели, которые есть у меня, такой диапазон не поддерживают.

Разумеется! Таких моделей нет ни у кого, если это не специализированное производство.

 

В этом вся и прелесть схем DI и SI со строгой индикацией - они гарантируют работоспособность при любых PVT параметрах и не только. Единственное условие работоспособности - транзисторы должны физически переключаться. Т.е. моделировать такие схемы имеет смысл не более чем для оценки производительности в какой то конкретной точке, все остальное гарантирует математическая модель. Пока переходы открываются, схема будет работать.

 

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

Еще раз, я не призываю Вас делать полную индикацию, ведь как Вы написали - проект гибридный. Скажем так, просто дал информацию к размышлению. На будущее.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Есть ещё одна альтернатива - CML.

На высоких частотах (единицы ГГц и выше) фиксированный микроток потребления дифф. каскада суммарно оказывается на порядок и более выгоден по сравнению и с синхронными, и с асинхронными решениями, работающими в полный размах.

К сожалению, реальных заказчиков на что-то значительное на основе CML сейчас в РФ нет.

Поэтому полноценно попробовать в реале пока не получилось, только небольшие узлы по 180 нм.

 

Баловался в свое время с такими вещами. Этакий "ECL-like MOS", или "гигагерц на старых процессах".

У таких структур есть несколько особенностей, которые, если доступен некоторый тюнинг техпроцесса (использование полуизолирующей подложки с отказом от "вытягивания" пороговых напряжений), потенциально позволяют прилично выиграть в удельном потреблении (работе переключения) за счет введения большого запирающего смещения на подложку (снижение емкостей). До серьезных проектов дело не дошло ввиду отсутствия реальной потребности.

 

Всю асинхру с burst-mode стейт машинами очень просто формализовать. Я даже думаю, что производители кадов делают с нами такую же шутку, как владельцы патентов на конный трамвай в 30-x годах прошлого столетия. Когда был изобретен электрический трамвай, они купили все патенты и положили их под сукно. Дальше они эксплуатировали свои конные трамвайные линии до тех пор, пока они не окупились и не заработали им денег на модернизацию. И только потом конные трамваи были заменены электрическими. Вот и производители софта ждут...

Ну не только производители софта. Очень много народу настолько привыкло к синхронным схемам, и при "смене парадигмы" они выпадают из профессии, а это большие риски для индустрии в целом. Тем более что бонус от асинхронности не настолько уж и востребован, чтобы это стало мейнстримом. А локальные кусочки - если заказчик достаточно платежеспособен и четко понимает, чего он хочет - всегда найдется кому нарисовать руками.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

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

Гость
К сожалению, ваш контент содержит запрещённые слова. Пожалуйста, отредактируйте контент, чтобы удалить выделенные ниже слова.
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...