Jump to content
    

Запрет на размещение стд ячеек под страйпами питания в Innovus

Виа, это обьект в трех слоях: два металла, и переходное между ними. Соответственно, сочетания нескольких размеров и формы переходных отверстий + нескольких вариантов полигонов металлов - дают огромное число вариантов виа (не считая малтикат). В частности, для сетки питания часто используют ортогональные виа, у которых  ширина обоих металлов равна ширине переходного, а переходное  - квадратного сечения, а не прямоугольник. Если на Вашем скрине поставить такую виа, то расстояние до пина селла станет намного больше, а ошибка уйдет скорее всего. Подобные рекомендации (тип виа) должны содержаться в мануалах на библиотеку селлов, как уже писал. Если их нет .. значит подбирайте сами, чтобы не было конфликтов. Либо действительно не ставьте селлы под страйпами. Но это дорогое решение, на мой взгляд - площадь пропадает.

p.s. если же вернуться к изначальному вопросу топика, то поскольку расстановку страйпов я всегда скриптую, и в скрипт включаю формулы расчета шага, оффсета и ширины, то я бы в тот же скрипт заложил и create placement blockage по форме страйпов. 

Edited by Aleх

Share this post


Link to post
Share on other sites

19 часов назад, Aleх сказал:

Виа, это обьект в трех слоях: два металла, и переходное между ними. Соответственно, сочетания нескольких размеров и формы переходных отверстий + нескольких вариантов полигонов металлов - дают огромное число вариантов виа (не считая малтикат). В частности, для сетки питания часто используют ортогональные виа, у которых  ширина обоих металлов равна ширине переходного, а переходное  - квадратного сечения, а не прямоугольник. Если на Вашем скрине поставить такую виа, то расстояние до пина селла станет намного больше, а ошибка уйдет скорее всего. Подобные рекомендации (тип виа) должны содержаться в мануалах на библиотеку селлов, как уже писал. Если их нет .. значит подбирайте сами, чтобы не было конфликтов. Либо действительно не ставьте селлы под страйпами. Но это дорогое решение, на мой взгляд - площадь пропадает.

p.s. если же вернуться к изначальному вопросу топика, то поскольку расстановку страйпов я всегда скриптую, и в скрипт включаю формулы расчета шага, оффсета и ширины, то я бы в тот же скрипт заложил и create placement blockage по форме страйпов. 

 

Вынос башки... В общем сначала почитал про виа для 28нм, есть рекомендация использовать bar via - примерно в 2 раза шире обычных. Потом попробовал сузить область виа до самих виа(см картину) в итоге те ошибки ушли, но появились новые:

Special Wire of Net VDD & Blockage of Cell x_inst/x_signal

Actual: 0.0920 Required: 0.0850 Type: Cut EolSpacing

2.png1.png

Edited by MickeyMouse

Share this post


Link to post
Share on other sites

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

У Вас второй металл случайно не горизонтальный? Если так, то обычно рекомендуют дублировать фоллоупин во втором металле - об этом должны писать в доке черным по белому. В этом случае страйпы присоединяются ко второму металлу - без конфликтов, а соединения фоллоупинов между М1 и М2 производится регулярным массивом виа. Лучше об этом читать в доке. Если доки нет, лучше спросить саппорт, как это сделать.

Если же второй металл вертикальный .. тогда единственный вариант - заставить роутер  автоматически кромсать малтикат виа в местах конфликтов. Т.е., к примеру, на Вашем скрине 4х малтикат виа должна быть разбита на 1х и 2х  виа, с пропуском в том месте, где возникает конфликт. Т.е. в месте, где удалена виа, конфликта уже нет. Но, и я об этом уже писал, в таком случае обязателен анализ айэр-дроп в конце, чтобы убедиться, что роутер не выкрошил слишком много переходных. Бывает, что выносятся целые области, где из-за отсутствия соединений сетки возникает большая просадка напряжения.

Edited by Aleх

Share this post


Link to post
Share on other sites

Привет!. Можете пожалуйста привести данные по павер/граунд сетке. Имеется ввиду толщина(width), расстояние (space) а так же направление каждого из металлов. С этой инфой будет легче разобраться. 

 Кстати сколько лэйеров вы используете?

 

Share this post


Link to post
Share on other sites

В 08.03.2019 в 06:29, Nionil сказал:

Привет!. Можете пожалуйста привести данные по павер/граунд сетке. Имеется ввиду толщина(width), расстояние (space) а так же направление каждого из металлов. С этой инфой будет легче разобраться. 

 Кстати сколько лэйеров вы используете?

 

Добрый день!

На рисунке если я не ошибаюсь ширина = 1мкн, расстояние = 0,4мкн. Но всяческие эксперименты с изменением этих величин не к чему не привели.

Использую 6 слоев, HVH. Страйпы в 6 металле.

Сама библиотека 10-слойная.

Share this post


Link to post
Share on other sites

On 3/12/2019 at 7:20 AM, MickeyMouse said:

Добрый день!

На рисунке если я не ошибаюсь ширина = 1мкн, расстояние = 0,4мкн. Но всяческие эксперименты с изменением этих величин не к чему не привели.

Использую 6 слоев, HVH. Страйпы в 6 металле.

Сама библиотека 10-слойная.

В 12nm TSMC лечили подобную  проблему следующим оброзом. При создании VDD/VSS сетки не создавали переходы между M1 и M2, что позволяло безболезнено ставить ячейки где угодно. После того как всё ячейки на местах и тайминг закрыт создавали переходы между M1 & M2. ICC2 создавал массив переходов (VIA array) с уже отсутствующими проблемнымы виями. Про Иновус ничего сказать не могу.

Share this post


Link to post
Share on other sites

18 часов назад, Nionil сказал:

В 12nm TSMC лечили подобную  проблему следующим оброзом. При создании VDD/VSS сетки не создавали переходы между M1 и M2, что позволяло безболезнено ставить ячейки где угодно. После того как всё ячейки на местах и тайминг закрыт создавали переходы между M1 & M2. ICC2 создавал массив переходов (VIA array) с уже отсутствующими проблемнымы виями. Про Иновус ничего сказать не могу. 

Немного не в тему вопрос... Используете ICC2 ? И как он вам в сравнении с Innovus(если работали в нем конечно) ?

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

Share this post


Link to post
Share on other sites

6 hours ago, MickeyMouse said:

Немного не в тему вопрос... Используете ICC2 ? И как он вам в сравнении с Innovus(если работали в нем конечно) ?

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

Innovus, да и вообще продукты кейденс как то мимо прошли. Было время использовал виртуозо, так на схемку посмотреть... А выбор ICC2 не мой, что дали в том и работаем. Как то у нас тут по синопсису прутся - DC, ICC 1/2 , PT  + Formality ну и как же без ICV.

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.

×
×
  • Create New...