Ссылку не нашел. Нашел учебник. Я его уже просматривал. С 206 стр. все как и ожидалось. Ни для какой модели нет ограничений на пребывание сигнала в возбужденном состоянии. Ни в абсолютных величинах, ни в относительных. То есть самосинхронность заложена в самой модели. Выбор модели — произвол исследователя, проектировщика. Естественно, если происходит выход из модели, например путем манипуляций с элементами схемы, надо все доказывать и проверять.
Кстати в учебнике термин SI благоразумно не используется.
Полумодулярную и не самосинхронную схему получить не сложно. Исходное задание — полумодулярное поведение. По нему строим достижимые последовательности состояний с учетом ограничения задержки (например, сигнал может находиться в возбужденном состоянии не более 2 итераций). Все полученные последовательности не содержат нарушений полумодулярности. Далее таблицы истинности, логические функции, схема. Полученная схема генерирует поведение, соответствующее исходному в условиях ограниченной задержки. При не ограниченной задержке схема может генерировать поведение отличное от исходного и даже не полумодулярное.
Обязательно поищу доказательство Варшавского и, если он меня переубедит покаюсь здесь же. Но пока не вижу оснований менять мнение. Анализ на полумодулярность можно провести по двум субстанциям. Схема или поведение. Если это схема, то та же история, что и с Миллером. Если поведение… Для STG наверно рановато, но в любом случае STG модель с неограниченной задержкой и т.д. Диаграмма состояний также модель с неограниченной задержкой. То есть неограниченность задержки заложена в инструмент анализа. Отсюда и все последствия. Понятно, что все это до некоторой степени казуистика: яйцо, курица… Но понимать природу вещей необходимо. В данном случае это не привело к каким-то фатальным провалам. И даже не фатальным. Но вот у того же Миллера есть фраза о том, что последовательностные схемы свободны от состязаний, поскольку нет параллелизма. Дальше тема не развилась и я списал на ошибку перевода. Но по сути уже серьезное заблуждение. Природа состязания лежит не в параллелизме, а в особенностях самих логических элементов. Причем не в физической реализации, а в их модельных свойствах. Пример состязаний для элемента x=NAND(a,b).
В последовательностных поведениях встречается только тип 1. Состязание заключается в том, чтобы событие b- должно восприняться элементом x раньше, чем событие a+. При параллелизме возможные типы поведений 1-7. И везде события b- и a+ не параллельны. Параллелизм никакого отношения к состязаниям не имеет. Последовательностным поведениям состязания также присущи, как и параллельным.
То что задержки проводов приближаются к задержкам элементов, я думаю, не повод для отчаяния. Если использования одних двухвходовых элементов не достаточно, можно пойти дальше: увеличивать расстояние (в событиях) между событиями b- и a+. Причем без ограничений.
Я не покушаюсь на Ваши достоинства. От чтения Миллера повеситься не зазорно. Если бы Вы задали конструктивный вопрос, я бы с удовольствием ответил. Тем более, что с самосинхронной темой Вы знакомы. То, что моя писанина с первого взгляда не очень понятна, не беда. У меня, действительно, нетрадиционный взгляд на эту проблему. То, что я в меньшинстве, не значит, что я не прав. И свою правоту я могу подтвердить конкретными схемами, которые традиционалистам не доступны.
Вот не поняли Вы меня. Я не покушаюсь на Ваш маршрут. Я только говорю, что Вы приходите на станцию Самосинхронность (независимость от задержек элементов) не потому, что прошли через станцию Полумодулярность, а потому, что, по всей видимости (точного Вашего маршрута я не знаю), Вы с самого начала проложили маршрут в самосинхронном пространстве.
Если есть доказанный вывод: следствием полумодулярности является самосинхронность, подскажите, где его искать. На Миллера уже ссылаться нельзя. Миллер свой анализ делает на основе допустимых последовательностей состояний. Допустимые последовательности он вычисляет, исходя из предположения, что задержка логического элемента не ограничена. То есть изначально Миллер исследует схемы с неограниченной задержкой элементов. Следовательно самосинхронность это не следствие полумодулярности, а изначально принятые правила функционирования схемы. Самосинхронность и полумодулярность свойства пересекающиеся, но не коррелирующиеся. Любую схему можно исследовать как в модели с ограниченной задержкой, так и в модели с неограниченной задержкой. Одна и та же схема может быть полумодулярной в модели с ограниченной задержкой (полумодулярная и не самосинхронная), но не полумодулярной в модели с неограниченной задержкой (не полумодулярная и самосинхронная). Надо правильно лепить ярлыки. Ярлык Самосинхронность надо лепить на модель задержек, в которой схема исследуется. Ярлык Полумодулярность надо лепить на конкретную схему, исследуемую в конкретной модели.
О полумодулярности. Давайте уже употреблять более адекватный аналог — output persistency, тем более, что не я его изобрел. Полумодулярность это подмножество OP. OP ценна уже сама по себе, вне связи с самосинхронностью. На схеме должно стоять два знака качества: OP и самосинхронность. Третий знак касается базиса реализации.
Если, говоря о не проложенном маршруте, Вы имели ввиду не полумодулярные, но OP схемы, не соглашусь с Вами. Маршрут существует, я это уже демонстрировал.
Ну я же не плачу, что мне не очень понятны статьи о программировании (хотя бы в силу не знакомой терминологии). Вводного курса по программированию я в этих статьях не заметил.
Я так понял, возражения только морально-этического плана. По сути возражений нет? Я бы с удовольствием подискутировал с авторами учебника. Или по крайней мере обменялся мнениями. Если здесь не удобно, я существую на RG (Sergey Bystrov). Но мне кажется, не с руки им до меня снизойти. Кстати об учебнике. В нем нет самого главного: как синтезировать схемы. Туманные намеки на ячейки Давида не впечатляют.
Обижать Миллера цели не было, я уж и так постарался помягче. Просто прочитал, ну никак нельзя было промолчать про казус со SI. Если кто-то уже был в курсе раньше, подскажите — я удалю.
Похоже на высказывания в упомянутой книге. Делаются схемы заведомо худшие более чем в 2 раза по быстродействию (по сравнению с однофазными), в n+1 раз худшие по энергопотреблению (n — количество кодированных сигналов). А потом говорится: схемы может не идеальные, но это плата за самосинхронность. А схема, о которой речь, действительно отличная, в выбранном базисе реализации лучше не сделать. Если же модель не соответствует реальности, наверно надо модель править. К примеру, тот же базис реализации.
Самое главное из виду упустили. В подходе, излагаемом в книге Плеханова, важное место занимает преобразователь моносигнала в ПФС-сигнал. При синтезе реальной схемы без него не обойтись. На 143 стр. книги, на рис 4.30 изображена схема такого преобразователя. В фазе спейсер возбуждение инвертора может сняться без его переключения (при достаточно быстром изменении сигнала М). Схема не полумодулярна, не самосинхронна. В общем-то ничего особо страшного в этом нет. Но говорить о строгой самосинхронности метода уже нельзя. Проблемы синтеза преобразователя связаны с упорным нежеланием использовать событийный анализ. Если будет интерес, могу помочь.
У меня вот возник вопрос В ответе автора говорится о сложности проектирования 4-разрядного АЛУ. И говорится, что 8-разрядное АЛУ, а тем более 16-разрядное, гораздо сложнее. В связи с этим вопрос: неужели в самосинхронном блоке Вы задействуете сразу все разряды обоих операндов? Да, при сложении есть проблема переноса из младшего разряда. Но формировать группу переноса более, чем из 4 разрядов не практично, элементы получатся слишком сложные.
И не удержусь. В ответе больше эмоций, чем логики. Пример: «отказобезопасность НЕ ЕСТЬ следствие независимости от задержек элементов». В книге, в абзаце сразу за определением: «отказобезопасность — способность схемы останавливаться при константных неисправностях». Константная неисправность — эквивалент бесконечной задержки элемента. При бесконечной задержке элемента схема должна остановиться.
Если сигнал представлен одним проводом, то изменение на этом проводе и есть окончание переходного процесса. Если же сигнал представлен 2 проводами (кодирование), окончание переходного процесса нужно отслеживать по 2 проводам. Необходима какая-то структура, которая бы этим занималась. Такой структурой является индикатор. Кодирование введено для реализации в монотонном базисе, чтобы все входы элемента переключались в одном направлении. Поэтому нельзя при переключении сигнала просто поменять 1 на 0 (и наоборот) на обоих проводах, представляющих сигнал. Надо сначала оба провода перевести в 0 (это и есть вторая фаза — спейсер), и только после этого подать 1 на соответствующий провод. Это рабочая фаза. Вот именно с этим и связано разделение на фазы.
Да уже сделана арифметика с памятью ( a+b — обычное, не логическое). Я уже говорил: через выбор. Подробнее, как соберусь с силами. То что схема большая — результат самоограничения в элементной базе. Более сложная арифметика делается примерно также. А то что записать уравнение проще, чем рисовать поведение, не спорю.
Это когда посредством по крайней мере 2 входных сигналов для схемы задается одно из двух (как минимум) альтернативных направлений. Либо схема будет выполнять один порядок действий, либо альтернативный.
Алексей, что-то Вы опять поторопились, срочно исправляйтесь. Я про то, что независимость от задержек элементов и проводов это дистрибутивность. В Вашем духе могу посоветовать: читайте википедию, гы-гы. Посмотрел книгу, которую Вы порекомендовали. Там с терминологией порядок. В итоге могу сказать, что я проповедую самосинхронные схемы, работающие в однофазном режиме. Только чем вам SI не угодил? А все самосинхронщики должны уточнять, что развивают именно многофазное направление. Так что необходимость математического доказательства отпадает. Кстати, сама Ваша формулировка не очень корректна: если уж схема не самосинхронна, то значит зависит от задержек.
Революцию я уже сделал. Арифметика реализована без кодирования, фаз и т.д. Это сделано с помощью выбора. А выбор, как я вижу является неудобной темой. Если кто о нем упоминает, то вскользь. На самом деле выбор проще, чем параллелизм. Надо только в этом разобраться.
Многофазный подход имеет полное право на существование. Он специально заточен под комбинационные схемы. Только надо учитывать, что решение с заранее навязанной структурой заведомо избыточно. Ну, и за пределами комбинационных схем такой подход мягко говоря не очень удобен.
У меня вопросы остались. Бывают ли не самосинхронные схемы, но не зависящие от задержек элементов? Если да, обладают ли они уникальными свойствами (а если не обладают, то почему)? Может ли схема называться самосинхронной если у нее нет кодированного представления сигналов?
Охватывает ли метод поведения с выбором? Может выбор считается не существенным типом поведения, без которого можно обойтись? Или этот вопрос пока остается открытым?
Раз речь зашла о библиотеке элементов, видимо ограничение базиса реализации имеет место. Есть ли в этом направлении какие-то теоретические результаты?
Рецензент не брал на себя обязательств сделать АЛУ. Он говорил только об исходном задании. Но раз уж зашла речь, будет время что-нибудь наваяю.
А на стр. 180 речь все-таки об упорядоченности переключений сигналов.
Не, у нас таких нет. Не в смысле, что не гадят. На сайте нет. Мое обращение на ты связано с предположением, что имею дело с подростком. В слове «элитный» проглядывается желание уколоть. Меня обидеть трудно.
Кстати в учебнике термин SI благоразумно не используется.
Полумодулярную и не самосинхронную схему получить не сложно. Исходное задание — полумодулярное поведение. По нему строим достижимые последовательности состояний с учетом ограничения задержки (например, сигнал может находиться в возбужденном состоянии не более 2 итераций). Все полученные последовательности не содержат нарушений полумодулярности. Далее таблицы истинности, логические функции, схема. Полученная схема генерирует поведение, соответствующее исходному в условиях ограниченной задержки. При не ограниченной задержке схема может генерировать поведение отличное от исходного и даже не полумодулярное.
В последовательностных поведениях встречается только тип 1. Состязание заключается в том, чтобы событие b- должно восприняться элементом x раньше, чем событие a+. При параллелизме возможные типы поведений 1-7. И везде события b- и a+ не параллельны. Параллелизм никакого отношения к состязаниям не имеет. Последовательностным поведениям состязания также присущи, как и параллельным.
То что задержки проводов приближаются к задержкам элементов, я думаю, не повод для отчаяния. Если использования одних двухвходовых элементов не достаточно, можно пойти дальше: увеличивать расстояние (в событиях) между событиями b- и a+. Причем без ограничений.
Если есть доказанный вывод: следствием полумодулярности является самосинхронность, подскажите, где его искать. На Миллера уже ссылаться нельзя. Миллер свой анализ делает на основе допустимых последовательностей состояний. Допустимые последовательности он вычисляет, исходя из предположения, что задержка логического элемента не ограничена. То есть изначально Миллер исследует схемы с неограниченной задержкой элементов. Следовательно самосинхронность это не следствие полумодулярности, а изначально принятые правила функционирования схемы. Самосинхронность и полумодулярность свойства пересекающиеся, но не коррелирующиеся. Любую схему можно исследовать как в модели с ограниченной задержкой, так и в модели с неограниченной задержкой. Одна и та же схема может быть полумодулярной в модели с ограниченной задержкой (полумодулярная и не самосинхронная), но не полумодулярной в модели с неограниченной задержкой (не полумодулярная и самосинхронная). Надо правильно лепить ярлыки. Ярлык Самосинхронность надо лепить на модель задержек, в которой схема исследуется. Ярлык Полумодулярность надо лепить на конкретную схему, исследуемую в конкретной модели.
О полумодулярности. Давайте уже употреблять более адекватный аналог — output persistency, тем более, что не я его изобрел. Полумодулярность это подмножество OP. OP ценна уже сама по себе, вне связи с самосинхронностью. На схеме должно стоять два знака качества: OP и самосинхронность. Третий знак касается базиса реализации.
Если, говоря о не проложенном маршруте, Вы имели ввиду не полумодулярные, но OP схемы, не соглашусь с Вами. Маршрут существует, я это уже демонстрировал.
Обижать Миллера цели не было, я уж и так постарался помягче. Просто прочитал, ну никак нельзя было промолчать про казус со SI. Если кто-то уже был в курсе раньше, подскажите — я удалю.
И не удержусь. В ответе больше эмоций, чем логики. Пример: «отказобезопасность НЕ ЕСТЬ следствие независимости от задержек элементов». В книге, в абзаце сразу за определением: «отказобезопасность — способность схемы останавливаться при константных неисправностях». Константная неисправность — эквивалент бесконечной задержки элемента. При бесконечной задержке элемента схема должна остановиться.
Революцию я уже сделал. Арифметика реализована без кодирования, фаз и т.д. Это сделано с помощью выбора. А выбор, как я вижу является неудобной темой. Если кто о нем упоминает, то вскользь. На самом деле выбор проще, чем параллелизм. Надо только в этом разобраться.
Многофазный подход имеет полное право на существование. Он специально заточен под комбинационные схемы. Только надо учитывать, что решение с заранее навязанной структурой заведомо избыточно. Ну, и за пределами комбинационных схем такой подход мягко говоря не очень удобен.
Охватывает ли метод поведения с выбором? Может выбор считается не существенным типом поведения, без которого можно обойтись? Или этот вопрос пока остается открытым?
Раз речь зашла о библиотеке элементов, видимо ограничение базиса реализации имеет место. Есть ли в этом направлении какие-то теоретические результаты?
Рецензент не брал на себя обязательств сделать АЛУ. Он говорил только об исходном задании. Но раз уж зашла речь, будет время что-нибудь наваяю.
А на стр. 180 речь все-таки об упорядоченности переключений сигналов.