Перейти к содержанию
    

ASIC design

Здравствуйте!

Подскажите пожалуйста с чего начать: книги, среды и, желательно, где все это можно достать? Буду очень признателен.

На ФТП нашел лишь стаую версию DC Compiler-a и Prime Time-a. Достаточны ли они для начала????

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А что вам требуется, только синтез(1), или все сразу(2).

1. _Synplify_Asic_, _Leonardo_spectrum. для последнего можно мопробовать самому библиотеки написать(на сколько я понял из вопроса, это исследовательская тема).

2. По моему _I_C_ _B_o_a_r_d_ \S\t\a\t\i\o\n (-M-G-), включает весь маршрут.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Здравствуйте!

Подскажите пожалуйста с чего начать: книги, среды и, желательно, где все это можно достать? Буду очень признателен.

На ФТП нашел лишь стаую версию DC Compiler-a и Prime Time-a. Достаточны ли они для начала????

 

Вопрос в ответ на Ваш: какая часть маршрута проектирования ASIC Вас интересует? Приведу только сильно обобщенное деление (полномасштабная картина займет объем, не подходящий для постов на форуме):

 

 

1. Разработка архитектурной и электрической спецификации.

 

2. RTL-кодирование и разработка среды функциональной регрессионной верификации.

 

3. Разработка и реализация средств Design-For-Testability для конкретного проекта (скан-цепи, BIST, Memory BIST, BILBOs, и т.д.).

 

4. Динамическая функциональная верификация проекта с целью достижения 100% покрытия кода/функциональности/моделирования неисправностей.

 

5. Разработка среды проекта: выбор и реализация технологической библиотеки, атрибутов.

 

6. Разработка ограничений и синтез с реализацией Scan-цепей (плюс JTAG) с помощью Synopsys Design Compiler (DC).

 

7. Статический временной анализ на блочном уровне с использованием встроенных средств DC.

 

8. Формальная верификация проекта (RTL vs. netlist) с помощью Formality.

 

9. Статический временной анализ всего проекта до размещения (pre-layout) с помощью Synopsys PrimeTime.

 

10. Предварительная разводка (floorplanning) с учетом временных ограничений, реализация дерева clock-цепей, глобальной трасировки (routing).

 

11. Передача временнЫх ограничений средствам размещения проекта в кремнии.

 

12. Передача дерева clock-цепей в исходных проект (netlist).

 

13. Формальная верификация синтезированного netlist'а и его же, но после объединения с деревом clock-цепей.

 

14. Извлечение оценочных задержек после глобальной трассировки.

 

15. Передача оценочных данных временнОго анализа обратно в DС и PT.

 

16. Статический временной анализ проекта на основе post-layout данных.

 

17. Оптимизация проекта.

 

18. Детальная трассировка.

 

19. Получение фактических временнЫх задержек после детальной трассировки.

 

20. Передача реальных временнЫх задержек в DC и PT.

 

21. Статический временной анализ в PT на основе реальных данных post-layout.

 

22. Повторная оптимизация (если требуется).

 

23. Функциональная верификация на вентильном уровне с учетом временных данных post-layout (если требуется).

 

24. Формирования описания для кремниевого производства в форматах CIF/GDSII после анализа Layout Versus Schematic (LVS) и Design Rule Checking(DRC).

 

Поясните Ваше предпочтение. От этого зависит выбор литературы, средств (их для "нормального" ASIC-design'а в свободном доступе очень немного) и комментариев...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Сколько там всего! Интересно, а на сколько человек расчитан маршрут.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Сколько там всего! Интересно, а на сколько человек расчитан маршрут.

 

Как минимум 4 бригады:

 

1) Software Development Team (Architecturing / Behavioral Modelling)

2) RTL Development Team (RTL Coding / Syntesis / Timing Analysis)

3) Verification Team (Test Case Development / Funcational / Formal Verification)

4) Physical Design Team (Layout / Floorplanning / Routing).

 

Остальное - дело кремниевой фабрики. Там - своя песня.

 

Количество народа в каждой команде зависит от:

 

1) объема проекта,

2) профессионализма разработчиков,

3) степени использования покупных IP-блоков,

4) людского, временнОго и финансового ресурса компании.

 

Практически 60 процентов маршрута проектирования входят в понятие NRE - Non-Recurring Engineering, то есть то, что приходится делать из проекта в проект строго заново. Это стоит десятки миллионов долларов. Поэтому ASIC - это массовая технология, выгодная только при крупносерийном производстве. От NRE-затрат свободна FPGA-технология, так как ASIC уже физически существует и его отлаживать в кремнии не потребуется.

 

Есть выход из положения для ASIC-проектов, выполняемых по маршруту MPW - Multiple Projects Wafer. Это значит, что кремниевые фабрики предлагают ежегодное расписание дат, к которым нужно сдать проект и тестовые векторы на фабрику для исполнения в выбранной технологии (GaAS, BiCMOS, и т.д.). На одну кремниевую пластину набирают проекты совершенно различных заказчиков. Это значительно удешевляет производство одного чипа за счет дробления стоимости пластины между всеми участниками одного MPW-проекта. Но все равно это тысячи долларов.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Спасибо Олег за детальные разьяснения, я и представить себе не мог сколько там всего :excl: .

О предпочтениях: у меня есть достаточный опыт в работе с FPGA\PLD, то что Вы назвали RTL Coding / Syntesis / Timing Analysis, хотелось бы изучить/сравнить сходный уровень в случае производства ASIC.

И еще один вопрос что подразумевается под Architecturing / Behavioral Modelling???

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Спасибо Олег за детальные разьяснения, я и представить себе не мог сколько там всего :excl: .

О предпочтениях: у меня есть достаточный опыт в работе с FPGA\PLD, то что Вы назвали RTL Coding / Syntesis / Timing Analysis, хотелось бы изучить/сравнить сходный уровень в случае производства ASIC.

И еще один вопрос что подразумевается под Architecturing / Behavioral Modelling???

 

 

Не за что! Надеюсь, что помог чем-то.

 

1. Архитектура и поведенческое моделирование.

 

Как правило, разработка архитектуры включает в себя моделирование будущего ASIC алгоритмически с целью выявления потенциальных проблем в идее самого проекта. Моделирование выполняется чаще всего на C++ и с библиотеками, упрощающими стыковку с "аппаратным миром" (SystemC). Алгоритмическая (поведенческая) модель может стать прототипом для написания верификационной поведенческой модели ASIC, на которой отлаживается набор тестовых программ (testcases), на которых в последствии будет регрессионно отлаживаться RTL-модель. В зависимости от назначения проекта (области применения ASIC), его алгоритмическое моделирование может существенно различаться. Поведенческое моделирование - это средство проверки правильности алгоритмов, реализуемых в последствии аппаратно. На этом этапе становятся понятны ограничения будущего проекта.

 

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

 

 

2. RTL-кодирование / Синтез / Статический временнОй анализ.

 

RTL-кодирование для ASIC и для FPGA в приницпе не отличаются друг от друга. Одно часто встречающееся отличие - использование Verilog для ASIC-проектов и VHDL/Verilog для FPGA. Дело в том, что Verilog - язык по своему синтаксису и функциональности ближе к синтезу ASIC-netlist'а. Он не имеет типизации, присущей VHDL. По сути, он как раз ближе к истинно RTL-описанию, а VHDL позволяет еще и поведенческий стиль. Дело в том, что синтез ASIC - это процедура получения вентильного описания, оптимального с точки зрения выбранной технологической библиотеки, содержащей примитивы логических функций. Чем ближе исходная RTL-модель будет к результирующей синтезированной структуре - тем проще отладка. Можно попрактиковаться в FPGA Compiler (Design Compiler).

 

Статический временной анализ (STA) ASIC и FPGA отличаются в корне. ASIC - это несущетсвующая материя. Она создается из ничего. Все, что известно, это задержки между выводами примитивов и задержки распространения в линиях, которые зависят от размещения и трассировки ASIC-проекта. Именно поэтому статический временной анализ - это фактически основная фаза оптимизации проекта, при условии, что он функционально корректен. Если Вы хотите добиться паспортной производительности - придется итеративно оптимизировать RTL-модель, layout, переопределять ограничения и т.п. В общем, работы предостаточно. Поэтому STA для ASIC вынесен в отдельный пакет (PrimeTime).

 

С FPGA ситуация проще, поскольку в Вашем распоряжении конечный и не многочисленный набор задержек. Ваша задача - определить ограничения по путям распространения сигналов и минимизировать критические пути с целью их сокращения. Это можно сделать либо перепроектированием RTL-кода, либо циклическим размещением и трассировкой с указанием желаемых задержек. Если Вы не переограничили проект - он разведется с 95% вероятностью. Я полагаю, проект не избыточен (RTL-код выверен и нет "лишних" затребованных ресурсов).

 

Есть некоторая литература по Timing Analysis для ASIC. У меня есть в PDF книга Sachin Sapatnekar. Timing. Kluwer Academic Publishers, 2004. В ней на 307 страницах описывается эта тема для различных систем и ASIC-структур в частности. Теоретический труд. Полезно для разработчиков САПР.

 

Есть текст диссертации A Hierarchical Timing Simulation Model for Digital Integrated Circuits and Systems. Тоже "наворочено".

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вот например прайс с одной из фабрик если кому интересно

www.mosis.org/Orders/Prices/price-list-domestic.html

www.mosis.org/Orders/Prices/price-list-export.html

 

там и на график на 2005 можно посмотреть, когда че делают

 

сорри если оффтопик

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

oleg_rudakov

Спасибо , действительно очень познавательно.

Вы не могли бы посоветовать литературу в которой процесс проектирования был бы рассмотрен более подробно? Очень бы хотелось получить представление о всем процессе, что конкретно делается на каждом этапе примеры решений от MG и Cadence ну и тп.

 

Кстати книгу Sachin Sapatnekar можно взять и здесь :

http://ebuki.apvs.ru/downloads/Kluwer.Academic.Publishers/

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вот например прайс с одной из фабрик если кому интересно

www.mosis.org/Orders/Prices/price-list-domestic.html

www.mosis.org/Orders/Prices/price-list-export.html

 

там и на график на 2005 можно посмотреть, когда че делают

 

сорри если оффтопик

 

Что я не понял по ценам. По 0.18 микрон стоит сделать окола 125.000 баксов.

Не ужели фотошаблоны так дешевы? Я всегда думал что стоимость фотошаблонов порядка 500-900 тыс баксов а, то и дороже.

 

краткое описание софта фирмы Cadence Design Systems

1) Средств системного уровня на данный момент нет. Раньше было VCC (не поддерживается с 2000г) и SPW (отдалено напоминает matlab плюс поддержка VHDL, VERILOG и много доп фич, но продана компании Coware)

2) Средства функциональной верификации. Ну здесь можно выделить два программных пакета - Incisive Unified Simulator (IUS) и Incisive Formal Verifier (Conformal). Первый позволяет проводить моделирование verilog, vhdl, systemc, PSL/Sugar, systemverilog, verilogAMS. Также сюда входят средства для анализа резудьтатов моделирования (simvision), анализ покрытия кода (code coverage), средства для верификации на основе asssertions, среедства для проверки HDL кода (HAL), есть средства для работы с транзакциями (Transaction explorer), а также возможность подключения аппаратного ускорителя palladium. Второй пакет - conformal, ранее пренадлежал компании verflex (кажется так). Является аналогом Synopsys Formallity, Mentor formalPro и позволяет сравнить два hdl кода или списка цепей на функциональное соответствие

3) логический синтез. Пакет SPR включает в себя продукты Buildgates, BuildGates extrem, low power option, datapath option, pks и позволяет проводить синтез логических схем. Следует заметить, что по высказываниям специалистов данный продукт несколько хуже чем DC от Synopsys. PKS позволяет проводить планирование кристалла (что не рекомендуется выполнять этим ПО), создавать clock-овое дерево, делать дерево земли и питания, делать трассировку и размещение, т.е. получить GDSII из списка цепей. Насколько я понимаю это "бюджетный вариант" RTL-to-GDSII, более дорогой это платформа Encounter.

4) статический временоой анализатор Pearl. (информация отсутствует)

5) физический синтез. Как я писал выше есть PKS и есть Encounter. Второй стоит более полу лимона баксов и может все что ваша душа захочет. В нагрузку есть средства актуальные для субмикрона: проверка падения напряжения(VoltageStorm), проверка целосности сигнала (CeltIC),

точное вычесление задержек (SignalStorm NDC). По имеющимся у меня данным, при изготовления ASIC на серьезных фабриках, например TSMC при передачи им топологии в формате GDSII вы должны предоставить данные на каком софте это все делалось, а разработчик софта подтверждает легальность его приобретения.

6) Encounter Test - средство для разработки и реализации методологии Design-For-Testability (скан-цепи, BIST, Memory BIST, BILBOs, и т.д.)

7) Средства для разработки аналоговых схем: Virtuoso (схемный редактор и редактор топологии), Virtuoso-XL (продвинутый редактор топологии), specte (моделировщик), SpectreRF (моделировщик ВЧ), ultrasim (крутой моделировщик), neocell (частичная автоматизация создания топологии аналоговых схем), DIVA,DRACULA, ASSURA (средства верификации топологии-отличаются скоростью, емкостью, поддержкой иерархических проектов, также используются для верификациии топологии цифровых схем-проверка DRC,LVS, RCX)

PS Это далеко не весь САПР CADENCE, а только та часть о которой я слышал, или пользовался и не забыл написать. Софта очень много-смотрите на ихнем сайте. Если есть вопросы-спрашивайте.

PSS Остальное не помню-уже позно и я хочу спать

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вот литература для начинающего разбираться в вопросе:

"Проектирование специализированных СБИС Рындин Е.А"

http://www.fep.tsure.ru/russian/kes/books/ryndin/cons-a4.pdf

 

"Руководство к лабораторной работе

ПРОЕКТИРОВАНИЕ СПЕЦИАЛИЗИРОВАННЫХ СБИС НА ОСНОВЕ ПЛИС С ИСПОЛЬЗОВАНИЕМ САПР MENTOR GRAPHICS Е.А. Рындин, А.В. Ковалев,

И.Е. Лысенко "

http://www.fep.tsure.ru/russian/kes/books/ryndin/M2917.pdf

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...