24 June 2010

Intel Labs Петербург: Олег Семенов о SoC, программируемых ускорителях и новых алгоритмах

Intel corporate blog
Хабрапривет! Вчера я затронул тему лабораторий компании Intel, но весьма поверхностно. Сегодня — интервью с одним из руководителей такой лаборатории, причем все это в рамках программы "5 недель с компанией Intel".

Intel Labs — научно-исследовательское подразделение Intel, имеющее офисы в 11 странах мира и занимающееся различными инновационными разработками на благо компании. Подробнее об Intel Labs можно прочесть в интервью с главным менеджером по развитию бизнеса в Intel Labs Джерри Батистом; на 2009 год Intel Labs Europe включает в себя около 900 ученых в 20 лабораториях.

image
Карта Intel Labs Europe, на которой изображены не только офисы Intel Labs, но и лаборатории организации Intel Labs Europe, принадлежащие другим бизнес-группам Intel.

В России тоже есть Intel Labs, он является частью петербургского офиса корпорации и сейчас занимается системами-на-чипе, созданием программируемых ускорителей и алгоритмами обработки сигналов для мобильных платформ. Одним из успешных проектов лаборатории была разработка технологии беспроводной передачи видеосигнала, которая может использоваться для передачи видео от мобильных устройств и ноутбуков к телевизорам и плазменным панелям. Лаборатория принимала участие в разработках и исследованиях многих беспроводных и проводных стандартов (Wi-Fi, Wi-Max, UWB, WUSB,10 Gbit Ethernet), занималась проблемами «когнитивного» радио в части исследования эффективных программируемых архитектур для интеграции различных беспроводных технологий в одном чипе.

Деятельностью лаборатории, созданной в Нижнем Новгороде и со временем переехавшей в Петербург, бессменно руководит Олег Семенов. За время своей работы лабораторией было оформлено более 65 патентов, а количество поданных заявок на изобретения давно перевалило за 200.

Олег согласился рассказать о деятельности питерского офиса Intel Labs и показать разработки своей команды, насчитывающей уже около 30 человек.

image

Расскажите о себе и о своей работе?

Основная сфера моих интересов — DSP, цифровая обработка сигналов. С начала девяностых я возглавлял лабораторию цифровой обработки сигналов в Государственном университете телекоммуникаций им. Бонч-Бруевича, где мы работали над различными проектами, так или иначе касавшимися DSP: обработка речи, эффективная передача информации через телефонные линии, радиоканалы и так далее. В конце 2002 года компания Intel открывала лабораторию по телекоммуникационным разработкам в Нижнем Новгороде (в то время у Intel был R&D-сайт только в Нижнем Новгороде); мне и моему коллеге Владимиру Иванову было предложено ее возглавить, так что в феврале 2003 года мы образовали эту лабораторию практически с нуля.

image
Прототип Intel Wireless Display. Видно модуль и антенну-передатчик; фоном — приемник сигнала, подключенный к монитору. Отличительной особенностью прототипа является маленькая задержка (лишь несколько миллисекунд — значительно меньше, чем у анонсированного в начале этого года и продаваемого продукта Wi-Di), что позволяет не только передавать видеоизображение, но и даже играть в некоторые 3D-шутеры.

Заметно, что в демо питерского офиса Intel Labs красной нитью проходит DSP, цифровая обработка сигналов.

Да, без цифровой обработки никуда — это и обработка видеоинформации, и обработка 3D, поэтому неудивительно, что DSP лежит в основе деятельности многих наших групп внутри лаборатории. Кроме того, Петербург славен тем, что здесь очень много специалистов в области телекоммуникаций и обработки сигналов, так что переезд лаборатории в Петербург тоже был вполне логичным. Он также был обусловлен и тесными контактами с некоторыми петербургскими университетами, техническая и научная экспертиза которых находилась в сфере интересов Intel.

Какими основными направлениями занимается питерская лаборатория?

Их три: 1) разработка инструментов проектирования систем-на-кристалле (SoC, system-on-chip), 2) разработка архитектур программируемых ускорителей и 3) разработка новых алгоритмов для этих ускорителей. Расскажу подробнее о каждом из наших направлений.

Актуальность разработки методологий проектирования систем-на-кристалле (system-on-chip) возрастает с каждым днем, поскольку количество транзисторов на кристалле увеличивается огромными темпами и стоимость разработки подобных систем растет очень сильно.

Вы имеете в виду инструменты проектирования и моделирования систем на чипе?

Да, сейчас это целое направление: инструменты моделирования, проектирования и программирования таких систем. Степень программируемости компонентов и блоков, составляющих SoC, системы-на-чипе, может отличаться от классических general purpose CPU (универсальных микропроцессоров) и классических DSP-чипов (цифровых процессоров обработки сигналов). В универсальных CPU и DSP-чипах степень программируемости может быть достаточно широкой, но за это нужно платить большим потреблением энергии, меньшей производительностью, большей площадью кристалла. В итоге универсальное кремниевое решение может быть менее эффективным по сравнению с непрограммируемым «железным» решением, ориентированным на решение конкетной задачи (такое непрограммируемое решение называется ASIC, Application Specific Integrated Circiut). Но ASIC невозможно использовать для других приложений. Поэтому задача построения промежуточного решения, которое имеет ограниченные возможности по программированию (например, ориентировано на приложения определенного класса), но при этом имеющего показатели эффективности значительно лучше, чем CPU или DSP и решающее задачи из этого же класса приложений, является актуальной сегодня проблемой, в особенности — для современных мобильных платформ. Использование программируемых акселераторов, ориентированных на разные классы приложений, представляется как разумный путь к повышению эффективности приборов на базе SoC-решений. Очевидно, что методы разработки систем-на-чипе крайне важны особенно для рынков мобильных платформ и встроенных систем, поэтому Intel уделяет серьезное внимание этим высококонкурентным рынкам для развития своего бизнеса. Но чтобы быть лидером на этом рынке, необходимо развивать эффективные методы разработки систем на кристалле, чем мы и занимаемся.

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

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

Демо, распознающее изображение — оно может получить развитие в каких-то мобильных устройствах, которые позволят делать распознавание образов или выполнять приложения расширенной реальности?

Безусловно. Собственно, именно для этих целей этот проект и был поставлен. Необходимо создать инструменты проектирования такого акселератора, и для этой цели используется подход, который называется workload-driven design. Поясню: у вас есть приложение, которое вы хотите в будущем аппаратно ускорять, и дизайнеру чипа, который будет это приложение ускорять, необходим некий инструмент, который поможет этому дизайнеру с учетом данного приложения спроектировать архитектуру будущего ускорителя. Если дизайн такого чипа делать вручную, то у вас на это уйдет куча времени, да и эффективность этого решения может быть хуже, чем при использовании специальных инструментов разработки.

Есть такое направление, которое называется high-level synthesis, то есть высокоуровневый синтез, когда вы идете от приложения и спускаетесь вниз в процессе проектирования для того, чтобы получить эффективную архитектуру будущего чипа, нацеленную на это приложение. При этом существуют специальные инструменты, которые позволяют вам это сделать наиболее эффективным образом. Это не означает, что такие инструменты будут работать по нажатию одной кнопки. Конечно же, полагается активное вовлечение дизайнера в процесс разработки чипа, но основная польза такого инструмента разработки состоит в том, что вы на ранней стадии дизайна можете оценивать качество будущего кристалла с точки зрения площади и энергоэффективности, не доводя дизайн до выпечки реального кремния и, соответственно, избегая огромных производственных потерь.

Опять таки, на раннем этапе разработки вы можете максимально протестировать будущий чип, поскольку не секрет, что всегда бывают ошибки, которые лучше не доводить до реального кремния, и решать которые стоит уровнем выше. Есть так называемый уровень RTL, register transfer level — это когда вы представляете свою микросхему, которая в будущем будет испечена в кремнии, в виде некого описания на языке более-менее высокого уровня, который называется HDL (hardware description language — наиболее популярными представителями HDL являются Verilog и VHDL). Затем вы понижаете RTL до реальных транзисторов, логического уровня и так далее. Там уровень абстракции существенно ниже, и трудно отыскать ошибки в дизайне. Если вы сможете осуществить процесс верификации вашего будущего кристалла на более ранних стадиях проектирования и убрать максимальное количество ошибок, которые возникают, то это позволит вам существенно удешевить стоимость микросхемы и уменьшить время до выхода устройства на рынок (time to market) и, естественно, быть впереди в условиях жесткой конкурентной борьбы.

image
Сотрудник лаборатории демонстрирует генеральному директору Intel в странах Европы, Ближнего Востока и Азии Кристиану Моралесу технологию создания карты глубины сигнала на основании двухмерного изображения. Трехмерное изображение, требующее специальных очков, получается при помощи хитроумного алгоритма, обрабатывающего совершенно обычный Bluray-фильм, снятый без использования стереокамеры. Эта технология вскоре появится на рынке и позволит просматривать фильмы, снятые привычным способом, в весьма убедительном 3D.

То есть можно надеяться, что в обозримом будущем появятся маленькие команды, которые смогут быстро и дешево проектировать какие-то специализированные решения на основе подобных инструментов?

Совершенно верно. А наши разработки направлены на повышение конкурентоспособности компании в области SoC проектирования, прежде всего по части time to market, то есть во времени выведения этих решений на рынок, потому что сам по себе рынок SoC очень диверсифицирован и динамичен.
Мы занимаемся архитектурами ускорителей, инструментами для их разработки, и совершенно естественно, что мы занимаемся еще и новыми алгоритмами. Почему? Потому что, как я уже сказал, сами ускорители должны быть workload-driven, то есть определяться прежде всего выполняемыми задачами, так что мы должны держать руку на пульсе современных алгоритмов, понимать, какие вычислительные процедуры используются в современных приложениях. Знание приложений, глубокое их понимание очень важны для того, чтобы строить эффективную архитектуру акселераторов и инструменты для проектирования этих акселераторов.

Получается, что это некие такие эйлеровские круги смежных тем, которые в питерской лаборатории довольно сильно накладываются друг на друга?

Верно. Если раньше было четкое разделение на алгоритмистов, программистов и хардверных инженеров, которые делали кристалл, и трудно было найти человека, который покрывал бы все три части задачи. Сейчас происходит процесс конвергенции этих тем в некоего универсального дизайнера чипов, который пляшет от приложения и который в принципе, по крайней мере на первом этапе проектирования, может и не быть сильным знатоком аппаратной части. Инструменты разработки должны позволить ему осуществлять дизайн чипа, не будучи сильно осведомленным о деталях аппаратного дизайна, то есть существенно повысить уровень абстракций проектирования чипа. Дальше, когда дизайнер дойдет до упомянутого мною уровня RTL, register transfer level, могут использоваться стандартные инструменты разных компаний, уже существующие на рынке, например, Synopsys и Cadence, которые и доведут дизайн до реального кремния. Но вот процесс высокоуровневого дизайна на сегодняшний день обладает наибольшей трудоемкостью. На него дизайнеры чипов тратят очень много времени, и именно там важно получить выигрыш во времени с точки зрения time to market.

image
Одно из помещений Intel Labs в Петербурге.

Вы работаете с университетами и внешними командами?

Мы активно работаем с российскими университетами и уделяем этому огромное значение. Сотрудники и ученые университетов в рамках наших проектов защитили несколько десятков патентов, в том числе и для Intel. Например, мы рассматриваем наших партнеров в Университете аэрокосмического приборостроения как некий lablet — лабораторию внутри нашей лаборатории. Формально это не наши сотрудники, но, тем не менее, мы рассматриваем их как серьезный потенциал для роста нашего научного багажа, и привлекаем для решения довольно сложных задач. Ресурс, который мы имеем в университете, серьезно расширяет наши возможности в области исследования тех вещей, до которых у нас просто не дошли бы руки. Кроме того, мы стараемся работать с университетами, где есть эксперты мирового уровня, поскольку Intel интересуют только проекты высочайшего класса. К счастью, у российских университетов такой потенциал сохранился, и здорово, что нам удается найти общие точки соприкосновения и общие точки интересов. Мы продолжаем расширять наше сотрудничество с российскими университетами.
Напомню, что данный пост написан в рамках программы "5 недель с компанией Intel" — мы выбрали 5 интересных тем и каждую неделю будем выкладывать по одному интервью с кем-либо из руководителей компании. Все зарегистрированные пользователи смогут задавать вопросы в рамках темы, а чуть позже — получать ответ непосредственно от сотрудника компании. Самые интересные вопросы мы будем поощрять призами ;)

+ Кстати, на прошлой неделе, посвященной операционной системе MeeGo, «победителем» стал пользователь Labinskiy, с чем мы его и поздравляем.

И еще — не забывайте подключаться к блогу компании на сайте!
Продолжение следует!
Tags:IntelIntel labs
Hubs: Intel corporate blog
+18
8.8k 2
Comments 44