О тестировании микросхем

Длина технологической цепочки производства микросхем и их последующего использования в конечных изделиях, впечатляет. Причем, чем дальше по пути совершенствования, а значит и усложнения технологий, тем эта цепочка длиннее и содержит все больше обратных связей, превращаясь из цепочки в одну скользкую горку. С одной стороны, это благодатная тема для генерации новых знаний и умений. С другой — годы уходят на то, чтобы осознать, как вся эта пиротехника устроена, а потом найти область, где можно нанести пользу. Причем в книжках написано о том, что было важно в позапрошлой эпохе. Актуальные проблемы куда чаще покрыты NDA и зарыты в головах умных, но не всегда общительных инженеров.

Одной из актуальных областей является верификация и тестирование микросхем: неисправности микросхем, их классификация, анализ, методы нахождения и недопущения. На эту тему меня просвещала Анжела Юрьевна Матросова, зав. кафедрой программирования Факультета Прикладной Математики и Кибернетики Томского Университета.

В начале внедрения каждого нового технологического процесса на фабрике процент выхода годных схем, то есть yield, составляет единицы и доли процентов, настолько сильно отличаются чертежи от того, что фактически получилось после литографии. Постепенно подбираются технологические параметры, растут наборы правил и рекомендаций по правильной разводке микросхемы, формируются новые правила борьбы с паразитами, правила оптической коррекции. Года за два совместного упорного труда производителей и разработчиков процент выхода годных можно довести до приличных 60-80%, а там, глядишь, и за 90% уйдет. Процесс становится достаточно стабильным и предсказуемым. При больших партиях цена одного микрочипа складывается из того, сколько чипов произведено, сколько протестировано и сколько после этого выброшено на свалку. Получается, процент выхода годных во многом определяет коммерческую успешность изделия. А раз нам нужна партия и процент выхода годных, то начинается деятельность по максимальному упихиванию устройств на единицу площади не вообще, а с заданным процентом выхода годных в заданный срок (два миллиона гаджетов к Рождественской распродаже, или год пошел зря). Выясняют, где можно не следовать рекомендованным правилам, где можно понадеяться на то, что вариации процесса будут не слишком велики, и прочая. При таких допущениях не обойдешься без хорошего тестирования микросхемы, определения, не сгорела ли она при производстве.

До недавних пор ситуация в тестировании была относительно простой. Все многообразие способов испортить микросхему при производстве сводилось к единственному классу одиночных константных неисправностей: ситуации, когда определенный логический оператор (один из десятков миллионов) вместо булевой функции всегда выдает одно константное значение. Такие неисправности неплохо научились тестировать. Важным достижением 80-х годов оказались скан технологии. В этом случае в схему добавляются специальные структуры, разрывающие обратные связи в тестовых режимах работы. В результате можно записывать тестовые наборы не только на входах и выходах, но в достаточно произвольном месте, и таким образом проверять изделие на наличие “залипающих” устройств. Цена решения — до 30% схемы памяти занимают такие тестовые регистры.

Как только решили проблему, возникла новая. При современных размерах устройств и расстояниях между ними все чаще проявляют себя самые разнообразные эффекты, которые константными неисправностями уже не опишешь. Физика этих эффектов порой ясна, и в этом случае проводят дополнительные анализы электрических-термальных-механических и прочих эффектов. Но чем дальше, тем хуже получается понять и качественно смоделировать, что происходит при тактовой частоте в пару гигагерц на паре квадратных микрон чипа. Неисправности при этом в проявляют себя как задержки путей — сигнал отстает в определенных областях на такт и больше, со всеми вытекающими. Не то, чтобы раньше задержек не было, сведение тайминга — одна из самых тяжелых задач. Но теперь задержки все сложнее отловить на этапе проектирования, приходится тестировать саму железку. Более того, приходится вводить “краш тесты” на этапе разработки. Создаем чип, вносим туда дополнительные тестовые структуры, измеряем результат, находим области с задержками, изучаем-перепроектируем и по новой на фабрику. Для сведения: цена перезапуска проекта на 28нм никак не меньше миллиона долларов. Кроме того подобный подход в лоб предполагает уже больше половины кристалла занимать тестовыми структурами, уж проще тогда на 45нм остаться. Так или иначе, сегодня на нодах ниже 45нм покрывают тестами на задержки порядка 30% путей в чипе. Остальное — как повезет.

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

Пора возвращаться в Томск. Город далековат от фабрик. В шестидесятые годы в Университете начал работу А. Д. Закревский, в те годы занимавшийся кибернетикой (называлась по другому, само собой). Группа сконцентрировалась на задачах дискретного проектирования, логического представления алгоритмов синтеза, разработали язык программирования ЛЯПАС  (первая ссылка 1964 год, однако). Потом Закревский перебрался в Минск, а в Томске продолжали уже искать темы кто как умел. Полагаю, ориентация не на дорогую установку, а на ручку и бумажку, спасла в девяностые. Когда финансирование кончилось, пришлось перестраиваться, учить английский язык. В середине девяностых работали с Михаилом Госселем — восточным немцем, получившим образование в СССР. Занимаясь наукой уже в ФРГ Михаил пытался организовывать научные контакты с Россией. Возить аспирантов из Томска оказалось очень уж накладно, а вот с братьями Сапожниковыми Валерием и Владимиром из Питерского Университета Путей Сообщения отношения сложились. Вообще, по словам Юрьевой, группа Сапожниковых очень хорошо ориентируется в вопросах тестирования и проектирования надежных систем. Потом Университет организовал стажировку Анжелы Юрьевны в Остине у Джейкоба Абрахама, который с советских времен считался главным специалистом по тестированию микросхем. Там Матросова познакомилась с современными задачами тестирования.

Из Америки она приехала с ворохом актуальных задач и своими идеями: как в них применять методы булевой алгебры, в которых является экспертом. Сначала решали задачу, как синтезировать для FPGA схему, которая была бы полностью верифицируема с точки зрения задержек путей. Полная верификация понимается в том смысле, что если существует в схеме ошибка задержек путей, то существует тест, который подобный путь найдет. Очень быстро получили результат. Действительно, для FPGA можно поправить алгоритмы синтеза так, чтобы все пути проверялись на предмет задержек. Одна беда, практического применения у результата нет, не на тех тактовых частотах FPGA работают, чтобы задержки были большой проблемой. Зато нашли некоторые интересные подходы, которые смогли использовать уже для произвольных схем. Постепенно росло понимание того, какие задачи важны и как их решать. На сегодняшний день у Матросовой все больше результатов, которые в лабораторных условиях проявляют себя впечатляюще: минимизация количества тестовых триггеров для тестирования задержек путей в памяти; получение схем, в которых все пути тестируемы с проверкой на бенчмарках; методы обнаружения кратковременных и перемежающихся неисправностей, доля которых растет с уменьшением размеров транзисторов и ростом быстродействия. В Томске не строят иллюзий, это исследования, от которых до промышленного применения — дистанция огромного размера. И пройти эту дистанцию в одиночку группа не может. Но если хоть один из результатов подтвердится реальными опытами, предложенные методы очень хорошо смогут потолкаться на рынке EDA.

Группа активно общается с Вирендрой Сингхом. Он подносит задачи, гранты, возит к себе студентов, своего магистра сейчас планирует в Томск прислать; оппонирует, спорит, объясняет, что нужно, чтобы результаты можно было представить на серьезных конференциях; дает доступ к бесплантым у них базам данных научной литературы (в Томске с этим напряженка, денег просят, ну не стыдоба?). Кроме того переписываются с братьями Сапожниковыми. Есть ученики в Горно-Алтайске. На этом список интересующихся заканчивается. РФФИ считает тему неинтересной, кроме части российско-индийского сотрудничества. И правда, местным разработчикам микросхем не до лабораторных результатов. Жаждущих взять лабораторный результат и на его основе начать стартап тоже не видно: быстрого результата ждать не стоит, такие технологии пятилетками до ума доводятся при активной помощи заинтересованной промышленности. Простой пример, список “многообещающих стартапов” на 2013 год, приглядитесь к датам основания. Матросова позиционирует себя, как научного деятеля. Прикладника, но научного. А значит надо понимать, что из вороха результатов единицы процентов дойдут до промышленности. Но без этого источника идей и гипотез, которые проверяют и отбрасывают — никуда.

Пока же магистры и бакалавры уходят в банки заниматься дотнетом. На место ушедших приходят новые толковые студенты, хоть и покореженные ЕГЭ. Попытки продлить цепочку от научной работы до промышленного применения продолжаются.

О тестировании микросхем: 6 комментариев

  1. Речь, я так понимаю, про Томский Политехнический Университет? а то в Томске универов сейчас пруд пруди…

    • Томский Государственный Университет. Я МГУ закончил, с тех пор привык (не без надменности, чоуш), что есть Университет, он же государственный, один в городе, а есть «университет права», или «технический университет», или еще какое-нибудь уточнение.

  2. Очень интересно, спасибо. Занимаюсь на ВМК теорией тестирования, хотелось бы увязать это с DFT. Изучаю поиск неисправностей на входах комбинационных схем. Насколько это возможно приблизить к DFT, чтобы и для диссертации это было полезно (специальность дискретная математика) и для проектировщиков? Благодарю за внимание.

  3. ИМХО статья о деятельности, а цель поставить забыли?
    Нужно контролтровать качество микросхем? Проводить приёмо-сдаточные испытания? Отлаживать параметры на кристальном и сборочном производстве?
    Такое ощущение, что никто не в курсе, что в России есть системы для тестирования ИМС, в т.ч. различных СБИС. Это системы отечественной разработки и производства — тестеры FORMULA, и они выпускаются серийно с 1999 г. На сентябрь 2014г тестеры FORMULA применяются на 80 предприятиях России и Белоруссии.
    Посмотрите на http://www.form.ru
    Успехов, учёные!

    • Вадим,

      очень интересно, я бы с удовольствием пообщался с сотрудниками компании, чтобы рассказать о вас здесь. Дайте знать, если интерес взаимный.

      Что касается темы статьи. Здесь речь не столько о том, чтобы сделать новый тестер, сколько о том, как минимизировать а) время нахождения микросхемы в этом тестере и б) площадь кристалла, которую разработчику приходится отдавать под тестовые структуры.

Добавить комментарий для Георгий Мельников Отменить ответ

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Можно использовать следующие HTML-теги и атрибуты: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>