Выпуск #5-6/1998
В. Амелин, И. Щелева.
Устаревшие ЭВМ в технологическом оборудовании. Проблема разрешима
Устаревшие ЭВМ в технологическом оборудовании. Проблема разрешима
Просмотры: 3790
Когда-то ЭВМ семейства PDP-11 (“Электроника 100-25”, “Электроника-60” и др.) были основными управляющими машинами в отечественных технологических установках. Но эти ЭВМ уже давно не производятся. А поскольку и в свои лучшие времена они не отличались надежностью, сегодня эксплуатация оборудования с данными компьютерами превращается в непрерывный кошмар. Полная замена технологического оборудования – дело дорогостоящее и не всегда оправданное. Возможный выход из такой ситуации предлагают авторы статьи.
В нашей промышленности многие технологические установки управляются от отечественных ЭВМ “Электроника 100-25”, “СМ-4”, “Электроника-60”, “ДВК-4”. Эти устаревшие машины уже не выпускаются. Возникает потребность в замене громоздкой (занимающей 3–5 стоек) и ненадежной ЭВМ “Электроника 100-25” на более компактный и высокопроизводительный персональный компьютер (ПК). К решению данной проблемы возможны два подхода: либо создавать полный комплект математического обеспечения технологической установки, адаптированный для ПК, либо строить систему, моделирующую процессор и все устройства ЭВМ “Электроника 100-25”.
Оба пути имеют свои достоинства и недостатки. В первом случае эффективные решения возможны при доскональном знании технологической установки. Поэтому данный вариант приемлем, как правило, только для разработчиков этой аппаратуры. При другом подходе математическое обеспечение не меняется, что не так плохо, поскольку программы хорошо изучены и проверены. Нами был избран именно этот путь. В результате создана система эмуляции семейства ЭВМ PDP-11 (ЭВМ PDP-11/34, PDP-11/40, LSI-11) и их отечественных аналогов “Электроника 100-25”, “СМ-3”, “СМ-4”, “Электроника-60”, “ДВК-3”, “ДВК-4”.
Другие подобные разработки нам не известны. Часть системы — программа-эмулятор — имеет аналоги, в частности программу em.com. Однако в ней эмулируется не “Электроника 100-25” (PDP 11/40), а менее мощная ЭВМ “Электроника 60” (LSI-11), не обладающая диспетчером памяти (MMU) и блоком арифметики с плавающей запятой (FIS). Разработанная и выпускаемая нами система, кроме программы-эмулятора с MMU и FIS, включает в себя интерфейсную плату ISA-UNIBUS и способна не только полностью заменить ЭВМ “Электроника 100-25” (PDP 11/40), но и обеспечить ее работу в составе дорогостоящих технологических комплексов. В результате вместо того, чтобы тратить 200–500 тыс. долл. на новое оборудование, достаточно заменить устаревшую ненадежную ЭВМ на современный надежный Pentium и продолжать работать.
Система эмуляции состоит из программы-эмулятора, выполняющейся на ПК Pentium-100 (и выше) и интерфейсной платы ISA-UNIBUS с кабелем PC-UNIBUS и коннекторной платой.
Программа-эмулятор включает в себя модель процессора, модель дисплея VT52 (отечественный аналог — 15-ИЭ-013), модель контроллера дисков RK-05 (аналог СМ 5400, ИЗОТ 1370), модель контроллера дисков DР и оболочку типа Norton Commander (для копирования файлов). В программу-эмулятор входят файлы, содержащие ту же информацию, что и диски ЭВМ “Электроника 100-25” (операционную систему в том числе), а также программы управления технологической установкой. Эти файлы хранятся на жестком диске ПК. В качестве дисков типа RK используются файлы размером 2,45 Мбайт, а дисков типа DP — 20 Мбайт. Программа последовательно выполняет все команды ЭВМ “Электроника 100-25”, относящиеся к дисплею, дискам, таймеру и другим внутренним блокам. Команды управления технологической установкой вызывают обращение к интерфейсной плате ISA-UNIBUS, которая генерирует и принимает сигналы, необходимые для управления оборудованием. Поскольку вместо обращения к дискам ЭВМ “Электроника 100-25” система работает с файлами на жестком диске ПК, данные обрабатываются значительно быстрее.
При запуске программы-эмулятора сразу же запускается операционная система. Как правило, это RAFOS (RT-11, FODOS, RSX-11M). В обычном режиме монитор и клавиатура ПК выполняют функции терминала TT0 ЭВМ “Электроника 100-25”. С него можно запускать любые программы и выполнять с их помощью все действия по управлению технологической установкой. При этом в нижней части экрана отображается строка состояния, помогающая оператору ориентироваться в назначении функциональных клавиш. В режиме копирования на экране ПК отображаются две панели, подобные панелям Norton Commander с аналогичными функциями.
В процессе разработки эмулятора возникла проблема соответствия времени исполнения команд реальной ЭВМ и программой-эмулятором. Она связана с тем, что быстродействие Pentium-100 выше, чем эмулируемой ЭВМ. Поэтому программа-эмулятор работает быстрее реальной машины. Ускорение работы большинства программ (в том числе и операционной системы) принципиально ни на что не влияет. Однако в ряде программ управления технологическим оборудованием временные интервалы формируются посредством специальных циклов задержки — одна машинная команда циклически повторяется несколько тысяч раз. Как показывает практика, точность времени задержки составляет 20%, что для ряда случаев вполне достаточно. Если использовать такую программу с эмулятором, то в зависимости от быстродействия ПК времена задержек изменятся и работа технологического оборудования нарушится.
Для разрешения проблемы соответствия времен была написана программа, измеряющая время выполнения каждой команды ЭВМ “Электроника 100-25”. Для отсчета времени использовались прерывания таймера. Программа запускалась на реальной ЭВМ “Электроника 100-25”, и измеренные времена протоколировались. Затем та же программа запускалась на эмуляторе, работающем на Pentium-100. Установочной программой вычислялись необходимые задержки в эмуляторе и записывались в файл. При каждом последующем запуске эмулятора этот файл считывается и устанавливаются задержки, равные разности времени выполнения каждой команды на реальной ЭВМ “Электроника 100-25” и на эмуляторе на данном ПК. Таким образом, программы, использующие циклы задержки, работают корректно. В эмуляторе предусмотрен и режим максимального быстродействия, когда работа специально не замедляется. Это полезно для исполнения компилирующих программ.
Для проверки правильности функционирования программы-эмулятора использовалась тест-мониторная операционная система TMOS. После отладки все тесты из TMOS показали, что модель, заложенная в эмуляторе, полностью соответствует реальной ЭВМ.
Программа-эмулятор написана на языке С++. Поскольку объем памяти для такой программы — критический ресурс, библиотеки классов Turbo Vision не использовались из-за их избыточности и большого объема, занимаемого в памяти. Вместо этого была создана новая библиотека классов для окон, меню, файловых панелей.
Интерфейсная плата ISA-UNIBUS предназначена для управления и обмена данными между ПК и технологической установкой при работе совместно с программой-эмулятором. Плата устанавливается в свободный слот шины ISA ПК и соединяется кабелем с оборудованием, управляемым по шине UNIBUS.
В плате использованы программируемые логические интегральные схемы (ПЛИС) Altera 7032 с быстродействием 15 нс, а также ИС шинных передатчиков KP559ИП1 и шинных приемников KP559ИП2 (рис.). На ПЛИС реализованы регистры адреса UNIBUS, регистры данных записи UNIBUS, регистры данных чтения UNIBUS, контроллер чтения/записи UNIBUS и контроллер прерываний.
Разработка платы ISA-UNIBUS была нашим первым опытом применения ПЛИС. Тем не менее преимущества использования таких схем проявились довольно быстро. Мощные выводы (25 мА) с тремя состояниями ПЛИС Altera позволяют непосредственно подключать их к шинам ISA и PCI. Проектирование ПЛИС возможно как в виде традиционных принципиальных схем с вентилями, блоками и соединяющими их проводниками и шинами, так и в текстовом виде на языке AHDL. Современная САПР позволяет с легкостью проектировать регистры, счетчики, сумматоры, конечные автоматы. Если для выполнения необходимых функций недостаточно логических ячеек в одной микросхеме, САПР автоматически распределяет функции на несколько микросхем.
Особенно заметны преимущества программируемой логики на стадии отладки. После пробного включения платы выяснилось, что необходимо инвертировать логический уровень нескольких сигналов. Однако это не вызвало затруднений. В тексте программы исправили несколько строк, перепрограммировали микросхемы, и сигналы стали инверсными. Никаких изменений в топологию платы вносить не пришлось.
Первым опытом практического использования системы эмуляции ЭВМ семейства PDP-11 была замена управляющей ЭВМ “Электроника 100-25” на ПК Pentium в установках электронно-лучевой литографии ZBA-20 и ZBA-21. Такая замена дала ряд преимуществ.
В то время как реальная ЭВМ “Электроника 100-25” имеет три-четыре диска RK емкостью 2,5 Мбайт и один-два диска DP емкостью 20 Мбайт, эмулятор поддерживает восемь дисков RK и восемь дисков DP. В результате, если раньше изготовление фотошаблонов с объемом информации 25-30 Мбайт было затруднительно или вообще невозможно, то теперь данный процесс проходит без каких-либо сложностей. По мнению технического персонала, непосредственно работающего с ZBA-21, система эмуляции функционирует намного надежнее, чем реальная ЭВМ. Это очевидно, так как надежность современного ПК Pentium значительно выше устаревшей ЭВМ “Электроника 100-25”. Ее изношенные диски и магнитные ленты часто дают сбои в работе. На этой ЭВМ после копирования обязательна верификация (сравнение копии и оригинала) и повторное копирование в случае несовпадения данных. С жестким диском ПК таких проблем нет.
На основании проведенных работ можно заключить, что предложенная система эмуляции ЭВМ “Электроника 100-25” позволяет успешно заменять устаревшее оборудование управления технологическими установками на ПК класса Pentium-100 и выше. Преимущества использования разработанной системы — быстродействие, объем хранимой информации, надежность — в ряде случаев делают ее просто незаменимой, позволяя в то же время сократить затраты в сотни раз.
Оба пути имеют свои достоинства и недостатки. В первом случае эффективные решения возможны при доскональном знании технологической установки. Поэтому данный вариант приемлем, как правило, только для разработчиков этой аппаратуры. При другом подходе математическое обеспечение не меняется, что не так плохо, поскольку программы хорошо изучены и проверены. Нами был избран именно этот путь. В результате создана система эмуляции семейства ЭВМ PDP-11 (ЭВМ PDP-11/34, PDP-11/40, LSI-11) и их отечественных аналогов “Электроника 100-25”, “СМ-3”, “СМ-4”, “Электроника-60”, “ДВК-3”, “ДВК-4”.
Другие подобные разработки нам не известны. Часть системы — программа-эмулятор — имеет аналоги, в частности программу em.com. Однако в ней эмулируется не “Электроника 100-25” (PDP 11/40), а менее мощная ЭВМ “Электроника 60” (LSI-11), не обладающая диспетчером памяти (MMU) и блоком арифметики с плавающей запятой (FIS). Разработанная и выпускаемая нами система, кроме программы-эмулятора с MMU и FIS, включает в себя интерфейсную плату ISA-UNIBUS и способна не только полностью заменить ЭВМ “Электроника 100-25” (PDP 11/40), но и обеспечить ее работу в составе дорогостоящих технологических комплексов. В результате вместо того, чтобы тратить 200–500 тыс. долл. на новое оборудование, достаточно заменить устаревшую ненадежную ЭВМ на современный надежный Pentium и продолжать работать.
Система эмуляции состоит из программы-эмулятора, выполняющейся на ПК Pentium-100 (и выше) и интерфейсной платы ISA-UNIBUS с кабелем PC-UNIBUS и коннекторной платой.
Программа-эмулятор включает в себя модель процессора, модель дисплея VT52 (отечественный аналог — 15-ИЭ-013), модель контроллера дисков RK-05 (аналог СМ 5400, ИЗОТ 1370), модель контроллера дисков DР и оболочку типа Norton Commander (для копирования файлов). В программу-эмулятор входят файлы, содержащие ту же информацию, что и диски ЭВМ “Электроника 100-25” (операционную систему в том числе), а также программы управления технологической установкой. Эти файлы хранятся на жестком диске ПК. В качестве дисков типа RK используются файлы размером 2,45 Мбайт, а дисков типа DP — 20 Мбайт. Программа последовательно выполняет все команды ЭВМ “Электроника 100-25”, относящиеся к дисплею, дискам, таймеру и другим внутренним блокам. Команды управления технологической установкой вызывают обращение к интерфейсной плате ISA-UNIBUS, которая генерирует и принимает сигналы, необходимые для управления оборудованием. Поскольку вместо обращения к дискам ЭВМ “Электроника 100-25” система работает с файлами на жестком диске ПК, данные обрабатываются значительно быстрее.
При запуске программы-эмулятора сразу же запускается операционная система. Как правило, это RAFOS (RT-11, FODOS, RSX-11M). В обычном режиме монитор и клавиатура ПК выполняют функции терминала TT0 ЭВМ “Электроника 100-25”. С него можно запускать любые программы и выполнять с их помощью все действия по управлению технологической установкой. При этом в нижней части экрана отображается строка состояния, помогающая оператору ориентироваться в назначении функциональных клавиш. В режиме копирования на экране ПК отображаются две панели, подобные панелям Norton Commander с аналогичными функциями.
В процессе разработки эмулятора возникла проблема соответствия времени исполнения команд реальной ЭВМ и программой-эмулятором. Она связана с тем, что быстродействие Pentium-100 выше, чем эмулируемой ЭВМ. Поэтому программа-эмулятор работает быстрее реальной машины. Ускорение работы большинства программ (в том числе и операционной системы) принципиально ни на что не влияет. Однако в ряде программ управления технологическим оборудованием временные интервалы формируются посредством специальных циклов задержки — одна машинная команда циклически повторяется несколько тысяч раз. Как показывает практика, точность времени задержки составляет 20%, что для ряда случаев вполне достаточно. Если использовать такую программу с эмулятором, то в зависимости от быстродействия ПК времена задержек изменятся и работа технологического оборудования нарушится.
Для разрешения проблемы соответствия времен была написана программа, измеряющая время выполнения каждой команды ЭВМ “Электроника 100-25”. Для отсчета времени использовались прерывания таймера. Программа запускалась на реальной ЭВМ “Электроника 100-25”, и измеренные времена протоколировались. Затем та же программа запускалась на эмуляторе, работающем на Pentium-100. Установочной программой вычислялись необходимые задержки в эмуляторе и записывались в файл. При каждом последующем запуске эмулятора этот файл считывается и устанавливаются задержки, равные разности времени выполнения каждой команды на реальной ЭВМ “Электроника 100-25” и на эмуляторе на данном ПК. Таким образом, программы, использующие циклы задержки, работают корректно. В эмуляторе предусмотрен и режим максимального быстродействия, когда работа специально не замедляется. Это полезно для исполнения компилирующих программ.
Для проверки правильности функционирования программы-эмулятора использовалась тест-мониторная операционная система TMOS. После отладки все тесты из TMOS показали, что модель, заложенная в эмуляторе, полностью соответствует реальной ЭВМ.
Программа-эмулятор написана на языке С++. Поскольку объем памяти для такой программы — критический ресурс, библиотеки классов Turbo Vision не использовались из-за их избыточности и большого объема, занимаемого в памяти. Вместо этого была создана новая библиотека классов для окон, меню, файловых панелей.
Интерфейсная плата ISA-UNIBUS предназначена для управления и обмена данными между ПК и технологической установкой при работе совместно с программой-эмулятором. Плата устанавливается в свободный слот шины ISA ПК и соединяется кабелем с оборудованием, управляемым по шине UNIBUS.
В плате использованы программируемые логические интегральные схемы (ПЛИС) Altera 7032 с быстродействием 15 нс, а также ИС шинных передатчиков KP559ИП1 и шинных приемников KP559ИП2 (рис.). На ПЛИС реализованы регистры адреса UNIBUS, регистры данных записи UNIBUS, регистры данных чтения UNIBUS, контроллер чтения/записи UNIBUS и контроллер прерываний.
Разработка платы ISA-UNIBUS была нашим первым опытом применения ПЛИС. Тем не менее преимущества использования таких схем проявились довольно быстро. Мощные выводы (25 мА) с тремя состояниями ПЛИС Altera позволяют непосредственно подключать их к шинам ISA и PCI. Проектирование ПЛИС возможно как в виде традиционных принципиальных схем с вентилями, блоками и соединяющими их проводниками и шинами, так и в текстовом виде на языке AHDL. Современная САПР позволяет с легкостью проектировать регистры, счетчики, сумматоры, конечные автоматы. Если для выполнения необходимых функций недостаточно логических ячеек в одной микросхеме, САПР автоматически распределяет функции на несколько микросхем.
Особенно заметны преимущества программируемой логики на стадии отладки. После пробного включения платы выяснилось, что необходимо инвертировать логический уровень нескольких сигналов. Однако это не вызвало затруднений. В тексте программы исправили несколько строк, перепрограммировали микросхемы, и сигналы стали инверсными. Никаких изменений в топологию платы вносить не пришлось.
Первым опытом практического использования системы эмуляции ЭВМ семейства PDP-11 была замена управляющей ЭВМ “Электроника 100-25” на ПК Pentium в установках электронно-лучевой литографии ZBA-20 и ZBA-21. Такая замена дала ряд преимуществ.
В то время как реальная ЭВМ “Электроника 100-25” имеет три-четыре диска RK емкостью 2,5 Мбайт и один-два диска DP емкостью 20 Мбайт, эмулятор поддерживает восемь дисков RK и восемь дисков DP. В результате, если раньше изготовление фотошаблонов с объемом информации 25-30 Мбайт было затруднительно или вообще невозможно, то теперь данный процесс проходит без каких-либо сложностей. По мнению технического персонала, непосредственно работающего с ZBA-21, система эмуляции функционирует намного надежнее, чем реальная ЭВМ. Это очевидно, так как надежность современного ПК Pentium значительно выше устаревшей ЭВМ “Электроника 100-25”. Ее изношенные диски и магнитные ленты часто дают сбои в работе. На этой ЭВМ после копирования обязательна верификация (сравнение копии и оригинала) и повторное копирование в случае несовпадения данных. С жестким диском ПК таких проблем нет.
На основании проведенных работ можно заключить, что предложенная система эмуляции ЭВМ “Электроника 100-25” позволяет успешно заменять устаревшее оборудование управления технологическими установками на ПК класса Pentium-100 и выше. Преимущества использования разработанной системы — быстродействие, объем хранимой информации, надежность — в ряде случаев делают ее просто незаменимой, позволяя в то же время сократить затраты в сотни раз.
Отзывы читателей