Avex 1 29 января, 2019 Опубликовано 29 января, 2019 (изменено) · Жалоба Виа, это обьект в трех слоях: два металла, и переходное между ними. Соответственно, сочетания нескольких размеров и формы переходных отверстий + нескольких вариантов полигонов металлов - дают огромное число вариантов виа (не считая малтикат). В частности, для сетки питания часто используют ортогональные виа, у которых ширина обоих металлов равна ширине переходного, а переходное - квадратного сечения, а не прямоугольник. Если на Вашем скрине поставить такую виа, то расстояние до пина селла станет намного больше, а ошибка уйдет скорее всего. Подобные рекомендации (тип виа) должны содержаться в мануалах на библиотеку селлов, как уже писал. Если их нет .. значит подбирайте сами, чтобы не было конфликтов. Либо действительно не ставьте селлы под страйпами. Но это дорогое решение, на мой взгляд - площадь пропадает. p.s. если же вернуться к изначальному вопросу топика, то поскольку расстановку страйпов я всегда скриптую, и в скрипт включаю формулы расчета шага, оффсета и ширины, то я бы в тот же скрипт заложил и create placement blockage по форме страйпов. Изменено 29 января, 2019 пользователем Aleх Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
MickeyMouse 0 30 января, 2019 Опубликовано 30 января, 2019 (изменено) · Жалоба 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 Изменено 30 января, 2019 пользователем MickeyMouse Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Avex 1 30 января, 2019 Опубликовано 30 января, 2019 (изменено) · Жалоба Ну что же, Вам попался очень сложный вариант. Сложнее бывает только, когда цвета добавляются У Вас второй металл случайно не горизонтальный? Если так, то обычно рекомендуют дублировать фоллоупин во втором металле - об этом должны писать в доке черным по белому. В этом случае страйпы присоединяются ко второму металлу - без конфликтов, а соединения фоллоупинов между М1 и М2 производится регулярным массивом виа. Лучше об этом читать в доке. Если доки нет, лучше спросить саппорт, как это сделать. Если же второй металл вертикальный .. тогда единственный вариант - заставить роутер автоматически кромсать малтикат виа в местах конфликтов. Т.е., к примеру, на Вашем скрине 4х малтикат виа должна быть разбита на 1х и 2х виа, с пропуском в том месте, где возникает конфликт. Т.е. в месте, где удалена виа, конфликта уже нет. Но, и я об этом уже писал, в таком случае обязателен анализ айэр-дроп в конце, чтобы убедиться, что роутер не выкрошил слишком много переходных. Бывает, что выносятся целые области, где из-за отсутствия соединений сетки возникает большая просадка напряжения. Изменено 30 января, 2019 пользователем Aleх Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Nionil 0 7 марта, 2019 Опубликовано 7 марта, 2019 · Жалоба Привет!. Можете пожалуйста привести данные по павер/граунд сетке. Имеется ввиду толщина(width), расстояние (space) а так же направление каждого из металлов. С этой инфой будет легче разобраться. Кстати сколько лэйеров вы используете? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
MickeyMouse 0 12 марта, 2019 Опубликовано 12 марта, 2019 · Жалоба В 08.03.2019 в 06:29, Nionil сказал: Привет!. Можете пожалуйста привести данные по павер/граунд сетке. Имеется ввиду толщина(width), расстояние (space) а так же направление каждого из металлов. С этой инфой будет легче разобраться. Кстати сколько лэйеров вы используете? Добрый день! На рисунке если я не ошибаюсь ширина = 1мкн, расстояние = 0,4мкн. Но всяческие эксперименты с изменением этих величин не к чему не привели. Использую 6 слоев, HVH. Страйпы в 6 металле. Сама библиотека 10-слойная. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Nionil 0 21 марта, 2019 Опубликовано 21 марта, 2019 · Жалоба 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) с уже отсутствующими проблемнымы виями. Про Иновус ничего сказать не могу. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
MickeyMouse 0 22 марта, 2019 Опубликовано 22 марта, 2019 · Жалоба 18 часов назад, Nionil сказал: В 12nm TSMC лечили подобную проблему следующим оброзом. При создании VDD/VSS сетки не создавали переходы между M1 и M2, что позволяло безболезнено ставить ячейки где угодно. После того как всё ячейки на местах и тайминг закрыт создавали переходы между M1 & M2. ICC2 создавал массив переходов (VIA array) с уже отсутствующими проблемнымы виями. Про Иновус ничего сказать не могу. Немного не в тему вопрос... Используете ICC2 ? И как он вам в сравнении с Innovus(если работали в нем конечно) ? Если не секрет, чем вызван такой выбор, просто у меня есть хоть и не большой, но опыт работы с ICC2 и для критических дизайнов по таймингам Innovus значительно сильнее(опять же, это не статистическая оценка, всего лишь пара чипов). Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Nionil 0 22 марта, 2019 Опубликовано 22 марта, 2019 · Жалоба 6 hours ago, MickeyMouse said: Немного не в тему вопрос... Используете ICC2 ? И как он вам в сравнении с Innovus(если работали в нем конечно) ? Если не секрет, чем вызван такой выбор, просто у меня есть хоть и не большой, но опыт работы с ICC2 и для критических дизайнов по таймингам Innovus значительно сильнее(опять же, это не статистическая оценка, всего лишь пара чипов). Innovus, да и вообще продукты кейденс как то мимо прошли. Было время использовал виртуозо, так на схемку посмотреть... А выбор ICC2 не мой, что дали в том и работаем. Как то у нас тут по синопсису прутся - DC, ICC 1/2 , PT + Formality ну и как же без ICV. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться