Денис Колисниченко, dhsilabs@mail.ru
Все мы понимаем, что рано или поздно кремниевая технология, используемая сегодня для
создания процессоров, достигнет своего предела. Это как с нефтью – рано или поздно она
закончится – вот поэтому уже сейчас начинают создавать электродвигатели, водородные
двигатели и даже спиртовые двигатели! Точно такая же ситуация сложилась и в мире
информационных технологий – кремниевой технологии начинают искать замену. Причем
на рассмотрение предлагаются абсолютно разные варианты замены – от биокомпьютера
до оптических процессоров. Стоп! А что это такое? Вряд ли у каждого из нас на столе,
скажем, через десять лет будет стоять компьютер из бактерий, а вот то, что в компьютере
будущего будет установлен оптический процессор – вполне реально. Сегодня мы
поговорим об этом чуде рук человеческих – от истории до принципов работы. Может,
материал статьи покажется тебе довольно сложным – отчасти так оно и есть, поскольку
для его восприятия не мешало бы вспомнить физику (а именно оптику). Я постараюсь
изложить все как можно проще, но что будет совсем просто – не надейся.
Немного истории
Чтобы ты не думал, что оптический процессор только проявился, и появился он из
неоткуда – просто его появление не афишировалось, поскольку все процессоры
создавались и продолжат создаваться по кремниевой технологии. А на самом деле работы
по созданию оптического процессора начались еще в 80-х. И не потому, что уже тогда
кремниевую технологию хотели заменить более совершенной, а просто ради интереса –
почему бы не создать альтернативный тип процессора? Однако началу работ над
созданием такого типа процессоров предшествовали несколько серьезных работ в области
оптических квантовых генераторов, по нашему – лазеров. Не посчитайте меня занудой:
сейчас будет немного хронологии – ну просто это интересно знать:
В 1964 году Прохоров, Басов и Таунс получили Нобелевскую премию за свою работу,
которая произвела настоящую революцию в квантовой электроники. После этой работы
стало возможным создание квантовых генераторов и усилителей, основанных на лазерном
принципе. А в 1971 году Д. Габор получил премию за изобретение голографического
метода. Сейчас голография применяется картографии, медицине, при диагностике сбое в
различных устройствах, а также в других отраслях.
А теперь вернемся к тем 80-м, с которых все и началось. Исследователи по оптической
электронике начали работать над созданием оптического процессора нового поколения.
Оптический процессор должен был использовать специальные элементы, в которых свет
управляет светом. Логические операции представлены как взаимодействия вещества со
светом. В 1990 году фирма «Bell» создала макет оптического устройства и
продемонстрировала выполнение логических и арифметических операций с очень
высоким быстродействием. А в 2003 году компания Lenslet (www.lenslet.com) создала
первый в мире оптический процессор, причем это была не демонстрационная модель, как
в 1990-ом году, а коммерческий продукт, который можно было купить. Процессор
назывался EnLight256, его производительность составляет 8 тераоп (триллионов
арифметических операций в секунду)! Операции выполняются за счет манипуляции
потоков света, а не электронов, поэтому достигается такая производительность. У тебя
может возникнуть вполне справедливый вопрос: зачем нам такая производительность? Да,
обычному пользователю она не нужна, но, справедливости ради, нужно отметить, что
оптические процессоры пока и не ориентированы на обычного пользователя, который
хочет, чтобы его XP работала шустрее, чем у соседа. Оптические технологию в первую
очередь ориентированы (по крайней мере, сейчас) на промышленное производство,
военную технику – там, где нужно в реальном времени обрабатывать большие потоки
информации, где промедление в несколько сотых секунд может закончиться
непоправимыми последствиями.
Преимущества
Рассмотрим преимущества оптической технологии:
Все эти преимущества достигаются благодаря тому, что в качестве носителей информации
используются фотоны, а не электроны.
Первые оптические компьютеры
Как уже отмечалось, в 1990 году компания “Bell” (Bell Labs) создала макет первого
оптического компьютера. В основе процессора лежали двухмерные матрицы
бистабильных полупроводниковых элементов со множествами квантовых ям. Эти
элементы обладали электрооптическими свойствами (в аглоязычной литературе ты
можешь встретить аббревиатуру SEED – self-electro-optic-effect devices – это из этой
оперы). Освещение элементов производилось полупроводниковым лазером через
голографическую решетку Даммена. Мощность излучения лазера составила 10 мВт, длина
волны 850 нм. Как это все работало? Свет проходил через один диод, в цепи возникал ток,
что, в свою очередь, приводило к падению напряжения на структуре решетки и к
повышению пропускания света через вторую структуру. Вот так возникала обратная связь
и совокупность элементов образовывала логические ячейки ИЛИ-И, ИЛИ-НЕ и т.д.
Первый оптический компьютер занимал всего 1 метр квадратный. Состоял он из четырех
каскадов. На выходе каждого каскада определялось пространственное распределение
излучения по состоянию входящей в состав каскада жидко-кристаллической маски. Маска
управлялась обычным компьютером.
Во втором поколении оптических компьютеров использовалась векторно-матричная
логика. Второе поколение было представлено компьютером DOC-II (digital optical
computer).
Поток данных в компьютере DOC-II излучали 64 модулируемых лазерных диода, длина
волны каждого составляла 837 нм. Свет от каждого диода отображался на одну строчку
матричного пространственного модулятора, общий размер которого составляет 64 128
элементов. Отдельный элемент матрицы – это ни что иное, как брэгговская оптическая
ячейка (на основе GaP). Свет, который выходит из модулятора, попадает на целый ряд
фотодиодов (128 штук). Посмотри на фотографию DOC-II: в нем 8192 вспомогательных
соединений. В секунду компьютер может сделать 0.8192 переключения, при этом на одно
переключение затрачивается 7.15 фДж, если посчитать в фотонах, то это около 3000
фотонов. Понимаю, что все эти числа для тебя – китайская грамота, хотелось бы
реального примера. Хорошо! Представь, что нам нужно найти какое-то слово тексте. Я
провел небольшой эксперимент. Тестовая система Duron 1,6/256 MB/Win XP SP1,
запущено более 50 процессов. Взял документ Win Word на 954 страницы, написал
заветное слово на 953 странице (такое слово было только одно в документе). Запустил
поиск этого слова и одновременно нажал кнопку Старт на своем секундомере. Поиск
занял чуть больше 3 секунд (а именно 3.175), будем считать, что 3 секунды – ведь мне еще
нужно было нажать Стоп. Тут даже не принципиально 2 или 3 секунды. Потому что
оптический компьютер просматривает за ОДНУ секунду 80 000 страниц обычного ASCII
текста. Думаю, комментировать дальше просто нету смысла.
Основной недостаток оптического компьютера – неинтегрируемость его компонент. В
настоящее время ведутся работы по созданию интегрального модуля оптического
компьютера. Компьютер будет называться High Performance Optoelectronic Communication
– HPOC. Опытная его модель уже создана.
В новом компьютере планируется использовать входную матрицу с вертикально
расположенными лазерными диодами. Диоды будут соединяться волноводами и обычной
оптикой, оснащенной матрицами переключения, на основе дифракционных оптических
элементов. Выходная система будет состоять из матрицы фотодиодов, которая будет
совмещена с входной матрицей. В модуле используются технологии CMOS, Bi-CMOS,
GaAs, оптические межсоединения организованы с использованием свободного
распространения световых пучков. В итоге получается квази четерехмерная структура.
Уже создана опытная система. Она показывает скорость 1015 операций в секунду, причем
«кушает» энергии всего 1 фДж на переключение (сравни с DOC-II – там 7 фДж).
Что же касается веса, то пока нынешние оптические системы в этом проигрывают – их вес
превышает используемые сейчас чипы. Конечно, до размеров и веса суперкомпьютеров
пятидесятых не дойдет, но оптический ноутбук будет _больших_ размеров (если он
вообще будет в ближайшее время).
EnLight 256
Поскольку только одна фирма в мире создала коммерческий оптический процессор,
который можно купить, а не только посмотреть на него и сказать: «Как быстро он
работает!», о нем мы сейчас и поговорим. Как уже говорилось ранее, данный процессор
называет EnLight 256 и создала его фирма Lenslet. EnLigth256 – это первый оптический
DSP (Digital Signal Processor), превосходящий в три раза лучшие электронные DSP.
Вообще-то, если уже быть предельно точным, то EnLight256 – это гибридный оптический
процессор – он же не весь полностью оптический, а содержит преобразователи. Но на
сегодняшний день полностью создать оптический компьютер не то чтобы очень сложно, а
очень дорого. К тому же неизвестно, как он будет работать. А тут мы меняем только ядро
(ведь все остальное остается таким же – электрическим) и получаем огромный прирост
производительности.
Ядро этого процессора – оптическое, а входная и выходная информация представляется в
электронном виде. Ядро состоит из 256 VCSEL-лазеров, пространственного модулятора
света, набора линз и приемников. Производительность процессора составляет 8
триллионов операций в секунду: за один такт (8 нс) процессор умножает 256-байтный на
матрицу 256х256.
Поговорим о технологии Lenslet. Данная технология, как мы уже знаем, использует
оптическое ядро, а входная и выходная информация представляется в электронном
виде. Такая организация позволяет использовать лучшее из оптического и
электрического миров. Оптическая матрица VMM (Vector-Matrix Multiplication) – ядро
процессора - конвертирует электрическую информацию в свет, затем производит
необходимые преобразования этой информации (вычислительные операции),
направляя свет через программируемую внутреннюю оптику. Свет, который
появляется на выходе, ощущается множеством датчиков и преобразуется обратно в
электрический сигнал.
VMM состоит из трех основных элементов:
Каждый элемент входного вектора проектируется на столбец матрицы. Каждый ряд
матрицы проектируется на один детектор в векторе результата (вывода).
Теперь разберемся, как это все программируется. Программирование оптического
цифрового сигнального процессора (Optical Digital Signal Processing Engine, ODSPE)
заключается в изменении значений, которые сохранены в пространственном модуляторе
(Spatial Light Modulator, SLM). Загрузка приложения (или данные внутри приложения)
аналогична замене матрицы в пространственном модуляторе. Можешь догадаться сам, как
быстро это происходит. Кстати, пространственный модулятор, может поставляться как
отдельный продукт – так что тебе ничего не мешает (наверное, кроме отсутствия нужных
средств), чтобы создать свой оптический процессор. Этот самый модулятор называется
Ablaze и о нем можно прочитать на сайте компании Lenslet.
Где сейчас используется EnLight256? Ты можешь вообще засомневаться, что он вообще
используется, но на самом деле это не так. Основные сферы его применения – это военная
промышленность и обработка видео в реальном времени – обе сферы требуют высокой
производительности. Представь, что будет, если при вычислении угла отклонения ракеты
компьютер немного «задумается»???
При написании статьи были использованы материалы сайтов: www.lenslet.com,
http://dims.karelia.ru/~avip/op/in.htm. Если ты заинтересовался непосредственно физикой
оптических процессов, обязательно зайди на второй сайт. На сайте фирмы LenSlet кроме
рекламной информации и кратких характеристик нет больше ничего интересного, а на
страничке «Оптические процессоры» (второй URL) ты найдешь все – от физических основ
и математических моделей до самих элементов оптического процессора.
Все твои вопросы и комментарии буду рад выслушать по адресу dhsilabs@mail.ru
Оптические процессоры
Лазер
Оптический компьютер DOC-II
Интегральный процессор на основе HPOC
Процессор EnLight 256
Принцип работы ядра VMM
Пространственный модулятор Multiple Quantum Well