Код документа: RU2573398C2
ОБЛАСТЬ ТЕХНИКИ, К КОТОРОЙ ОТНОСИТСЯ ИЗОБРЕТЕНИЕ
Изобретение относится к кластерной системе обработки подложки, содержащей множество литографических элементов, каждый из которых выполнен с возможностью независимого экспонирования подложек в соответствии с данными шаблона, и более конкретно к сетевой архитектуре и протоколу для такой кластерной системы обработки подложки.
УРОВЕНЬ ТЕХНИКИ
В полупроводниковой промышленности существует постоянно растущая потребность в производстве структур с высокой точностью и надежностью. В литографических системах эта потребность приводит к чрезвычайно высоким требованиям в отношении количества и скорости производства полупроводниковых пластин. Литографические машины стали более сложными, с многочисленными подсистемами для выполнения различных функций в пределах машины, и со сложным программным обеспечением для управления работой подсистем. Современные литографические машины обычно производят большие количества операций над данными, и управление данными становится все более сложным. Литографические машины могут быть сгруппированы в кластер литографических элементов для обеспечения производства в больших объемах. Передача информации в пределах такого кластера литографических элементов для управления и сбора данных стала проблемой по мере возрастания объема информации, подлежащей передаче, и повышения сложности систем.
Существуют сетевые архитектуры, которые объединяют службы управления и данных в одну сеть и используют технологии, основанные на качестве обслуживания, для установки очередности передачи определенных данных для обеспечения своевременной передачи наиболее важных управляющих данных, но они оказались недостаточными в данной сфере. Настоящее изобретение обеспечивает альтернативное решение для сетевой архитектуры для обеспечения своевременной передачи наиболее важных управляющих данных и сбора больших объемов данных для кластера литографических элементов.
РАСКРЫТИЕ ИЗОБРЕТЕНИЯ
Желательно объединить множество литографических машин в кластер, причем службы управления и данных будут встроены в сетевую архитектуру и протокол кластера. В одном аспекте изобретение обеспечивает объединенную в кластеры систему обработки подложки, содержащую один или более литографических элементов, причем каждый литографический элемент выполнен с возможностью независимого экспонирования подложек в соответствии с данными шаблона. Каждый литографический элемент содержит множество подсистем литографии (литографических подсистем), управляющую сеть, выполненную с возможностью передачи управляющей информации между подсистемами литографии, и по меньшей мере один блок управления элементом, причем блок управления элементом выполнен с возможностью передачи команд в подсистемы литографии, и подсистемы литографии выполнены с возможностью передачи ответов в блок управления элементом. Каждый литографический элемент также содержит средство внешней связи кластера для взаимодействия с оператором или основной системой, причем средство внешней связи выполнено с возможностью выдачи управляющей информации по меньшей мере одному блоку управления элементом для управления работой одной или более подсистем литографии для экспонирования одной или более полупроводниковых пластин. Средство внешней связи выполнено с возможностью выдачи программы процесса блоку управления элементом, причем программа процесса содержит набор заданных команд и ассоциированных параметров, причем каждая команда соответствует заданному действию или последовательности действий, подлежащих выполнению одной или более из подсистем литографии, и параметры дополнительно определяют, как следует выполнить действие или последовательность действий.
Блок управления элементом может быть выполнен с возможностью планирования программы процесса для формирования соответствующей задачи процесса для выполнения подсистемами литографии, причем задача процесса содержит набор команд программы процесса и запланированное время выполнения для каждой из команд. Задача процесса может быть полностью запланирована до начала выполнения задачи процесса. Это обеспечивает известный и фиксированный период времени для выполнения всей задачи процесса до того, как оно начинается. Запланированное время начала (и время завершения) для каждого этапа и для всего процесса могут быть сообщены в средство внешней связи кластера. Это значительно упрощает планирование операций в пределах производственной линии, такое как, например, планирование времени, когда подложки должны быть поданы в литографический элемент и когда ожидается завершение экспонирования подложки в литографическом элементе, что способствует планированию системы транспортировки, которая передает подложки в литографический элемент и из него.
Блок управления элементом может быть выполнен с возможностью формирования задачи процесса, содержащей набор команд программы процесса и формирования для каждой из команд идентификатора подсистемы литографии, для которой запланировано выполнение команды. Блок управления элементом может быть выполнен с возможностью выполнения задачи процесса путем передачи каждой из команд задачи процесса в идентифицированную подсистему литографии в запланированное время выполнения для каждой из команд. Блок управления элементом может быть выполнен с возможностью передачи каждой из команд задачи процесса в идентифицированную подсистему литографии в запланированное время выполнения для каждой из команд безотносительно к состоянию выполнения предыдущей команды задачи процесса. Время выполнения команд задачи процесса не зависит от результатов предыдущего или параллельного этапа, но они выполняются в соответствии с заданным временным планом. Если этап не завершен правильно или в пределах запланированного времени, он не будет выполнен снова, но вместо этого будет выполнен следующий запланированный этап.
Программа процесса может устанавливать заданный период времени для соответствующей команды, и блок управления элементом может быть выполнен с возможностью планирования программы процесса для формирования задачи процесса для выполнения подсистемами литографии, причем задача процесса содержит запланированное время выполнения для каждой команды, причем заданный период времени используется для определения запланированного времени для соответствующей команды в задаче процесса.
Программа процесса может устанавливать первый заданный период времени для соответствующей первой команды, и блок управления элементом может быть выполнен с возможностью задержки инициирования следующей команды, следующей за первой командой, до истечения периода времени и безотносительно к состоянию выполнения первой команды. Запланированное хронирование выполнения команд задачи процесса не зависит от обратной связи от подсистем в отношении успешного завершения или даже неуспешного выполнения команды от предыдущего этапа. Если подсистема сообщает, что выполнение команды завершено, блок управления элементом выполнен с возможностью ожидания наступления запланированного времени выполнения для следующей команды перед выполнением следующей команды. Если подсистема сообщает о неудаче или ошибке при выполнении команды, блок управления элементом ожидает запланированного времени выполнения для следующей команды и затем приступит к выполнению следующей команды. Любое изменение в хронировании выполнения команды программы процесса учитывается в планировании задачи процесса, и поэтому запланированное время для выполнения команды является большим, чем наибольшее ожидаемое время выполнения. Временной план обычно устанавливается в задаче процесса.
Блок управления элементом может быть выполнен с возможностью инициирования действия или последовательности действий для одной или более подсистем литографии путем отправки одного или более параметров для действия или действий в подсистему по управляющей сети, и последующей отправки команды, соответствующей действию или действиям, в подсистему. Блок управления элементом может быть выполнен с возможностью отправки одного или более параметров в подсистему ранее запланированного времени выполнения команды на некоторый период времени, причем период времени является достаточным для гарантирования того, что подсистема приняла один или более параметров перед тем, как команда будет отправлена в подсистему. Один или более параметров могут быть переданы в одном или более сообщений таким образом, что любое сообщение будет ограничено в размере. Параметры могут содержать значительный объем данных, так что более крупные сообщения, содержащие один или более параметров, отправляют заранее, когда хронирование передачи в подсистемы не является важным. Сообщение гораздо меньшего размера, содержащее лишь команду (без ассоциированных параметров) может быть отправлено во время, запланированное для выполнения команды. Эти меры обеспечивают распределение нагрузки на сеть и исключают перегрузку при отправке команды, чтобы сократить время передачи и повысить своевременность и надежность передачи команды.
При завершении действия или последовательности действий, соответствующих команде, выданной блоком управления элементом, подсистема литографии, которая завершила действие или последовательность действий, может быть выполнена с возможностью уведомления блока управления элементом о завершении, и при приеме инструкции от блока управления элементом - выдачи данных, относящихся к выполнению действия или последовательности действий. Когда блок управления элементом принимает уведомление от подсистемы о завершении действия или последовательности действий, блок управления элементом может отправить в подсистему запрос передачи данных, относящихся к выполнению действия или последовательности действий. Это распределяет нагрузку на сеть и исключает перегрузку при отправке уведомления о завершении, чтобы сократить время передачи и повысить своевременность и надежность передачи, и тогда данные могут быть получены, когда хронирование не является важным.
Программа процесса может быть запрограммирована таким образом, что она не включает в себя какие-либо условные этапы. Программа процесса может включать в себя условные этапы, запрограммированные в виде альтернативных команд, причем альтернативные команды параллельно запланированы в задаче процесса, и каждой из них назначено одно и то же время выполнения таким образом, что время выполнения задачи процесса в целом не изменяется в зависимости от того, какая альтернативная команда выбрана для выполнения.
Подсистемы литографии могут быть выполнены с возможностью передачи подтверждения в блок управления элементом для подтверждения приема команды от блока управления элементом. Подтверждение может быть использовано блоком управления элементом для обнаружения, когда подсистема прекращает отвечать ожидаемым образом. Подтверждение может быть выполнено с возможностью не содержать какую-либо другую информацию кроме подтверждения того, что подсистема приняла соответствующую команду и по-прежнему функционирует, идентификатора подсистемы, отправившей подтверждение, и временной отметки. Подсистемы могут быть конфигурированы с отсутствием периодов ожидания для выполнения команды задачи процесса. Период ожидания в подсистеме управления элементом может быть установлен на гораздо более длительный период времени, чем время ожидаемого ответа для подтверждения от подсистем. Этот период ожидания является достаточно продолжительным для заключения о том, что подсистема не функционирует, без разумных оснований для сомнения, но является достаточно коротким для обнаружения сбоя до того, как это обычно сделает оператор.
Изменение программного обеспечения в подсистеме для обновления или усовершенствования программного обеспечения выполняется путем выполнения задачи процесса в блоке управления элементом. Такое изменение может включать в себя изменение основного программного обеспечения операционной системы для подсистемы или какого-либо приложения или служебного программного обеспечения подсистемы. Это позволяет использовать один единый способ взаимодействия как для операций литографии, так и для служебных действий, таких как обновление или усовершенствование системного программного обеспечения.
Управляющая сеть может быть выполнена с возможностью обеспечения работы в режиме квазиреального времени без использования протокола связи в режиме реального времени.
Каждый литографический элемент может дополнительно содержать сеть данных, выполненную с возможности передачи информации регистрации данных от подсистем литографии по меньшей мере в один концентратор сети данных, причем подсистемы литографии выполнены с возможностью передачи информации регистрации данных в концентратор сети данных, и концентратор сети данных выполнен с возможностью приема и сохранения информации регистрации данных, и при этом средство внешней связи дополнительно выполнено с возможностью приема по меньшей мере части информации регистрации данных, принимаемой концентратором сети данных. В этой сетевой архитектуре функции управления и данных разделены на отдельные сети. Функции управления требуют двунаправленного потока данных и требуют предсказуемой передачи информации по управляющей сети. Функции сбора данных и управления данными обычно требуют однонаправленного потока от подсистем литографии в восходящем направлении в сети данных к концентратору сети данных и далее в интерфейс кластера, и могут задействовать очень большие объемы данных. Подсистемы литографии могут быть выполнены с возможностью передачи данных в сеть данных с первой скоростью передачи, а концентратор сети данных может быть выполнен с возможностью приема данных из сети данных со второй скоростью передачи, причем вторая скорость передачи значительно выше первой скорости передачи.
Управляющая сеть может использовать протокол передачи потока байтов в соединении TCP. Блок управления элементом и подсистемы литографии могут быть выполнены с возможностью передачи последовательностей сообщений в управляющей сети, и при этом первое сообщение последовательности сообщений содержит два элемента, причем первый элемент содержит строку с типом сообщения и второй элемент содержит справочник с поименованными аргументами для сообщения. Первое сообщение последовательности сообщений может содержать структуру управляющих данных, кодированную посредством объектной нотации JavaScript (JSON). Второе сообщение последовательности сообщений может содержать одно или более кодированных сообщений данных, причем кодирование сообщений данных не является заданным или ограниченным протоколом управляющей сети. Эта схема смешения произвольных сообщений с управляющими сообщениями позволяет формировать команды и выдачи данных задачи процесса непосредственно в формате данных, который понятен оператору, и обеспечивает возможность передачи таких сообщений без дополнительного кодирования.
Управляющая сеть может также включать в себя контроллер, выполненный с возможностью обеспечения отсутствия одновременного выполнения множества передач данных в управляющей сети.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
Теперь будут лишь в качестве примера описаны варианты выполнения изобретения с обращением к сопровождающим схематичным чертежам, на которых:
Фиг. 1 - принципиальная схема варианта выполнения сетевой архитектуры для литографической системы согласно изобретению;
Фиг. 2 - принципиальная схема варианта выполнения сетевой архитектуры для литографической системы, содержащей кластер литографических элементов;
Фиг. 3 - схема конфигурации кластер литографических элементов;
Фиг. 4 - упрощенная схема электронно-лучевой колонны литографического элемента на основе заряженных частиц;
Фиг. 5 - принципиальная схема протокола блока управления элементом в многоуровневой модели OSI для литографического инструмента согласно варианту выполнения изобретения;
Фиг. 6A - принципиальная схема последовательности соединения согласно варианту выполнения изобретения;
Фиг. 6B - принципиальная схема последовательности повторного соединения согласно варианту выполнения изобретения;
Фиг. 6C - принципиальная схема последовательности выполнения команды согласно варианту выполнения изобретения;
Фиг. 6D - принципиальная схема последовательности отмены согласно варианту выполнения изобретения;
Фиг. 6E - принципиальная схема последовательности отмены с условием состязания согласно варианту выполнения изобретения;
Фиг. 6F - принципиальная схема последовательности исключения во время общей команды согласно варианту выполнения изобретения;
Фиг. 6G - принципиальная схема спонтанного исключения согласно варианту выполнения изобретения; и
Фиг. 6H - принципиальная схема исключения во время команды выполнения согласно варианту выполнения изобретения.
ОСУЩЕСТВЛЕНИЕ ИЗОБРЕТЕНИЯ
Ниже описаны определенные варианты выполнения изобретения, приведенные лишь в качестве примера и с обращением к чертежам.
Фиг. 1 представляет собой принципиальную схему одного варианта выполнения литографической системы 1 с интерфейсами управления и данных согласно изобретению. На схеме показана иерархическая конфигурация с тремя интерфейсами - интерфейсом 3 кластера, интерфейсом 5 элемента кластера и интерфейсами 7 подсистем литографии. На Фиг. 1 проиллюстрирована конфигурация с кластером литографической системы, содержащей один литографический элемент 10, который содержит множество подсистем 16 литографии. Литографическая система может содержать множество литографических элементов 10, например как в варианте выполнения по Фиг. 2.
Интерфейс 3 кластера содержит интерфейсы для связи между средством 6 внешней связи литографического кластера и одной или более основными системами 2, и/или между средством 6 внешней связи кластера и одной или более консолями 4 оператора.
Интерфейс 5 элемента кластера содержит интерфейсы для связи между средством 6 внешней связи кластера и сетью литографических элементов, содержащей блок 12 управления элементом и/или концентратор 14 сети данных. Блок 12 управления элементом может осуществлять связь с концентратором 14 сети данных по соединению 106, причем связь предпочтительно является однонаправленной от блока 12 управления элементом к концентратору 14 сети данных.
Интерфейс 7 подсистемы литографии содержит интерфейсы между блоком 12 управления элементом и подсистемами 16 литографии, и между концентратором 14 сети данных и подсистемами 16 литографии. Подсистемы 16 осуществляют связь с блоком 12 управления элементом по управляющей сети 120, и подсистемы 16 осуществляют связь с концентратором 14 сети данных по сети 140 данных.
Фиг. 2 представляет собой принципиальную схему варианта выполнения литографической системы 1, в котором кластер литографической системы содержит множество литографических элементов 10, причем каждый элемент содержит множество подсистем 16 литографии. Каждый элемент может содержать блок 12 управления элементом и концентратор 14 сети данных, осуществляющий связь с подсистемами 16 литографии в отношении элемента. Каждый элемент может функционировать как самостоятельный литографический элемент, который способен независимо работать для экспонирования полупроводниковых пластин с использованием литографического процесса. В данном варианте выполнения каждый из множества литографических элементов 10 осуществляет связь с одним средством 6 внешней связи, и средство 6 внешней связи осуществляет связь с одной или более главными системами 2 и/или интерфейсами 4 оператора, которые функционируют в отношении всего кластер.
Варианты выполнения по Фиг. 1 и 2 предпочтительно выполнены с возможностью способствования эффективному управлению кластером литографических элементов. Каждый литографический элемент 10 предпочтительно имеет лишь сетевые интерфейсы с управляющей сетью 120 и сетью 140 данных. Исключение к этому правилу конфигурации составляет канал 20 данных, непосредственно соединяющий блок 19 потоковой передачи шаблонов с подсистемой(ами), отвечающей(ими) за модуляцию или переключение пучков заряженных частиц. Данные шаблона исходно подготавливают в системе 18 обработки данных шаблонов и отправляют в блок 19 потоковой передачи шаблонов для преобразования данных и потоковой передачи в подсистемы. Данная конфигурация обусловлена чрезмерно большим объемом данных шаблона, передаваемых в соответствующую(ие) подсистему(ы). Данные шаблона обычно передают путем потоковой передачи в соответствующие подсистемы в растровом формате, поскольку объем данных слишком велик для локального хранения в подсистеме.
Интерфейсы оператора и интерфейсы с основными компьютерами контроля и автоматизации более высокого уровня выполнены не в отдельных литографических элементах, а в средстве 6 внешней связи кластера. Это позволяет разрабатывать такие интерфейсы для кластера без необходимости знания протокола интерфейса с литографическими элементами 10 и без предъявления дополнительных требований и вмешательства в связь по управляющей сети 120 и сети 140 данных.
На Фиг. 3 показан упрощенный вид в плане кластера 1 литографической системы. В данном варианте выполнения кластер содержит группу из десяти литографических элементов 10, размещенных задними сторонами друг к другу в два ряда по пять. В непосредственной близости от кластера 1 отведена производственная площадь под зону 23 обслуживания. Каждый литографический элемент содержит электронно-лучевую колонну, заключенную в отдельную вакуумную камеру, причем одна сторона каждой вакуумной камеры обращена к системе 22 подачи подложки и к зоне 23 обслуживания. Система 22 подачи подложки принимает подложки от системы 24 транспортировки подложек и подает их в литографические элементы 10 для обработки, и принимает обработанные подложки от литографических элементов 10 и подает их в систему 24 транспортировки подложек для передачи к другим системам в производственной линии.
В случае литографического устройства на основе заряженных частиц вакуумная камера предпочтительно окружает источник заряженных частиц и компоненты для формирования множества элементарных лучей заряженных частиц, систему модуляции пучка, переключающую или модулирующую элементарные лучи, проекционную систему для проецирования элементарных лучей на подложку, на которой необходимо сформировать рисунок, и подвижную опору для подложки. Вакуумная камера предпочтительно включает в себя систему загрузочного шлюза для передачи подложек из системы 22 подачи подложек в вакуумную камеру и из нее, а также входной люк, обращенный к зоне 23 обслуживания, который может быть открыт для доступа к электронно-лучевой колонне с целью обслуживания.
Каждый литографический элемент 10 выполняет независимую работу по приему и обработке полупроводниковых пластин. Каждый литографический элемент включает в себя свои собственные обрабатывающие вычислительные системы для обработки данных и работы компонентов и подсистем литографического элемента. Каждая подсистема 16 литографии предпочтительно имеет свою собственную компьютерную систему процессора и памяти для выполнения команд управления работой подсистемы, сбора данных, получаемых при работе подсистемы и осуществления связи с управляющей сетью и сетью данных. Каждый из блока 12 элемента управления и концентратора 14 сети данных предпочтительно содержит свою собственную компьютерную систему процессора и памяти для выполнения своих функций. Компьютерные системы процессора и памяти для блока 12 элемента управления, концентратора 14 сети данных и подсистем 16 литографического элемента 10 могут быть расположены вблизи вакуумной камеры литографического элемента, например в шкафу, установленном над вакуумной камерой, или в основании под вакуумной камерой, или часть их может быть расположена в каждом месте.
Конфигурация литографических элементов в кластере задними сторонами друг к другу обеспечивает систему с ограниченной площадью основания, и размещение компьютерных систем процессора и памяти непосредственно над вакуумными камерами или под ними также уменьшает площадь основания. Производственная площадь в пределах производственной линии очень ценна, и таким образом эффективное использование производственной площади в производственной линии является важным.
На Фиг. 4 показана упрощенная принципиальная схема электронно-лучевой колонны литографического элемента на основе заряженных частиц. Такие литографические системы описаны, например, в патентах США №№ 6,897,458; 6,958,804;, 7,019,908; 7,084,414 и 7,129,502; публикации заявки на патент США № 2007/0064213 и также находящиеся в рассмотрении заявки на патент США №№ 61/031,573; 61/031,594; 61/045,243; 61/055,839; 61/058,596 и 61/101,682, все из которых принадлежат правообладателю настоящего изобретения и все настоящим включены в настоящий документ путем ссылки в полном объеме.
В варианте выполнения, показанном на Фиг. 4, колонна литографического элемента содержит источник 110 электронов, производящий расширяющийся электронный пучок 130, коллимируемый системой 113 коллиматорных линз. Коллимированный электронный пучок падает на апертурную решетку 114a, которая блокирует часть пучка, формируя множество частичных пучков 134, которые проходят через массив 116 конденсаторных линз, который фокусирует частичные пучки. Частичные пучки падают на вторую апертурную решетку 114b, которая формирует множество элементарных лучей 133 из каждого частичного пучка 134. Система формирует очень большое число элементарных лучей 133, предпочтительно от около 10 000 до 1 000 000 элементарных лучей.
Решетка 117 ограничения элементарных лучей, содержащая множество ограничительных электродов, отклоняет выбранные элементарные лучи. Не отклоненные элементарные лучи достигают решетки 118 блокировки пучка и проходят через соответствующее отверстие, в то время как отклоненные элементарные лучи не попадают в соответствующее отверстие и блокируются решеткой блокировки пучка. Таким образом, решетка 117 ограничения элементарных лучей и блокировка 118 пучка вместе функционируют с целью активирования и деактивирования элементарных лучей. Не отклоненные элементарные лучи проходят через решетку 119 блокировки пучка и через решетку 119 отклонения пучка, которая отклоняет элементарные лучи для сканирующего перемещения элементарных лучей по поверхности мишени или подложки 121. Далее элементарные лучи проходят через массивы 120 проецирующих линз и проецируются на подложку 121, которая размещена на подвижной опоре для переноса подложки. В литографических применениях подложка обычно содержит полупроводниковую пластину, снабженную слоем, чувствительным к заряженным частицам или слоем резиста.
Колонна литографического элемента работает в вакуумной среде. Вакуум желателен для удаления частиц, которые могут быть ионизированы пучками заряженных частиц и притянуты к поверхности, могут распасться и отложиться на компонентах машины и могут рассеивать пучки заряженных частиц. Обычно требуется вакуум по меньшей мере в 10-6 бар. Для поддержания вакуумной среды литографическая система на основе заряженных частиц размещена в вакуумной камере. Все основные элементы литографического элемента предпочтительно размещены в общей вакуумной камере, включая источник заряженных частиц, проекционную систему для проецирования элементарных лучей на подложку, и подвижную опору.
ПОДСИСТЕМЫ
В вариантах выполнения по Фиг. 1 и 2 каждый литографический элемент 10 составляет независимо работающий литографический элемент для экспонирования полупроводниковых пластин. Каждый литографический элемент 10 содержит множество подсистем 16, которые работают, выполняя необходимые функции для элемента. Каждая подсистема выполняет конкретную функцию. Типичные подсистемы 16 включают в себя, например, подсистему загрузки полупроводниковых пластин (WLS), подсистему размещения полупроводниковых пластин (WPS), оптическую подсистему облучения (ILO) для формирования элементарных лучей электронов, подсистема потоковой передачи шаблонов (PSS) для потоковой передачи данных переключения пучков в литографический элемент, подсистему переключения пучков (BSS) для активирования и деактивирования элементарных лучей электронов, подсистему проецирующей оптики (POS) для проецирования элементарных лучей на полупроводниковую пластину, подсистему измерения пучков (BMS), метрологическую подсистему (MES) и т.д. Каждый литографический элемент 10 предпочтительно выполнен с возможностью приема полупроводниковых пластин, фиксации каждой полупроводниковой пластины в зажиме и подготовки зафиксированной полупроводниковой пластины к экспонированию, экспонирования зафиксированной полупроводниковой пластины, и снятия фиксации экспонированной полупроводниковой пластины в зажиме и подачи экспонированной полупроводниковой пластины для удаления из элемента.
Каждая подсистема 16 может содержать один или более модулей 17, которые специализированы для конкретных подфункций и предпочтительно выполнены в виде заменяемых компонентов. Модули 17 могут содержать исполнительные устройства 19 и датчики 21, причем исполнительные устройства 19 способны выполнять команду, и датчики 21 способны обнаруживать действия и результаты и выполнять измерения в течение выполнения команды, до и/или после этого. Примеры таких модулей включают в себя опору для перемещения подложки при экспонировании, управляющий компьютер для управления опорой, модуль проецирующих линз, подающий напряжения на массивы линз для проецирования элементарных лучей на подложку, вакуумный насос для формирования вакуума в вакуумной камере и т.п.
Каждая подсистема 16 работает независимо и включает в себя память для хранения инструкций и компьютерный процессор для выполнения инструкций. Память и процессор могут быть реализованы в каждой подсистеме в виде подключаемого клиента (PIC) 15. Надлежащая реализация подсистемы может включать в себя, например, персональный компьютер, работающий под оперативной системой Linux. Подсистемы могут включать в себя жесткий диск или энергонезависимую память для хранения их операционной системы таким образом, что загрузка каждой подсистемы осуществляется с этого диска или из этой памяти. Эти и другие признаки, описываемые ниже, обеспечивают конфигурацию, в которой каждая подсистема представляет собой автономный элемент, который может быть разработан, построен и испытан как независимый элемент без необходимости учета ограничений, налагаемых другими подсистемами. Например, каждая подсистема может быть выполнена с достаточным объемом памяти и производительностью обработки для надлежащего выполнения функций подсистемы в течение ее рабочего цикла без необходимости учета требований в отношении памяти и производительности обработки, выдвигаемых другими подсистемами. Это особенно полезно при разработке и усовершенствовании системы, когда эти требования находятся в состоянии изменения. Недостатки этой конфигурации состоят в том, что повышаются общие требования к объему памяти и производительности обработки, и должна быть реализована избыточность этих компонентов в пределах каждой подсистемы. Однако более важным, чем эти недостатки, является упрощенная конфигурация, которая обеспечивает ускоренную разработку и более простое усовершенствование.
Подсистемы 16 выполнены с возможностью приема команд по управляющей сети 120 и выполнения команд независимо от других подсистем, сообщения о результатах выполнения команд и передачи любых полученных данных о выполнении команд по запросу.
Подсистемы 16 могут быть выполнены в виде автономных элементов, но с возможностью загрузки с центрального диска или памяти, например в концентраторе сети данных. Это уменьшает проблему надежности и издержки на отдельные жесткие диски и энергонезависимую память в каждой подсистеме и обеспечивает возможность более простого усовершенствования программного обеспечения подсистемы путем обновления загрузочного образа для подсистемы в центральном местоположении.
ПРОТОКОЛЫ СВЯЗИ
Подсистемы 16 соединены управляющей сетью с блоком 12 управления элементом, также называемым блоком управления подсистемами обеспечения или SUSC. Блок 12 управления элементом содержит память и компьютерный процессор для управления работой подсистем литографического элемента 10.
Связь 102 между средством 6 внешней связи кластера и SUSC 12 выполнена с возможностью передачи PP в SUSC 12. Может быть использован протокол, основанный на объектной нотации JavaScript (JSON). JSON представляет собой открытый стандарт на основе текста, разработанный для обмена считываемыми человеком данными, используемый для представления простых структур и массивов данных и подходящий для упорядочивания и передачи структурированных данных по сетевому соединению. Доступ к протоколу предпочтительно ограничен пользователями в группе и закрыт для пользователей за пределами чистого помещения. Протокол предпочтительно обеспечивает инструкцию для создания PJ, передачи файла PP и любых ассоциированных параметров, инструктирования SUSC 12 для создания PJ на основании PP. Дополнительные команды могут включать в себя инструкции прерывания и отмены. Связь между SUSC 12 и средством 6 внешней связи кластера может включать в себя сообщения подтверждения, отчеты о ходе работы и сообщения об ошибках и оповещения.
Связь 101 между SUSC 12 и подсистемами 16 литографии по управляющей сети 120 предпочтительно строго управляется с использованием лишь протокола блока управления элементом для обеспечения работы в сети в режиме квазиреального времени. На Фиг. 5 показан один вариант выполнения протокола блока управления элементом в многоуровневой модели OSI (взаимосвязи открытых систем). Протокол блока управления элементом более подробно описан ниже.
Связь 105 между SUSD 14 и средством 6 внешней связи кластера реализована с возможностью получения результатов PJ, отслеживания задач и регистрации данных от SUSD 14. Для этого соединения связи может быть использован гипертекстовый транспортный протокол (HTTP).
Связь 103 между подсистемами 16 литографии и SUSD 14 разработана с возможностью однонаправленного сбора данных из подсистем 16. Данные могут передаваться с использованием различных протоколов, таких как syslog, HDF5, UDP и другие.
Данные большого объема можно отправлять с использованием протокола пользовательских датаграмм (UDP), чтобы отправлять данные без большого объема служебных данных обмена сигналами установления связи, проверки и коррекции ошибок. Благодаря получаемому очень малому объему служебных данных передачи данные можно рассматривать как принимаемые в режиме реального времени.
Иерархический формат данных HDF5 можно использовать для передачи и хранения данных с высокой частотой. HDF5 хорошо приспособлен для хранения и организации больших объемов числовых данных, но обычно не используется в среде UDP. Также могут быть использованы другие форматы данных, такие как CSV или TCP, в частности для низкоуровневых данных (малого объема).
ПРОГРАММА ПРОЦЕССА
Работой литографического элемента 10 управляют с использованием программы 11 процесса (PP), которая содержит последовательность действий, подлежащих выполнению. PP загружают в блок 12 управления элементом, и он планирует и выполняет PP 11 по запросу главной системы 2 или оператора посредством консоли 4 оператора. PP 11 может играть роль набора параметров, например как определено в стандарте SEMI E40. Хотя стандарты SEMI устанавливают многочисленные требования к тому, как необходимо обращаться с наборами параметров, стандарты могут быть противоречивыми, и поэтому предпочтительно избегают использования наборов параметров. Вместо этого используют редактируемые и неотформатированные PP в форме так называемых больших двоичных объектов (BLOB).
PP содержит предварительно планируемую и повторно используемую часть набора инструкций, установок и параметров, которая определяет среду обработки полупроводниковой пластины и которая может подлежать изменениям между операциями или циклами обработки. PP могут разрабатываться проектировщиками литографических инструментов или формироваться технологическими инструментами.
PP могут быть загружены в литографическую систему пользователем. PP используются для создания задач процесса (PJ). Задача процесса (PJ) определяет обработку, которую надлежит применить к полупроводниковой пластине или набору полупроводниковых пластин посредством литографического элемента 10. PJ устанавливает, какую PP следует использовать при обработке определенного набора полупроводниковых пластин, и может включать в себя параметры из PP (и при необходимости от пользователя). PJ представляет собой операцию системы, инициируемую пользователем или главной системой.
PP могут использоваться не только для управления обработкой полупроводниковых пластин, но также и для служебных действий, калибровочных функций, испытания литографических элементов, изменения настроек элементов, обновления или усовершенствования программного обеспечения и т.п. Предпочтительно система не производит никаких действий кроме тех, что предписаны в PP, за исключением определенных разрешенных дополнительных категорий, таких как автоматическое приведение в исходное состояние при включении питания модуля или подсистемы, периодическое и безусловное поведение подсистемы, в той степени, в которой они не влияют на выполнение PJ, а также реакция на неожиданное отключение питания, приведение в действие аварийных схем или EMO.
PP разделена на этапы. Большинство этапов содержит команду и идентифицирует подсистему, которой следует выполнить команду. Этап также может включать в себя параметры, которые следует использовать при выполнении команды, и ограничения параметров. PP также может включать в себя параметры планирования для указания того, когда следует выполнить этап, например следует ли его выполнить параллельно, в последовательности или синхронно.
Для выполнения этапа команды PJ блок 12 управления элементом отправляет команду, указанную в PJ, в подсистему, указанную в соответствующем этапе PJ. Блок 12 управления элементом отслеживает хронирование и принимает результаты из подсистемы. Примеры выполнения конкретных команд приведены на Фиг. 6-13 и описаны ниже.
КОНЦЕПЦИЯ ДОБАВЛЯЕМЫХ КОМАНД
Блок 12 управления элементом (SUSC) преобразует PP (которая представляет собой логический план) в план действий подсистемы. Система может быть выполнена таким образом, что SUSC 12 не обладает заведомо сведениями о том, какие подсистемы 16 установлены, какие существуют команды для подсистем и каковы их свойства. В таком случае эта информация обеспечивается для SUSC 12 подсистемами 16 во время работы при загрузке.
Каждая подсистема 16 может быть выполнена с возможностью сообщения о своем присутствии и своих возможностях в SUSC 12 при включении питания и приведении в исходное состояние. Подсистема устанавливает связь по управляющей сети 120 и сообщает в SUSC 12 свои идентификационные данные и состояние, а также может сообщать о своих возможностях, как, например, о том, какие команды она способна выполнять. SUSC 12 может до или во время выполнения PP 11 выполнять проверку того, сообщила ли каждая подсистема, требуемая для PP, о своем присутствии и состоянии готовности, и может также проверить, сообщила ли каждая подсистема о своей способности выполнить команды, требуемые от подсистемы в PP.
Такое сообщение о себе подсистемами позволяет расширять или усовершенствовать литографическую систему с новой функциональностью, используя лишь локализованные усовершенствования программного обеспечения для подсистем или даже вовсе без усовершенствования программного обеспечения. Например, может быть выполнено усовершенствование программного обеспечения определенной подсистемы 16, чтобы она могла выполнять новую команду. В таком случае в SUSC 12 может быть загружена новая PP 11, которая включает в себя эту новую команду для усовершенствованной подсистемы. При включении питания усовершенствованной подсистемы 16 она осуществляет связь с блоком 12 управления элементом, указывая свои идентификационные данные и состояние, и то, какие команды она способна выполнять, включая новую команду. SUSC 12 планирует PP для формирования PJ, включающей в себя этап, на котором подсистему инструктируют выполнить новую команду. SUSC 12 может выполнить проверку того, что усовершенствованная подсистема сообщила о своей способности выполнить новую команду. Таким образом, это усовершенствование требует лишь усовершенствования соответствующей подсистемы и PP, но не SUSC 12 или какой-либо из других подсистем 16.
УПРАВЛЯЮЩАЯ СЕТЬ
В управляющей сети 120 предпочтительно не используется протокол связи в режиме реального времени, но тем не менее она выполнена с возможностью обеспечения работы в режиме квазиреального времени, обеспечивая связь между подсистемами и SUSC 12, обладающую высокой повторяемостью, например повторяемостью по существу в пределах 1 миллисекунды, для обеспечения выполнения той же работы при тех же условиях, обеспечивающего одни и те же характеристики хронирования.
Такая работа в режиме квазиреального времени в управляющей сети 120 может быть обеспечена путем реализации некоторых или всех из нижеследующих мер.
(a) Литографическая система планирует формирование PJ каждой PP перед началом выполнения PJ, определяя время для начала (и также может быть включено время для завершения) каждого этапа PJ. Запланированное время начала (и время завершения) для каждого этапа и для всей PJ может быть в полной мере определено до инициирования PJ, и эти значения времени могут быть сообщены в средство внешней связи кластера.
(b) PP (и PJ) может быть разработана без условных этапов или действий и без повторных попыток. Этапы PP/PJ описывают последовательность действий, хотя действия в литографическом элементе могут выполняться и параллельно, например команды, которые параллельно выполняются в различных подсистемах. Условный этап или действие могут быть запрограммированы в PP путем установления двух (или более) подлежащих выполнению альтернативных этапов, причем альтернативные этапы размещены в виде параллельных путей. Альтернативные этапы планируются в PJ в виде параллельных путей, каждому из которых назначено одно и то же время выполнения, поэтому время выполнения PJ в целом не изменяется в зависимости от того, какой из альтернативных путей выбран для выполнения в подсистемах.
Время выполнения этапов PJ не зависит от результатов предыдущего или параллельного этапа, но они выполняются согласно заданному плану. Если этап не завершается корректно или в пределах запланированного времени, он не будет выполнен снова (т.е. повторные попытки отсутствуют), но вместо этого будет выполнен следующий запланированный этап.
(c) После планирования каждый этап будет выполнен SUSC 12 в свое заданное запланированное время, предпочтительно с точностью хронирования около 1 миллисекунды. В запланированное время SUSC 12 выполнит надлежащий этап и отправит любую команду для этого этапа в соответствующую подсистему 16 для ее выполнения подсистемой. Запланированное хронирование в SUSC 12 не зависит от обратной связи от подсистем 16 в отношении успешного завершения или даже неуспешного выполнения команды от предыдущего этапа. Если для этапа установлен период времени выполнения, SUSC 12 ожидает истечения этого периода времени прежде чем перейти к следующему этапу PJ. Если подсистема возвращает результат выполнения команды до истечения этого периода, SUSC 12 тем не менее будет ожидать истечения периода времени перед переходом к следующему этапу. Если подсистема не может вернуть сообщение об ошибке, SUSC 12 тем не менее будет ожидать истечения периода времени и затем перейдет к следующему этапу. Оператор или главная система определит, какое корректирующее действие может быть необходимо, если подсистеме не удается надлежащим образом выполнить команду.
Любое изменение хронирования при выполнении этапа учитывается при планировании, поэтому запланированное время для выполнения этапа имеет большую длительность, чем наибольшее ожидаемое время выполнения. План по времени обычно устанавливается в PP. Момент планирования может быть «как раз вовремя» перед началом выполнения или за некоторое время до выполнения, например во время добавления этапа в очередь на выполнение.
(d) Команды, отправляемые и выполняемые подсистемами 16, описывают выполнение команды с фиксированным максимальным временем. Наибольшее время выполнения представляет собой заданный максимальный период, определяемый подсистемой с учетом ее обстоятельств. Оператор или главная система определят, какое корректирующее действие может быть необходимо, если это время превышено.
(e) При выполнении этапа PJ, в котором содержится команда, подлежащая выполнению подсистемой, и данные, ассоциированные с командой, подлежащие отправке в соответствующую подсистему, данные могут быть переданы в подсистему ранее отправки в подсистему самой команды. Данные передают в одном или более сообщениях таким образом, что любое из сообщений имеет ограниченный размер. Данные отправляют в достаточной степени заблаговременно, чтобы гарантировать, что они будут приняты подсистемой, т.е. время между отправкой данных и отправкой команды является значительно большим, чем ожидаемое время передачи, и подсистема может подтвердить прием данных. Это позволяет отправлять сообщения большего размера, содержащие данные, заблаговременно, когда хронирование не является важным, а значительно меньшее сообщение, содержащее только команду (без ассоциированных данных) может быть отправлено в запланированное время. Эта мера распределяет нагрузку на сеть и исключает перегрузку при отправке команды, сокращая время передачи и повышая своевременность и надежность передачи команды.
(f) Подобным образом, когда подсистема завершает выполнение команды, она может отправить короткое сообщение в SUSC 12, указывающее, что выполнение команды завершено, но удерживает любые данные, полученные при выполнении команды, для получения SUSC 12 в более позднее время. Когда SUSC 12 принимает указание о том, что выполнение команды завершено, он может отправить запрос в подсистему для получения результирующих данных. Это распределяет нагрузку на сеть и исключает перегрузку при отправке указания о том, что команда завершена, сокращая время передачи и повышая своевременность и надежность передачи, и данные могут быть получены позднее, когда хронирование не является важным.
(g) Обмен сообщениями между подсистемами 16 и SUSC 12 включает в себя ответные сообщения для подтверждения приема инструкций от SUSC 12. Ответные сообщения не содержат другой информации кроме подтверждения того, что подсистема приняла соответствующее сообщение от SUSC 12 и по-прежнему функционирует. Это позволяет SUSC 12 обнаруживать, если подсистема перестает отвечать ожидаемым образом, и поэтому об этом можно своевременно сообщить в средство внешней связи. Для сохранения простоты реализации программного обеспечения для системы 16 не предусмотрены периоды ожидания. Общее ожидаемое время ответа для ответных сообщений является обычно коротким, например менее 0,5 мс в обе стороны. Для обнаружения не отвечающей подсистемы 16 SUSC 12 имеет период ожидания, который значительно превышает ожидаемое время ответа, например 30 секунд после ожидаемого времени ответа. Этот период ожидания является достаточно длительным для заключения о том, что подсистема 16 не функционирует, без разумных оснований для сомнения, но достаточно коротким для обнаружения сбоя до того, как это обычно сделает оператор 4, поэтому оператору 4 нет необходимости задаваться вопросом о том, что происходит.
(h) Управляющая сеть 120 включает в себя контроллер протокола, обеспечивающий одну передачу пакета данных, например одну последовательность сообщений, за один раз.
(i) Управляющая сеть использует простой протокол передачи, например протокол побайтовой передачи в соединении TCP. Протоколы передачи, которые являются сложными или которые включают в себя непредсказуемые элементы, исключены. Протокол, используемый в управляющей сети, гарантирует, что одновременно не может произойти множество передач данных, поэтому в сети не происходят непредсказуемые события.
Соединение TCP состоит из двух байтовых потоков, по одному в каждом направлении. Протокол разделяет оба этих потока на дискретные сообщения, причем каждое сообщение является последовательностью 0 или более байтов произвольных данных, которым предшествуют 4 байта, указывающие длину последовательности. Эта длина может быть закодирована в виде беззнакового целого числа, например 32-битного целого числа в порядке сети («от старшего к младшему»), обеспечивая максимальный размер сообщения в (232-1) байт. Этот механизм разделения сообщения может быть реализован посредством «объектов соединения» на языке программирования Python. Путем использования стандартного многопроцессорного пакета соединения Python может самостоятельно обслуживать эту часть протокола. В других программных средах было бы необходимо явным образом реализовать этот аспект. Сообщения могут быть инициированы любой из сторон при условии, что они соответствуют предписанным последовательностям.
Каждое первое сообщение последовательности сообщений может содержать структуру управляющих данных, кодированную посредством объектной нотации JavaScript (JSON). Все сообщения JSON протокола SUSC могут иметь одну и ту же общую структуру: массив из 2 элементов, причем первый содержит строку с типом сообщения а второй - справочник с поименованными аргументами для этого сообщения, например [“
В некоторых последовательностях сообщений, например в тех, которые используются для передачи элементов ввода и вывода команд интерфейса, за этим управляющим сообщением непосредственно следует несколько сообщений данных, например одно сообщение данных на элемент ввода/вывода. Протокол не делает предположений о кодировании, используемом в этих сообщениях, вместо этого их интерпретация описана в документе спецификации, описывающем команды для подсистем, данные и поведение подсистем, например «список из кортежей из 2 элементов данных класса float, кодированный модулем pickle», или «построение кривой давления в виде изображения/pgn».
Эта схема смешения произвольных сообщений с управляющими сообщениями JSON позволяет формировать данные вывода задачи процесса посредством подключаемого программного обеспечения непосредственно в формате данных, который понятен оператору, таком как CSV, PDF, PNG. Это также означает, что передача таких объектов может быть выполнена без дополнительного кодирования или управляющих данных как части потока данных, например с использованием функции sendfile в Linux. Такая свобода также может быть использована для конкретного согласования между подсистемами в отношении кодирования, которое является наиболее подходящим для конкретной функции интерфейса. Однако было бы неразумно, если бы каждая подсистема имела свою собственную последовательность кодирования данных, поэтому, если подсистема не имеет конкретных требований, должна быть выбрана схема по умолчанию для реализации наилучшего баланса требований.
(j) Подсистемы не отвечают за проверку правильности поведения SUSC 12 и обнаружение ошибок протокола SUSC, чтобы упростить конфигурацию PIC 15. Назначение протокола SUSC состоит в выполнении этапов процесса из программ процесса в задачах процесса, создаваемых пользователем. Исключения используются для сообщения пользователю о неожиданном поведении. Помимо ошибок при выполнении команд, разумеется, могут также произойти ошибки, обусловленные несоответствием протоколу SUSC. SUSC 12 отвечает за регистрацию исключений и может закрыть соединение с PIC, когда PIC ведет себя не в соответствии с протоколом SUSC (или вовсе перестал отвечать), но PIC не отвечает за проверку правильности поведения SUSC, чтобы сохранить простоту требований к PIC. Если PIC сталкивается с нарушением протокола, он может отреагировать или не отреагировать на это корректно, и нет требования того, чтобы последующие сообщения были понятными. Если сообщение не может быть обработано, рекомендуется предпринять попытку зарегистрировать какие-либо данные диагностики, зарегистрировать исключение, разъединиться и вновь соединиться. Это является рекомендацией, но не требованием, поскольку невозможно гарантировать или ожидать, что после повторного соединения PIC вновь будет в состоянии, подлежащем использованию (но по меньшей мере он может находиться в более или менее понятном состоянии).
(k) Интерфейсы для операторов и автоматизации более высокого уровня или контрольных компьютерных систем производственной линии устранены из связи по управляющей сети 120. Эти интерфейсы обеспечены в средстве 6 внешней связи кластер, поэтому они не вызывают перегрузку управляющей сети 120 и не влияют на хронирование связи с подсистемами 16.
(l) Сбор данных полностью отделен от передачи управляющих данных в управляющей сети 120 в отдельную сеть 140 данных. Это разделение функций более подробно описано ниже.
ЧАСЫ СИНХРОНИЗАЦИИ
Литографическая система предусматривает сигнал синхронизации в управляющей сети, позволяющий синхронизировать действия в пределах системы и выполняемые подсистемами. Система может предусматривать два сигнала синхронизации с двумя различными частотами для обеспечения часов для подсистем с различными уровнями точности хронирования, например один сигнал синхронизации с миллисекундной точностью и один - с наносекундной точностью. Например, подсистеме потоковой передачи шаблонов для потоковой передачи данных переключения пучков и подсистеме переключения пучков для активирования и деактивирования элементарных лучей электронов необходимо обмениваться данными с очень высокой частотой для обеспечения высокочастотного переключения элементарных лучей, а подсистеме измерения пучка необходимо отправлять измерения положения пучка с очень высокой частотой. Другие функции, которым необходимы часы с высокой точностью, включают в себя систему размещения подложки и систему проецирующей оптики. В эти подсистемы подаются наносекундные тактовые импульсы, обеспечиваемые подсистемой часов синхронизации, и они способны принимать эти импульсы.
СООБЩЕНИЯ ПРОТОКОЛА УПРАВЛЯЮЩЕЙ СЕТИ
На Фиг. 6A-6H показаны последовательности 30, 40, 50, 70, 80, 90, 100 сообщений, поддерживаемых протоколом. Схемы 30, 40, 50, 70, 80, 90, 100 последовательностей снабжены аннотацией в отношении требуемых значений времени ответа для усредненного случая и для периодов ожидания, которые SUSC 12 будет использовать перед тем, как закрыть соединение. Описываемое хронирование в принципе основано на значениях времени двустороннего обмена сообщениями с участием SUSC 12, SUSD 14 и подсистемы 16.
Протокол SUSC 12 обеспечивает передачу сообщений по соединению TCP. SUSC 12 выступает в роли сервера TCP, а PIC 15 в подсистемах 16 выступают в роли клиентов TCP. PIC устанавливают соединение с SUSC 12 через конкретный порт, и SUSC 12 имеет IP-адрес в управляющей сети 120. Если установление соединения не удается, PIC совершает повторные попытки до тех пор, пока его не удастся установить. На Фиг. 6A показана последовательность 30 соединения, в которой друг с другом соединяются блок 12 управления элементом (SUSC) и PIC в подсистеме 16. Вертикальные линии 27, 29 времени проведены от SUSC 12 и подсистемы 16 для указания хронирования сообщений. В некоторый момент времени последовательность соединения начинается стандартным 3-сторонним обменом сигналами для установления связи по протоколу TCP или соединению 33 TCP для установления соединения на уровне операционной системы. Если соединение 33 TCP установлено, подсистема 16 отправляет сообщение 35 соединения в SUSC 12. SUSC 12 отправляет ответ 37 соединения в пределах периода 31 времени, предпочтительно в 0,5 секунды. Ответ 37 соединения может содержать информацию, относящуюся к местоположению, например временную зону, в которой находится машина. Это может быть использовано для установки временной зоны 39 для SUSC 12. После этого подсистема 16 может выполнять дальнейшую внутреннюю инициализацию 41 подсистемы.
В принципе соединение сохраняют открытым неопределенно долго, т.е. пока одна из сторон не отключится и соединение не будет закрыто. Это закрытие происходит либо посредством явного закрытия программного интерфейса приложением, либо автоматически посредством операционной системы в качестве части ее последовательности выключения. Когда PIC 15 обнаруживает закрытие своего соединения, он совершает попытку повторного соединения, и если повторное соединение не удается, он может повторять попытки до тех пор, пока соединение не будет успешным. Когда SUSC 12 обнаруживает закрытие соединения, оно может сбросить всю информацию соответствующего PIC (такую как зарегистрированные команды или планируемые последующие команды) и считать PIC 15 и соответствующую подсистему 16 отсутствующими до тех пор, пока соединение не будет установлено снова.
В особом случае, если SUSC 12 не обнаружил закрытие соединения и PIC 15 установил двойное соединение, SUSC 12 может считать предыдущее соединение закрытым. Такая ситуация может иметь место, если питание PIC 15 выключают внезапно, что не позволяет его ядру закрыть соединения TCP, и SUSC 12 еще не совершал попыток установления связи с этим PIC.
Такое поведение гарантирует, что любая из сторон может быть перезагружена без необходимости перезагрузки другой стороны. На Фиг. 6B показана последовательность 40 повторного соединения, которая начинается, когда подсистема 16 уже инициализирована, но потеряла соединение с SUSC 12. Именно подсистема 16 отвечает за повторное соединение с SUSC 12. Повторение будет выполнено подсистемой 16 для отправки сообщения 35 соединения в SUSC 12, и при приеме сообщения 35 соединения SUSC 12 отправляет сообщение 37 ответа соединения назад в подсистему 16. В данном случае также используется период 31 времени, предпочтительно в 0,5 секунды. Последовательность 40 повторного соединения будет повторяться до тех пор, пока подсистема 16 не соединится с SUSC 12.
На Фиг. 6C показана последовательность 50 команды выполнения, которая начинается при необходимости с передачи SUSC 12 аргументов ввода с командой 51 установки ('set') в подсистему 16. За командой 51 установки следует N объемов данных 52, отправляемых в подсистему 16. После отправки последних данных 52 подсистема 16 подтверждает прием команды 51 и данных 52 путем отправки ответа 53 установки (setReply) назад в SUSC 12. Любой ответ, отправляемый из подсистемы 16 в SUSC 12, имеет период 55 времени ответа, который предпочтительно содержит менее чем в среднем 0,5 миллисекунды. Ответ 53 установки должен быть отправлен в рамках предела 54 времени ожидания, который предпочтительно содержит 30,0 секунд плюс-минус 1,0 секунды. Если ответ не принят, SUSC 12 будет считать подсистему 16 либо не соединенной, либо дефективной. После того как SUSC 12 отправляет команду 57 выполнения, подсистема 16 предпочтительно выдает подтверждение в течение периода 55 времени ответа посредством ответа 58 executeStarted. После того, как подсистема 16 закончила выполнение, она отправляет executeDone 59 в SUSC 12. Аргументы вывода (если они имеются) получают посредством команды 60 'get', отправляемой SUSC 12. Подсистема 16 выдает подтверждение посредством getReply 61 и после этого отправляет N объемов данных 62 или аргументы вывода.
Аргументы ввода и вывода, которые более не нужны для последующих команд 57 выполнения, удаляют из подсистемы 16 с использованием команды 63 удаления. Подсистема 16 предпочтительно ответит в пределах периода 55 времени ответа сообщением 64 deleteReply. В одной версии протокола вводы и выводы не переносятся из одной команды интерфейса в другую. Подсистема 16 может безопасным образом полагать, что не будет отправлено больше вводов, чем необходимо для следующей команды, и она может безопасным образом предполагать, что все вводы и выводы будут удалены перед отправкой вводов следующих команд.
На Фиг. 6D показана последовательность 70 отмены, которая иллюстрирует порядок событий в случае отмены команды 71 выполнения. Последовательность 70 отмены является в общем такой же, как и обычная последовательность 50 выполнения, со следующими отличиями. SUSC 12 отправляет запрос 71 отмены в период между приемом сообщения 58 executeStarted и сообщения 59 executeDone. Подсистема 16, в свою очередь, отправляет сообщение 72 abortReply. Отправка abortReply 72 в SUSC 12 в качестве ответа на запрос 71 отмены должна быть выполнена в пределах периода времени 74 abortReply, который содержит 90,0 секунд плюс-минус 1,0 секунды, причем 90 секунд содержат 60 секунд для максимального интервала опроса и еще дополнительные 30 секунд. В зависимости от команды, выполняемой в текущий момент, команда выполняется до ее завершения или прерывается перед тем, как команда будет закончена. Если команда не была закончена, может быть зарегистрировано исключение 91. Также могут быть доступны не все аргументы вывода, и пустые аргументы (0 байт) могут быть заменены подсистемой 16. SUSC 12 будет пытаться получить их все. Возможно пересечение сообщения 71 отмены от SUSC 12 и сообщения 59 executeDone от подсистемы 16. В таком случае применима последовательность 80, показанная на Фиг. 6E.
На Фиг. 6E показана последовательность отмены с условием 80 состязания. Условие 81 состязания является условием, которое имеет место, когда два или более сообщений пересекаются. В данном случае сообщение 71 отмены пересекается с сообщением 59 executeDone.
На Фиг. 6F, 6G и 6H показаны три случая последовательности 90 исключения. Сообщения исключения отправляются в SUSC 12 подсистемой 16, когда происходит исключение 90 в форме, например, ошибки или уведомления. Уведомление представляет собой условие, которое должно быть подтверждено пользователем 4.
Исключения 91, которые возникают в контексте выполнения команды интерфейса, могут быть помечены информацией контекста. Для исключени1 91, которые происходят вне контекста такой команды (спонтанные исключения 90) эти поля контекста могут быть оставлены пустыми или может быть приведен наиболее подходящий контекст уже выполненной команды, который имеет отношение к сбою.
В особенности в случае спонтанных исключений 90 следует уделить внимание тому, чтобы не перегрузить пользователя 4 исключениями. Например, если обнаружено ошибочное условие в высокочастотном цикле управления, в идеальной ситуации только одно исключение 91 должно быть зарегистрировано концентратором 14 сети данных для этого условия, и не следует выполнять регистрацию повторно для каждой итерации цикла. Также было бы лучше повторить исключение 91 с низкой частотой (предпочтительно 1 минута), если упомянутое состояние проявляется повторно, или зарегистрировать последующее исключение 91, когда условие изменится или исчезнет (что также является неожиданным и поэтому также может считаться исключением 91).
Исключения 91 предназначены для уведомления оператора 4 о ситуациях ошибок, для руководства оператором 4 при проведении процедуры восстановления и для краткого сообщения о сущности проблемы, например по телефону или в заголовке заявки на устранение неисправности. Поэтому исключения 91 не следует рассматривать в качестве канала информации по отладке для разработчиков модулей. В качестве альтернативы, выводы PJ в читаемых человеком форматах могут быть использованы для информации, которая может отслеживаться или исследоваться в автономном режиме.
Сообщения 91 исключений не прерывают последовательности по протоколу и не являются причиной для прекращения обработки последующих команд. Например, после неудачного выполнения команды интерфейса и регистрации исключения 91 концентратором 14 сети данных может быть отправлено сообщение 59 executeDone, а выводные данные могут быть сделаны доступными для процедуры 'get'. Подсистема 16 должна быть также готова к принятию новых команд интерфейса для восстановления из сложившейся ситуации.
Вставка исключения 91 разрешена в любой момент по протоколу кроме последовательности 61 getReply. Если какие-либо исключения 91 могут быть сформированы параллельным потоком, разработчик PIC 16 может рассмотреть вопрос о выделении специализированного соединения PIC 16 для регистрации таких исключений 91, а не для каких-либо команд. Это эффективным образом исключает подобные помехи.
На Фиг. 6F показано исключение 91, сформированное подсистемой 16 во время выполнения общей команды или любой команды 92 протокола, отправленной из SUSC 12. На Фиг. 6G показано спонтанное исключение 91, и на Фиг. 6H показано исключение 91, отправляемое из подсистемы 16 в SUSC 12 во время выполнения команды 57 выполнения. Во время выполнения любой команды 92 протокола может возникнуть исключение 91. Команду обычно прерывают с соответствующим сообщением ответа. Также возможно, чтобы исключение 91 регистрировалось между командами из SUSC 12, как показано на Фиг. 6G. Например, из периодической проверки или из последовательности инициализации концентратора. Когда исключение 91 отправляют во время выполнения команды 57 выполнения, команды 60 получения и 63 удаления выполняют, как будто исключение 91 не возникало. Однако возможно, что ввиду возникновения исключения 91 некоторые аргументы вывода будут пустыми (0 байтов).
СЕТЬ ДАННЫХ
Подсистемы 16 соединены сетью 140 данных с концентратором 14 сети данных. Сбор данных, их хранение и управление ими выполняют посредством сети 140 данных. Управляющая сеть 120 образует путь управляющей сети между блоком 12 управления элементом и подсистемами 16 литографии. Управляющая сеть 120 и сеть 140 данных являются физически отделенными друг от друга сетями. Каждая сеть имеет свои отдельные физические носители, включая проводные соединения, сетевые компоненты, такие как коммутаторы, и сетевые соединения с подсистемами 16. Таким образом, путь управляющей сети и путь сети данных содержат физически отделенные друг от друга носители и образуют отдельные и независимые пути передачи данных.
Каждая подсистема 16 литографии имеет соединение с управляющей сетью 120, выполненное с возможностью приема и передачи управляющей информации из блока 12 управления элементом и в него по управляющей сети. Каждая подсистема 16 литографии имеет отдельное соединение с сетью 140 данных, выполненное с возможностью передачи информации данных в концентратор 14 сети данных по сети данных.
Сеть 140 данных выполнена с шириной полосы пропускания, значительно большей, чем скорости передачи, используемые подсистемами 16. Например, сеть 140 данных может иметь полосу пропускания в 1 Гбит/с, а подсистемы могут быть выполнены с возможностью передачи с 100 Мбит/с. В сети данных отсутствует контроллер сети или координация передач данных. Обычно в сети 140 данных устанавливается верхний предел обмена данными в 140 Мбит между подсистемами 16 и сетью 140 данных, в то время как для обмена данными между сетью 140 данных и SUSD 14 устанавливается верхний предел в 1 Гбит. В сеть 140 данных включен сетевой коммутатор для объединения трафика, чтобы предотвратить столкновение пакетов (данных).
Концентратор 14 сети данных выполнен с возможностью непрерывной регистрации данных, принимаемых из подсистем 16. Эти данные могут включать в себя данные измерений, полученные подсистемами во время выполнения PJ, установки подсистем и данные для отладки и отслеживания сбоев. Концентратор 14 сети данных предпочтительно всегда регистрирует данные, включая низкоуровневые данные отслеживания, поэтому отсутствует необходимость активирования регистрации данных. Такая постоянная регистрация данных ускоряет диагностику проблем, снижает потребность в повторном запуске и воспроизведении ошибки или проблемы.
Блок 12 управления элементом соединен с концентратором 14 сети данных для отправки информации, относящейся к состоянию выполнения PJ в блоке 12 управления элементом для регистрации концентратором 14 сети данных. Концентратор 14 сети данных непрерывно регистрирует данные, принимаемые из блока 12 управления элементом.
Концентратор 14 сети данных имеет очень большую вместимость средства хранения данных, достаточную для хранения очень больших объемов низкоуровневых данных из всех подсистем 16 в течение длительного периода времени работы, например на уровне месяцев или годов. Данные, сохраняемые концентратором 14 сети данных, организуют и присваивают им метки, предпочтительно временную отметку и идентификатор PJ. Сохраненные данные могут быть получены из концентратора 14 сети данных, проанализированы и отфильтрованы, предпочтительно в автономном режиме.
Отделение сбора данных по сети 140 данных от обмена управляющими данными по управляющей сети 120 обеспечивает возможность сбора больших объемов данных с высокой частотой по сети данных без отрицательного влияния на обмен данными по управляющей сети. Управляющая сеть имеет возможность работать в режиме квазиреального времени за счет сдерживания перегрузки управляющей сети 120 и исключения больших объемов трафика, имеющих место в сети 140 данных. Разделение функций управления данными и хранения в концентраторе 14 сети данных и выполнение PJ в блоке 12 управления элементами обеспечивают возможность обработки больших объемов данных концентратором 14 сети данных без отрицательного влияния на обработку PJ блоком 12 управления элементом. Разделение управления и сбора данных и управления данными обеспечивает возможность упрощения конфигурации без необходимости учета взаимодействия между двумя системами.
Изобретение было описано в отношении конкретных вариантов выполнения, рассмотренных выше. Следует понимать, что эти варианты выполнения подлежат различным изменениям и возможны альтернативные формы, хорошо известные специалистам в данной области техники, не выходящие за рамки сущности и объема изобретения. Соответственно, хотя были описаны конкретные варианты выполнения, они представляют собой лишь примеры и не ограничивают объем изобретения, определяемый приложенной формулой изобретения.
Изобретение относится к кластерной литографической системе обработки подложки. Система содержит один или более литографических элементов, каждый литографический элемент выполнен с возможностью независимого экспонирования подложек в соответствии с данными шаблона. Каждый литографический элемент содержит множество подсистем литографии, управляющую сеть, выполненную с возможностью передачи управляющей информации между подсистемами литографии, и по меньшей мере один блок управления элементом, причем блок управления элементом выполнен с возможностью передачи команд в подсистемы литографии, и подсистемы литографии выполнены с возможностью передачи ответов в блок управления элементом. Каждый литографический элемент также содержит средство внешней связи кластера для взаимодействия с оператором или основной системой, причем средство внешней связи выполнено с возможностью выдачи управляющей информации по меньшей мере одному блоку управления элементом для управления работой одной или более подсистем литографии для экспонирования одной или более полупроводниковых пластин. Средство внешней связи выполнено с возможностью выдачи программы процесса блоку управления элементом, причем программа процесса содержит набор заданных команд и ассоциированных параметров, причем каждая команда соответствует заданному действию или последовательности действий, подлежащих выполнению одной или более из подсистем литографии, и параметры дополнительно определяют, как следует выполнить действие или последовательность действий. Технический результат - упрощение системы управления системой обработки. 14 з.п. ф-лы, 1