ФОТОННАЯ ВЫЧИСЛИТЕЛЬНАЯ МАШИНА
PHOTON COMPUTER

Изобретение относится к вычислительной технике, в частности к универсальным цифровым вычислительным машинам, реализованным на оптической элементной базе и выполняющим вычислительный процесс, управляемый потоком данных. Применение изобретения позволяет повысить производительность и энергоэффективность вычислительных машин.
Известен электронно-фотонный процессор, содержащий более 70 млн электронных транзисторов и 850 фотонных компонентов (Russel John hight-enabled Microprocessor Holds Promise for Faster Computers February 23, 2016 [Электронный ресурс]. Режим доступа http://www/hpcwire.com/2016/02/23/25120/.
Электронные транзисторы применяются для реализации арифметико-логических устройств, фотонные компоненты применяются для реализаций оптических каналов связи.
Недостатком данного решения является ограничение производительности процессора быстродействием электронных устройств.
Известен оптический цифровой компьютер (п. РФ№2284050. MПK G06E 1/00, G06F 15/76, G06F 13/36 (2006.01), опубл. 20.09.2006. Бюл. №26), содержащий блоки оптической общей разделяемой памяти, оптические интерфейсы ввода/вывода, оптический общий системный интерфейс, оптический процессорный блок (процессорный элемент), оптический ассоциативный процессорный блок, оптический цифровой сигнальный процессорный блок, оптические интерфейсы ввода/вывода оптической интерфейсной сети компьютерной периферии, оптическую интерфейсную сеть компьютерной периферии. Недостатком этого решения является присущая всем вычислительным системам с общей разделяемой памятью необходимость обеспечивать «когерентность КЭШ-памяти», (Цилькер Б.Я., Орлов С.А. «Организация ЭВМ и систем». Спб.: ПИТЕР, 2004 г., с. 501), то есть согласовывать содержимое различных копий отдельных фрагментов памяти, одновременно обрабатываемых различными процессорами. С увеличением количества процессоров затраты времени на поддержание «когерентности КЭШ-памяти» возрастают и после некоторого значения (на практике обычно 16-32 шт.) увеличение количества процессоров нецелесообразно, т.к. производительность всей системы не возрастает.
Известен оптический многоцветный суперкомпьютер, представляющий собой многопроцессорный вычислительный комплекс, состоящий из процессорных элементов, объединенных оптическими каналами связи в распределенную мультипроцессорную вычислительную систему с топологией гиперкуб (Торчигин В.П., Кобяков А.Э. Оптический многоцветный суперкомпьютер. Вычислительные машины с нетрадиционной архитектурой. СуперВМ. М.: ВЦКП РАН, 1994, с. 137-168). Для реализации всех компонент суперкомпьютера используются активные оптические логические элементы, требующие дополнительного лазерного излучения накачки. Функционирование этих элементов основано на применении генераторов второй гармоники, позволяющих одновременно независимо усиливать оптические сигналы, различающиеся по длинам волн (цветам), при условии, что для усиления каждого сигнала подается излучение накачки с определенной длиной волны (там же, с. 141).
Недостатками предложенной реализации оптических логических элементов являются:
- относительно большая задержка оптического результирующего сигнала, обусловленная инерционностью нелинейной оптической среды, используемой для реализации оптических логических элементов (там же, с. 139);
- необходимость подачи излучения накачки для каждой длины волны в каждый элемент, что увеличивает требуемую суммарную мощность и количество волноводов (световодов), размещаемых на интегральной подложке, усложняя реализацию оптического логического элемента (там же, с. 141).
Недостатком предложенной реализации всего многопроцессорного вычислительного комплекса является проблема конфликтов, когда в один приемник - процессорный элемент - одновременно поступают данные из различных источников (там же, с. 159). Решение проблемы требует дополнительного оборудования.
Известна суперЭВМ, использующая оптические средства обработки информации (Бурцев B.C. «Использование оптических средств обработки информации в архитектуре суперЭВМ». Сборник «Параллелизм вычислительных процессов и развитие архитектуры суперЭВМ». ИВВС РАН, М., 1997 г., с. 79-104). Указанная суперЭВМ, предназначенная для выполнения вычислительного процесса, управляемого потоком данных, содержит процессорный элемент, включающий векторные и скалярные исполнительные устройства (арифметико-логические устройства с устройствами управления - вычислительный модуль), соединенные через управляемые оптические коммутаторы с устройствами управления, устройство ввода/вывода и буферную оптическую ассоциативную память, применяемую для выборки операндов и команд в соответствии с принципами выполнения вычислений, управляемых потоком данных (data flow).
Однако применение активных оптических логических элементов на основе лазеров (там же, с. 89, с. 90, с. 95, с. 97), потребляющих больше энергии по сравнению с полупроводниковыми (там же, с.79), не обладающих конкурентным для создания регистров и памяти быстродействием и затрудняющих интеграцию устройств (там же, с. 80), не позволяют создать оптический процессор и оптическую память, превосходящие по быстродействию электронные полупроводниковые аналоги (там же, с.85, с. 93). Делается вывод о необходимости совместного применения в суперЭВМ электронных и оптических компонент, причем доля последних может составлять 30-60% общего состава (там же, с. 103).
Недостаток указанного решения состоит в малом быстродействии оптической суперЭВМ, определяемом производительностью полупроводниковых электронных исполнительных устройств и памяти. Данная суперЭВМ выбрана в качестве прототипа.
Задачей, на решение которой направлено заявляемое изобретение, является создание фотонной вычислительной машины, использующей свойства светового представления информации.
Технический результат заключается в повышении производительности и улучшении энергоэффективности.
Указанный технический результат достигается за счет того, что заявляемая фотонная вычислительная машина (ФВМ), предназначенная для выполнения вычислительного процесса, управляемого потоком данных, включающая процессорный элемент, содержащий вычислительный модуль, соединенный через управляемый оптический коммутатор с устройством ввода/вывода, в отличие от прототипа содержит один источник лазерного излучения, более одного процессорных элементов, соединенных через первую группу соответствующих входов-выходов оптических коммутаторов оптическими двунаправленными каналами связи в распределенную мультипроцессорную вычислительную систему с образованием заданной топологии и подключенных через их вторую группу соответствующих входов-выходов оптическими двунаправленными каналами связи к одним соответствующим входам-выходам устройства ввода/вывода, первый из других соответствующих входов-выходов которого соединен двунаправленным оптическим каналом связи с первым соответствующим входом-выходом источника лазерного излучения, а второй из других соответствующих входов-выходов устройства ввода/вывода соединен двунаправленным электронным каналом связи с первым соответствующим входом-выходом устройства преобразования вычислительного задания в программу для ФВМ, второй соответствующий вход-выход которого соединен двунаправленным электронным каналом связи со вторым соответствующим входом-выходом источника лазерного излучения, при этом устройство преобразования выполнено с возможностью преобразования вычислительного задания в программу для ФВМ, обеспечивающую одновременную работу нескольких процессорных элементов, с указанием для каждой команды выполняемой программы ФВМ вычисленного заранее на основе задействованной топологии связей количества процессорных элементов и исполняемой программы, номера свободного от выполнения других команд процессорного элемента, который будет выполнять эту команду, и не требующих разделения ресурсов маршрутов, по которым в этот процессорный элемент будут передавать код операции, соответствующий этой команде, и соответствующие ей данные, а также не требующего разделения ресурсов маршрута, по которому из процессорного элемента будут передавать результат выполнения операции, при этом все устройства процессорных элементов и интерфейсы оптических каналов связи выполнены из пассивных оптических логических элементов, реализующих интерференционные эффекты взаимодействия когерентных световых волн, порожденных источником лазерного излучения, а линии связи оптических двунаправленных каналов связи выполнены из оптического волокна или волноводов.
Устройство, преобразующее вычислительное задание в программу для ФВМ, может быть выполнено в виде электронной вычислительной машины.
Применение в составе ФВМ нескольких процессорных элементов, их соединение через первую группу соответствующих входов-выходов оптических коммутаторов оптическими двунаправленными каналами связи в распределенную мультипроцессорную вычислительную систему с образованием заданной топологии и подключение через их вторую группу соответствующих входов-выходов оптическими двунаправленными каналами связи к одним соответствующим входам-выходам устройства ввода/вывода, соединение первого из других соответствующих его входов-выходов двунаправленным оптическими каналами связи с первым соответствующим входом-выходом источника лазерного излучения и соединение второго из других соответствующих входов-выходов устройства ввода/вывода двунаправленным электронным каналом связи с первым соответствующим входом-выходом устройства преобразования вычислительного задания в программу для ФВМ, соединение второго соответствующего входа-выхода которого двунаправленным электронным каналом связи со вторым соответствующим входом-выходом источника лазерного излучения, при этом устройство преобразования выполнено с возможностью преобразования вычислительного задания в программу для ФВМ, обеспечивающую одновременную работу нескольких процессорных элементов, с указанием для каждой команды выполняемой программы вычисленного заранее на основе задействованной топологии связей количества процессорных элементов и исполняемой программы, номера свободного от выполнения других команд процессорного элемента, который будет выполнять эту команду, и не требующих разделения ресурсов маршрутов, по которым в этот процессорный элемент будут передавать код операции, соответствующий этой команде, и соответствующие ей данные, а также не требующего разделения ресурсов маршрута, по которому из процессорного элемента будут передавать результат выполнения операции, это исключает ожидание ресурсов (конфликты), т.е. процессорные элементы и каналы связи задействуются для выполнения вычислений в параллельном режиме немедленно, по мере готовности информации.
n
Задействование в ФВМ нескольких работающих одновременно процессорных элементов, соединенных через первую группу соответствующих входов-выходов оптических коммутаторов оптическими двунаправленными каналами связи в распределенную мультипроцессорную вычислительную систему с образованием заданной топологии (1D тор, 2D тор, 3D тор, Г - гиперкуб, N - полный матричный коммутатор, S - полносвязный граф, F - полное дерево. (Цилькер Б.Я., Орлов С.A. Организация ЭВМ и систем. Спб.: ПИТЕР, 2004 г., с.524)), подключение через вторую группу соответствующих входов-выходов оптических коммутаторов, применение при этом устройства преобразования, которое преобразует вычислительное задание в программу для ФВМ, обеспечивающую одновременную работу нескольких процессорных элементов, с указанием для каждой команды выполняемой программы ФВМ вычисленного заранее в устройстве преобразования вычислительного задания в программу для ФВМ на основе задействованной топологии связей количества процессорных элементов и исполняемой программы ФВМ, номера свободного от выполнения других команд процессорного элемента, который будет выполнять эту команду, и не требующих разделения ресурсов маршрутов, по которым в этот процессорный элемент будут передавать код операции, соответствующий этой команде, и соответствующие ей данные, а также не требующего разделения ресурсов маршрута, по которому из процессорного элемента будут передавать результат выполнения операции, реализует создание системы, в которой отсутствует ожидание ресурсов (конфликты) и не требуется поддержания когерентности КЭШ-памяти между различными процессорными элементами, что позволяет увеличивать производительность ФВМ увеличением количества процессорных элементов.
Применение одного источника лазерного излучения, соединение первого из других соответствующих входов-выходов устройства ввода/вывода двунаправленным оптическим каналом связи с первым соответствующим входом-выходом источника лазерного излучения, а второго из других соответствующих входов-выходов устройства ввода/вывода двунаправленным электронным каналом связи с первым соответствующим входом-выходом устройства преобразования вычислительного задания в программу для ФВМ, второй соответствующий вход-выход которого соединен двунаправленным электронным каналом связи со вторым соответствующим входом-выходом источника лазерного излучения, исполнение всех устройств процессорных элементов и интерфейсов оптических каналов связи из пассивных оптических логических элементов, реализующих интерференционные эффекты взаимодействия когерентных световых волн, выполнение при этом линий связи оптических двунаправленных каналов связи из оптического волокна или волноводов, преобразование электронной формы информации в устройстве ввода/вывода в световую позволяет выполнять обработку информации в световой форме с быстродействием, определяемым размерами оптических логических элементов и скоростью света в элементе и не зависящим от быстродействия электронных компонент, информация от которых преобразуется в устройстве ввода/вывода в световую форму, состоящую из фотонов, сгенерированных одним источником лазерного излучения.
Наличие отличительных от прототипа признаков в заявляемом устройстве позволяет сделать вывод о соответствии заявляемого изобретения критерию «новизна», а отсутствие отличительных признаков в аналогах - сделать вывод о его соответствии критерию «изобретательский уровень».
Выполнение всей совокупности признаков заявляемого изобретения позволяет повысить производительность и улучшить энергоэффективность фотонной вычислительной машины по сравнению с прототипом.
Изобретение поясняется фигурами.
3
Σ
На фиг. 1 - приведена блок-схема заявляемой фотонной вычислительной машины; на фиг. 2 - представлена принципиальная схема интерференционной картины, реализуемой одним оптическим логическим элементом; на фиг. 3 - приведена структура фотонной вычислительной машины с топологией Г; на фиг. 4-11 представлены таблицы 0-7 передачи информации между процессорными элементами; на фиг. 12 - приведен информационный граф последовательности вычисления значения выражения A=a+(b+c)×d в записи Aabc+d×+:=; на фиг. 13 - приведен процессорный граф вычисления значения выражения A=a+(b+c)×d в записи Aabc+d×+:=; на фиг. 14 - приведена таблица 8, поясняющая программу фотонного процессора для вычисления выражения A=a+(b+c)×d в записи Aabc+d×+:=; на фиг. 15 - приведена таблица 9 значений производительности фотонной вычислительной машины, потребляющей мощность Р=100 Вт.
Фотонная вычислительная машина (ФВМ), предназначенная для выполнения вычислительного процесса, управляемого потоком данных, включает несколько (более одного) процессорных элементов 6, каждый из которых содержит вычислительный модуль 3, соединенный через управляемый оптический коммутатор 4 (в данном примере управление осуществляется при помощи устройства управления 17) с устройством ввода/вывода 9, содержит один источник лазерного излучения 11.
3
Процессорные элементы 6 соединены через первую группу соответствующих входов-выходов оптических коммутаторов 4 оптическими двунаправленными каналами связи 7 в распределенную мультипроцессорную вычислительную систему с образованием заданной топологии. Для соединения процессорных элементов 6 оптическими двунаправленными каналами связи 7 может быть задана любая известная топология, образующая распределенную мультипроцессорную вычислительную систему, не требующую поддержания когерентности кэш-памяти между процессорными элементами 6 (например, на фиг. 1 каждый процессорный элемент 6 через первую группу соответствующих входов-выходов оптических коммутаторов 4 соединен оптическими двунаправленными каналами 7 связи с первой группой соответствующих входов-выходов оптического коммутатора 4 каждого другого процессорного элемента 6 с образованием топологии S - полносвязный граф (звезда), а на фиг. 3 - в топологию Г - гиперкуб размерности три, в вершинах которого расположены процессорные элементы 6).
Процессорные элементы 6 через вторую группу соответствующих входов-выходов оптических коммутаторов 4 подключены оптическими двунаправленными каналами связи 8 к одним соответствующим входам-выходам устройства ввода/вывода 9, первый из других соответствующих входов-выходов которого соединен двунаправленным оптическим каналом связи 13 с первым соответствующим входом-выходом источника лазерного излучения 11, а второй из других соответствующих входов-выходов устройства ввода/вывода 9 соединен двунаправленным электронным каналом связи 14 с первым соответствующим входом-выходом устройства 10, преобразования вычислительного задания в программу для ФВМ, при этом его второй соответствующий вход-выход, через который осуществляется управление источником лазерного излучения, соединен двунаправленным электронным каналом связи 12 со вторым соответствующим входом-выходом источника лазерного излучения 11.
Устройство 10 преобразует исходное вычислительное задание в программу для ФВМ, обеспечивающую одновременную работу нескольких процессорных элементов 6, с указанием для каждой команды программы ФВМ вычисленного заранее в устройстве 10 на основе задействованной топологии связей количества процессорных элементов 6 и исполняемой программы ФВМ, номера свободного от выполнения других команд процессорного элемента 6, который будет выполнять эту команду, и не требующих разделения ресурсов маршрутов, по которым по оптическим каналам связи 7 в этот процессорный элемент 6 будут передавать код операции, соответствующий этой команде, и соответствующие ей данные, а также не требующего разделения ресурсов маршрута, по которому из процессорного элемента по оптическим каналам связи 8 будут передавать результат выполнения операции.
Устройство 10 может быть выполнено в виде электронной вычислительной машины, выполняющей программу преобразования (трансляции) исходного вычислительного задания в программу для ФВМ.
Каждый процессорный элемент 6 содержит вычислительный модуль (ВМ) 3, включающий арифметико-логическое устройство (АЛУ) 1 для выполнения арифметических и логических операций, соединенное оптическим двунаправленным каналом 15 связи с устройством 2 управления АЛУ. ВМ 3 соединен с управляемым при помощи устройства управления 17 (УУ) оптическим коммутатором 4 оптическим двунаправленным каналом 5 связи.
Управляемый оптический коммутатор (КМ) 4 предназначен для выполнения обмена информацией между процессорными элементами 6, а также обмена информацией с устройством 9 ввода/вывода.
Все устройства процессорных элементов 6 и интерфейсы оптических двунаправленных каналов 5, 7, 8, 13, 15 связи изготовлены из пассивных оптических логических элементов, реализующих интерференционные эффекты взаимодействия когерентных световых волн, порожденных одним лазерным источником.
Устройство пассивных оптических логических элементов может быть реализовано, например, как в патенте РФ №2075106 «Оптический логический элемент», опубликованном 10.03.1997 г.
Линии связи в оптических двунаправленных каналах связи реализуются либо оптоволокном, либо волноводами на интегральной подложке (см. Вербовецкий А.А. Основы проектирования цифровых оптоэлектронных систем связи. М.: «Радио и связь», 2000 г., с.21, с. 150).
Используемая реализация оптических логических элементов является функционально полной системой (см. Поспелов Д.А. Логические методы анализа и синтеза схем. Изд. 3-е, перераб. и доп., М., «Энергия», 1974 г., - 368 с., с. 39).
Ее применение позволяет повторить оптическими средствами любые блоки и устройства, известные в цифровой электронной вычислительной технике, которые при этом будут иметь быстродействие оптической элементной базы.
Производительность фотонной вычислительной машины зависит от быстродействия оптического логического элемента, которое определяется параметрами интерференционной картины (Яворский Б.М., Детлаф А.А., Лебедев А.К. Справочник по физике для инженеров и студентов вузов М., «Издательство «Мир и Образование», 2008 г., - 1056 с., с. 618), образуемой этим элементом в результате взаимодействия когерентных световых волн.
1
2
1
2
Принципиальная схема интерференционной картины (там же, с. 620), реализуемой оптическим логическим элементом, приведена на фиг. 2, где S, S - входы логического элемента (источники когерентных волн, полученные разделением исходного излучения из источника лазерного излучения S11), 2ψ - апертура интерференции, 2b - линейный размер S, 2ω - угол схождения лучей, OM=D - длина волновода оптического логического элемента, h - распределение интенсивностей в интерференционной картине для монохроматического света с длиной волны λ, при 2b<<λ, h<<D и равенстве амплитуд колебаний когерентных источников волн S и S (значение h определяет размер экрана и размер выходного волновода оптического логического элемента), 2l - расстояние между входами элемента.
Известно (там же, с. 621):
где λ - длина волны, m=0, 1, 2… - порядок интерференции.
Расстояние между соседними максимумами и минимумами обозначим B; согласно (там же, с. 621):
Минимальная яркость трактуется как логический «0», максимальная яркость - как логическая «1» (см. Патент РФ №2075106 «Оптический логический элемент», опубликован 10.03.1997 г.)
Параметры l, h и D (фиг. 2) определяют конструктивные размеры пассивного оптического логического элемента.
Быстродействие оптического логического элемента определяется интервалом времени, требуемым свету для преодоления расстояния D - длины волновода оптического логического элемента.
Физическое выполнение вычислительного процесса фотонной вычислительной машиной начинается управляющим воздействием, порождаемым устройством 10 и передаваемым по каналу 12 в источник 11 лазерного излучения. В результате источником 11 генерируется исходное лазерное излучение, которое по оптическому двунаправленному каналу связи 13 поступает в устройство 9 ввода/вывода, где делится на световые лучи, количество которых равно количеству бит (разрядов), одновременно вводимых по соответствующим оптическим двунаправленным каналам 8 связи в оптические процессорные элементы 6 (все устройства процессорных элементов 6 выполнены из пассивных оптических логических элементов). Далее в результате взаимодействия этих лучей в устройстве 9 ввода/вывода с электронным представлением исходной информации, вводимым по двунаправленному электронному каналу связи 14 из устройства 10 преобразования вычислительного задания в программу для ФВМ, получается световая форма выполняемой программы, которая по оптическим двунаправленным каналам 8 связи поступает через соответствующие входы-выходы коммутаторов 4 в процессорные элементы 6, то есть по всем каналам поступают когерентные лучи света, порожденные одним источником 11 лазерного излучения. Лучи взаимодействуют в пассивных оптических логических элементах, из которых реализованы оптические процессорные элементы 6, образуя интерференционные эффекты согласно законам оптики. Функции оптических логических элементов идентичны функциям электронных логических элементов. Это позволяет задействовать для создания фотонной вычислительной машины архитектурные реализации управляющих и арифметико-логических устройств, известные из электронной вычислительной техники.
Принципиальная возможность реализации фотонных вычислительных устройств оценивается предельным количеством пассивных оптических логических элементов в оптических процессорных элементах 6. Это количество определяется либо бюджетом мощности - разностью в децибелах между значением мощности сигнала на входе процессорного элемента 6 и минимальным значением мощности входного сигнала, воспринимаемым оптическим приемником (Вербовецкий А.А. Основы проектирования цифровых оптоэлектронных систем связи. М.: «Радио и связь», 2000 г. - 160 с., с. 86), либо длиной когерентности (Яворский Б.М., Детлаф А.А., Лебедев А.К. Справочник по физике для инженеров и студентов вузов. М., «Издательство «Мир и Образование» 2008 г., - 1056 с., с. 619).
После исчерпания бюджета мощности осуществляется регенерация информации процессорными элементами 6.
После достижения длины когерентности информация из процессорных элементов 6 и каналов 7 возвращается по каналам 8 в устройство 9 ввода/вывода, где преобразуется в электронную форму и затем вновь преобразуется в световую когерентную форму, которая возвращается по каналам 8 в процессорные элементы 6.
Для выполнения вычислений в фотонной вычислительной машине используется польская инверсная запись вычисляемого выражения (Барский А.Б. Параллельные информационные технологии. М., - Бином, 2007 г. - 503 с., с. 61), на основе которой известным методом строится информационный граф (там же, с. 171), описывающий вычислительный процесс, управляемый потоком данных (data flow) (там же, с. 169).
Из информационного графа получается процессорный граф, который состоит из вершин, соответствующих процессорным элементам 6 в интервалы времени t; интервал - содержит целое количество тактов, такт - количество времени, требуемое свету для преодоления расстояния D - длины волновода логического оптического элемента. Ребра процессорного графа соответствуют не требующим разделения ресурсов (бесконфликтным) маршрутам, состоящим из оптических двунаправленных каналов 7, по которым в оптические процессорные элементы 6 поставляется информация - операнды, коды операции и служебные синхронизирующие символы, называемые далее метками и обозначаемые ∅ (см. фиг. 13 и таблицу 8 фиг. 14).
В начальный интервал времени t=0 и в другие, заранее определенные интервалы, информация из устройства 9 ввода/вывода через оптические двунаправленные каналы 8 связи подается в оптические процессорные элементы 6 или из них в устройство 9 ввода/вывода. Во все остальные интервалы информация передается между оптическими процессорными элементами 6 по не требующим разделения ресурсов маршрутам, состоящим из оптических двунаправленных каналов 7 связи согласно выполняемому вычислительному процессу.
В каждом интервале времени задействуются все оптические двунаправленные каналы 7 связи всех оптических процессорных элементов 6. По не используемым для выполнения операции оптическим двунаправленным каналам 7 связи пересылают служебную информацию - символы-метки, обеспечивая тем самым синхронизацию.
Программа фотонной вычислительной машины для вычисления значения заданного выражения получается из соответствующего этому выражению процессорного графа заменой вершин графа операциями, выполняемыми определенными, свободными от выполнения других заданий оптическими процессорными элементами 6 в заранее заданные интервалы t, а ребер - идентификаторами, в частности операндами или результатами выполнения операций, пересылаемыми по оптическим двунаправленным каналам 7 связи между определенными, заранее указанными оптическими процессорными элементами 6.
Программа состоит из команд, предписывающих действия, выполняемые в каждый интервал времени t каждым оптическим процессорным элементом 6 по обработке информации вычислительным модулем 3, а также действия по ее приему и передаче по каждому каналу 7.
Различаются три фазы выполнения команды.
Фаза ϕ=1. Прием информации по каналам 8 из устройства 9 ввода/вывода или из процессорных элементов 6 по каналам 7 на входы процессорного элемента 6.
Фаза ϕ=2. Анализ поступившей информации. Выделение кода операции. Выполнение процессорным элементом 6 действий, предписываемых кодом операции.
Фаза ϕ=3. Запись информации процессорным элементом 6 в выходные регистры и передача их в другие процессорные элементы 6 по каналам 7 или в устройство 9 ввода/вывода по каналам 8.
Перечисленные действия выполняются всеми процессорными элементами 6 одновременно.
В течение всего процесса вычислений каждый символ - идентификатор операнда, результата или кода операции - сопровождается текущим значением временного интервала (такта) t=0, 1, …n, n+1, n+2, … .
Процессорные элементы 6 и двунаправленные оптические каналы 7 связи, не задействованные в выполнении операций, также в каждом интервале принимают и передают значения t (где t - временной интервал), сопровождающие символ-метку (∅). Значение t увеличивается каждый раз на единицу при каждом прохождении процессорного элемента 6. Значения t изменяются независимо от остальных символов.
Значения t используются для синхронизации всех процессорных элементов 6, в том числе и не задействованных в выполняемом вычислительном процессе.
Процессорный элемент 6 выполняет операцию лишь тогда, когда по всем каналам 7 связи этого элемента получена информация с одинаковым, очередным значением t.
Результат вычислительного процесса и, в случае необходимости, промежуточные значения пересылаются в заранее известные интервалы времени по бесконфликтным маршрутам в устройство 9 ввода/вывода и оттуда в устройство 10 (например, ЭВМ).
3
3
Рассмотрим пример осуществления ФВМ, в которой процессорные элементы 6 соединены через первую группу соответствующих входов-выходов оптических коммутаторов 4 оптическими двунаправленными каналами связи 7 в распределенную мультипроцессорную вычислительную систему с образованием заданной топологии Г - трехмерный гиперкуб. Структура ФВМ с топологией Г представлена на фиг. 3.
3
В вершинах Г находятся оптические процессорные элементы 6, выполняющие операции, предписываемые системой команд ФВМ в соответствии с исполняемой программой.
i
Каждому процессорному элементу 6 соответствует двоичный вектор , где σ∈{0, 1}, i=1, 2, 3.
3
Ребра, соединяющие вершины Г, соответствуют оптическим двунаправленным каналам связи 7, соединяющим первую группу соответствующих входов-выходов оптических коммутаторов 4 процессорных элементов 6.
3
Вторая группа соответствующих входов-выходов оптических коммутаторов 4 процессорных элементов 6 соединена с соответствующими входами-выходами устройства 9 ввода/вывода двунаправленными оптическими каналами 8 связи, внешними для Г. На фиг. 3 каналы 8 показаны для процессорного элемента в вершине (0, 0, 1), для других вершин они на фигуре не показаны.
Для определенности в данном примере полагаем, что количество каналов 8 связи, соединяющих процессорный элемент 6 с устройством 9 ввода/вывода, равно количеству каналов связи, соединяющих процессорный элемент 6 с другими процессорными элементами 6.
Устройство 10, преобразующее вычислительное задание в программу для ФВМ, выполнено в данном примере в виде электронной вычислительной машины.
Вычислительное задание, прошедшее через устройство 9 ввода-вывода, представлено в световой форме, полученной в результате воздействия источника 11 лазерного излучения на электронную форму вычислительного задания, полученного по каналам 14 из устройства 10.
3
3
Для Г и длины маршрута три имеем четыре множества бесконфликтных обменов ((000), (111)), ((001), (110)), ((010), (101)) и ((100), (011)), длиной маршрута называется количество ребер, соединяющих эти вершины, в Г для соединения любых двух вершин достаточно трех ребер. Вершины, соответствующие векторам указанных множеств, помечены на фиг. 3 символами . (Методы образования множеств бесконфликтных обменов и не требующих разделения ресурсов маршрутов передачи информации между источниками и приемниками, принадлежащими этим множествам, для различных топологий изложены в Степаненко С.А. Мультипроцессорные среды суперЭВМ. Масштабирование эффективности. М.: ФИЗМАТЛИТ, 2016 г., - 312 с., с. 137).
Бесконфликтные маршруты передачи информации, соединяющие векторы этих множеств, также показаны на фиг. 3. Символы маршрутов совпадают с символами вершин соответствующих множеств.
Полагаем, что в интервал времени t=0, фаза ϕ=1 все оптические процессорные элементы 6 одновременно принимают по всем оптическим двунаправленным каналам 8 информацию из устройства 9 ввода/вывода. В течение фазы ϕ=2 процессорные элементы 6 выполняют операции над этой информацией. В течение фазы ϕ=3 процессорные элементы 6 по всем каналам 7 рассылают информацию в другие процессорные элементы 6.
2
3
В результате, например, в интервал времени t=1 фаза ϕ=1 в процессорный элемент 6, которому соответствует вектор (0, 0, 0) по двунаправленному каналу связи, обозначенному 7 (фиг. 3), поступает информация из процессорного элемента 6, которому соответствует вектор (0, 0, 1), а по каналам 7 и 7 поступает информация из процессорных элементов 6, которым соответствуют векторы (0, 1, 0) и (1, 0, 0).
1
2
3
Далее в интервал времени t=2 по указанным каналам связи 7, 7 и 7 в процессорный элемент 6, которому соответствует вектор (0, 0, 0), поступит информация из элементов 6, которым соответствуют векторы (0, 1, 1), (1, 1, 0) и (1, 0, 1).
Аналогичные действия осуществляются в других процессорных элементах 6.
Порядок следования информации представлен маршрутами на фиг. 3.
3
2
1
1
2
3
1
2
3
3
2
1
1
2
3
i
В частности, как указано в таблице 0 на фиг. 4, в интервал времени t=0 в процессорном элементе 6, которому соответствует вектор (σ, σ, σ)=(0, 0, 0) во всех трех регистрах, соответствующих каналам 7, 7, 7, соединяющих процессорный элемент (0, 0, 0) с элементами (0, 0, 1), (0, 1, 0) и (1, 0, 0), имеем начальную информацию этого элемента, обозначенную (0, 0, 0). Далее в интервал времени t=1 в этом процессорном элементе в регистрах, соответствующих каналам 7, 7, 7, имеем информацию из процессорных элементов 6 которым соответствуют векторы (0, 0, 1), (0, 1, 0) и (1, 0, 0). В таблицах 0-7, представленных на фиг. 4-11, приведены последовательности поступления информации в интервалы времени t в оптические процессорные элементы 6, которым соответствуют векторы (σ, σ, σ); десятичное представление вектора является цифрой номера таблицы, 7, 7, 7 соответственно обозначают первый, второй и третий каналы 7 процессорного элемента 6. Оптический двунаправленный канал 7 соединяет процессорные элементы 6, векторы  которых отличаются в i-м разряде i=1, 2, 3.
Рассмотренная последовательность передачи информации далее называется идентификационной последовательностью. Она позволяет идентифицировать прием и выдачу информации по каждому каналу в каждом процессорном элементе в течение заданного интервала, а также обеспечить синхронность поступления информации от разных источников. Идентификационная последовательность передачи информации одновременно полностью задействует (бесконфликтно) все каналы 7 и все процессорные элементы 6 (порядок следования информации представлен маршрутами на фиг. 3).
Идентификационная последовательность применяется для построения процессорного графа, получаемого на основе информационного графа исполняемого вычислительного процесса.
3
2
1
3
2
1
t
Процессорный граф состоит из вершин, соответствующих процессорным элементам 6, помеченным векторами (σ, σ, σ), выполняющим операции в интервалы времени t. Эти вершины обозначаются (σ, σ, σ).
3
2
1
t
3
2
1
t
Далее, для краткости, процессорный элемент 6, которому соответствует вершина (σ, σ, σ), называем элементом (σ, σ, σ).
3
Построим процессорный граф для фотонной вычислительной машины с топологией Г, вычисляющей значение выражения A=a+(b+c)×d, где А, а, b, с, d - произвольные операнды.
0
1
2
В бесскобочной польской инверсной записи (Барский А.Б. Параллельные информационные технологии М., - Бином, 2007 г. - 503 с., с. 87) это выражение имеет вид Aabc+d×+:=. Соответствующий ему информационный граф представлен на фиг. 12. Промежуточные значения вычислений обозначены символами Р, Р, Р.
Процессорный граф строится на основе этого информационного графа и идентификационной последовательности, представленной в таблицах 0-7 на фиг. 4-11.
0
0
0
В интервал t=0 в процессорные элементы (0, 0, 1), (0, 1, 0) и (1, 0, 0) записываются из устройства 9 ввода/вывода операнды b, с и идентификатор {+}. Это иллюстрирует фиг. 13.
0
1
Выбор указанных процессорных элементов обусловлен необходимостью их взаимодействия при t=1 для вычисления значения Р. Это взаимодействие осуществляется в элементе (0, 0, 0).
0
1
1
0
В течение интервала t=2 значение Р должно взаимодействовать с операндом d и идентификатором {×}. Поэтому выбирается свободный процессорный элемент при t=2, имеющий связь с (0, 0, 0), например элемент (0, 0, 0). В него при t=2, дополнительно со значением Р, необходимо доставить значение операнда d и идентификатор операции {×}.
2
1
0
2
1
0
Выберем для d первый свободный маршрут, например, из векторов, имеющих наименьшее возможное значение. Таким маршрутом для d будет (0, 0, 0), (0, 1, 1), (0, 0, 1). Аналогично для идентификатора {×} получаем маршрут (0, 0, 1), (1, 0, 1), (0, 0, 1).
2
0
1
В течение интервала t=2 в элементе (0, 0, 1) вычисляется значение Р×d, которое обозначаем Р.
3
1
3
2
1
0
3
2
1
0
2
Аналогично выбираем элемент (0, 0, 0) для выполнения следующей операции а+Р. Операнд а и идентификатор {+} доставляются соответственно по маршрутам (0, 0, 0), (0, 1, 1), (0, 1, 1), (0, 1, 0) и (0, 0, 0), (1, 0, 0), (1, 0, 1), (1, 0, 0). Результат обозначаем Р.
2
4
0
1
2
3
4
0
1
2
3
4
Для выполнения операции А:=Р задействуем элемент (0, 0, 1). Идентификаторы А и {:=} доставляются по маршрутам (0, 1, 0), (1, 1, 0), (0, 1, 0), (0, 1, 1), (0, 0, 0) и (1, 0, 0), (1, 1, 0), (1, 0, 0), (1, 0, 1), (0, 0, 1).
Процессорный граф, соответствующий изложенным действиям, приведен на фиг. 13.
Из этого процессорного графа, дополненного на фиг. 13 фрагментами пересылки служебных синхронизирующих символов-меток ∅, сформируем программу вычисления фотонной вычислительной машиной значения выражения A=a+(b+c)×d, которое в польской инверсной записи имеет вид Aabc+d×+:=.
0
0
0
0
0
В каждый процессорный элемент 6 в интервал времени t=0 и фаза ϕ=1 поступают символы вычисляемого выражения и служебные синхронизирующие символы-метки ∅, как показано на процессорном графе фиг. 13 и в таблице 8 на фиг. 14. На фиг. 13 для простоты понимания опущены служебные синхронизирующие символы-метки ∅, поступающие в элементы (0, 1, 1), (1, 0, 1), (1, 1, 0) и (1, 1, 1), а также их последующие передачи; они идентичны показанным для элемента (0, 0, 0).
0
1
В каждом интервале t, включая t=0, используется одинаковый механизм коммутации, определенный бесконфликтными маршрутами (см. фиг. 3). В частности, в элемент (0, 0, 0) при t=0 и ϕ=1 по каналу 8, соединенному с устройством 9 ввода/вывода, поступает символ-метка ∅; в таблице 8 он помечен , где знак под символом ∅ (над значением t) означает знак маршрута, 0 - значение временного интервала (такта) t.
0
1
3
0
2
3
0
1
2
0
В течение фазы 2 с символом ∅ ничего не происходит, это обозначено в таблице 8 прочерком (-). После того как по каждому каналу процессорного элемента 6 (0, 0, 0) в течение фазы ϕ=1 поступили символы-метки ∅ с значением t=0, выполняется фаза 2 и затем фаза 3, а именно символ-метка ∅ из 7 согласно бесконфликтному маршруту передается в 7 элемента (0, 0, 0); это отмечено в таблице 8 записью . Аналогично символы- метки ∅ передаются из 7 и 7 элемента (0, 0, 0) в 7 и 7 элемента (0, 0, 0)соответственно; это обозначено в таблице 8 записью  и .
0
1
2
3
3
1
2
0
Одновременно другие процессорные элементы 6 выполняют идентичные действия применительно к поступающим на их входы символам. В частности, на интервале t=0 при ϕ=0 в элемент (0, 0, 1) по входным каналам 8, 8, 8 поступают символы {×}, b, d; это обозначено в таблице 8 записью . При t=0 и ϕ=3 эти символы передаются далее по каналам 7, 7 и 7 элемента (0, 0, 1), соответствующая запись в таблице 8 имеет вид.
1
1
2
3
0
0
1
2
3
Далее на интервале t=1 в элемент (0, 0, 0) при ϕ=1 поступают по каналам 7, 7, 7 значения символов b, с и {+}; запись в таблице 8 при t=1, ϕ=1 имеет вид . Затем после поступления значений этих символов выполняется операция сложения b+с; запись в таблице 8 при t=1 и ϕ=2 имеет вид + bcР, где Р - результат операции. Он заносится в регистр канала 7, в 7 и 7 заносятся символы-метки ∅. Запись в таблице 8 на фиг. 14 при t=1 и ϕ=3 имеет вид .
Изложенная последовательность действий выполняется всеми оптическими (фотонными) процессорными элементами 6 в течение всего вычислительного процесса. Эти действия определены полученным процессорным графом фиг. 13 и представлены таблицей 8 на фиг. 14.
Запись последовательности действий, предписываемых каждому процессорному элементу, является программой этого элемента в соответствии с программой, которой оснащено устройство 10 преобразования вычислительного задания в программу для ФВМ. Она поступает в элемент 6 через каналы 8, соединяющие его с устройством 9 ввода/вывода в заданные значением t временные интервалы и определяет на каждом интервале выполняемые им действия.
Результаты операций, а также операнды, идентификаторы операций и символы-метки ∅ «прикрепляются» к значениям t, циркулирующим только по бесконфликтным маршрутам. Значения t увеличиваются на единицу в каждом транзитном процессорном элементе; в этом отличие от остальных символов, которые могут взаимодействовать при выполнении команды, менять маршрут и в течение нескольких интервалов не покидать процессорный элемент.
0
1
1
1
0
0
0
0
0
1
2
2
Например, в начальный момент символы-метки ∅ заносятся из устройства 9 ввода/вывода в элемент (0, 0, 0), далее, как показано на фиг. 13, они пересылаются в (0, 0, 1), (0, 1, 0), (1, 0, 0). Аналогично поступают и рассылаются символы ∅ из векторов (0, 1, 1), (1, 0, 1), (1, 1, 0) и (1, 1, 1). На фиг. 13 пересылки символов-меток ∅ показаны пунктиром. Чтобы не усложнять иллюстрацию, они приведены лишь для (0, 0, 0), (0, 0, 0), (0, 1, 0) и (1, 0, 0).
1
1
0
2
2
2
2
1
В частности, в (0, 0, 0) поступают операнды b, с и идентификатор операции {+}. Передаются из (0, 0, 0) значение Р (вычисляемое в результате выполнения операции bс+), направляемое в (0, 0, 1), и символы-метки ∅, направляемые в (0, 1, 0), (1, 0, 0). В свою очередь, в (0, 1, 0) транзитные передачи операндов а и А будут выполняться лишь при условии поступления символа-метки ∅ с t=2 из (0, 0, 0).
Для трансляции программ фотонной вычислительной машины, записанных на языках высокого уровня, и получения их «машинного» представления могут быть использованы все известные средства, позволяющие оптимизировать трансляцию и порождаемый в результате ее выполнения машинный код.
3
Физические параметры заявляемой ФВМ с топологией Г, представленной на фиг. 3, использующей арифметические, логические и управляющие устройства процессорных элементов из оптических регистров, оптических преобразователей информации и оптических ячеек памяти, изложенных в Б.В. Шевкопляс «Элементы схемотехнических оптоволоконных систем. Инженерные решения» М.: - Радиософт, 2012 г. - 760 с., с. 153-163, которые реализованы из пассивных оптических логических элементов, изготовленных согласно технологии интегральной оптики Андрушко Л.М., Вознесенский В.А., Каток В.Б. и др.; «Справочник по волоконно-оптическим линиям связи». Киев, Техника, 1988 г. - 239 с., с. 95-105, с. 167-179, будут следующими.
Σ
Полагаем, что в ФВМ задействован источник 11 лазерного излучения мощностью Р=100 Вт и длиной волны λ=1530 нм.
1
1
4
Это излучение по сигналу из устройства 10, подаваемому по электронному двунаправленному каналу связи 12, поступает по оптическому двунаправленному каначу связи 13 в устройство ввода/вывода 9 и после взаимодействия с электронной формой представления информации, поступающей по электронному каналу 14 из устройства 10, распределяется по оптическим каналам 8 между восьмью процессорными элементами 6, каждый из которых содержит  входных оптических логических элементов, соединяющих каналы 8 и процессорные элементы 6. Здесь Р - мощность излучения, поступающая во входные волноводы оптических логических элементов, соединяющих каналы 8 и процессорные элементы 6. Полагаем, что Р=1 мВт - значение мощности типичного светодиода (Вербовецкий А.А. Основы проектирования оптоэлектронных систем связи. М., - Радио и связь, 2000 г., с. 58). Получаем ω≈10 - количество входных оптических логических элементов в каждом процессорном элементе 6. Каждый входной оптический логический элемент соединяется с другими оптическими логическими элементами в последовательно-параллельные структуры, образующие в совокупности АЛУ 1, УУ 2 и 17, КМ 4, каналы 7, 5, 15 и 18.
1
Известно - минимальная оптическая мощность на входе оптического приемника составляет около (- 40 дБ) (там же, с. 85). Это эквивалентно мощности на выходе процессорного элемента 6 не менее 100 нВт при мощности на входе Р=1 мВт. Общий бюджет оптической мощности процессорного элемента составляет ω⋅40 дБ.
При вводе излучения в волновод оптического логического элемента, по которому распространяется свет в элементе с эффективностью более 90% (Никаноров Н.В., Шандаров С.М. Волноводная фотоника ИТМО Санкт-Петербург, 2008 г., с. 20), на выполнение операций в процессорном элементе 6 остается не менее ω⋅35 дБ.
Удельные потери в волноводах оптического логического элемента составят Δ=0,1-1,0 дБ/см (там же, с. 20), при этом L - суммарная длина волноводов оптических логических элементов процессорного элемента не должна превышать ω⋅L=ω⋅(0,35-3,5) м.
-6
-5
-6
-6
Полагаем, что длина волновода оптического логического элемента D=50⋅λ=75⋅10 м, для l=10, m=1, имеем h=11⋅10 м и B=5,5⋅10 м; эти технологические размеры освоены промышленностью.
В частности, поперечный минимальный размер волноводов h, освоенный современными технологиями, не превышает 2 мкм (там же, с. 20).
В процессорном элементе можно разместить  логических элементов.
Этого достаточно для реализации арифметико-логических устройств, систем управления и каналов фотонного процессорного элемента.
2
*
Необходимое количество транзисторов в n разрядном умножителе не превышает (23n+5n-58) шт., а длительность выполнения операции умножения составляет t≈41,5⋅n⋅τ, где τ - длительность задержки в одном логическом элементе (Цилькер Б.Я., Орлов С.А. Организация ЭВМ и систем. Спб.: ПИТЕР, 2004 г., с. 365).
5
Полагая, что количество логических элементов совпадает с количеством транзисторов (в действительности для реализации логического элемента & либо ∨ требуется два транзистора: Поспелов Д.А. Логические методы анализа и синтеза схем. М., - «Энергия», 1974 г., с. 270), находим «с запасом», что реализация 64-разрядного устройства умножения потребует не более 10 логических элементов. Аппаратные затраты на операционные устройства управления не превышают аппаратные затраты на арифметические устройства (Цилькер Б.Я., Орлов С.А. Организация ЭВМ и систем. Спб.: ПИТЕР, 2004 г., с. 332). Получаем, что в составе фотонного процессорного элемента могут быть задействованы Q≈230-2300 арифметических устройств, выполняющих операции одновременно.
-6
12
τ
Длительность задержки в одном оптическом логическом элементе определяется длительностью, требуемой свету для преодоления расстояния D=75⋅10 м. Эта величина в рассматриваемом примере осуществления составит . Значение τ определяет частоту , с которой функционируют оптические логические элементы, здесь f=2,6⋅10 Гц. Полагаем, что информация подается импульсами длиной I=D≈50λ.
*
Σ
-14
-9
9
11
12
Вся операция умножения займет t=41,5⋅64⋅37,5⋅10=0,99⋅10 с. Производительность одного арифметического устройства составит около π=10 оп/с (операций умножения 64-разрядных чисел). Производительность процессорного элемента - в нем не менее Q=230-2300 арифметико-логических устройств - π=2,3⋅10-2,3⋅10 оп/с.
3
12
13
Σ
В рассматриваемом примере ФВМ содержит 2 процессорных элементов. Суммарная производительность ФВМ составляет π=2⋅10-2⋅10 оп/с.
Полученные оценки являются «нижней» границей. Они могут быть улучшены архитектурными средствами - например конвейеризацией (там же, с. 413). В предельном случае результат получается каждый такт, то есть каждый интервал длительностью τ, требуемый свету для преодоления расстояния D. В этом варианте значение производительности ФВМ обозначим . Для λ=1530 нм и D=50λ получаем .
Σ
Σ
Полученные изложенным методом для различных λ и D значения производительности πи  заявляемой фотонной вычислительной машины, потребляющей мощность P=100 Вт, сведены в таблице 9 фиг. 15.
3
4
Σ
Оценки производительности  и энергоэффективности  заявляемой фотонной вычислительной машины значительно (до 10-10 раз при λ=1530 им и D=50λ) превосходят значения, достигаемые современными ЭВМ  при P=300 Вт (http://www. nextplatform.com./2016/06/20/nvidia-rounds-pascal-tesla-accelerator-lineup/).
8
8
-6
2
-2
2
-1
2
Площадь, требуемая процессорному элементу, в каждом из которых содержится по 4,7⋅10 логических элементов, при использовании варианта технологии с размерами оптического логического элемента D=75 мкм, кремниевой подложке длиной 4,7⋅10⋅75⋅10=352⋅10 м и шириной s≈100 мкм, очевидно s>h и s>2l, составляет 350⋅10м=35⋅10 м.
3
-1
2
2
Для размещения 2 процессорных элементов используется 35⋅10⋅8 м=2,8 м.
-4
-3
3
При толщине подложки, на которую наносится процессорный элемент, 100 мкм, объем процессорных элементов V=2,8⋅10=0,28⋅10 м для λ=1500 нм и D=50λ.
Это приемлемый размер конструктивного элемента, позволяющий отвести 100 Вт тепла посредством обычного воздушного охлаждения.
Таким образом, заявляемая фотонная вычислительная машина обеспечивает использование свойств светового представления информации, что приводит к повышению производительности и улучшению энергоэффективности вычислений.