Pull to refresh
22
0
Alex Surkov @Khort

Пользователь

Send message
Итак, мы выяснили, что микроконтроллер Миландра, это глючные чипы на покупных айпи-ядрах за очент большие деньги. Чем это лучше, чем облизанный со всех сторон STM32 Discovery, обьясните? Мне кажется совершенно не логичным покупать это для нужд ВУЗов.
STA необходим для проверки временных характеристик получающейся схемы. Если характеристики не вписываются в ТЗ, необходима правка кода/архитектуры. Рассматривайте это как часть флоу (фронтэнд) и/или как верификацию. Симуляция нетлиста подразумевается.

Экстракция паразитов делается в цифровом флоу на каждом этапе, включая синтез. Исключение — синтез с wireload моделями, который перестал быть актуальным для технологий ниже 100нм. Во всех остальных случаях делается экстракция — если не из реальной топлогии металлов, то из их оценки (режимы -topo в синтезаторе, trialroute в p&r туле и т.д.). Экстракция паразитов делается и в аналоговом флоу, тут нет противоречий
Задержки выписываются при участии STA. Сначала пускается rc-экстрактор паразитных задержек в проводах, затем запускается STA с учетом наложеных констрейнтов и настроек тула. И только потом полученные задержки сбрасываются в файл для симуляции. Соответственно, весь пессимизм (и ошибки — констрейнтов, настроек и т.д.), присутствующий в STA, попадает в симуляцию. В виде бонуса так же получаются критические пути, которые необходимо рассмотреть и при необходимости — просимулировать. Таким образом, получаем еще один аспект верификации — результатов STA и констрейнтов. Как выше написал YuriPanchul, часто это приводит к правкам в логической модели, а иногда и к изменениям в архитектуре.
А между тем, симуляция нетлиста с задержками (задержки получаются с помощью STA) является одной из главных задач верификатора. Полагаю, Вам просто не приходилось проектировать для ASIC
Если имеется ввиду вариация фаз клоков в CDC, как и вообще методы проверки CDC на стрессоустойчивость — во время симуляции, то про такое было бы очень интересно почитать.
Плохо, что об STA нет ни слова. Вообще временнОй аспект верификации не затронут. А между тем, симуляция нетлиста не дает полной гарантии работы схемы, особенно если в схеме есть CDC, и особенно, если библиотеки статистические. То же касается покрытия тестами — некоторые схемы, такие как большие блоки логики, не покрыть тестами — слишком много комбинаций требуется.
Про мощность, это Вы интересно написали. По Вашему выходит: понижаем напряжение, а ток растет, так? :-)
Мощность считают не только как произведение тока и напряжения, но чаще как квадрат напряжения, деленный на сопротивление. Эта формула больше подходит для расчета мощности в электрических цепях. Впрочем, сопротивление КМОП схемы — величина не линейная и много от чего зависящая, так что и потребление ее зависит от напряжения вовсе не квадратично.
Все верно, можно. Понижение частоты, вплоть до полного отключения, понижение питания, отключение питания — все это уже лет 20 как известные режимы энергосбережения. Их еще называют красивыми словами вроде сон, хибернейт и т.д.
В принципе согласен.
Однако, можно рассуждать и от противного:
1. Вся электроника сейчас делается по КМОП технологии
2. Вся _синхронная_ электроника делается для напряжений питания выше V-порога, причем с заметным запасом. Потому что для более низкого напряжения питания, окно (разброс температуры и питания) работоспособности микросхемы становится неприлично узким, а то и вовсе схлопывается. Зачем нужно низкое питание? При напряжении питания V-порога находится самый энергоэффективный режим работы КМОП, если мы говорим о вычислительных схемах. В остальном, чем ниже питание — тем ниже потребление энергии, это очевидно.
Получается, что для напряжения питания вблизи, или даже ниже V-порога, синхронный процессор не сделать. А вот асинхронная логика будет работать. Остается только найти нишу, где нужны такие применения. Вероятно — медицина и импланты, электроника для работы от возобновляемых источников — света, температуры, мех. растяжений и т.д. Т.е. какая то ниша видится.
Правда, есть одна проблема — процессор (синхронный или асинхронный) использует память. А память перестает работать вблизи V-порога. Это серьезная (но не не-решаемая) проблема на пути разработки именно процессора.
Получается, кому то это наверное все же нужно.
Все относительно. Если посмотреть на выделяемые на науку гранты, то тупика нет, а если на реально производимые микросхемы, то тупик есть ) Насколько мне известно, единственные кто проектирует не в стол, это Алекс Яковлев и его команда в Ньюкасле. Впрочем, я давно уже перестал следить за этим вопросом.
Все так, теория работает только с рядом допущений. И я выше уже указывал на то, что допущения эти в современных реалиях выглядят нереалистично.
Я специально качнул этот учебник по сетям Петри, смотрите страницу 206 и ниже. Там связь между решетками, сетями Петри и диаграммами переходов самосинхронных автоматов.
p.s. Варшавский не был соавтором этого учебника, я ошибся.
Дело в том, что термин полумодулярность — жаргон, применительно к цифровым электрическим схемам. Потому что это математический термин из теории решеток. Началось все с описаний состояний автоматов диаграммами переходов, которые кодировались определенным образом, а потом эти диаграммы подогнали под определения алгебраических структур, операций над ними, и некоторым свойствам. Так из математики были позимствованы термины полумодулярности, дистрибутивности и последовательности, применямые изначально к алгебраическим структурам. Доказательство самосинхронности полумодулярных схем было скорее всего в книге Варшавского 86 года, но наверно есть и в учебнике по сетям Петри. Это доказательство — основание, на котром строится все остальное. Еще ра настоятельно рекомендую почитать этот учебник по сетям Петри, он выложен на RG.
Про маршрут писать не буду, это долго. У меня есть один небольшой пост на эту тему, здесь на хабре.
По поводу Вашего маршрута, должен извиниться, не учел.
Еще могу добавить, что на мой взгляд, при использовании современных тех. процессов все эти модели задержек выглядят уже совершенно оторванными от жизни. А раз так, то единственные действительно не зависящие от любых задержек схемы — т.н. последовательностные (очень узкий подкласс полумодулярных), в которых параллельные процессы не возможны в принципе. На мой взгляд, это серьезный повод забросить эту тему. Для КМОП уже не актуально, а ничего другого на смену пока не пришло.
В том то и дело, что существует маршрут проектирования полумоделярных схем, котрые, следовательно, являются и самосинхронными. То, что существуют самосинхронные, но при этом — не полумодулярные схемы — известный факт, но ведь для таких схем нет (насколько мне известно) проработанного маршрута проектирования. Таким образом, если самосинхронная схема не изобретается случайно из головы, а проектируется с использованием начальной спецификации и накатанного маршрута, то в 100% случаев она будет полумодулярной.
Касательно авторов учебника по сетям Петри, их почта есть в интернете, в их статьях. И на RG они есть
Книга Миллера была написана в 70х, когда терия самосинхронных схем только зарождалась, поэтому критиковать ее нет никакого смысла.
Прочитайте лучше последний серьезный учебник на тему самосинхронных схем — Сети Петри Варшавского-Мараховского-Яковлева-Розенблюма, и вот этот учебник уже критикуйте, благо авторы могут ответить на критику
Все так или почти так. Кому надо — использует, невзирая на недостатки. Добавлю, что практически никому не надо.
Связь с решетками основана на использовании существующих моделей. Измените модели, и придется доказывать что схема по прежнему самосинхронна. Тонкий лед, удачи вам :-)
Строгая самосинхронность вещь настолько синтетическая, что существует только на бумаге да в головах разработчиков, а как только доходит до реализации, то остаются одни только квази решения. К сожалению, теория самосинхронных схем очень плохо ложится на КМОП технологию, особенно ниже 100нм, когда цифровая схема становится все в большей степени аналоговой. Было бы любопытно почитать по реализации на, скажем, электромеханических ключах или мемристорах. Но — не пишут :-)
На самом деле, картина с дутыми нанометрами оказывается и еще дутее. Как только ввели DP, так начались пляски с учетом всяческих литографических эффектов от наложения масок. А значит, что при сокращении ширин проводников, зазоры между ними стали хорошо если не больше! Большие зазоры — проблемы как с трассировкой, так и подводом питания, а плохое питание — снижение эффективной плотности транзисторов на единицу площади. Добавим сюда стоимость дополнительных тулов для проверки DFM, и получаем «золотую» технологию, которая практически никак не компенсирует повышения затрат на разработку и производство. На мой взгляд, действительно прорывной была 16нм с финфетами, а все что ниже — чем ниже, тем все сомнительнее в плане преимуществ.
Перебирание давно известных фактов. Понятно, что для нейрона использовать процессор — как из пушки по воробьям. Понятно, что на КМОП нейрон не сделать, а если и сделать (подпороговое питание) то слишком медленно и неточно (при низком питании шум того же порядка что и сигнал). Поэтому аналоговые КМОП нейроны почти не делают. Понятно, что мемристоры могли бы подойти, несмотря на недоизученность. Все это известно уже лет 20.
Эсик не подойдет из-за тиража-стоимости, это очевидно. Про БМК пусть пишет автор, раз взялся.
Единственная бюджетная альтернатива мк, которая мне видится — очень мало потребляющие CPLD/FPGA в очень маленьких корпусах, поскольку потребление значительно зависит от числа выводов. Удастся ли найти CPLD/FPGA в минимальном корпусе с достаточным числом логики под задачу — зависит от задачи. Надо писать HDL и пытаться запихнуть его в те CPLD (FPGA хуже — больше потребляет), которые сможете достать (в РФ нужные чипы могут и не поставлять).

Information

Rating
Does not participate
Location
Россия
Registered
Activity