Здесь есть один важный момент, который околомикроэлектронная аудитория хабра упускает, но который ясен как день любому экономисту. Экономика РФ за время СВО уже почти полностью перестала быть рыночной, но сильно приблизилась к плановой, времен СССР. Процесс запущен, набирает обороты, и имеет определенную инерцию, остановить его не просто. А плановая экономика означает фактически прямое гос управление предприятиями. Для микроэлектроники это означает конец всего того что мы знаем и помним, где мы работали. Скоро все может настолько поменяться, что МЦСТ, Байкал, Элвис и все что было раньше станут фактически просто новыми НИИ, которым будут раздавать задачи какая нибудь комиссия при Минпромторге. Раньше была видимость торгов и тендеров, теперь будет просто план и прямое управление. Посчитают нужным передать айпи - передадут, откуда посчитают нужным и кому посчитают нужным. Это не страшилки, так было в СССР, и теперь логично предположить, что так еще может стать в РФ. Соответственно и данная публикация имеет все шансы резко потерять актуальность в ближайшей перспективе. Поглядим
Гигабит езернет, контроллер дд3, pcie кажется ген2 а может и 3, rapid io - это разрабатывалось 10 лет назад, включая фаи, эта информация есть в интернете. К сожалению, все это уже не современные интерфейсы. Но компетенции ведь есть/были? И за 10 лет наверное сделали что то посовременней - тут я не знаю, просто предполагаю, это было бы логично, предположить. С другой стороны, российскую микроэлектронику усиленно разваливали года с 18 и вплоть до СВО, так что могли ничего нового и не надизайнить. И люди в этот мутный период работу поменяли, кто то и не раз, и доступ к современным процессам порезали, да и просто зело дорого это стало. И компетенции уже другие нужны, дизайнить фай для финфетов, а аналоговики в РФ всегда на подножном корму содержались, зарплаты ниже цифровиков. Да, согласен, пожалуй. Выглядит так, что и нет ничего
Однажды на директорском уровне участвовал в обсуждении идеи оформления своих разработок в виде айпи ядер и начала торговли ими для пополнения бюджета конторы. Идея не пошла дальше, поскольку 1. Денег мало - рынок айпи ведь в РФ дефакто отсутствует 2. Сетрификация, это сложно и дорого. Стандарты все западные, сетрификация западная, стоит ну очень дорого 3. саппорт выйдет дороже продажи 4. своруют (свои у своих - т.е. в РФ воруют айпи, были прецеденты.)
Итого, одно дело клаудбир и синтакор, которые (может быть еще) продают тсвои айпи на запад и имеют много кастомеров. И другое дело основные российские дизайн центры по собиранию СоК на базе покупных айпи ядер. У последних если и есть наработки, а они есть у многих, практически для всего перечисленного, но сертифицировать, продавать а потом саппортить это, совершенно не выгодно экономически. Хард айпи - был бы один фаб у всех, еще имело бы смысл. А так хардайпи есть, включая и серьзные интерфейсы, но для каких фабрик и процессов? Тут что то продать и еще сложнее. Так что идея с рынком айпи нкжизнеспопобна, мне кажется
Итого, заявляя что айпи в РФ нет, наверное да - можно и так считать. Формально это неверно, но практически так и есть
Честно говоря, вся серия публикаций выглядит как адовый *ц @accurate_random Не сочтите за труд, почитайте вот эти лекции по проектированию асинхронных схем для студентов. Это даже не учебник, и не книги Варшавского, а просто лекции, самые азы т.с. https://elib.spbstu.ru/dl/1945.pdf/download/1945.pdf
Это примерная копия ШИМ высокого разрешения микроконтроллеров серии TMS320. Сделали правда не слишком хорошо - точность программирования задержки высокого разрешения сильно гуляет. Но, штука интересная, согласен
Лицензий больше нет. Не хочется углубляться в подробности, у арма с этим сложно - лицензируется буквально каждый чих, включая перенос на другой фаб. Есть и другие айпи - периферийные контроллеры, ПДП и т.д. Может быть у каких то и лайф-тайм лицензия, но у арма точно нет.
Так что, ждем комдивы от микрона. Ну и наверное риск-5 в перспективе. Правда, пока без флеша и с какимнибудь убогим ацп на борту.
Что именно мы не можем копировать? Упомянутые вами айпи кортесов никуда с жестких дисков не делись - доставай да используй. Но никто не использует. Пиратство не смешно, это вопрос репутации. Можно сказать иначе: не смешно быть пойманным, а с ядрами арма поймать как плюнуть. Даже Байкал полез в риск-5.
На Микроне нет 65нм и никогда не было, хотя обещают (периодически, с примерно 2008 года)
Кортесы - айпи АРМ. Производить без лицензии чревато: это уже будут не санкции а обвинения в пиратстве. Последнее, что нужно сейчас РФ вообще и Микрону в часности
На Микроне не умеют делать флеш память (нужна для микроконтроллеров, хранить прошивку). Технология позволяет, а вот компетенций нет. Такие вот рукожопы. Хотя, конечно, работы ведутся (тоже уже лет 10).
Капля позитива: вангую, все же стоит ждать своего микроконтроллера (скорее всего это будет Комдив), и флеш все же допилят в ближайший год-два.
Я писал про разработку микросхем, это несколько другой уровень нежели ПЛИС (с которым Вы скорее всего и имеете дело). Две большие, огромные разницы.
Это, скажем, как сравнить радиолюбителя и главного инженера: один лабает себе на коленке в свое удовольствие, а другой собаку съел в своем деле и гонит качественный продукт четко по графику. Если посмотреть вакансии крупнейших мировых дизайн центров, то в 99% случаев будут требования верилог/сверилог и для скриптинга тикль+питон/перл. Но не чизел. И совсем другое дело хайповая университетская или любительская среда, где микросхему могут разве что для диссера разработать, а в 99% случаев дальше ПЛИС дело не идет.
Здесь нет противоречий с тем, что я писал. Действительно PTPX/Voltus на входе берет нетлист, экстракцию, и - файл переключательной активности элементов. А вот уже как делать этот файл переключательной активности - возможны варианты. Я писал о том, что не обязательно симулировать тот же нетлист, что грузится в PTPX, можно обойтись и RTL.
Для оценки потребления не обязательно симулировать нетлист с задержками, да и вообще симулировать нетлист - достаточно и симуляции RTL. Второй вариант более универсален, но требует переноса полученной переключательной активности RTL на нетлист, а для этого нужно иметь таблицу соответствия имен регистров и цепей, которые меняются во время синтеза. В целом, проблем нет, но нужно писать транслятор (или покупать готовый). Знаю, поскольку раньше занимался дизайном, и приходилось такое делать.
В моем понимании, везде где есть симуляция (того же нетлиста, или для оценки потребления) - это еще фронтенд. Но уже почти на стыке с другими дисциплинами, согласен.
Раньше симулировать надо было, ведь только так можно протестировать исключения (иначе - отловить баги) в констрейнтах, которые STA не видит. Но, это вы дизайном занимаетесь, не я. Раз сказали не симулируют, значит стали как то по другому проверки делать. Спасибо за ответ.
А что касается STA в P&R, то его гоняют на всех этапах: до и после плейса, после CTS, route, и конечно в конце, в специализированном signoff туле после сделанной полноценой экстракции паразитов из GDS. Это я уже как специалист говорю.
Юрий, вот вы интересно заголовок написали, про 3нм и 130нм. Да, понятно, что для цифрового дизайнера (RTL) разницы нет, под какой процесс писать код. Или, все таки, есть разница?
Начну издалека. Напомню, что частю работы по разработке эсика является верификация, в т.ч. симуляция пост-лейаут нетлиста. С задержками. Проверить те вещи, которые не видит STA. Далее, задержки (SDF) выписываются с помощью STA-тула. А в чем разница в STA на 3нм и 130нм? Разница - статистический STA на тонких процессах. В котором при расчете задержки пути, задержки складываются квадратически, а не линейно. Может так RTL симулятор считать задержки статистическими формулами? Нет, не может. Да и SDF не поддерживает статистические данные. Так как же быть, как симулируют нетлист с задержками на 3нм? Поделитесь опытом. Раз уже упомянули 3нм
Ответ -наверное да, можно так считать, хотя в общем случае это вовсе не обязательно. Суть в другом - анализ на установку и анализ на удержание - разные, не зависимые и не связанные между собой задачи. Но для каждого из этих анализов производится расчет верхней и нижней границы задержек, просто для анализа по установке: путь данных должен быть Макс, и путь клока Мин. А для анализа удержания - путь данных Мин, а путь клока -Макс.
К этому стремятся, но вы помните про вероятностные величины задержек? В реальности вы никогда не получите одновременного прихода клоков, вероятность этого около нулевая. И на практике расхождение прихода клока на разные триггеры может достигать даже величины в несколько периодов.
Но в целом соглашусь с вами - для фундаментальной публикации по математике, алгоритмы вычисления минимальной и максимальной задержки - минимальный и достаточный инструментарий. А как его использовать - уже вопрос практики. Точнее, можно добавить сюда всю ту физику, которая используется в реальных программах STA, и получится тоже очень даже фундаментальная публикация. Только, это уже будет иметь отношение не столько к математике, сколько к физике, алгоритмам, и численным методам. Я не уверен, что такой труд есть даже на английском. Только отдельные научные публикации, и все. Это та область знаний, на которой зарабатывают огромные деньги, к примеру одна лицензия синтезатора схем из их описания (Design Compiler) стоит $50к в год. Синтезатор работает, как не трудно догадаться, не просто как синтезатор и оптимизатор булевых функций (задача в общем то простая), а с упором на статический временной анализ во время синтеза. Алгоритмы работы подобных инструментов - охраняемая коммерческая тайна. Я так понимаю, в Зеленограде пытались что то свое создать, судя по публикациям. Но чем закончилось, не известно
Дело в том, что без этого никак. Задержки в одной лишь комбинационной логике интересны, но не практичны. На практике орграф потому и ацикличен, что один конец отрезка всегда входной клоковый порт схемы, а вторая точка всегда место разыва - пин данных триггерного элемента, у которого внутрення арка ( вершина графа) от пина данных рвется, и на графе заменяется контрольным ребром между этим пином данных и пином клока. Таким образом мы получаем два пути, которые можно сравнить по величине задержек - от клокового порта до пина данных триггера, и от клокового порта до пина клока этого триггера. А дальше эти два пути просто анализируются на предмет нижней и верхней грани разброса задержек (поиск максимума и минимума). Полученный результат сравнивается с контрольным ребром, который суть - характеристика триггера в виде допуска по этой верхней и нижней грани. Если результат удовлетворяет - схема работоспособна. В этом суть статического временного анализа, на пальцах. Как вы понимаете, на фоне изложенного, ваши выкладки выглядят очень не полно. Об этом я и писал
Повторюсь: Поскольку оценка всегда делается для обоих граней "окна" переходных процессов - верхней и нижней. Зачем - это уже надо вводить такие понятия как Setup, Hold, и метастабильность. И контрольные ребра графа, о которых я писал выше.
Хорошо. Значит не совсем верно понял, мои извинения. Еще одно замечание. Важно считать не только кратчайший путь, но и самый длинный. Поскольку оценка всегда делается для обоих граней "окна" переходных процессов - верхней и нижней. Зачем - это уже надо вводить такие понятия как Setup, Hold, и метастабильность. И контрольные ребра графа, о которых я писал выше.
Иии.. и еще одно совсем маленькое замечание. Дело в том, что в индустрии последние лет 10 используют статистические величины задержек. В простейшем случае для модели задержки используется распределение Гаусса - т.е. mean и sigma (для расчетов обычно используют 3 сигма), в некоторых случаях это распределение складывается из двух разных "половинок колокола" (почему - можно написать много текста), в еще более продвинутом случае ось колокола имеет наклон (тут скрыто еще больше текста). Соответственно все формулы расчета задержек превращаются в статистические, обычный "+" уже не работает. Надеюсь, кто нибудь когда нибудь запилит об этом пост .. для будущих инженеров. Что до вашей книги - наверное об этом стоит просто упомянуть вскользь.
Ок, тогда наверное мне нужно уточнить. Поясню, что я имел ввиду под "физикой". Задержки ребер графа (банально RC проводов). Зависимость задержки вершин графа (элементов) от полярности сигнала: рассматриваем мы передний или задний фронт. Тип вершины (выхода элемента): инвертирующий или нет. Вот и все. Хотя это малое может сильно повлиять на выводы в ваше публикации. К примеру, кратчайший путь - вовсе не тот где меньше вершин в графе, а тот, где суммарные задержки (с учетом задержек ребер, полярностей сигнала на отрезках, и т.д.) меньше. Ну и надо пояснить про дополнительные ребра графа, которые я выше обозвал как [setup/hold/recovery/removal check]. По русски их можно назвать контрольными ребрами, поскольку на них фактически сравниваются задержки прохождения графа разными путями (я об этом подробно писал по ссылке выше).
Здесь есть один важный момент, который околомикроэлектронная аудитория хабра упускает, но который ясен как день любому экономисту.
Экономика РФ за время СВО уже почти полностью перестала быть рыночной, но сильно приблизилась к плановой, времен СССР. Процесс запущен, набирает обороты, и имеет определенную инерцию, остановить его не просто. А плановая экономика означает фактически прямое гос управление предприятиями. Для микроэлектроники это означает конец всего того что мы знаем и помним, где мы работали. Скоро все может настолько поменяться, что МЦСТ, Байкал, Элвис и все что было раньше станут фактически просто новыми НИИ, которым будут раздавать задачи какая нибудь комиссия при Минпромторге. Раньше была видимость торгов и тендеров, теперь будет просто план и прямое управление. Посчитают нужным передать айпи - передадут, откуда посчитают нужным и кому посчитают нужным. Это не страшилки, так было в СССР, и теперь логично предположить, что так еще может стать в РФ. Соответственно и данная публикация имеет все шансы резко потерять актуальность в ближайшей перспективе. Поглядим
Гигабит езернет, контроллер дд3, pcie кажется ген2 а может и 3, rapid io - это разрабатывалось 10 лет назад, включая фаи, эта информация есть в интернете. К сожалению, все это уже не современные интерфейсы. Но компетенции ведь есть/были? И за 10 лет наверное сделали что то посовременней - тут я не знаю, просто предполагаю, это было бы логично, предположить. С другой стороны, российскую микроэлектронику усиленно разваливали года с 18 и вплоть до СВО, так что могли ничего нового и не надизайнить. И люди в этот мутный период работу поменяли, кто то и не раз, и доступ к современным процессам порезали, да и просто зело дорого это стало. И компетенции уже другие нужны, дизайнить фай для финфетов, а аналоговики в РФ всегда на подножном корму содержались, зарплаты ниже цифровиков. Да, согласен, пожалуй. Выглядит так, что и нет ничего
Однажды на директорском уровне участвовал в обсуждении идеи оформления своих разработок в виде айпи ядер и начала торговли ими для пополнения бюджета конторы. Идея не пошла дальше, поскольку 1. Денег мало - рынок айпи ведь в РФ дефакто отсутствует 2. Сетрификация, это сложно и дорого. Стандарты все западные, сетрификация западная, стоит ну очень дорого 3. саппорт выйдет дороже продажи 4. своруют (свои у своих - т.е. в РФ воруют айпи, были прецеденты.)
Итого, одно дело клаудбир и синтакор, которые (может быть еще) продают тсвои айпи на запад и имеют много кастомеров. И другое дело основные российские дизайн центры по собиранию СоК на базе покупных айпи ядер. У последних если и есть наработки, а они есть у многих, практически для всего перечисленного, но сертифицировать, продавать а потом саппортить это, совершенно не выгодно экономически. Хард айпи - был бы один фаб у всех, еще имело бы смысл. А так хардайпи есть, включая и серьзные интерфейсы, но для каких фабрик и процессов? Тут что то продать и еще сложнее. Так что идея с рынком айпи нкжизнеспопобна, мне кажется
Итого, заявляя что айпи в РФ нет, наверное да - можно и так считать. Формально это неверно, но практически так и есть
Честно говоря, вся серия публикаций выглядит как адовый *ц
@accurate_random Не сочтите за труд, почитайте вот эти лекции по проектированию асинхронных схем для студентов. Это даже не учебник, и не книги Варшавского, а просто лекции, самые азы т.с. https://elib.spbstu.ru/dl/1945.pdf/download/1945.pdf
Это примерная копия ШИМ высокого разрешения микроконтроллеров серии TMS320. Сделали правда не слишком хорошо - точность программирования задержки высокого разрешения сильно гуляет. Но, штука интересная, согласен
Среди всех разных китаев, речь в данном случае идет о малазийском китае. Этот чип был разработан для фабрики Силтерра https://www.silterra.com/
Фантастика. Такое может потянуть только компания уровня эппл. Собственно, я и не слышал что бы кто то еще покупал у арма архитектуру, а не айпи.
Лицензий больше нет. Не хочется углубляться в подробности, у арма с этим сложно - лицензируется буквально каждый чих, включая перенос на другой фаб. Есть и другие айпи - периферийные контроллеры, ПДП и т.д. Может быть у каких то и лайф-тайм лицензия, но у арма точно нет.
Так что, ждем комдивы от микрона. Ну и наверное риск-5 в перспективе. Правда, пока без флеша и с какимнибудь убогим ацп на борту.
Что именно мы не можем копировать? Упомянутые вами айпи кортесов никуда с жестких дисков не делись - доставай да используй. Но никто не использует. Пиратство не смешно, это вопрос репутации. Можно сказать иначе: не смешно быть пойманным, а с ядрами арма поймать как плюнуть. Даже Байкал полез в риск-5.
На Микроне нет 65нм и никогда не было, хотя обещают (периодически, с примерно 2008 года)
Кортесы - айпи АРМ. Производить без лицензии чревато: это уже будут не санкции а обвинения в пиратстве. Последнее, что нужно сейчас РФ вообще и Микрону в часности
На Микроне не умеют делать флеш память (нужна для микроконтроллеров, хранить прошивку). Технология позволяет, а вот компетенций нет. Такие вот рукожопы. Хотя, конечно, работы ведутся (тоже уже лет 10).
Капля позитива: вангую, все же стоит ждать своего микроконтроллера (скорее всего это будет Комдив), и флеш все же допилят в ближайший год-два.
Я писал про разработку микросхем, это несколько другой уровень нежели ПЛИС (с которым Вы скорее всего и имеете дело). Две большие, огромные разницы.
Это, скажем, как сравнить радиолюбителя и главного инженера: один лабает себе на коленке в свое удовольствие, а другой собаку съел в своем деле и гонит качественный продукт четко по графику. Если посмотреть вакансии крупнейших мировых дизайн центров, то в 99% случаев будут требования верилог/сверилог и для скриптинга тикль+питон/перл. Но не чизел. И совсем другое дело хайповая университетская или любительская среда, где микросхему могут разве что для диссера разработать, а в 99% случаев дальше ПЛИС дело не идет.
Здесь нет противоречий с тем, что я писал. Действительно PTPX/Voltus на входе берет нетлист, экстракцию, и - файл переключательной активности элементов. А вот уже как делать этот файл переключательной активности - возможны варианты. Я писал о том, что не обязательно симулировать тот же нетлист, что грузится в PTPX, можно обойтись и RTL.
Для оценки потребления не обязательно симулировать нетлист с задержками, да и вообще симулировать нетлист - достаточно и симуляции RTL. Второй вариант более универсален, но требует переноса полученной переключательной активности RTL на нетлист, а для этого нужно иметь таблицу соответствия имен регистров и цепей, которые меняются во время синтеза. В целом, проблем нет, но нужно писать транслятор (или покупать готовый). Знаю, поскольку раньше занимался дизайном, и приходилось такое делать.
В моем понимании, везде где есть симуляция (того же нетлиста, или для оценки потребления) - это еще фронтенд. Но уже почти на стыке с другими дисциплинами, согласен.
Раньше симулировать надо было, ведь только так можно протестировать исключения (иначе - отловить баги) в констрейнтах, которые STA не видит. Но, это вы дизайном занимаетесь, не я. Раз сказали не симулируют, значит стали как то по другому проверки делать. Спасибо за ответ.
А что касается STA в P&R, то его гоняют на всех этапах: до и после плейса, после CTS, route, и конечно в конце, в специализированном signoff туле после сделанной полноценой экстракции паразитов из GDS. Это я уже как специалист говорю.
Юрий, вот вы интересно заголовок написали, про 3нм и 130нм. Да, понятно, что для цифрового дизайнера (RTL) разницы нет, под какой процесс писать код. Или, все таки, есть разница?
Начну издалека. Напомню, что частю работы по разработке эсика является верификация, в т.ч. симуляция пост-лейаут нетлиста. С задержками. Проверить те вещи, которые не видит STA. Далее, задержки (SDF) выписываются с помощью STA-тула. А в чем разница в STA на 3нм и 130нм? Разница - статистический STA на тонких процессах. В котором при расчете задержки пути, задержки складываются квадратически, а не линейно. Может так RTL симулятор считать задержки статистическими формулами? Нет, не может. Да и SDF не поддерживает статистические данные. Так как же быть, как симулируют нетлист с задержками на 3нм? Поделитесь опытом. Раз уже упомянули 3нм
Ответ -наверное да, можно так считать, хотя в общем случае это вовсе не обязательно. Суть в другом - анализ на установку и анализ на удержание - разные, не зависимые и не связанные между собой задачи. Но для каждого из этих анализов производится расчет верхней и нижней границы задержек, просто для анализа по установке: путь данных должен быть Макс, и путь клока Мин. А для анализа удержания - путь данных Мин, а путь клока -Макс.
К этому стремятся, но вы помните про вероятностные величины задержек? В реальности вы никогда не получите одновременного прихода клоков, вероятность этого около нулевая. И на практике расхождение прихода клока на разные триггеры может достигать даже величины в несколько периодов.
Но в целом соглашусь с вами - для фундаментальной публикации по математике, алгоритмы вычисления минимальной и максимальной задержки - минимальный и достаточный инструментарий. А как его использовать - уже вопрос практики. Точнее, можно добавить сюда всю ту физику, которая используется в реальных программах STA, и получится тоже очень даже фундаментальная публикация. Только, это уже будет иметь отношение не столько к математике, сколько к физике, алгоритмам, и численным методам. Я не уверен, что такой труд есть даже на английском. Только отдельные научные публикации, и все. Это та область знаний, на которой зарабатывают огромные деньги, к примеру одна лицензия синтезатора схем из их описания (Design Compiler) стоит $50к в год. Синтезатор работает, как не трудно догадаться, не просто как синтезатор и оптимизатор булевых функций (задача в общем то простая), а с упором на статический временной анализ во время синтеза. Алгоритмы работы подобных инструментов - охраняемая коммерческая тайна. Я так понимаю, в Зеленограде пытались что то свое создать, судя по публикациям. Но чем закончилось, не известно
Дело в том, что без этого никак. Задержки в одной лишь комбинационной логике интересны, но не практичны. На практике орграф потому и ацикличен, что один конец отрезка всегда входной клоковый порт схемы, а вторая точка всегда место разыва - пин данных триггерного элемента, у которого внутрення арка ( вершина графа) от пина данных рвется, и на графе заменяется контрольным ребром между этим пином данных и пином клока. Таким образом мы получаем два пути, которые можно сравнить по величине задержек - от клокового порта до пина данных триггера, и от клокового порта до пина клока этого триггера. А дальше эти два пути просто анализируются на предмет нижней и верхней грани разброса задержек (поиск максимума и минимума). Полученный результат сравнивается с контрольным ребром, который суть - характеристика триггера в виде допуска по этой верхней и нижней грани. Если результат удовлетворяет - схема работоспособна. В этом суть статического временного анализа, на пальцах. Как вы понимаете, на фоне изложенного, ваши выкладки выглядят очень не полно. Об этом я и писал
Повторюсь:
Поскольку оценка всегда делается для обоих граней "окна" переходных процессов - верхней и нижней. Зачем - это уже надо вводить такие понятия как Setup, Hold, и метастабильность. И контрольные ребра графа, о которых я писал выше.
Хорошо. Значит не совсем верно понял, мои извинения.
Еще одно замечание. Важно считать не только кратчайший путь, но и самый длинный. Поскольку оценка всегда делается для обоих граней "окна" переходных процессов - верхней и нижней. Зачем - это уже надо вводить такие понятия как Setup, Hold, и метастабильность. И контрольные ребра графа, о которых я писал выше.
Иии.. и еще одно совсем маленькое замечание. Дело в том, что в индустрии последние лет 10 используют статистические величины задержек. В простейшем случае для модели задержки используется распределение Гаусса - т.е. mean и sigma (для расчетов обычно используют 3 сигма), в некоторых случаях это распределение складывается из двух разных "половинок колокола" (почему - можно написать много текста), в еще более продвинутом случае ось колокола имеет наклон (тут скрыто еще больше текста). Соответственно все формулы расчета задержек превращаются в статистические, обычный "+" уже не работает. Надеюсь, кто нибудь когда нибудь запилит об этом пост .. для будущих инженеров. Что до вашей книги - наверное об этом стоит просто упомянуть вскользь.
Ок, тогда наверное мне нужно уточнить. Поясню, что я имел ввиду под "физикой". Задержки ребер графа (банально RC проводов). Зависимость задержки вершин графа (элементов) от полярности сигнала: рассматриваем мы передний или задний фронт. Тип вершины (выхода элемента): инвертирующий или нет. Вот и все. Хотя это малое может сильно повлиять на выводы в ваше публикации. К примеру, кратчайший путь - вовсе не тот где меньше вершин в графе, а тот, где суммарные задержки (с учетом задержек ребер, полярностей сигнала на отрезках, и т.д.) меньше.
Ну и надо пояснить про дополнительные ребра графа, которые я выше обозвал как [setup/hold/recovery/removal check]. По русски их можно назвать контрольными ребрами, поскольку на них фактически сравниваются задержки прохождения графа разными путями (я об этом подробно писал по ссылке выше).