Система контроля технологического процесса для лазеров, используемых в литографии
Иллюстрации
Показать всеИзобретение относится к системам контроля и, в частности, к системам контроля работы лазеров. Его использование позволяет получить технический результат в виде создания более совершенной системы контроля лазеров для литографии на предприятиях по производству интегральных микросхем. Технический результат достигается за счет того, что каждый лазер на каждом производственном предприятии связан с соответствующим сервером терминала, при этом на каждом производственном предприятии серверное устройство центрального управления осуществляет обмен информацией с каждым из лазеров через локальную сеть. Сбор информации из лазеров осуществляют посредством серверного устройства центрального управления и используют эту информацию для создания сводной информации, которая является доступной для заинтересованных сторон, которым предоставлено право на доступ в формате Web-узла. 13 з.п. ф-лы, 5 ил., 2 табл.
Реферат
Настоящее изобретение относится к системам контроля и, в частности, к системам контроля работы лазеров.
Предпосылки создания изобретения
Производство интегральных микросхем обычно осуществляют посредством процесса литографии, в котором для создания интегральных микросхем на кремниевых подложках используют устройство совмещения и последовательного шагового мультиплицирования или сканирующее устройство. В современных производственных установках источниками света для указанного процесса литографии являются эксимерные лазеры, большинство из которых представляют собой узкополосные эксимерные лазеры на фториде криптона (KrF), функционирующие на длине волны, приблизительно, 248 нм. В будущем будет обеспечена более высокая разрешающая способность, чем та, которая возможна при использовании светового излучения с длиной волны 248 нм, посредством перехода промышленности на эксимерные лазеры на фториде аргона (ArF), функционирующие на длине волны, приблизительно, 193 нм, и на эксимерные лазеры на фторе (F2), функционирующие на длине волны, приблизительно, 152 нм.
Поскольку технологические линии, в состав которых входят устройства совмещения и последовательного шагового мультиплицирования/сканирующие устройства и связанные с ними источники лазерного излучения, имеют очень высокую стоимость, а производимые ими интегральные микросхемы являются очень дорогостоящими, технологические линии по производству интегральных микросхем обычно работают почти непрерывно, "круглосуточно", 24 часа в день, 7 дней в неделю, 365 дней в году с минимальным возможным временем простоя для их обслуживания. Поэтому при создании и эксплуатационном обслуживании оборудования технологических линий, в том числе, эксимерных лазеров, затрачивают большие усилия для сведения к минимуму времени простоя, в особенности, времени незапланированных простоев. В результате, ожидаемое "время простоя" эксимерных лазеров для литографии является намного меньше, чем 1%.
Кроме того, качество интегральных микросхем, изготовленных на таких технологических линиях, в большой степени зависит от качества лазерного луча, сформированного посредством лазера. Как указано выше, луч обычно имеет суженную линию излучения, и осуществляют тщательное управление энергией каждого импульса. Для каждого импульса обычно осуществляют контроль таких параметров, определяемых техническими требованиями к качеству луча, как длина волны в центре линии излучения, ширина спектра излучения и энергия импульса, а современные лазеры, применяемые в литографии, работают с частотами следования импульсов от 1000 до 2500 импульсов в секунду. Типичный эксимерный лазер на фториде криптона (KrF) может иметь, например, следующие технические условия по качеству луча:
Отклонение длины волны от номинальной (в интервале ("окне") из 30 импульсов)=±0,07 пм (пикометров=10-12 м).
Среднеквадратичное отклонение (сигма) длины волны=±0,06 пм.
Ширина спектра излучения=менее 0,6 пм.
Отклонение суммарной энергии от номинальной (в интервале ("окне") из 30 импульсов)=0,4 процента.
Среднеквадратичное отклонение энергии от номинальной (в интервале ("окне") из 30 импульсов)=12 процентов.
Разброс значений энергии (в интервале ("окне") из 30 импульсов)=7,5 процентов.
Указанные выше технические условия представляют собой примеры стандартов качества, которые используют для определения соответствия лазеров по их рабочим характеристикам, техническим условиям, перед их поставкой с предприятия - изготовителя лазеров.
При работе технологической линии по производству интегральных микросхем осуществляют текущий контроль энергии, длины волны в центре линии излучения и ширины спектра излучения, и энергия и длина волны в центре линии излучения регулируются посредством компьютерных средств автоматического управления с обратной связью. Операторы технологических линий используют различные способы контроля качества лазерного луча и принятия решений в отношении целесообразности выполнения регулировки, технического обслуживания или замены оборудования. Принятие таких решений в случае ухудшения качества луча часто является сложной задачей, поскольку остановка работы поточной линии для ее ремонта обычно обусловлена снижением объема изготавливаемой продукции, что приводит к увеличению себестоимости единичной интегральной микросхемы. С другой стороны, продолжение процесса производства при качестве луча худшем, чем идеальное, приводит к ухудшению качества продукции.
В патенте США №5646954 (который включен сюда путем ссылки) описаны система управления стратегией технического обслуживания и способ контроля из известного уровня техники, обеспечивающие улучшение надежности работы эксимерных лазеров, используемых в литографии в качестве источников светового излучения. В этой системе контроль импульсов лазерного излучения и прогнозирование планируемого технического обслуживания и замены оборудования на основе значений, полученных при эксплуатации, осуществляют посредством микропроцессоров. Лазеры для литографии обычно создают в виде модулей, поэтому при возникновении какой-либо неисправности в модуле можно осуществлять быструю замену всего модуля на запасной модуль. Затем замененный модуль возвращают на предприятие-изготовитель. Содержащиеся в нем детали, пригодные для многократного использования, повторно используют во вновь изготавливаемых модулях. Примерами таких модулей являются, в том числе, модули рабочей камеры, содержащие в себе рабочую камеру лазера и соответствующие узлы, модули стабилизации, содержащие в себе устройство измерения длины волны, посредством которых осуществляют стабилизацию длины волны и энергии импульса лазерного луча, и модуль сужения линии излучения (МСЛИ) (LNM), посредством которого осуществляют сужение ширины спектра лазерного луча и управление длиной волны луча.
Контроль качества лазерного луча очень важен для обеспечения изготовления высококачественных интегральных микросхем. Современные лазеры для литографии, такие как эксимерные лазеры на фториде криптона (KrF), содержат в себе три информационных порта для управляющих данных:
(1) порт устройства совмещения и последовательного шагового мультиплицирования/сканирующего устройства, через который контроллер компьютера устройства совмещения и последовательного шагового мультиплицирования/сканирующего устройства выдает в компьютер лазера команды на инициирование лазера;
(2) последовательный порт для устройства управления лазером, выполненный в виде пульта ручного управления, через который операторы лазера передают в лазер последовательные команды управления параметрами лазера, например заданной длиной волны, энергией импульса, или осуществляют настройку параметров, например, состава смеси газов;
(3) диагностический порт стандарта RS-232, используемый инженерами-наладчиками для сбора данных о параметрах из компьютера лазера.
Типичный текущий процесс сбора и обработки данных, поступающих из лазеров, используемых для литографии, который в настоящее время используют изготовители лазеров, содержит в себе следующие этапы:
а) инженеры-наладчики, являющиеся представителями предприятия-изготовителя лазеров, каждую неделю осуществляют физическую загрузку данных из лазеров, используемых для литографии;
б) указанные данные запоминают в виде простых файлов в формате ASCII (Американского стандартного кода обмена информацией), а затем передают по электронной почте на предприятие-изготовитель лазеров для дополнительной обработки;
в) посредством программы, основанной на обработке данных, переданных по электронной почте, и используемой уже в течение 3 лет, осуществляют синтаксический анализ файлов данных, переданных по электронной почте, и их запоминание в сервере;
г) квалифицированный вспомогательный технический персонал предприятия-изготовителя осуществляет просмотр/обработку этих данных для определения несоответствий;
д) на основании данных из находящейся в сервере базы данных SQL (язык структурированных запросов)-типа пользователь (пользователи) осуществляет формирование специальных запросов для анализа истории;
е) весь процесс требует весьма значительных затрат времени (например, на обработку некоторых запросов затрачивают от 7 до 8 минут).
Поскольку существующий в настоящее время процесс выполняют, по сути, вручную, то он имеет следующие ограничения:
а) для осуществления еженедельной загрузки этих данных инженеры-наладчики должны физически находиться внутри чистых помещений на предприятии по производству интегральных микросхем. Следовательно, этот процесс не может выполняться ежедневно, а его периодичность должна быть согласована с заказчиком инженерами-наладчиками. В настоящее время сбор данных осуществляют еженедельно;
б) полученные данные не являются данными, получаемыми в реальном масштабе времени, и к моменту обработки данные могут быть устаревшими более чем на неделю;
в) отсутствует какое-либо непрерывное оповещение о состоянии;
г) необходимо обеспечивать обучение инженеров-наладчиков по загрузке данных в требуемом формате;
д) отсутствуют какие-либо автоматические предупреждения об опасности для соответствующего персонала;
е) весь процесс имеет некоторую степень неопределенности в отношении эксплуатации этих лазерных установок и обуславливает наличие существенных накладных расходов как для поставщика лазеров, так и для предприятия-производителя.
Необходимо создание более совершенной системы контроля лазеров для литографии.
Сущность изобретения
В настоящем изобретении предложена система контроля лазеров, используемых для литографии на предприятиях по производству интегральных микросхем. Каждый лазер на каждом производственном предприятии связан с ней посредством сервера терминала. На каждом производственном предприятии центральный управляющий сервер осуществляет обмен информацией с каждым из лазеров через локальную сеть. Информацию, поступившую из лазеров, собирают посредством сервера центрального управления, а эту информацию используют для создания сводной информации, которую делают доступной для имеющих право на доступ заинтересованных сторон в формате Web-узла.
Главной функцией настоящего изобретения является процесс сбора данных. Контрольно-измерительные устройства в лазерах осуществляют запись огромного количества данных. Например, для каждого импульса лазера осуществляют контроль энергии импульса, длины волны, ширины спектра излучения и напряжения заряда. Поскольку современный лазер обычно работает на частоте 2000 Гц с рабочим циклом, составляющим, приблизительно, 20 процентов от общего времени работы, то каждую секунду для отображения только этих параметров осуществляют сбор 1600 значений, а поскольку работа является круглосуточной, то объем этих данных равен, приблизительно, 138 миллионам значений первичных данных о лазере в сутки.
Кроме того, в лазере по этим первичным данным осуществляют вычисление других рабочих характеристик. Вычисленные значения содержат в себе значения среднеквадратичного отклонения длины волны и энергии импульса для небольших групп данных. В лазере также осуществляют вычисление значения отклонения суммарной энергии от номинальной для заданных групп импульсов, именуемых интервалами ("окнами") импульсов. Кроме того, очень часто осуществляют контроль и других параметров лазера, а их запись может быть выполнена с желаемой частотой. Этими другими параметрами являются, в том числе, различные значения температуры, давления газа, находящегося в лазере, и скорости вентилятора.
Лазеры для литографии обычно работают в режиме генерации пачек импульсов, в котором осуществляют генерацию коротких пачек импульсов (например, 200 импульсов; (в течение этого времени облучают один небольшой участок красителя на подложке), после чего следует время простоя длительностью в доли секунды, в течение которого устройство совмещения и последовательного шагового мультиплицирования или сканирующее устройство совершает перемещение на другой участок красителя. После осуществления облучения всех участков красителя на подложке, имеется более продолжительное время простоя, равное нескольким секундам, в течение которого осуществляют перемещение новой подложки в надлежащее место. Лазер контролирует эту последовательность импульсов, а имеющаяся система может документально регистрировать каждый импульс из каждой пачки импульсов, а также периоды времени простоя. Кроме того, может быть выполнено вычисление и запоминание любых желательных сводок, собранных данных, отчетов и таблиц, представляющих собой совокупности данных или сравнительные данные, доступ к которым может быть осуществлен практически в реальном масштабе времени.
Эти диаграммы могут содержать в себе:
1) ежемесячные данные о времени безотказной работы (или времени простоя) каждого лазера;
2) продолжительность рабочего цикла каждого лазера в течение времени безотказной работы;
3) суммарный отсчет импульсов для каждой рабочей камеры за период времени, прошедший с последней операции замены рабочей камеры;
4) суммарный отсчет импульсов (или количества дней) для каждого модуля (например, МСЛИ, модуля источника питания, модуля коммутатора, модуля предварительного сжатия, газового модуля) за период времени, прошедший с последней операции замены модуля;
5) контрольные данные о длине волны, значения среднеквадратичного отклонения длины волны от номинальной, средние значения ширины спектра излучения, значения отклонения суммарной энергии от номинальной, значения среднеквадратичного отклонения энергии от номинальной и значения отклонения энергии от номинальной для каждого лазера в течение заданных интервалов времени.
Краткое описание чертежей
На фиг.1 показана схема общей компоновки согласно предпочтительному варианту осуществления настоящего изобретения.
На фиг.2-5 представлены копии компьютерных распечаток, на которых показан общий внешний вид типичных Web-страниц, созданных посредством опытного образца варианта осуществления настоящего изобретения.
Подробное описание предпочтительных вариантов осуществления изобретения
Первый предпочтительный вариант осуществления изобретения
Описание первого предпочтительного варианта осуществления настоящего изобретения может быть выполнено со ссылкой на чертежи. На фиг.1 показана общая схема системы контроля технологического процесса, посредством которой осуществляют текущий контроль лазеров, используемых для литографии на предприятиях по производству интегральных микросхем.
Лазеры
В этом предпочтительном варианте осуществления лазеры 2 представляют собой эксимерные лазеры, количество которых на конкретном комплексном производстве может достигать, приблизительно, 20 лазеров и состоять из совокупности лазеров на фториде криптона (KrF) различных моделей, например лазеров серии "Саймер 5000" (Cymer 5000) и серии "Саймер 6000" (Cymer 6000) фирмы "Саймер Инкорпорейтед" (Cymer, Inc) со штаб-квартирой в г.Сан Диего, штат Калифорния, США. Эти лазеры работают на частотах следования импульсов, приблизительно, 1000 Гц или 2000 Гц и осуществляют генерацию импульсов лазерного излучения с энергией импульса, равной, приблизительно, 10 мДж (миллиджоулей). Они являются источниками ультрафиолетового светового излучения для сканирующих устройств и устройств совмещения и последовательного шагового мультиплицирования, посредством которых создают интегральные микросхемы на кремниевых подложках.
Интерфейс
Для связи между средством управления лазером и аппаратурой контроля, которые изображены на фиг.1, предусмотрен порт 4 стандартного интерфейса последовательной передачи данных (RS-232C).
Сервер терминала
Каждый лазер имеет связанный с ним сервер терминала 6, имеющий уникальный интернет-адрес. В предпочтительном варианте осуществления сервер терминала 6 представляет собой стандартный сервер модели LE 995A-R3 фирмы "Блэкбокс Инкорпорейтед" [Blackbox, Inc).
Сервер центрального управления производственным предприятием
В этом предпочтительном варианте осуществления изобретения обслуживание каждого предприятия по производству интегральных микросхем, образующего собой часть системы, осуществляют посредством одного сервера 8 центрального управления производственным предприятием. Как показано на фиг.1, сервер 8 осуществляет обмен информацией с каждым лазером 2 через локальную сеть 7 (ЛС) производственного предприятия. В предпочтительном варианте сервер должен удовлетворять следующим минимальным требованиям:
процессор: "Пентиум" (Pentium) с частотой 700 МГц или выше, двухпроцессорная система;
емкость оперативного запоминающего устройства (ОЗУ): 2 гигабайта;
емкость накопителя на жестких дисках: 400 гигабайт;
наличие источника бесперебойного питания (ИБП) (UPS);
наличие резервного накопителя на магнитной ленте емкостью 400 гигабайт;
Предпочтительным вариантом сервера, который удовлетворяет этим требованиям, является сервер "Хьюлетт-Паккард" серии "HP LH 6000" фирмы "Хьюлетт-Паккард" (Hewlett-Packard).
Вышеуказанная система будет достаточна для обеспечения работы производственного предприятия, на котором:
а) максимальный срок хранения данных равен 6 месяцам;
б) количество лазеров менее или равно 20.
Интернет
Как показано на фиг.1, в этом предпочтительном варианте компоновки между внутренней сетью связи производственного предприятия и внешним миром владельцами производственного предприятия установлен брандмауэр (аппаратно-программное средство межсетевой защиты) 12, предотвращающий несанкционированный доступ к информации через локальную сеть предприятия. Предприятию-изготовителю лазеров, которое в этом случае является ответственным за обеспечение соответствия лазеров 2 согласованным стандартам, устанавливающим требования к рабочим характеристикам, а также имеет договорные обязательства относительно рабочих характеристик лазеров, разрешен ограниченный доступ к информации, собранной системой текущего контроля на производственном предприятии. Этот ограниченный доступ предоставляют (по согласованию между предприятием-изготовителем лазеров и владельцем производственного предприятия) через сеть Интернет. Однако брандмауэры имеют оба предприятия, при этом номером 12 обозначен брандмауэр производственного предприятия, а номером 11 обозначен брандмауэр предприятия-изготовителя.
Таким образом, в наиболее предпочтительном варианте осуществления предприятием-изготовителем может быть выполнено запоминание некоторых (предварительно согласованных) типов данных в сервере 8 в формате Web-узла и их загрузка через Интернет-сервер 16 предприятия-изготовителя в любой из нескольких центральных процессоров (не показаны), имеющихся в аппаратуре предприятия-изготовителя.
Программы управления и контроля
В этом предпочтительном варианте осуществления в сервере 8 центрального управления используют следующие серийно выпускаемые пакеты программ:
а) Операционная система - "Linux 6.2" версия "Делюкс" (Deluxe) с X11R6;
б) Запоминание и поиск в базе данных - система управления базами данных "Oracle 81", стандартная версия;
в) Web-сервер - программа "Томкэт" (Tomcat), версия 3.1.
Программирование
В этом варианте применения для программирования операционной системы 8 типа "Linux" используют программу "Linux CVS/RCS". Для создания библиотек программ используют комплект инструментальных средств GNU, что позволяет реализовать модульность различных программ. Библиотеки программ содержат в себе совместно используемые библиотеки, статические библиотеки и динамически загружаемые библиотеки.
Компьютерная программа для центрального управляющего устройства
В предпочтительном варианте программное обеспечение для операционной системы 8 создают в виде модулей. Имеются четыре основных программных модуля: модуль сбора данных, модуль синтаксического анализатора, модуль базы данных и модуль интерфейса пользователя.
Модуль сбора данных
Модуль сбора данных состоит из набора программ, выполняющих задачу сбора данных из лазеров 2 и передачи данных в модуль синтаксического анализатора для дополнительной обработки. Как показано на фиг.1, передачу данных осуществляют через сервер терминала 6 и через стандартный интерфейс 4 последовательной передачи данных (RS-232C).
Модуль сбора данных содержит в себе следующие программные компоненты:
- считывание из лазера и запись в него;
- ввод команд в лазеры;
- очередь вводимых команд;
- считывание данных из лазеров;
- главный планировщик;
- интерфейс синтаксического анализатора;
- очередь на выполнение записи в базу данных;
- файлы регистрации ошибок системы и фоновая программа (демон) определения ошибок.
Считывание из лазера и запись в него
Первый модуль состоит из программ считывания и записи по двунаправленному каналу связи через разъемы. Программа записи осуществляет ввод команд в лазер. Программа считывания осуществляет сбор ответных сигналов и данных из лазера. Модуль главного планировщика периодически осуществляет вызов программы записи через определенные промежутки времени, структура распределения которых может быть перестроена. Вызов программы считывания осуществляют в зависимости от готовности ответных данных, поступающих из устройства. Каждая операция записи инициирует поступление ответных данных из устройства. Попытку последующей операции записи в одно и то же устройство нельзя предпринимать до тех пор, пока не будет успешно осуществлен сбор данных или не истечет время ожидания для операции считывания.
Ввод команд в устройство
Обмен данными между сервером с операционной системой "Linux" и сервером терминала осуществляют путем подключения через разъемы. Управление вводом команд через разъем осуществляют посредством главного планировщика.
Ниже приведен перечень предпочтительных команд, подаваемых в устройство:
"Получить данные о конфигурации".
В системе управления лазерами используют изменяемую конфигурацию данных для настройки функционирования системы. Данные о конфигурации содержат в себе, например, данные о количестве газа при операции заправки, о сроке службы многих узлов лазера, серийный номер лазера и многие другие параметры. Посредством команды "получить данные о конфигурации" осуществляют сбор этой информации.
"Получить данные диагностики"
Контроль работы лазера осуществляют посредством датчиков, установленных в лазере. Модуль управления выполняет периодическое считывание показаний датчиков и обновление ячеек памяти, используемых для запоминания данных, считанных с датчика. Считанные диагностические данные содержат в себе такие параметры, как температура внутри лазера и расход охлаждающей воды.
"Получить данные об ошибках"
В том случае, когда лазер обнаруживает наличие предупреждений или ошибок, он отображает сообщение на малогабаритном пульте и регистрирует код предупреждения/ошибки в определенном участке зарезервированной памяти. Каждая зарегистрированная запись содержит в себе кодовый номер предупреждения или ошибки, дату и время возникновения ошибки, а также параметр, который вызвал появление ошибки. В лазере запоминают до 50 предупреждений (при использовании системы управления сообщениями (MCS) версии 1.64 или более поздней) и до 50 ошибок.
"Получить данные о состоянии"
Данные о состоянии представляют собой параметры, определяющие рабочие характеристики лазера, например частоту следования импульсов, энергетический режим, режим поджига и отсчет пачек импульсов.
"Получить данные о вспышке лазера"
При каждой вспышке лазера в основном пульте управления запоминают следующую информацию:
- энергию импульса;
- заданное значение высокого напряжения;
- длину волны;
- ширину спектра излучения.
"Получить усредненные данные о вспышках лазера (по 1000 импульсов (1К))"
Эти данные представляют собой данные о вспышках лазера, усредненные по 1000 импульсов.
"Получить усредненные данные о вспышках лазера (по 100000 импульсов (100К))"
Эти данные представляют собой данные о вспышках лазера, усредненные по 100000 (ста тысячам) импульсов.
"Получить усредненные данные о вспышках лазера (по 100000000 импульсов (100М))"
Эти данные представляют собой данные о вспышках лазера, усредненные по 100000000 (ста миллионам) импульсов.
"Получить данные о полосе излучения"
Данные о полосе излучения представляют собой 1024-байтовое спектральное представление одиночной вспышки лазера, и их используют для калибровки по длине волны. В отличие от других типов данных, загрузка достоверных данных о полосе излучения может быть осуществлена только во время генерации вспышек лазера.
"Получить все данные"
Посредством этой команды осуществляют сбор всех вышеуказанных данных.
Посредством программного обеспечения для лазера осуществляют запоминание управляющих символов до тех пор, пока в него не поступит сигнал завершения процедуры. После этого посредством программного обеспечения осуществляют сбор и передачу данных в серверное устройство центрального управления.
Очередь вводимых команд
В запланированное время главный планировщик посылает команды в очередь вводимых команд. Кроме того, передача команд в очередь вводимых команд может быть осуществлена пользователем, работающим в диалоговом режиме, или другой управляющей программой. Для очереди вводимых команд используют структуру обратного магазинного типа, а передачу команд в устройства осуществляют с использованием подключения через разъемы. Команды подают в указанный конкретный лазер. Попытку выдачи следующей команды в один и тот же лазер нельзя предпринимать до тех пор, пока не будет завершено выполнение предыдущей команды или не истечет время ожидания. Данные, полученные из синтаксического анализатора, передают в вызывающую программу в виде файла формата XML. Программа обработки файлов возвращает данные в вызывающую программу посредством очереди ответных сообщений. Для главного планировщика возвращенные данные не нужны. Затем возвращенные данные подают в очередь на выполнение записи в базу данных для загрузки собранной информации в базу данных.
Считывание данных из устройства
Каждая команда, переданная в каждый из лазеров, приводит к получению из лазера ответа с данными. Ввод последующей команды в лазер может быть произведен только после полного завершения процедуры получения данных в ответ на предыдущую команду. В случае отсутствия какого-либо ответа из лазера выполнение программы считывания данных прекращают по истечении времени ожидания, а запись об этом добавляют в файл регистрации системных ошибок. Считывание данных из сервера терминала осуществляют с использованием подключения через разъемы. Конец каждого ответа с данными обозначают символом перевода страницы. Прикладная программа синтаксического анализатора осуществляет обработку всех ответных данных как единого набора данных. Основное различие здесь состоит в том, что только первый набор данных содержит в себе идентификатор лазера. С целью проверки достоверности данных для программы считывания данных обработку данных осуществляют в виде одной длинной строки печатаемых символов кода ASCII. Непечатаемый символ кода ASCII указывает на наличие искаженных данных, и этот набор данных не используют, а запись об этом вводят в файл регистрации системных ошибок. Данные, достоверность которых подтверждена, подают в программу синтаксического анализатора для подготовки к загрузке в базу данных или к их просмотру пользователем, работающим в диалоговом режиме, через сеть Интернет. Другие программы, которые осуществляют вызов модуля очереди вводимых команд, получают данные из синтаксического анализатора в формате языка XML.
Главный планировщик
Эта программа осуществляет планирование ввода в лазер различных команд в заранее заданные моменты времени. Корректировку частоты поступления команд пользователи осуществляют посредством экрана интерфейса пользователя (в сети Интернет). Операция ввода команды в лазер приводит к получению ответных данных. В качестве главного планировщика используют стандартную служебную программу "cron" (cron-фоновая программа (демон) операционной системы (Linux), исполняющая предписанные команды в строго определенные дни и часы, указанные в специальном файле с именем "crontab") операционной системы "Linux". Интерфейс пользователя выполняют таким образом, что он позволяет просматривать и видоизменять содержимое файла "crontab". Для выполнения этих заданий в программе "cron" используют обычную учетную запись пользователя.
Интерфейс синтаксического анализатора
Программа считывания из лазера вызывает программу синтаксического анализа тогда, когда она имеет полный набор данных, полученных в ответ на команду. В том случае, если по истечении периода времени ожидания данные ответа являются неполными или искаженными, их не используют. В противном случае считанные из лазера данные ответа запоминают в дисковом буфере.
Программа синтаксического анализа осуществляет анализ этих данных, синтаксический анализ данных посредством заранее заданных грамматических правил и их подготовку для загрузки в базу данных типа "Oracle". После этого программа синтаксического анализа выдает запрос на выполнение записи в базу данных, поступающий в очередь заданий на запись в базу данных.
Очередь на выполнение записи в базу данных
Запросы на запись в базу данных, поступающие из синтаксического анализатора, запоминают в очереди заданий. Инициирование команд загрузки осуществляют, исходя из возможностей SQL-загрузчика базы данных. Скорость ввода данных должна обеспечивать возможность асинхронного завершения выполнения всех запросов на запись в базу данных в течение определенного промежутка времени.
Команда записи в базу данных помещает задание в очередь пакетных заданий. Предусмотрены команды контроля, удаления и добавления новых заданий в очередь пакетных заданий. По завершении выполнения задания наличие ситуации успешного его выполнения или ситуации возникновения ошибки указывают посредством значения на выходе. Для осуществления асинхронного управления пакетными заданиями можно использовать основные сценарии операционной системы "Linux". Задание должно выполняться в фоновом режиме под управлением локального командного процессора, а командный процессор уведомляет основную программу об изменении статуса задания. При использовании программы, использующей подробные характеристики очереди, в более традиционных условиях пакетной обработки результаты возвращают пользователю посредством электронной почты. Эти результаты перенаправляют в соответствующие файлы регистрации успешного завершения операций или в файлы регистрации ошибок.
Файлы регистрации ошибок системы и фоновая программа (демон) определения ошибок
Прикладная программа создает записи в файле регистрации ошибок в следующих ситуациях:
- из устройства не поступает ответ на команду;
- наличие неполного ответа из устройства по истечении времени ожидания;
- наличие искажений в ответе из устройства;
- ошибка при загрузке в базу данных вследствие использования неправильного уникального ключа при наличии готовых данных;
- ошибка при загрузке в базу данных вследствие наличия неправильного загрузочного файла;
- ошибка при загрузке в базу данных вследствие нарушения работоспособности базы данных или других системных проблем.
Осуществляют контроль неустранимых и устранимых ошибок, а соответствующие предупреждения отображают в окне пульта управления системой. Для файла регистрации ошибок может потребоваться отдельная системная фоновая программа (демон), но это не является обязательным условием. Возникновение любых новых неустранимых и устранимых ошибок приведет к срабатыванию аварийной сигнализации и средств индикации на пульте управления в соответствии с типом ошибок и их количеством.
Программа имитационного моделирования
В предпочтительном варианте для проверки вышеописанных модулей без остановки лазера используют программу имитационного моделирования. Такая программа имитационного моделирования должна обеспечивать моделирование откликов устройства на различные команды, в том числе ситуаций наличия неполных ответов, отсутствия ответов и иных состояний ошибки. В предпочтительном варианте программу имитационного моделирования выполняют на маломощном персональном компьютере (ПК) с низким быстродействием под управлением операционной системы "Linux" версии 6.2 фирмы "Ред Хет" (Red Hat). Его соединяют с сервером терминала, служащим в качестве компактного "черного ящика" (ТСЧЯ) (BBTS) с использованием стандартного последовательного интерфейса RS-232C. В ПК осуществляют запоминание и имитационное моделирование всех стандартных откликов на каждую из возможных команд. Сначала осуществляют возврат однородных откликов. Для очереди вводимых команд и для выходных данных синтаксического анализатора обеспечивают следующие средства взаимодействия с внешней прикладной программой:
- Очередь вводимых команд: в нее поступают команды из cron планировщика, от пользователя, работающего в диалоговом режиме во внутренней сети по протоколу сети Интернет, или из внешней программы. Она создает очередь команд и осуществляет их ввод в конкретный лазер по окончании выполнения последней команды, поданной в этот лазер. Вызывающая программа подает в очередь вводимых команд команду, идентификатор устройства и данные об источнике вызывающей программы.
- Очередь считывания данных: после выполнения считывания данных из лазера их подают в синтаксический анализатор. Синтаксический анализатор осуществляет разделение на различные поля, вставляет отметку времени и другие заголовки и выполняет подготовку записи в соответствии со схемами базы данных. Очередь на считывание данных содержит в себе указатель файла и адрес возврата для вызывающих программ. Вызывающая программа осуществляет сбор данных посредством очереди на считывание данных.
- Очередь на выполнение записи в базу данных: команды, периодически выдаваемые программой "cron", выдают запрос на сбор данных об определенных командах и их загрузку в базу данных. Данные, полученные на выходе синтаксического анализатора в формате SQL-загрузчика, подают в очередь на выполнение записи в базу данных. Эта очередь осуществляет обработку обращений SQL-загрузчиков и надлежащую загрузку данных.
Реализация очереди
Могут быть использованы следующие средства организации очереди:
1. Средства организации очереди, входящие в состав оболочки операционной системы "Linux", и программы организации очереди GNU.
2. Прикладная программа "TIBCO" организации очереди.
3. Программа "MQSeries" фирмы "Ай Би Эм" (IBM) версии V5.1 для технологии "Linux".
Модуль синтаксического анализатора
Модуль синтаксического анализатора создает необходимую цифровую информацию в соответствующем формате, что обеспечивает возможность требуемого осуществления процедур обработки, запоминания и извлечения собранных данных. В предпочтительном варианте осуществления анализ информации производят по 12 категориям:
1. Заголовок, содержащий в себе команду и серийный номер лазера.
2. Элемент для идентификации данных о предприятии-изготовителе.
3. Наличие языка XML.
4. Идентификатор оборудования.
5. Идентификатор набора данных.
6. Последовательность.
7. Уникальный глобальный идентификатор.
8. Дата создания набора данных.
9. Смещение кода единого времени.
10. Тип соединителя.
11. Идентификатор процесса для состояния синтаксического анализатора.
12. Имя файла регистрации предупреждений или сообщений об ошибках.
Интерфейс пользователя Web-страницы
Отображения Web-страниц осуществляют путем создания страниц на языке HTML в сервере 8, который показан на фиг.1.
Для создания этих страниц используют стандартные признаки (тэги) языка HTML. Поскольку эти страницы на языке HTML содержат в себе динамические данные, извлекаемые из базы данных, то рекомендуется применять технологию создания с