Обновить

Комментарии 6

Очень важно уточнять, в каком базисе выполнены эти три инвертора. Потому что схема на КМОП и биполярных транзисторах практически нежизнеспособна из-за паразитной обратной связи между входом и выходом инвертора. Можно добавить линию задержки (RC в общем случае), либо использовать 5 инверторов - так будет работать стабильно.

На мой взгляд, практическое применение - основная проблема всей теории самосинхронных (основанных на решетках) схем. Последние разработки пришлись на развал СССР, а все что было позже, так и не пошло в мейн стрим. Наука ради науки мало интересна. Да и нового, после ГАЛА ничего не появилось, теория выглядит законченной. Наверное по этим причинам никто в мире больше и не занимается самосинхронными схемами. Нет ниши.

Когда еще сам чего-то паял (пол века назад) - это был ТТЛ и никаких проблем, типа описанных вами, не наблюдалось. С КМОП я имел дело чисто теоретически и поэтому ничего вразумительного по их поводу не сообщу, хотя некоторые мои схемы на КМОП защищены АС СССР.

Что касается отношения к самосинхронным схемам, то мое - совпадает с вашим и я их на данном этапе рассматриваю только как объекты для хобби, ну как другие хоббисты - простые числа, например. Хотя проблема подсчета количества этих объектов меня интересовала всегда.

За комментарий спасибо!

Интересно было бы всё-таки перевести осциллятор из рабочего цикла в нерабочий. Сколько я не пытался сделать это в SPICE-симуляторе, мне это не удалось. И стр. 43 в диссертации Мамрукова отвечает на вопрос "почему не удалось?" Потому что попадание в нерабочий цикл 000-111 никак не мешает выходу из него. Более того, такое попадание непредсказуемо - один раз за тысячу периодов или за миллион - иди лови.

Ю. В. Мамруков. Анализ апериодических схем и асинхронных процессов. Диссертация к.т.н. ЛЭТИ, 1984.

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

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

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

Спасибо за интересный комментарий!

Диаграмму Мамрукова натянуть на куб нельзя уже только потому, что переходы из вершины 000 в вершину 111 для последовательных схем запрещены. Кроме того, у Мамрукова из вершин 000 и 111 выходит пять стрелочек, у Вас - три. Тем не менее, диаграмма Мамрукова полумодулярна (я надеюсь). Признаю, я не обратил внимания, что все стрелочки направлены из нерабочего цикла в рабочий. Т.е. переключения между циклами быть не может, я ошибся. Хотя, никто не проверял можно ли обратить обратить одну или несколько из этих пяти стрелочек так, чтобы схема осталась прежней.

Что же касается симуляций, я, конечно, задавал начальные условия 000 и 111 - схема сразу же сваливается в рабочий цикл. Вашу фразу "не параметры на начало среза, а актуальные..." я не понимаю. Симуляция такого генератора - это так или иначе симуляция перезарядки конденсаторов. В отличии от практики, индуктивности нет. На каждом шаге симуляции, в его начале напряжения на конденсаторах актуальные. Идеальную линию задержки, без затухания, без индуктивности, без емкости и без сопротивления я также устанавливал. Не помогает.

Я ж говорил, что натяжение на куб - процедура болезненная, т.к. используется тот же принцип, что и в картах Карно: показываются только переходы в соседние состояния. Остальные (если они есть) подразумеваются, но не показываются, что бы не усложнять рисунок.

Приведенная вами диаграмма не полумодулярна относительно состояний 000 и 111, т.к в них возбуждены все три выхода, а при переходе в любое рабочее состояние (- 1 возбуждение) остается возбужденным только 1 выход, следовательно еще 1 возбужденный стал устойчивым не поменяв своего значения. Не полумодулярность этой схемы доказанный факт, не зависимо от источника, откуда она срисована.

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

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации