От забора до обеда...
АрхивМайор: - Товарищи курсанты! С утра у вас практические занятия по теории относительности. Будете совмещать пространство и время.
Комвзода: - Не понял, товарищ майор...
Майор: - Копать траншею будешь! От забора и до обеда! Вопросы есть?..
Курсантский юмор
Комвзода: - Не понял, товарищ майор...
Майор: - Копать траншею будешь! От забора и до обеда! Вопросы есть?..
Курсантский юмор
Говоря об оптических компьютерах, мы явно или неявно подразумеваем вычислительные устройства, обладающие огромным быстродействием. Спрос на быстроту вычислений отнюдь не самоцель и не забота о человеках, замерших у экранов в ожидании реакции системы на введенную команду. Конечно, здорово, если машина не заставляет себя ждать, но это - вопрос лишь юзерского терпения и усидчивости.
Все оказывается куда серьезнее, если компьютер входит в контур управления какого-либо устройства, технологической линии, самолета или ракеты. Ракета не может "погодить", покуда компьютер будет вычислять углы отклонения рулей для парирования, допустим, ветрового сноса. Она просто сойдет с траектории, со всеми вытекающими последствиями. Самолеты, линии химического синтеза, транспортные системы и им подобные объекты управления требуют вмешательства в свое "поведение" немедленно при возникновении каких-либо отклонений, то есть в реальном времени. И вот тут оказывается совсем небезразлично быстродействие вычислителя, реализующего управляющий алгоритм (или закон управления).
Читатель, вероятно, уже понял, что говорить мы будем об оптических вычислителях реального времени. Кстати, сама необходимость непрерывно и сразу осуществлять преобразование входного сигнала (от датчиков) в выходной сигнал (на органы управления) роднит системы реального времени с сигнальными процессорами. Их часто так и называют - "оптические сигнальные процессоры".
От забора до обеда
Принципиальное отличие "обыкновенных" вычислителей реального времени от оптических таково. Первые обрабатывают сигнал, представляющий собой изменение во времени какой-то физической величины (аналоговые устройства) или числового значения (цифровые), вторые же - имеют дело с сигналами-изображениями. Любое изображение для них не более чем двумерное распределение, допустим, оптической плотности транспаранта в связанных с ним координатах (см. рис. 1).
Имеем ли мы дело с записью изменения оптической плотности в зависимости от пространственных координат (X, Y), или же перед нами привычный график реального процесса, скажем, изменения той же оптической плотности во времени, - для вычислителя значения не имеет. Что время, что пространство - все едино... Как только изображение сформировано, оно может быть подвергнуто обработке.
Тут важно увидеть, что хотя сам процесс обработки изображения практически не требует времени (свет - все-таки очень быстрая штука), однако время всегда нужно, чтобы сформировать запись входного процесса в виде графика, то есть запомнить его.
Обратим внимание на важную аналогию процессов обработки сигналов в "обычных" и оптических процессорах. В первом случае никакая серьезная обработка сигнала невозможна без использования запомненных предыдущих значений (или отсчетов) входного сигнала. Во втором - запоминание предыстории входного сигнала осуществляется в форме графика. В обоих случаях точность обработки сигнала зависит от объема накопленной информации о входном процессе. Иными словами, чем дольше вычислитель "присматривается" к входному сигналу, тем точнее результат. Все как у людей! Поспешишь - сам знаешь, что получится...
Так или иначе, но с переходом к оптическим технологиям мы получаем возможность применять методы обработки пространственных функций для обработки процессов, то есть функций времени.
Представьте себе...
Посмотрим, как это "работает" на практике. Из предыдущих статей темы вы, вероятно, поняли, что процесс пространственной фильтрации - один из наипопулярнейших в технологии оптических вычислений. Но предположим, что перед нами стоит задача фильтрации во временной области. Нужно из сложного входного сигнала отфильтровать компонент с определенной частотой.
Имея дело с оптикой, мы можем позволить себе поразительную вещь - использовать графические записи временных процессов в качестве оптических объектов - транспарантов. Зная параметры того компонента сигнала, который следует выделить, мы можем изготовить оптический согласованный фильтр, при помощи которого осуществить необходимое преобразование входного сигнала-изображения. Например, убрать из его спектра какую-то составляющую.
Чтобы результат обработки получить снова в виде временного процесса (мы же все-таки о реальном времени говорим!), необходимо тем или иным способом осуществить процесс, обратный записи, то есть выполнить воспроизведение. Ну, например, так (рис. 2).
Зачастую в технике оптической фильтрации временных сигналов используются принципы распознавания образов, где в качестве этих самых "образов" выступают компоненты спектра сигнала. Собственно, сам процесс спектрального анализа сигнала здесь приобретает форму распознавания в составе входного процесса того или иного пространственного образа (см. рис. 3).
Если во входном сигнале присутствует некоторая пространственная гармоника (во всех практических случаях сигнал включает в себя весь спектр пространственных частот, поэтому критерием "наличия" той или иной гармоники становится ее амплитуда, вернее, превышение ею некоторого порогового значения), то в соответствующей "строке" плоскости откликов появляется светящаяся точка - отклик пространственно-согласованного фильтра.
Дополним схему распознавания каскадом оптической обработки - голографическим фильтром, для которого изображение в плоскости откликов является входным. Голографический фильтр способен порождать любые заранее заданные отклики в зависимости от вида входного изображения, то есть, по существу, формировать теперь уже в своей выходной плоскости изображение вновь синтезированного спектра выходного сигнала.
Включив в описываемую конструкцию оптоэлектронную схему гармонического синтеза, мы сможем получать на выходе временной сигнал, обладающий спектром, сформированным в результате оптической обработки входного сигнала.
Из пункта А, в пункт В...
Только что мы, как бы между прочим, затронули чрезвычайно важный вопрос - о природе оптических сигнальных процессоров. В самом деле, эти устройства - аналоговые или цифровые?
Процессы оптической пространственной фильтрации, преобразования волновых фронтов на голографических элементах - несомненно, аналоговые. В то же время, как ясно видно из последнего примера, в оптических процессорах применим и своеобразный способ цифрового кодирования - спектральный. В самом деле, факту наличия во входном и/или выходном сигнале той или иной спектральной составляющей всегда можно поставить в соответствие "единичку" в соответствующем разряде двоичного слова.
Еще одно усилие воображения, и становится ясно, что "машинные слова" оптического цифрового процессора - не что иное, как картинки, совокупности светящихся точек, разделенных темными промежутками. (На самом деле все гораздо сложнее, красивее и богаче возможностями. Дело в том, что в качестве "слов" в цифровых оптических вычислителях могут применяться не столько изображения двоичных последовательностей, сколько точки, принадлежащие абстрактному пространству состояний процессора. Например, дискретный набор пространственных ориентаций волновых векторов пучков света. Об этом - чуть ниже.)
Чтобы понять, о чем речь, представим, что все возможные состояния процессора мы отобразим точками некоторого абстрактного пространства (собственно, если число этих точек окажется конечным, значит, наш процессор - цифровой. В противном случае мы имеем дело с аналоговым вычислителем). Работа процессора будет описываться последовательностью переходов между этими точками. В теории автоматов эти вещи очень наглядно изображаются при помощи графов. Так вот, работа оптического дискретного процессора фактически материализует абстрактное математическое представление о графах переходов. В качестве точек, представляющих состояние вычислителя, можно использовать реальные точки физического трехмерного пространства, "помещая" в них действительные или мнимые источники света или, точнее, сферических волновых фронтов.
В основе этой идеи лежит возможность нелинейного отображения при помощи голографических элементов, которые не подчиняются классическому закону геометрической оптики - "угол отражения равен углу падения" [1]. Нетрудно реализовать голографический элемент, обеспечивающий возникновение даже нескольких отраженных пучков при определенном угле падения исходного луча, - вещь невозможная в классической оптике (см. рис. 4).
Теперь и вовсе понятной должна стать схема оптического вычислителя, все внутренние состояния которого кодируются дискретными положениями мнимых источников света (или их мнимых изображений) в некотором "объеме" пространства, окружающего процессор (см. рис. 5).
Сам процессор представляет собой объем прозрачной среды (она может обладать усилительными свойствами, а может и не обладать), ограниченный с боков отражательными голографическими элементами. Элементы предназначены для формирования в зависимости от значения входной величины, закодированной положением источника А (или, точнее, ориентацией его волнового вектора), системы последовательных откликов, порождающих в конце концов выходной сигнал - результирующую величину, представленную пространственной ориентацией волнового вектора, допустим, источника С.
Вспомним: пространственное положение точки - источника света - запросто преобразуется в любой оптический образ, который так же запросто трансформируется в результирующую временную последовательность - желаемый выходной процесс.
1 (обратно к тексту) - Вообще-то, конечно, подчиняются, если речь идет о тонкой структуре фазовых неоднородностей голограммы. Но для "внешнего" наблюдателя зависимость угла отражения от угла падения может быть любой!