Jump to content

    
Sign in to follow this  
demon_x

Консультация по подготовке библиотек под P&R тулзы

Recommended Posts

Доброго времени суток,

 

 

Итак есть задача. Пусть есть некий PDK под любой из суб-микронных процессов. Нарисованы десяток целов с использованием этого PDK. Есть GDS, есть транзисторный нетлист и есть нетлист с извлеченными паразитами. Нужно построить библиотеку под Каденс Genus & Innovus для автоматического синтеза и P&R.

 

 

Мои ожидания от моего возможного консультанта.

 

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

 

(2) практический опыт с тонкими процессами. Это означает, что меня заинтересует человек, имеющий опыт работы хотя бы с 65нм процессом, а лучше 28нм.

 

(3) предложения сделать за меня эту работу и отдать мне результат характеризации меня совсем не заинтересуют.

 

(4) не надо советовать обратиться за официальной консультацией к производителю - пробовали, все заканчивается предложением пункта (3).

 

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

 

 

Я понимаю, что консультация, которую я хочу получить - дорогая. Меня это не пугает и не останавливает :)

 

 

Готов выслушать Ваши предложения по возможным вариантам сотрудничества, суммам и способам оплаты.

 

 

--

С уважением,

Демон

 

 

 

Share this post


Link to post
Share on other sites

Очень интересно. Сам не предлагаю свои услуги, дабы не умею. Но вот интересно, удаленно хотите обучаться или же обучение должно проходить так скажем в живую. Ну и если в живую, то с какого вы города?

 

Дополнение. Не внимательно прочитал пункт 5.

Интересно...т.е Вы хотите заниматься характеризацией библиотек? Если найдете такого человека, то если не секрет, поведайте нам, в каком софте (Харизма или стандартные тулы от Cadence например) он будет Вас обучать этому...или я как всегда все проспал =)

Share this post


Link to post
Share on other sites

Каск написал в (5) - консультацию хотелось бы получить удаленно - все мы люди крайне занятые, а потому времени на лишние перелеты ни у кого нет. Хотя - вопрос прилета в некую локацию может обсуждаться. Естественно, я предпочту Европу, в крайнем случае Азию, или Штаты.

 

 

--

С уважением,

Демон

 

Share this post


Link to post
Share on other sites

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

 

 

В принципе, отхарактеризовать реально мне надо некий специфический look-ahead сумматор под специфические условия работы. Иными словами - объем реальной работы не такой большой. Пара флопов и латчей идет в нагрузку, просто для более полного понимания процесса самой характеризации. Да, у меня подписаны НДА с большой четверкой, так что доступы к практически любым ПДК у меня есть, потому с большой вероятностью я смогу говорить с консультантов в терминах любого доступного ему ПДК.

 

 

Если будет все же стоять вопрос, что надо оплатить внешние лицензии и мощности консультанту, то вопрос тоже обсуждаем.

 

 

--

С уважением,

Демон

 

 

P.S. Если есть готовность обсуждать более тонкие детали предстоящей работы, то можно перейти в приват. Сообщите в теме почтовый адрес на который написать - я напишу. Поскольку на форуме у меня только третье сообщение, то внутрифорумная почта у меня еще не работает.

 

Share this post


Link to post
Share on other sites
Интересно...т.е Вы хотите заниматься характеризацией библиотек? Если найдете такого человека, то если не секрет, поведайте нам, в каком софте (Харизма или стандартные тулы от Cadence например) он будет Вас обучать этому...или я как всегда все проспал =)

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

 

 

Соответственно я предполагаю построить консультацию в виде некоего факультатива - консультант объясняет мне методологию, я ее делаю, после даю результаты. Если результаты неудовлетворительные, консультант ищет вместе со мной где у меня ошибка, мы ее осправляем и добиваемся правильного результата. Как-то так. Может мое представление об этом процессе немного наивно, однако сложность здесь я вижу в основном только в методологии. Потому и прошу человека с положительным опытом тейпаута проекта со своими отхарактеризованными целами.

 

 

--

С уважением,

Демон

 

Share this post


Link to post
Share on other sites

Нет смысла браться за "тулчейн", пока не освоите мат часть. А мат часть здесь - STA. Возьмите любой либерти файл, и разбирайтесь. Когда будете понимать буквально каждую его строку, как она используется потом в STA, только тогда имеет смысл самому начинать делать характеризацию. Да и то, по началу не в либерате/силикон смартах, а вручную - подготовка тестбенча, тестов, симуляция на спайсе, измерение характеристик, ручное заполнение лутов и т.д. При этом желательно пихать эту либу в тулы с STA, и проверять как работает результат. И когда уже поймете как это все работает, только тогда уже брать тулы верхнего уровня. Которые по сути - автоматизированные оболочки к все тому же спайс-моделированию, не более чем приспособа тому, кто точно знает что должно получиться в рез-те.

Share this post


Link to post
Share on other sites

Shivers,

 

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

 

Я общался на тему характеризации целов с десятком компаний, которые предлагают услуги синтеза и P&R. Характеризацией кастом-целов занималась только одна и реальный опыт был у них от 65нм и выше. Ну и, естественно, консультировать они отказались ;) Как и охарактеризовать мои блоки под нужный мне процесс :(

 

 

--

С уважением,

Демон

 

Share this post


Link to post
Share on other sites

Между характеризацией стандарт селлов и заказных блоков лежит пропасть. Если у стандарт селлов их либерти-описание почти полностью описывает логику работы схемы, то для заказных блоков выдумывается схема замещения, которая накладывает ограничения только на тайминг интерфейсов, а внутренность остается черным ящиком. Т.е. либерти описание большого хард-айпи блока, это в каждом случае творческая работа разработчика, который должен этой моделью правильно достроить граф STA, чтобы временные арки на портах блока не обрывались, и тулы правильно считали тайминг. Тулы автоматической характеризации, о которых Вы писали в начале, хорошо работают как раз со стандарт-селлами, т.е. на большом числе примитивных схем. А в случае заказных блоков характеризацию как правило (в знакомых мне фирмах) проводят вручную.

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

Share this post


Link to post
Share on other sites

Shivers,

 

 

То, что я могу ручками нарисовать некий скрипт на Verilog-A для HSPICE, который даст требуемые транзишены на входы целы и померяет задержки для различных комбинаций для выходов - это вообще не вопрос. Могу. Мои результаты почти совпадают с либерти-файлами от ФАБа. Но вот именно это неприятное слово "почти". Где-то я что-то не учитываю, где-то может не так точно извлекаю паразиты, где-то даю транзишен не так, или не так его меряю. Собственно, вся суть в деталах. Потому как если я охарактеризую свой сумматор неправильно, то может проект и будет работать, но точно не с минимальным потреблением и не с максимальной скоростью.

 

 

Как я успел разобраться, сам по себе процесс характеризации - это некий свод эмпирических правил. Какой тип характеризации лучше использовать, какие паразиты и с какой точностью извлекать, какие параметры компактных моделей следует активировать, а влияние каких не столь значительно и их можно не учитывать, сколько точек МС дать на каждый транзишен, каким распределением обрабатывать результат, как лучше и надо ли "шуметь" на линиях питания, ну и так далее. Вопросов очень много, а информации в открытом доступе практически нет. Что-то без никакой конкретики ведел по NLDM, что-то видел по CCS, но все разрозненное и без системы. Можно, конечно, пожечь несколько МПВ, но в моем случае на моих технологических нормах это непозволительно дорого и слишком затратно по времени. Иными словами, даже сравнительно дорогой консультант будет все равно дешевле и быстрее. Самое неприятное, что если я охарактеризую всего один некий НАНД и засуну его в библиотеку, то его влияние может быть не настолько большим на весь проект и ничего особого я не увижу. А вот если охарактеризую всю кастомную библиотеку сам, то вот здесь все может оказаться совсем не весело. Как-то так. Потому и нужен консультант с реальным опытом, специалист и в STA, и в характеризации. В какой-то момент думал просто взять себе такого человека на работу, но блин, их в свободном доступе тоже нет :biggrin: Или может наш HR отдел не там ищет :cranky:

 

 

Ну и либерти-файл, это же еще не все. Как потом либерти и GDS скормить некому тулу и на выходе получить библиотеку, которой сможет пользоваться синтезатор и P&R? Я же не зря хочу получить консультацию по всему флоу, а не только по отдельной части.

 

 

--

С уважением,

Демон

 

Share this post


Link to post
Share on other sites
. В какой-то момент думал просто взять себе такого человека на работу, но блин, их в свободном доступе тоже нет :biggrin: Или может наш HR отдел не там ищет :cranky:

 

Я могу помочь где найти человека. Но только если Вы у меня в белом списке.

Отдельным конторам, попирающим честь и достоинство инженера, нет желания помогать из принципа.

Сначала бы представились, кто Вы и откуда. Вдруг Вы окажетесь не из их числа.

 

Share this post


Link to post
Share on other sites

demon_x,

Вы правы, цифры должны совпадать до последнего знака. Если Вы правильно задаете транзишн, и вешаете правильную емкость на выход, и PVT совпадают, и пороги, и PDK той же версии, что и либы, и экстракция правильная ... то наверное что то не так в тестбенче или симуляторе. Я бы посоветовал пойти от простого к сложному: собрать спайс-тестбенч (без верилог-А) на одно измерение, и если цифра опять отличается, сменить симулятор (к примеру -спектре) и/или поковыряться в настройках моделирования.

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

Share this post


Link to post
Share on other sites

baumanets,

 

Мы с вами точно никогда не пересекались - я бы запомнил. Как я понимаю, ник выбран не просто так. Людей по IC профилю я раньше не искал, хватало своей команды. Да и возникла потребность в таком человеке не так давно. Назваться в паблике не смогу :( Извините :( Имею для этого достаточно веские причины. Если вы не против, то эту дискуссию можем продолжить отдельно. Дайте какие-либо свои контакты, я напишу.

 

 

Shivers,

 

Во время недавней регулярной посиди на тренинге от Каденс в Софии-Антиполисе, они сказали, что подход с единственным раном на выбранный транзишен перестал работать начиная с 65нм и предложили охарактеризовать мне библиотеку в качестве сервиса к нашему регулярному годичному контракту. На мои настоятельные просьбы уделить все же часть времени знакомству с либерате, они как-то сказали, что для моих PVT оно работать все равно не будет и надо мудрить ручками, а технологию они не расскажут, потому что она сложная и однозначных решений нет. На мое замечание, что я не хотел бы чёрных ящиков в проекте, они аккуратно свернули дискуссию. Немного большего удалось добиться с customer support непосредственно на ФАБе - они согласились хотя бы описать процесс не в деталях, но в общем.

 

Сейчас каждый транзишен в выбранном PVT корнере характеризуется минимум 4 числами: (1) математическое ожидание задержки, (2) минимальное значение задержки, (3) максимальное значение задержки, (4) среднеквадратическое отклонение. А вот тут начинаются эмпирические правила и практический опыт. Оказывается, нормальное распределение здесь не катит. Оно может использоваться только как аппроксимация. Задержки описываются либо skew normal distribution, либо кси-квадрат, либо чем-то совсем экзотическим. Потому матожидание задержки определяется по разному, в зависимости от распределения. Максимальное и минимальное время задержки определяется исходя из выбранного распределения и требуемого доверительного интервала. Среднеквадратическое отклонение по сути валидно только для нормального распределения, для skew normal и для кси-квадрат его надо как-то аппроксимировать. Нормальное распределение требует точек 50 на транзишен, skew normal - порядка 200. Ну и главный вопрос - вот как имея 4 цифры на транзишен засунуть их в Либерти? Какие доверительные интервалы брать? При этом по их словам, тулзы к 4 цифрам ещё не готовы, надо максимум две, ну и так далее. Потому вопрос о консультации совершенно не праздный.

 

 

--

С уважением,

Демон

 

 

 

Share this post


Link to post
Share on other sites

Услышал много нового для себя. Но я и не специалист в характеризации, хотя было дело, приходилось этим заниматься для 65 нм. Все, что я писал выше, касается NLDM. На 65 нм одного рана достаточно, чтобы по двум порогам получить искомое число для LUT. Но я совсем не понимаю, куда приткнуть 4 варианта измерений (мин/макс, мат ожидание), о которых Вы пишете. Возможно, слова сотрудника кэденс - просто пыль в глаза (они так делают иногда, замечено), поскольку на 28нм для проектирования используется все тот же NLDM, а CCS в лучшем случае для сайнофф. Но если на 65 нм сингл-ран тест давал точно такие же цифры как в фабричном либе (т.е. я был уверен, что методика правильная), то на 28нм я таких экспериментов не ставил. И еще пять копеек. Замечено, что тулы цифрового бекэнда сильно загрубляют цифры из либерти: в слоу на 10-20% медленнее, а в фасте на 10-20% быстрее. Это легко проверить, сделав репорт STA в туле для некой схемы, а потом промоделировав эту схему с паразитами для того же угла на спайсе. Получите в спайсе результат на 10-20% быстрее в слоу. Опять же я пишу по своему опыту 65нм. Зачем так делать, я не знаю, видимо перестраховка. В этом ключе гоняться за точностью результатов характеризации дот-либа смысл теряется. И в CCS смысл тоже теряется. К слову, а какой у Вас процесс?

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this