Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Проектирование элементов библиотек
Форум разработчиков электроники ELECTRONIX.ru > Cистемный уровень проектирования > Разработка цифровых, аналоговых, аналого-цифровых ИС
asoneofus
Вообще, интересует проектирование собственно библиотек. Так как имеющийся софт безнадёжно устарел, то интересно - кто этим и в чём занимается, моделируют как и на чём, примеры либ и элементов. Файлы технологий от фабрик. Уровень: от собственно транзисторов - до логического вентиля ... smile.gif
SM
Цитата(asoneofus @ Feb 22 2006, 15:05) *
Вообще, интересует проектирование собственно библиотек. Так как имеющийся софт безнадёжно устарел, то интересно - кто этим и в чём занимается, моделируют как и на чём, примеры либ и элементов. Файлы технологий от фабрик. Уровень: от собственно транзисторов - до логического вентиля ... smile.gif


Стандартный аналоговый дизайн. Софт - стандартные IC, Cosmos и т.п. от личных симпатий. Симуляция соотв. в spectre/hspice. Я себе сейчас клепаю расширение либы от фабрики с IO-падами. За основу беру их ячейку, оставляю защиту от статики и разводку колец, остальное переделываю под себя. Затем остается сгенерить .lib с задержками для синтезатора - что делаю на основе данных от .measure из спайса, в котором гоняю резудьтат с паразитами. Ну и .lef сгенерить потом может быть для использования в энкаунтере (если не в астро потом чип собирать).) Конкретно разрабатываю IO-пад, который кроме обычного довольно сильного выхода умеет драйвить ЖКИ-стекло. И IO-пад, содержащий выходной буфер операционника. Стандарт целлы по аналогии, не сложнее и не проще.
zzzzzzzz
Я предпочитаю разработку библиотек делать в Таннер Тулз, так как библиотеки весьма "продвинутые", стойкие. И графика в них нужна сильная. Ну а экспорт не проблема - gds.
Тема очень большая, всего не сказать... Лучше вопросы по-маленьку задавать.
asoneofus
Ну, вообще ... Если с самого начала, то нужно описание технологии (файлы технологии) гдето взять ... модели транзисторов, наверное ... В этом тёмный лес, если честно sad.gif ...
Т.е. в чём начать есть - а вот откуда исходные ...
Кстати, Таннер Тулз сгенерит lib ля-синопсис? И как вообще он для 130, 90 и 65 нан - адекватен?
zzzzzzzz
Да, первым делом нужно поиметь DRC от фабрики-изготовителя.
Либо даже коммерческую библиотеку, в которой DRC уже присутствуют по определению.
Совсем хорошо получить расширенный док по технологии и ограничениям.
Ну и, конечно, Spice-модели компонентов, изготавливаемых по этой технологии. Также, надо будет (если негде взять) написать файл для экстракции схемы из топологии (для последующего LVS).
Можно рисовать в меру своих знаний и проверяться....
Lib файл не генерится никем - он пишется ручками исходя из функции ячеек и результатами их моделирования в Spice.
Также, lib файл по готовности должен быть хорошо отверифицирован как "глаками", так и штатными средствами Synopsys (Compiller, etc).
Библиотека (схемотехника, топология и файлы для синтеза (lgn or lib, etc) должны быть "кристально чисты" от ошибок и проходят многоступенчатую верификацию. Вплоть до запуска тестовой партии, содержащей тесты всех ячеек. Это не обязательно, но желательно. Или запускается некоторая схема, использующая почти все или все ячейки.

Топологические нормы (130, 90 и 65 нан и т.п) для ТТ, как и для других аналогичных прог значения не имеют, - все внутренние единицы измерений могут быть условными (лямбда-масштаб) и могут быть переведены в любой другой масштаб. Здесь играет большое значение адекватность используемых Spice-моделей и соблюдение правил проектирования, которые для самых современных процессов могут быть весьма "развесистые", нужно хорошо знать техпроцесс и его ограничения.
Особенно круто обстоит дело с аналоговыми RF- техпроцессами и библиотеками.
Потренироваться можно в ТТ - в нем по умолчанию открывается полный учебный проект с заданными слоями, DRC, ext, Spice и примерами.
Конечно, нужно читать хэлп.
Но бояться, несмотря на сложность этого пути, не стоит - "дорогу осилит идущий". Было бы желание этим заниматься...
cosmobot
Технологические файлы и правила для техпроцессов мосиса можно взять тут http://www.cadence.ncsu.edu/CDK.html
А библиотеку целов под нее на http://vcag.ecen.okstate.edu/projects/scells/

Также существует crete.cadence.com там есть библиотека 180 нм , и некоторое количество референс проектов под нее.
asoneofus
Таннера под линукс на нашем фтп нет ...
смнопсисовский солд-вв битый (тот что поновее sad.gif )
млин... а ментор на АСП чегото косячит sad.gif
zzzzzzzz
ТТ только под Вин и бывает. Причем >=2000, желательно ХР.
Под Лин используйте Cadence IC5141 -есть на фтп
или MG IC Flow. По Синопсису не могу сказать точно что именно нужно для "рисования" - поспрашивайте... H-Spice для моделирования.

Что касается Lib, - держатель стандарта Синопсис, в его компиллере есть достаточно доков по описанию формата. Я выкладывал основные из них на фтп, см. pub/DOC/Books/DocsForLibraryCreation
Также, можно поискать Parser у них - специальная проверялка грамматики Lib.
Compiller тоже есть на фтп.
sh_e
Вопрос следующего плана.
Существует БМК с определенным набором базовых ячеек, доопределить которые нельзя!!!
Имеется ли возможность в библиотеке формата liberty описать элемент, состоящий из нескольких базовых ячеек БМК?
Например для того, чтобы описать сканируемый триггер и т.п.

Хотелось бы также почитать pub/DOC/Books/DocsForLibraryCreation, вот только доступа нет...
zzzzzzzz
Либерти весьма развесистый формат, описать можно очень многое.
В том числе, скорее всего, и вашу задачку (если она в принципе формализуется).
Другой вопрос - Либерти часто пишется как универсальный формат для последующего перекодирования его во внутренние форматы синтезаторов.
Все приличные синтезаторы либо понимают Либерти, либо имеют переходники из него в свои собственные форматы.
Например, Леонардо, Симплисити. Не говоря уж про родные, синопсисовские.
Но вот тут то и возникают ограничения - не все перекодировщики (синтезаторы) понимают все, что написано в lib. Например, количество и назначение выходов ячейки. Так, lgn допускает строго определенное сочетание выходов, один + инверсный. А в либ хоть мульон опиши.....
Короче, все дело в тонких материях конкретных синтезаторов... Их надо изучить заранее чтобы уменьшить возможные переделки.

Если уж никак не терпится, то доки вышлю.
Но, все-таки, попробуйте получить доступ к фтп, - там много полезного кроме этого. Удачи.
asoneofus
Млин ... ховтухи надо писать уже smile.gif
Тематика:
1) Установка, конфигурирование и состав маршрутов Synopsys, Mentor, Cadence, Alliance ...
2) Старт, начало работы, что надо, как надо, чего в довесок
3) Разработка либ, верификация ....
cosmobot
Да хорошие руководтва не помешали бы, в интернете куча курсов различных американских университетов но как правило уровня : нажмите кнопку , затем эту и тп или запустите скрипт и все будет в шоколаде.

А то собственно кроме документации и почитать нечего. Литература в основном про основы (ASIC Смита, или там Разави Аналго КМОП и тд ) либо документация уровня: это меню для этого это меню для этого и тп , хорошо хоть маршруты рисуют.
sh_e
for zzzzzzzz, спасибо за отклик.
Вот, как раз, в lgn известно, как решить подобную задачу (см. пример во вложении). Вопрос связан именно c liberty, так как есть интерес в освоении продуктов от Synopsys.
На первый взгляд, для решения своей задачи в liberty, я обнаружил группу model, но она позволяет определять только перемычки (short) между выводами ячейки или я чего-то не догоняю (или что-то не дописано в документации на liberty).
Вообще, кто-нибудь решал такую задачу именно в этом формате?
Согласен, что она несколько специфична, но хотелось бы решить её в лоб, красиво. :)
Mad Makc
Вопрос ко всем спрашивающим:
Ребят,неужели вы решили замутить *.lib файл для родных отечественных БМК ? Если так, то a14.gif вам по всем фронтам!!!
zzzzzzzz
Мысль понятна. Я когда-то тоже думал сделать (синтезировать) библиотеку стандартных ячеек из примитивов более низкого уровня иерархии.
Но, так как занимаюсь заказными ИС, то мне это не подошло - нарисованные ячейки гораздо компактнее и качественнее синтезированных. А это важнее универсальности и даже скорости проектирования как правило (она и так достаточно высока).
А в случае БМК это вполне разумно. И реализуемо (интуитивное мнение - я такими задачами не занимался).
Только не забудьте, что Леонардо все равно надо как минимум три стандартных ячейки INV, NAND2, DFF (если не соврал).
Не стану говорить ничего по поводу model, short, так как не знаю точно.

Документация всегда хреновая. И Синопсисы не исключение. Все (именно все!!!) основные понятия Либерти приходится выцарапывать из огрызков мыслей в документации и потом проверять, - а правильно ли понял авторов. Увы. Это стиль, вообще - написать так, чтобы люди мучались. А кое о чем и умолчать - если спросят, то может и денежку срубить за техподдержку - типичный буржуйский подход. Так что могу только пожелать терпения и удачи.

Ну а если кого-то пропрет на написание вышеназванных инструкций....
В принципе, такая книжка быстро раскупится.... :-)
Только на практике получается - либо писатель, либо работой занят...
Бывают, конечно, Фейнманы... Но редко.
KMC
Вот, может быть, кому -нибудь поможет книжка... cool.gif
В свое время искал книжки по аналоговой топологии, а наткнулся на эту... в книге в основном упор делается на проектирование топологии цифровых библиотечных элементов. Книга не особо выдающеяся, но литературы-то по данной тематике практически совсем нет...

Лежит в /upload/DOCs/Automatic Layout Modification. Including Design Reuse of the Alpha CPU in 0.13 um SOI Technology (Reinhardt-2002).pdf
Mad Makc
Ну и ещё, до кучи,информация про Lib-файл от Synopsys.Может поможет чем.
Лежит в /upload/DOCs/library_ASIC_create
SM
Цитата(zzzzzzzz @ Mar 16 2006, 19:12) *
ТТ только под Вин и бывает. Причем >=2000, желательно ХР.
Под Лин используйте Cadence IC5141 -есть на фтп
или MG IC Flow. По Синопсису не могу сказать точно что именно нужно для "рисования" - поспрашивайте... H-Spice для моделирования.


Сипонпсис - для рисования надо CosmosSE + CosmosLE + CosmosEnterprise. К ним интегрируется HSPICE+CosmosScope+Hercules+Star-rcxt. Этого хватит на всё, что касается схема->топология. Космосы есть тут на фтп. Hercules входит в Astro, отдельно его тут нет (пока). CosmosScope есть внутри CosmosSE, но старый глючный. Лучше приклеить тот, что посвежее. HSPICE тут тоже есть, причем дюже свежий. rcxt тут вот-вот будет, тоже свежий. После работы с космосом кэденс больше не нужен wink.gif

Про Astro - это, конечно, монстр, если его ставить ради геркулеса только. А вообще - это place, route, CTS и иже с ними. Тоже очень хороший продукт, заменитель-улучшитель энкаунтера. Чего только стоит то, что он ни разу не упал smile.gif за время работы с ним... Да и фич поболее будет. И, самое главное, что работает астро на той же БД, что и космос. А это значит, что если ячейки разработаны в космосе, то астро их подцепит сам как родных.
asoneofus
А в чём проще либу, начиная с уровня транзисторов забацать?
SM
Цитата(asoneofus @ Apr 18 2006, 20:31) *
А в чём проще либу, начиная с уровня транзисторов забацать?


Кому в чем. Кому-то в кэденсе (IC), кому-то в Synopsys (Cosmos), а кому-то и в менторе. Как по мне лично, синопсис рулит. По крайней мере интерфейс и управление писали для людей, а не "чтобы было".
asoneofus
Цитата(SM @ Apr 18 2006, 23:33) *
Кому в чем. Кому-то в кэденсе (IC), кому-то в Synopsys (Cosmos), а кому-то и в менторе. Как по мне лично, синопсис рулит. По крайней мере интерфейс и управление писали для людей, а не "чтобы было".


Просто ... космос 2003 года есть только ... Както стрёмно (хотя, хрен поймёшь нас девелоперов: в граале не стрёмно ... cranky.gif а в космосе ... smile3046.gif ) Синопсис рулит, конечно.

Ты маршрутец уже ниже предлагал попробую на днях.
SM
Цитата(asoneofus @ Apr 19 2006, 11:34) *
Просто ... космос 2003 года есть только ... Както стрёмно (хотя, хрен поймёшь нас девелоперов: в граале не стрёмно ... cranky.gif а в космосе ... smile3046.gif ) Синопсис рулит, конечно.

А у меня космос как будто другой smile.gif И ничего, по крайней мере на мой взбляд стабильнее и удобнее свежего IC. Что там делал сам - в технологический файл вписывал дизайн рулезы, и переписал их TCL-ки для PCELL'ов под себя, после чего корректно заработал SDL. В том числе, кстати, сделал полевики без контактов подложек - а то заколебало их к vss/vdd массово коннектить. "образцы" полевиков и прочих компонентов взял из их либы, которая в комплекте идет... CosmosScope свежий прикрутил... Теперь простро балдю smile.gif smile.gif. Дальше - космос это же просто рисовалка. А LVS/DRC/PEX/spice свежие есть - а все-таки они главное.
iga
Люди добрые а может кто-нибудь послать мне эту книгу на igakkm@yandex.ru , а то до своих мне еще далеко , а книга по проектированию standart cells очень нужна.

Лежит в /upload/DOCs/Automatic Layout Modification. Including Design Reuse of the Alpha CPU in 0.13 um SOI Technology (Reinhardt-2002).pdf
asoneofus
Цитата(SM @ Apr 20 2006, 13:59) *
Дальше - космос это же просто рисовалка. А LVS/DRC/PEX/spice свежие есть - а все-таки они главное.


Да это-то понятно, остальное тоже ... в порядке Но какоето г... Enterprise работает, а вот LE и SE глючат: запускаешь, а они как-бы "висят", потом принудительно запускаешь gxwCreateSchematicWindow "" или gxwCreateLayoutWindow "" ... Но так коряво запускаются - с кучей матов в логе ...
чего делал? Развернул их всех в одну папочку (порознь таже хрень) и сё ... может с лицензией чего не то? Намыль опции.а?

Кстати, у тебя какой дистр?
shems
Цитата(zzzzzzzz @ Feb 22 2006, 19:07) *
Я предпочитаю разработку библиотек делать в Таннер Тулз, так как библиотеки весьма "продвинутые", стойкие. И графика в них нужна сильная. Ну а экспорт не проблема - gds.
Тема очень большая, всего не сказать... Лучше вопросы по-маленьку задавать.

Где можно достать библиотеки или тех. фяйлы для Таннера? Я сейчас работаю тем, что есть в его пакете.
zzzzzzzz
Цитата(shems @ Apr 20 2006, 19:18) *
Цитата(zzzzzzzz @ Feb 22 2006, 19:07) *

Я предпочитаю разработку библиотек делать в Таннер Тулз, так как библиотеки весьма "продвинутые", стойкие. И графика в них нужна сильная. Ну а экспорт не проблема - gds.
Тема очень большая, всего не сказать... Лучше вопросы по-маленьку задавать.

Где можно достать библиотеки или тех. фяйлы для Таннера? Я сейчас работаю тем, что есть в его пакете.


Самому нужно забацать. По образу и подобию. На нужный техпроцесс.
Можно минимальную для начала - INV, NAND2, DFF.
Найти готовый проект на нужный техпроцесс, при этом бесплатный - не реально. Как, впрочем, и для других пакетов. Фабы выдают дизайн-киты для разработчиков на кэдэнс в основном. Но тоже не просто так - договоренности, NDA, и т.п. То, что нужно, обычно бесплатно не валяется. Так как стоит не дешево. Особенно MIX.
Вообще, вопрос поставлен криво - нужны любые либы чтоль?
Тогда чем не устраивает встроенный в пакет проект?
SM
Цитата(asoneofus @ Apr 20 2006, 15:27) *
чего делал? Развернул их всех в одну папочку (порознь таже хрень) и сё ... может с лицензией чего не то? Намыль опции.а?

Кстати, у тебя какой дистр?


У меня дистр тот, что на местном фтп. Лиц. см. в "безопасности комп. программ". В .bashrc добавлен только путь в нужный bin (как и было сказано в инсталл-гаде). Все распаковано в общую кучу. Завелось сразу.
edward77
Цитата(SM @ Apr 20 2006, 12:59) *
Цитата(asoneofus @ Apr 19 2006, 11:34) *

Просто ... космос 2003 года есть только ... Както стрёмно (хотя, хрен поймёшь нас девелоперов: в граале не стрёмно ... cranky.gif а в космосе ... smile3046.gif ) Синопсис рулит, конечно.

А у меня космос как будто другой smile.gif И ничего, по крайней мере на мой взбляд стабильнее и удобнее свежего IC. Что там делал сам - в технологический файл вписывал дизайн рулезы, и переписал их TCL-ки для PCELL'ов под себя, после чего корректно заработал SDL. В том числе, кстати, сделал полевики без контактов подложек - а то заколебало их к vss/vdd массово коннектить. "образцы" полевиков и прочих компонентов взял из их либы, которая в комплекте идет... CosmosScope свежий прикрутил... Теперь простро балдю smile.gif smile.gif. Дальше - космос это же просто рисовалка. А LVS/DRC/PEX/spice свежие есть - а все-таки они главное.



Вообще-то прикрыл Synopsys свой Cosmos как проект, последний релиз был месяцев 5 назад. Основная причина - большое количество багов и как следствие неконкурентоспособность в сравнении с таким гигантом как Virtuoso.
SM
Цитата(edward77 @ Apr 21 2006, 11:19) *
Вообще-то прикрыл Synopsys свой Cosmos как проект, последний релиз был месяцев 5 назад. Основная причина - большое количество багов и как следствие неконкурентоспособность в сравнении с таким гигантом как Virtuoso.


О! Кэденсовский PR пришел smile.gif Cosmos по сей день есть неотъемлемая часть "discovery platform". А современный virtuoso и в подметки не годится даже тому космосу, который 2003-го года (2003.12).
asoneofus
Цитата(SM @ Apr 21 2006, 10:15) *
У меня дистр тот, что на местном фтп. Лиц. см. в "безопасности комп. программ". В .bashrc добавлен только путь в нужный bin (как и было сказано в инсталл-гаде). Все распаковано в общую кучу. Завелось сразу.


Я про лялиха дистр smile.gif ...
Подозрение: в нём и дело, РХ АС3 АС4 АСП11 - не идёт sad.gif

LANG=en_US.UTF-8 PATH=/opt/Synopsys/V-2003.12/bin/IA.32:$PATH SYNOPSYS=/opt/Synopsys/ LM_LICENSE_FILE=/opt/Synopsys/SM.dat /opt/Synopsys/V-2003.12/bin/IA.32/CosmosSE

из командной ни как ... Энтерпризе - только в путь ...
SM
Цитата(asoneofus @ Apr 21 2006, 17:19) *
Я про лялиха дистр smile.gif ...
Подозрение: в нём и дело, РХ АС3 АС4 АСП11 - не идёт sad.gif

LANG=en_US.UTF-8 PATH=/opt/Synopsys/V-2003.12/bin/IA.32:$PATH SYNOPSYS=/opt/Synopsys/ LM_LICENSE_FILE=/opt/Synopsys/SM.dat /opt/Synopsys/V-2003.12/bin/IA.32/CosmosSE

из командной ни как ... Энтерпризе - только в путь ...



FC4 у меня, SMP-ядро. На одной машине 32-битное, на другой - 64-битное. Везде всё идет.
edward77
Цитата(SM @ Apr 21 2006, 12:13) *
Цитата(edward77 @ Apr 21 2006, 11:19) *

Вообще-то прикрыл Synopsys свой Cosmos как проект, последний релиз был месяцев 5 назад. Основная причина - большое количество багов и как следствие неконкурентоспособность в сравнении с таким гигантом как Virtuoso.


О! Кэденсовский PR пришел smile.gif Cosmos по сей день есть неотъемлемая часть "discovery platform". А современный virtuoso и в подметки не годится даже тому космосу, который 2003-го года (2003.12).


SM, ну при чем тут PR blink.gif . Просто поделился тем, что знаю от ребят работающих в Synopsys - е. Cosmos и вправду пока является частью "discovery platform", но вскором времени этому придет конец, потому как пишется новый tool, исключительно с нуля, и сие чудо выйдет уже летом. Почему с нуля, да потому что продвижение Cosmos-а на рынок провалилось, и в частности из-за багов. Что касается нового tool-а, то он обещает быть интересным - куча новых фитчей, улучшенный, в сравнении с Cosmos-ом, интерфейс ..... много чего
edward77
Кстати, у меня есть последний релиз Cosmos-a, если интересует, то могу скинуть как только разрешатся проблемы с FTP.
В наличии имеется также VCS 7.2, но правда со старой лицензией (от VCS 7.0) он работать отказывается......
asoneofus
Цитата(edward77 @ May 6 2006, 15:03) *
Кстати, у меня есть последний релиз Cosmos-a, если интересует, то могу скинуть как только разрешатся проблемы с FTP.
В наличии имеется также VCS 7.2, но правда со старой лицензией (от VCS 7.0) он работать отказывается......


Всё работает, ждём-ссс smile.gif
asoneofus
Есть вопросики по "космосу"
1) Можно-ли вести базу в лямбда-базисе?
2) насколько "боевые" макры, которые лепят транзисторы? Где взять побоевее? smile.gif
3) Макро слепило транзистор - не видно (только иногда подсвечивается) внутренняя компановка - т.е. зоны канала ... и.т.п. Как показать? Потому как показываемый габарит явно больше реального (тоже, кстати, и для элементов библиотек)
4) не понял как включить правила для трассировок и размещения - типа, чтобы не давал ставить транзистор на транзистор ... и.т.п.
5) букварь по нему, художественный (не даташит) есть?
KMC
У меня такой вопрос...

Существует ли какие-либо российские и/или международные стандарты по проектированию библиотечных элементов, в т.ч. военные?
oratie
Вот вспомнился такой стандарт "VSI Alliance Hard IP Tagging Standard"
http://www.vsia.org/QIPDownload/

Он говорит, как нужно маркировать ваши элементы в GDS.
Plat
Чем можно сгенерить символы элементов для Synopsys Design Vision из символов библиотеки Cadence?
SM
Цитата(Plat @ Dec 26 2006, 17:27) *
Чем можно сгенерить символы элементов для Synopsys Design Vision из символов библиотеки Cadence?


Обратно знаю. slibconv. Может она и "туда" могет?
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.