Приглашенным редактором тематической подборки (Nanoscale Architectures) статей является Шамик Дас (Shamik Das), а его вводная статья называется «Переход от микроэлектроники к наноэлектронике» (Transitioning from Microelectronics to Nanoelectronics). В течение более 50 лет предсказывалась возможность построения наноэлектронных компьютеров из элементов масштаба атомов или молекул и почти столько же говорят о грядущем упадке полупроводниковой микроэлектронной технологии, лежащей в основе традиционных компьютерных систем. Однако только сейчас наступает время заката кремниевых микроэлектронных устройств — компьютерной индустрии требуются новые средства, позволяющие разрабатывать новые приложения и поддерживать крупные прибыльные рынки устройств основной памяти и обработки данных.
В предвидении этой новой эпохи исследовательское сообщество пытается решить две ключевые проблемы построения компьютеров без использования полупроводниковой микроэлектроники: создание масштабируемой технологии проектирования и производства устройств, способных заменить полупроводниковые схемы, и разработка архитектур систем, способных обрабатывать информацию с применением таких устройств. Многие ИТ-архитекторы считают приоритетной первую задачу, ведь, в конце концов, разработчики привыкли строить свои архитектуры на абстракциях, позволяющих включать в архитектуру все что угодно – от идеальных коммутаторов до самых неудобных устройств. Однако наноустройства, постепенно берущие верх над кремниевыми полупроводниками, способны подорвать даже самые стойкие абстракции. При приближении к нанометровому масштабу меняются взаимосвязи между вычислениями и коммуникациями; например, при использовании новых наноустройств приходится вводить новые правила для разделения и размещения кода и данных. Возможно, нет худа без добра, и, хотя от проектировщиков систем требуется выход за пределы архитектур с хранимыми программами, они освобождаются от необходимости работы с новыми аппаратными примитивами. На самом деле посткремниевые наноустройства могут не справиться даже с вычислениями над данными в двоичном представлении.
Несколько выдающихся архитекторов нанокомпьютеров применяют более необычный подход, затрагивающий и вторую ключевую проблему. Они понимают, что отказ от прежних абстракций и интегрированное решение имеющихся проблем, начиная с уровня устройств, могут привести к разработке систем, в которых в конечном счете не будет поддерживаться фон-неймановская обработка данных. Более того, некоторые архитекторы предпринимают шаги к тому, чтобы как можно быстрее достичь этого.
Первая статья тематической подборки называется «От синапсов к электронным схемам: использование мемристорной памяти для исследования путей создания “электронного мозга”» (From Synapses to Circuitry: Using Memristive Memory to Explore the Electronic Brain) и представлена большой группой авторов из компании HP и Бостонского университета, а первым в списке авторов числится Грег Снайдер (Greg Snider). Проблема создания электронного мозга пугает исследователей большей частью потому, что имеется очень слабое понимание того, как подойти к ее решению. И в самом деле, в силу физических ограничений на соотношение рассеивания мощности и объема (примерно 20 ватт на объем обувной коробки) эта проблема оказывается пока непосильной для современной технологии.
Одним из аспектов этой проблемы является трансляция синапсов в их электронные эквиваленты. Биологические синапсы размещаются очень плотно – в коре головного мозга на одном квадратном сантиметре имеется примерно 10 10 синапсов. Кроме того, они потребляют очень небольшую энергию, имеют сложную структуру, обладают нелинейной динамикой и в некоторых случаях могут сохранять свою память в течение десятилетий. До недавнего времени успешно отобразить эти характеристики в электронные компоненты крупных моделей электронного мозга не удавалось. Однако в последние несколько лет возросли темпы исследований в области мемристорных устройств, которые могут приблизить разработчиков к архитектуре электронного мозга, адаптивно взаимодействующей с внешним миром в реальном времени. Хотя мемристорные устройства сами по себе не решают проблем мощности и объема, они обладают несколькими привлекательными характеристиками, позволяющими использовать эти устройства при реализации синаптической памяти в интеллектуальных машинах:
- их сопротивление меняется нелинейно, и электронные схемы могут его изменять;
- их можно компоновать в коммутаторы для построения плотных устройств памяти;
- многие мемристорные материалы совместимы с процессами комплементарных металло-оксидных полупроводников.
Последняя характеристика существенна, поскольку позволяет проектировщикам интегрировать плотную мемристорную память с традиционными электронными схемами, располагая их предельно близко. Сокращение расстояния между памятью и электронными схемами позволяет значительно снизить рассеивание мощности при обмене данными между этими компонентами при заметном повышении пропускной способности.
Для раскрутки процесса построения интеллектуальных аппаратных средств исследователи из HP и Бостонского университета совместно разработали аппаратную архитектуру Cog Ex Machina (см. рисунок), а также программную инфраструктуру Cog. Вместе они образуют недорогую гибкую цифровую платформу для создания крупных моделей мозга, способных к взаимодействию в реальном времени с модельными или естественными средами.
Платформа Cog Ex Machina |
Хотя эта платформа пока еще не обеспечивает интеллектуального поведения и не обладает характеристиками рассеивания энергии и объема, свойственными биологическим объектам, она предоставляет исследователям возможность быстрого и сравнительно дешевого построения моделей. Модель также легко адаптируется к новым алгоритмам. Программная среда Cog эффективно абстрагирует базовые аппаратные средства, так что исследователей не волнуют изменения на аппаратном уровне.
Авторами статьи «Вычисления с применением новых устройств с плавающим затвором» (Computing with Novel Floating-Gate Devices) являются Дэниэль Шинке (Daniel Schinke), Нейл Ди Спигна (Neil Di Spigna), Михир Шивешваркар (Mihir Shiveshwarkar) и Пол Фрэнзон (Paul Franzon). Полевые металло-оксидные полупроводниковые транзисторы (Metal Oxide Semiconductor Field Effect Transistor, MOSFET) с использованием программируемых плавающих затворов весьма успешно применяются в качестве основы масштабируемой технологии энергонезависимой памяти. Традиционно MOSFET с плавающим затвором – это устройство, в котором в диэлектрик транзистора встроен дополнительный затвор, полностью изолированный от верхнего (управляющего) затвора и канала. Этот так называемый «плавающий затвор» можно использовать как запоминающий узел, способный постоянно заряжаться. За счет этого канал снабжается напряжением или защищается от перенапряжения, подаваемого на управляющий затвор, изменяющий пороговое напряжение устройства. Обычно эти устройства проектируются так, чтобы заряд плавающего затвора (и, следовательно, состояние устройства) сохранялся даже при выключении питания системы, что позволяет использовать их в качестве компонентов энергонезависимой памяти.
MOSFET с плавающим затвором перспективны во многих отношениях, но пока они используются только в устройствах энергонезависимой памяти. Одной из причин этого является то, что подобные устройства оптимизируются, главным образом, в расчете на максимизацию времени хранения (десять лет) в ущерб износостойкости, измеряемому в числом поддерживаемых циклов, и требуемому рабочему напряжению. С использованием стеков затворов на основе запрещенной энергетической зоны (band-gap-engineered gate stack), нескольких металлических плавающих затворов, более тонких окисей и туннелирования в качестве основного механизма передачи зарядов можно добиться более низкого рабочего напряжения, а также повысить износоустойчивость.
Авторы статьи описывают масштабируемое биметаллическое устройство с плавающим затвором, которое может служить основой унифицированной памяти – единого устройства, поддерживающего энергозависимые и энергонезависимые операции. Это устройство потенциально может поддерживать постоянную готовность компьютеров к вычислениям (instant-on computing), помочь в решении проблемы эффективного энергопотребления и повысить уровень отказоустойчивости. Рабочее напряжение устройства ниже, чем у большинства устройств с плавающим затвором.
Статью «Кристаллы и снежинки: построение компьютеров на основе нанопроводных коммутаторов» (Crystals and Snowflakes: Building Computation from Nanowire Crossbars) написали Андре Дехон (Andre DeHon) и Бенджамин Гойман (Benjamin Gojman). В течение 45 лет существования закона Мура полупроводниковая индустрия постоянно сокращала геометрические размеры элементов и повышала емкость микросхем. Масштабированный литографический кремний является надежной подложкой, обеспечивающей простую и согласованную модель для построения процессоров и заказных микросхем. Постоянное совершенствование производства полупроводниковых устройств приводит к появлению все более быстродействующих транзисторов, а разработчики могут размещать все большее их число в кристалле одного и того же размера.
В прошлом архитекторы микроустройств могли путем добавления транзисторов повышать производительность и получать новые функциональные возможности. Однако доступные сегодня и требуемые в будущем размеры элементов схем вынуждают архитекторов отходить от старых моделей постоянного масштабирования, произвольной топологии схем, единообразно производимых устройств, надежного и неизменного функционирования устройств и детерминированного изготовления.
Текущие 40-нанометровые размеры элементов СБИС уже сейчас значительно меньше длины световых волн и продолжают уменьшаться, что приводит к устройствам с размером, близким к размеру отдельных атомов. В прошлом архитекторы могли использовать тот факт, что размеры элементов СБИС были больше размеров атомов, в то время как литография позволяла усреднить эффекты шероховатости атомов, размещения легирующей примеси и неоднородного травления. Однако теперь они лишены этих возможностей. Потребность в точных и сложных средствах формирования этих наноразмерных элементов уже повысила стоимость литографии, а отсутствие контроля на уровне атомов делает качество получаемых структур менее предсказуемым.
Перспективной альтернативой нисходящей (top-down) литографии является восходящий (bottom-up) синтез материалов и устройств. Вместо построения структуры и определения ее формы современный химический синтез обеспечивает способы создания структур точных размеров на основе восходящей самосборки. Подобно тому как у молекул и кристаллов имеются точные фиксированные размеры, можно выращивать и собирать углеродные нанотрубки, атомные слои и кремниевые провода с точными размерами. Из них можно компоновать регулярные структуры большего размера: сложные кристаллические структуры, используемые в качестве соединений, запоминающих устройств и вентилей. Размеры этих структур могут составлять всего несколько атомных слоев (3-5 нм), которые образуются за счет применения точных самоограничивающихся процессов, а не за счет нисходящего формирования.
Однако эти восходящие процессы могут производить только регулярные и очень некачественные структуры по сравнению с сегодняшними интегральными схемами. Такие процессы производят массивы идентичных параллельных нанопроводов с интегрированными функциями устройств, но не позволяют сгенерировать произвольную топологию на уровне элемента устройства, как это возможно при использовании литографии. То есть топология и архитектура устройств скорее напоминают аналогичные характеристики кристаллов, а не традиционных схем. Кроме того, случайные дефекты и отклонения в наномасштабных элементах приводят к тому, что все компоненты становятся разными. В этом смысле компоненты становятся похожими на снежинки – известные кристаллические структуры, собранные «снизу вверх». Подобные свойства заставляют пересматривать традиционные архитектуры, методы производства и принципы проектирования.
Последняя статья тематической подборки представлена Венджин Рао (Wenjing Rao), Ченгмо Янгом (Chengmo Yang), Рамешем Карри (Ramesh Karri) и Алексом Орайлоглы (Alex Orailoglu) и называется «На пути к будущим системам с наномасштабными устройствами: преодоление проблемы надежности» (Toward Future Systems with Nanoscale Devices: Overcoming the Reliability Challenge). Продолжающееся масштабирование электронных систем от субмикронных комплементарных металло-оксидных полупроводников (КМОП) до нанаэлектронных устройств сулит повышение вычислительной мощности при меньших размерах схем, меньшем энергопотреблении и меньших расходах. Однако наша возможность использования этой мощности ограничивается не только имеющимися методами распараллеливания программ, но и (что более важно) неопределенностями внутри самих систем. По мере снижения надежности вычислительных структур и возрастающего соперничества приложений за ресурсы общая среда исполнения программ становится динамической и непредсказуемой. Соответственно надежность быстро становится основной проблемой КМОП и будущих наномасштабных систем. Все это вкупе с фундаментальными изменениями на уровне устройств ставит перед исследователями вопрос, могут ли наномасштабные устройства обеспечить прогнозируемые показатели плотности устройств, их энергопотребления и производительности?
Ряд вопросов порождается наличием нескольких вариантов создания наномасштабных устройств. Поскольку непонятно, какого рода устройства будут в конце концов доминировать, разумно ли пытаться решать проблемы их проектирования на столь ранней стадии? Если да, то какими основными предположениями следует руководствоваться и какие основные проблемы надо решать?
Другой набор вопросов касается природы проблемы надежности. До какой степени можно пытаться использовать существующие подходы при текущем состоянии дел в области надежности? Приводит ли проблема надежности к количественным и качественным последствиям? Требуется ли переосмысливать методологии проектирования?
Третий набор вопросов касается потенциальных предельных ограничений (например, нелинейных фазовых переходов), связанных с проблемой надежности. Могут ли наномасштабные системы обеспечить обещанные преимущества перед КМОП при допустимых расходах?
Для преодоления проблемы надежности необходимы новые подходы, учитывающие преимущества и ограничения наномасштабных устройств и позволяющие интегрировать стратегии повышения надежности на нескольких уровнях иерархии разработки. В статье приводится набросок такого архитектурного подхода с примерами на двух разных уровнях: дефектоустойчивость при проектировании логики на основе наномасштабных матричных коммутаторов и отказоустойчивость при использовании ограниченного числа соединений на уровне процессорной архитектуры.
Вне тематической подборки в номере опубликованы две большие статьи. Статья «Устойчивость CAPTCHA с позиций обеспечения безопасности» (CAPTCHA Robustness: A Security Engineering Perspective) написана Джеффом Яном (Jeff Yanи) и Ахмадом Салахом эль-Ахмадом (Ahmad Salah El Ahmad). Completely Automated Public Turing test to tell Computers and Humans Apart (дословно — «полностью автоматизированный публичный тест Тьюринга для различия компьютеров и людей») называют также подтверждением общения с человеком. По сути, это программа, генерирующая тесты, которые могут распознаваться человеком, но недоступные для расшифровки существующими компьютерами. В этой технологии используются задачи искусственного интеллекта, а сама она применяется в качестве средства защиты коммерческих сайтов от доступа со стороны программ-роботов. Например, Google, Microsoft и Yahoo внедрили CAPTCHA, чтобы затруднить получение спамерами бесплатных учетных записей для работы с электронной почтой.
В 1996 году Мони Наор впервые предложил использовать автоматические тесты Тьюринга для проверки того, что именно человек, а не робот обращается с запросом к веб-сервису. Аналогичную идею в 1998 году запатентовала компания Alta Vista. Название Captcha было введено в 2000 году исследователями университета Карнеги-Меллона под руководством Мануэля Блюма и Луиса фон Ана, а программы этого семейства сыграли основную роль в популяризации технологии. На сегодняшний день наиболее распространенные варианты CAPTCHA основаны на том, что пользователей заставляют распознавать искаженные символы — задача, которая предположительно не под силу имеющимся программам распознавания образов.
Поскольку CAPTCHA фактически играет ту же роль, что и простой запросно-ответный протокол, соответствующие программы уязвимы к атакам уровня протокола. Например, спамер может нагрузить решением проблем CAPTCHA посетителей порносайтов или перенаправить задачу людям из стран с дешевой рабочей силой. Важен и дизайн системы. Так, при использовании ранних вариантов CAPTCHA хакеры могли просто повторно применять известный им идентификатор сессии, для которой проверка была пройдена ранее.
Авторы статьи исследовали другой аспект безопасности CAPTCHA – устойчивость этих программ к программам, написанным специально для прохождения тестов Captcha. Было обнаружено, что множество существующих вариантов CAPTCHA, включая схемы, используемые Google, Microsoft и Yahoo, запросто можно разрушить посредством новых стратегий атак, опирающихся на наличие фатальных ошибок проектирования каждого из этих вариантов.
В отличие от методов повышения устойчивости CAPTCHA, разработанных прежде всего в сообществах машинного зрения и распознавания образов, авторы предлагают подход с точки зрения инженерии безопасности, в котором учитывается ход мышления злоумышленников. Хотя основное внимание уделяется вариантам Captcha, основанным на распознавании текстов, полученные результаты применимы и к другим типам CAPTCHA.
Авторами последней большой статьи номера «Зрелость сервис-оиентированной архитектуры» (Service-Oriented Architecture Maturity) являются Ричард Велке (Richard Welke), Руди Хиршхейм (Rudy Hirschheim) и Эндрю Шварц (Andrew Schwarz). Концепция сервис-ориентированной архитектуры (Service-Oriented Architecture, SOA) берет начало от предшествующих попыток инкапсулировать функциональные средства обработки данных таким образом, чтобы потребителям не требовалось знать, каким образом и где производилась обработка данных. SOA отличается от предыдущих подходов в нескольких отношениях.
Во-первых, в развитом и продолжающем развиваться наборе открытых стандартов, основанных на XML, определяется все что угодно, от описания сервисов (например, Web Services Description Language, WSDL) до средств коммуникации с сервисом (например, SOAP и REST), правил обнаружения сервиса и его подключения (например, Universal Description, Discovery, Integraion, UDDI), а также средств комбинирования сервисов, завершения транзакций и поддержки безопасности. Эти уровни функциональности в свою очередь организуются в архитектурный стек. Сервисная шина предприятия (Enterprise Service Bus, ESB) обеспечивает реализацию этих совокупных функциональных возможностей в виде программной платформы.
Во-вторых, функциональность сервиса может быть очень низкоуровневой или узконаправленной, а может прямо отражать сферу деятельности, терминологию и интересы бизнес-пользователей.
В-третьих, средством коммуникации с сервисами, независимо от их области действия, является Интернет, а это означает, что возможность доступа к любому сервису зависит только от досягаемости, доступности и надежности самой Сети. Реальное местоположение сервиса пользователям неизвестно, и, поскольку поиск сервиса в каталоге происходит во время вызова сервиса, это местоположение может изменяться. Реальная обработка также может изменяться без влияния на пользователей, поскольку у сервиса остается тот же интерфейс. Для пользователя обработка — это черный ящик, внутренность которого определяется некоторым грубым эквивалентом соглашения об уровне обслуживания. В действительности не требуется, чтобы сервис оказывался компьютером; существенно только то, чтобы обмен информацией с сервисом производился с использованием стандартных, основанных на XML сообщений с применением некоторого протокола Интернета, такого как HTML или SMTP. Эти протоколы могут использоваться и в публичных, и в частных сетях.
Возможности SOA можно оценивать с нескольких точек зрения. С точки зрения информационных технологий SOA обеспечивает новый способ решения давнишних проблем повторного использования, сопровождения и интеграции корпоративных приложений. Для бизнес-менеджеров SOA обеспечивает средства нахождения сервисов, которые могут наилучшим образом обслужить их внутренних и внешних клиентов. Для руководителей предприятий SOA обеспечивает возможность менять структуру организации для совершенствования управления потоками создания ценностей.
Хотя консультанты, производители и некоторые ИТ-первопроходцы пропагандируют SOA как технологию нового поколения, в профессиональных публикациях отмечается неспособность SOA к достижению организационных целей и обеспечению возврата инвестиций и даже провозглашается, что эта архитектура мертва. Однако авторы статьи полагают, что эти неудачи объясняются неспособностью существующих инфраструктур SOA учитывать различия в мотивации использования сервисной архитектуры у ИТ-администраторов, бизнес-менеджеров и владельцев предприятий. Для устранения этой бреши предлагается модель зрелости SOA, в которой используется основная терминология CMMI, но отражается продолжающийся переход от мотиваций под влиянием ИТ к мотивациям, основанным на потребностях предприятий.
Удачи и до новой встречи, Сергей Кузнецов, kuzloc@ispras.ru .