Разработка системы автоматизации проектирования flip-chip корпуса Кибардин Владимир Владимирович Корпус Контактная площадка (Bump Pad) ШАРИК ДЛЯ ВНЕШНЕГО КОНТАКТА Кристалл ПЭДЫ Корпус ПИНЫ Печатная плата Необходимость разработки системы автоматизации Крупная организация Маленькая организация Количество групп Сложность проекта Автоматизация Количество групп Сложность проекта Автоматизация Необходимость разработки системы автоматизации Крупная организация “Средняя” организация Маленькая организация Количество групп Сложность проекта Автоматизация Количество групп Сложность проекта Автоматизация Количество групп Сложность проекта Автоматизация Маршрут Разработчики печатной платы Согласование цоколевки Разработчики корпуса Анализ Чертежа Эксперты по корпусированю Разработчики кристалла Наличие графического редактора цоколевки Проблемные особенности • Несколько независимых групп разработчиков • Итеративность процесса проектирования • Участие в разработке сторонней компании • Проблемы средств визуализации и модификации Маршрут Разработчики печатной платы Согласование цоколевки Разработчики корпуса Анализ Чертежа Эксперты по корпусированю Разработчики кристалла Наличие графического редактора цоколевки Независимые группы разработчиков, итеративность • Разные предметы и среды проектирования • Отсутствие общего «языка» обмена информацией • Повышенный риск человеческой ошибки из-за отсутствия автоматических проверок и контроля версий Информационные потоки Разработчики кристалла: • таблица соответствия между контактами кристалла и сигналами • пространство имен: сигналы кристалла • Система координат: “вид сверху” • Специальные требования к трассировке Разработчики печатной платы: • таблица соответствия между контактами корпуса и сигналами • пространство имен: сигналы печатной платы Разработчикам корпуса: • таблица соответствия между контактами кристалла и корпуса • пространство имен: сигналы кристалла • Система координат: “вид сверху” • Специальные требования От разработчиков корпуса: • таблица соответствия между контактами кристалла, чертеж • пространство имен: числа • Система координат: “вид снизу” • Форматы: xls, dxf Различия в представлении данных • Формат файлов и поля таблиц • Пространство имен сигналов • Система координат Когерентность и проверки SUBVERSION Экстракция Цоколевки Конвертор форматов Конвертор сигналов Конвертор координат База Данных Автономная проверка Перекрестная проверка Модуль «Конвертор форматов» • Извлечение и запись данных из текстовых файлов и таблиц XLS • Работа с различным форматированием текстовых таблиц • Возможность добавление новых форматов и настроек • Реализация на языке perl с использованием XML Когерентность и проверки SUBVERSION Экстракция Цоколевки Конвертор форматов Конвертор сигналов Конвертор координат База Данных Автономная проверка Перекрестная проверка Модуль «Экстракция цоколевки» • Извлечение цоколевки из чертежа autocad (формат dwg/dxf) • Чертёж конвертировался в GDSII и обрабатывался в среде milkyway, после чего извлекалась цоколевка в среде Hercules • Языки реализации: perl, Tcl, Scheme (язык Milkyway), Deck (Hercules) Когерентность и проверки SUBVERSION Экстракция Цоколевки Конвертор форматов Конвертор сигналов Конвертор координат База Данных Автономная проверка Перекрестная проверка Модуль «Конвертер сигналов» • Приведение названий сигналов к общему виду, 2 режима работы • Режим «определённости»: используется таблица переименований • Режим составления таблицы: определяется соответствие названий сигналов, после с одобрения пользователя заносит его в таблиц Когерентность и проверки SUBVERSION Экстракция Цоколевки Конвертор форматов Конвертор сигналов Конвертор координат База Данных Автономная проверка Перекрестная проверка Модуль «Конвертер координат» • Приведение координат контактных площадок к общей системе • Реализация на языке perl Когерентность и проверки SUBVERSION Экстракция Цоколевки Конвертор форматов Конвертор сигналов Конвертор координат База Данных Автономная проверка Перекрестная проверка Модуль «База данных» • База данных, поддерживающая простейшую систему запросов, хранит цоколевки текущей и предыдущих версий • Возможно сравнение версий и выдача различий • Реализация Perl + XML Когерентность и проверки SUBVERSION Экстракция Цоколевки Конвертор форматов Конвертор сигналов Конвертор координат База Данных Автономная проверка Перекрестная проверка Модуль «Автономная проверка» • Проверяет поступающую в БД информацию на наличие самопротиворечий (замыкания, дублированные сигналы, ошибки в номиналах напряжений и пр.) • Реализован на языке perl Когерентность и проверки SUBVERSION Экстракция Цоколевки Конвертор форматов Конвертор сигналов Конвертор координат База Данных Автономная проверка Перекрестная проверка Модуль «перекрестная проверка» • Проверяет поступающую в БД информацию на соответствие данной версии цоколевки (используются все сигналы, правильно назначены питания и земли и пр) • Реализация на языке perl Когерентность и проверки SUBVERSION Экстракция Цоколевки Конвертор форматов Конвертор сигналов Конвертор координат База Данных Автономная проверка Перекрестная проверка Система в целом • Обеспечивает когерентность информационных потоков • Наличие проверок в каждом модуле и специализированных модулей проверок резко снижает риск человеческой ошибки • Пакет Subversion контролирует версии всех данных внутри системы • Модульная структура и данные в виде XML обеспечивают расширяемость Маршрут Разработчики печатной платы Согласование цоколевки Разработчики корпуса Анализ Чертежа Эксперты по корпусированю Разработчики кристалла Наличие графического редактора цоколевки Разработчик корпуса -- сторонняя компания • Меньше доверия к разработчику корпуса • Низкая эффективность и повышенный риск ошибки при «ручной» проверке чертежей Верификация Сравнение Цоколевка Требования Разработчик корпуса Цоколевка Модуль Физической Верификации DXF -> GDSII Чертеж Эксперты Модуль физической верификации • Подготовка чертежа и генерация runset скриптов, задающие нормы • Использование среды hercules для проверки чертежа на соответствие исходным требованиям и цоколевке • Визуализация результатов для экспертного анализа • Реализация на языках Perl, Tcl, Scheme, Deck Маршрут Разработчики печатной платы Согласование цоколевки Разработчики корпуса Анализ Чертежа Эксперты по корпусированю Разработчики кристалла Наличие графического редактора цоколевки Визуализация и модификация • Ограниченность средств проектировании цоколевки • Проектирование только «со стороны» печатной платы • Отсутствие средств создания информативных изображений для экспертного анализа Визуализация, модификация База данных Графический Редактор Цоколевки Графический редактор цоколевки • Создание цоколевки с нуля, внесение любых корректив • Отображение связностей, гистограмма пересечений • Отображение топологии кристалла во время редактирования • Работа только с базой данных в качестве источника • Реализация на языках Perl, Scheme, Tcl/Tk Результаты, перспективы Результаты • Успешно разработан корпус для проекта «система на кристалле R500S» • Проектирование проведено в короткие сроки и при малом количеством ошибок Перспективы • Улучшение архитектуры и повышение быстродействия • Полная автоматизация создания цоколевки (PCB-oriented flow) • Использование модулей физической верификации для печатных плат Спасибо за внимание!