СИСТЕМНЫЙ КОНТРОЛЛЕР Российский патент 1998 года по МПК G06F11/00 G06F11/16 

Описание патента на изобретение RU2110834C1

Изобретение относится к устройствам для поддержания работоспособности процессора (интеллектуального промышленного контроллера) в системе контроля и управления различными объектами газовой и нефтяной промышленности, тепло- и гидроэнергетики. Газовая промышленность: АСУТП транспортировки газа (компрессорные станции, газоперерабатывающие заводы). Нефтяная промышленность: АСУТП переработки нефти (нефтеперерабатывающие заводы). Тепло- и гидроэнергетика: АСУТП (ГЭС, ГГЭС, ТЭЦ, котельные).

В настоящее время известны устройства для контроля и запоминания ошибки в логике программного обеспечения системы, представляющие собой встроенную память центрального процессора, реализующие автоматический контроль преобразованием адреса в адресную информацию в центральном процессоре через информационную шину внешне установленной памяти с выделением соответствующей информации во встроенную память путем ее загрузки по адресной шине [1]. Система эта очень сложна и дорога и требует разработки специальных устройств, включающих специализированный микропроцессор. Известны также устройства для восстановления работоспособности процессора в микропроцессорной системе [2]. Система обеспечивается одним из процессоров, который обнаруживает сбой в работе других процессоров и отключает питание при обнаружении сбоев. Применение таких устройств требует разработки специализированного контроллера питания. Ни первое, ни второе из описанных устройств не осуществляют селекцию ошибок и не предусматривают оканчание текущего цикла процессора.

Наиболее близким к предлагаемому является системный контроллер, типа VIC068/VAC068 [5].

Системный контроллер содержит блок управления шиной VME (БЛ УПР VME), к входам/выходам которого подсоединены входы/ выходы линий управления шины VME (ЛИН УПР VME), блок управления локальной шиной процессора (БЛ УПР ЛОК III ПРОЦЕС), к входам/выходам которого подсоединены входы/выходы линий управления локальной шины процессора (ЛИН УЯР ЛОК III ПРОЦЕС), а к выходам блока управления шиной VME и блока управления локальной шиной процессора подсоединены входы блока управления приемниками/передатчиками адреса и данных (БЛ УПР П/П А и Д), выходы которого подсоединены к линиям управления приемниками/передатчиками адреса и данных (ЛИН УПР П/П А и Д), блок регистров (БЛ РЕГ), к выходам/входам которого подсоединены линии адреса и данных системного контроллера (ЛИН А и Д СИСТ К), а к выходам которого подсоеденены входы блока управления прерываниями процессора (БЛ УПР ПРЕРЫВ ПРОЦЕС), выходы которого подсоединены к линиям прерывания процессора (ЛИН ПРЕРЫВ ПРОЦЕС), при этом входы/выходы блока управления шины VME подсоединены к входам/ выходам локальной шины процессора и к входам/выходам блока регистров (см. фиг. 1).

Этот контроллер является высокоэффективным средством построения систем на базе шины VME. Поддерживает блочные передачи, обеспечивает уменьшение потребляемой мощности по сравнению с дискретным исполнением, поддерживает прямой доступ к памяти и межпроцессорный обмен.

Основной недостаток контроллера - ненадежность его работы в системах контроля и управления объектами промышленности. Ошибки в логике программного обеспечения могут привести к нарушению технологического процесса из-за отсутствия в контроллере средств, фиксирующих и корректирующих ошибки.

Задача, на решение которой было направлено данное изобретение, состояла в обеспечении надежной работы контроллера за счет снабжения его аппаратными средствами, способными выполнять системную функцию по фиксированию и созданию условий для коррекции ошибки, заключающуюся в заканчивании текущего цикла процессора сигналом готовности.

Для решения этой задачи системный контроллер, содержащий блок управления шиной VME (БЛ УПР VME), к входам/выходам которого подсоединены входы/выходы линий управления шины VME (ЛИН УПР VME), блок управления локальной шиной процессора (БЛ УПР ЛОК III ПРОЦЕС), к входам/выходам которого подсоединены входы/выходы линий управления локальной шины процессора (ЛИН УПР ЛОК III ПРОЦЕС), а к выходам блока управления шиной VME и блока управления локальной шиной процессора подсоединены входы блока управления приемниками/передатчиками адреса и данных (БД УПР П/П А и Д), выходы которого подсоединены к линиям управления приемопередатчиками адреса и данных (ЛИН УПР П/П А и Д), блок регистров (БЛ РЕГ), к выходам/входам которого подсоединены линии адреса и данных системного контроллера (ЛИН А и Д СИСТ К), а к выходам которого подсоединены входы блока управления прерываниями процессора (БЛ УПР ПРЕРЫВ ПРОЦЕС), выходы которого подсоединены к линиям прерывания процессора (ЛИН ПРЕРЫВ ПРОЦЕС), при этом входы/выходы блока управления шины VME подсоединены к входам/выходам блока управления локальной шины процессора и к входам/выходам блока регистров, который выполнен на базе программируемой пользователем микросхеме FPGA и программируемых логических матрицах PAL и снабжен блоком коррекции (БЛ КОРР), содержащим блок сторожевых таймеров (БЛ СТ ТАЙМЕР) и дешифратор специальных циклов процессора (ДЕШИФ СПЦ), входы/выходы блока сторожевых таймеров и дешифратора подключены к входам/выходам блока управления шиной VМЕ, к входам/выходам блока управления локальной шины процессора и к входам/выходам блока регистров.

Блок сторожевых таймеров включает: сторожевой таймер VME, сторожевой таймер локальной шины процессора и сторожевой таймер для периодического тестирования.

Дешифратор специальных циклов процессора выполнен на элементе 5И, имеет 5 входов с блока управления локальной шины процессора и один выход на блок регистров и блок сторожевых таймеров.

Выполнение контроллера на базе микросхем FPGA и PAL позволяет ввести в контроллер блок коррекции, раскрытый выше.

Введение в системный контроллер блока коррекции, состоящего из блока сторожевых таймеров и дешифратора специальных циклов процессора, соединенных описанным выше способом, обеспечивает контроллеру системную функцию по заканчиванию текущего цикла процессора сигналом готовности.

Сторожевой таймер для периодического тестирования запоминает аппаратную ошибку системы управления, выставляет запрос на прерывание и заканчивает текущий цикл процессора.

При выполнении циклов обращения к несуществующему адресу сторожевой таймер VME или сторожевой таймерлокальной шины процессора запоминает (фиксирует) ошибку в блоке регистров, выставляет запрос на прерывание процессора (создание условий для коррекции) и заканчивает текущий цикл процессора.

При выполнении несанкционированных специальных циклов процессора дешифратор специальных циклов процессора запоминает ошибку в блоке регистров, выставляет запрос на прерывание, а блок сторожевых таймеров заканчивает текущий цикл процессора.

В итоге контроллер приобретает системную функцию по заканчиванию текущего цикла процессора при возникновении аппаратных ошибок и ошибок логики программы и создает условия для коррекции ошибок.

На фиг. 2 представлена блок-схема предлагаемого системного контроллера.

Системный контроллер содержит:
1 - блок управления шиной VME,
2 - блок управления локальной шиной процессора,
3 - блок регистров,
4 - блок управления приемниками/передатчиками адреса и данных,
5 - блок управления прерываниями процессора,
6 - линии управления VME,
7 - линии управления локальной шины процессора,
8 - линии адреса и данных системного контроллера,
9 - линии управления приемниками/передатчиками адреса и данных,
10 - линии прерывания процессора,
11 - блок коррекции,
12 - блок сторожевых таймеров,
13 - дешифратор специальных циклов процессора.

Работа контроллера
В 1995 г. в КБ Корунд-М был собран и испытан модуль БТ02-203, в состав которого входил предлагаемый системный контроллер. Модуль входит в систему контроля и управления газокомпрессорной станцией АНКОР. Модуль работает на базе микропроцессора i386EX. Системный контроллер реализован на базе программируемой пользователем микросхеме XC4005 (фирма XILINIX) и программируемых логических матриц PAL22V10 (фирма AMD). Блок управления шины VME выполняет следующие функции:
- запросчика прерывания шины VME (interrupter);
- обработчика прерывания шины VME (interrupt handler);
- формирователя последовательной цепочки подтверждения запроса на прерывание шины VME (iack daisy-chain driver);
- запросчик шины VME (requester);
- арбитр шины VME (arbiter);
- формирователь последовательной цепочки подтверждения захвата шины (bus request daisy-chain driver);
- обеспечение режима ведущего (master);
- поддержка режима ведомого (slave).

Запросчик прерывания программируется вектором прерывания и уровнем линии прерывания, выставляемых модулем в цикле подтверждения прерывания шины VME.

Обработчик прерывания шины VME аппаратно обрабатывает запросы прерываний, выставленных на шине VME. Приоритет прерываний жестко задан.

Запросчик шины VME пытается захватить шину всякий раз, когда центральный процессор обращается к VME или когда происходит цикл обращения к ОЗУ при одновременном доступе со стороны VME.

Режим ведущего программируется адресными модификаторами, выставляемыми на VME.

Блок ведомого программируется адресными модификаторами и старшими разрядами линий адреса шины VME.

В свете выполнения задачи, решаемой изобретением, блок управления локальной шины процессора 2 выставляет сигнал готовности процессору, блок регистров 3 фиксирует аппаратные ошибки и ошибки логики программы, блок управления приемниками/передатчиками адреса и данных 4 выставляет сигналы направления и разрешения передачи адреса и данных, блок управления прерываниями процессора 5 через линии 10 выставляет процессору прерывание.

Блок коррекции 11 состоит из блока сторожевых таймеров 12 и дешифратора специальных циклов 13. Блок сторожевых таймеров включает:
- сторожевой таймер, выполняющий функцию тайм-аута на шине VME;
- сторожевой таймер, выполняющий функцию тайм-аута на шине процессора;
- сторожевой таймер для периодического тестирования. Таймер шины VME служит для определения временного интервала, после которого на шине VME выставляется сигнал ошибки. Таймер в реализованной схеме был запрограммирован на интервал 80 мкс. При возникновении ошибки выставляется немаскируемое прерывание NMI, сигнал ошибки шины BERR и заканчивается текущий цикл процессора.

Сторожевой таймер шины процессора выставляет немаскируемое прерывание NMI при отсутствии отклика в течении 160 мкс, а также оканчивает текущий цикл процессора.

В состав системного контроллера также входит сторожевой таймер для периодического тестирования с фиксированной длительностью 640 мс, по истечении которого выставляется запрос маскируемого прерывания IRQ5 и запускается программа тестирования основных устройств модуля. Если тестирование происходит без ошибок, запрос на прерывание IRQ5 сбрасывается, в противном случае через время 40 мс выставляется запрос на немаскируемое прерывание NMI и сигнал ошибки ERROR.

Контроллер снабжен возможностью подачи сигналов в звуковой форме (управление динамиком) и световой форме оператору, а также сигнала ошибки для удаленного контроля.

Дешифратор специальных циклов фиксирует и корректирует ошибки, возникающие в результате несанкционированного выполнения команд HALT и SHUTDOWN.

При работе системного контроллера в описанной системе была обнаружена и скорректирована ошибка процессора, возникающая в результате выполнения несанкционированной команды HALT. Через шину 7 и блок 2 дешифратором специальных циклов 13 проводится анализ текущих циклов процессора. При возникновении несанкционированного цикла HALT блок 13 воздействует на блок 3, в котором фиксируется ошибка. Блок 3 воздействует на блок 5 и через линию 10 выставляет прерывание процессору. При этом воздействие блока 13 передается блоку сторожевых таймеров 11, который воздействует на блок 2 и по линии 7 передается сигнал готовности процессору (оканчивание текущего цикла процессора). Процессор выполнив команду HALT и получив прерывание по линии 10, не останавливает выполнение программы, а запускает программу обработки прерывания, которая воздействуя по линиям 7 через блок 2 по линиям 8 считывает содержимое блока 3, по которому определяет источник ошибки.

Результаты испытаний показали надежную работу системного контроллера в системе АНКОР при работе с операционными системами OS-9000, VxWorks, MS-DOS.

Использование в промышленных системах данного изобретения удовлетворит длительно существующую потребность в выполнении контроллером системной функции, заключающейся в заканчивании текущего цикла процессора сигналом готовности после фиксирования и создания условий для коррекции ошибки, что принесет системным котроллерам этого типа коммерческий успех на рынке.

Похожие патенты RU2110834C1

название год авторы номер документа
СИСТЕМНЫЙ КОНТРОЛЛЕР 1996
  • Бобков С.Г.
  • Задябин С.О.
RU2124751C1
ПЕРЕПРОГРАММИРУЕМЫЙ ВЫЧИСЛИТЕЛЬ ДЛЯ СИСТЕМ ОБРАБОТКИ ИНФОРМАЦИИ 1998
  • Аряшев С.И.
  • Бобков С.Г.
RU2146389C1
ПРОГРАММИРУЕМЫЙ ЛОГИЧЕСКИЙ КОНТРОЛЛЕР 1995
  • Бобков С.Г.
  • Гундаев В.В.
  • Сердин О.В.
RU2101757C1
ВЫЧИСЛИТЕЛЬ С ПЕРЕПРОГРАММИРУЕМОЙ АРХИТЕКТУРОЙ 1996
  • Аряшев С.И.
  • Бобков С.Г.
RU2115161C1
Устройство приоритетного прерывания 1990
  • Першин Андрей Сергеевич
  • Шадский Андрей Геннадиевич
SU1793440A1
УПРАВЛЯЮЩИЙ МОДУЛЬ 2014
  • Бобков Сергей Геннадьевич
  • Кондратьева Наталья Викторовна
  • Сердин Олег Валерьевич
RU2569576C1
РЕЗЕРВИРОВАННАЯ СИСТЕМА 1991
  • Родин В.И.
  • Михайлов Ю.В.
RU2010315C1
МИКРОПРОЦЕССОР ГИБРИДНЫЙ 2007
  • Бобков Сергей Геннадиевич
  • Аряшев Сергей Иванович
  • Барских Михаил Евгеньевич
  • Бычков Константин Сергеевич
  • Зубковский Павел Сергеевич
RU2359315C2
УСТРОЙСТВО БУФЕРИЗАЦИИ ПОТОКОВ ДАННЫХ, СЧИТЫВАЕМЫХ ИЗ ОЗУ 2011
  • Аряшев Сергей Иванович
  • Корниленко Александр Владимирович
  • Николина Наталья Владимировна
RU2475817C1
СПОСОБ ИСПРАВЛЕНИЯ ОДИНОЧНЫХ ОШИБОК И ПРЕДОТВРАЩЕНИЯ ВОЗНИКНОВЕНИЯ ДВОЙНЫХ ОШИБОК В РЕГИСТРОВОМ ФАЙЛЕ И УСТРОЙСТВО ДЛЯ ЕГО ОСУЩЕСТВЛЕНИЯ 2011
  • Осипенко Павел Николаевич
  • Антонов Андрей Александрович
  • Виговский Владимир Семенович
RU2465636C1

Иллюстрации к изобретению RU 2 110 834 C1

Реферат патента 1998 года СИСТЕМНЫЙ КОНТРОЛЛЕР

Изобретение относится к устройствам для поддержания работоспособности процессора в системах контроля и управления различными объектами газовой, нефтяной промышленности и тепло- и гидроэнергетики. Системный контроллер содержит блок управления шиной VМЕ, блок управления локальной шиной, блок регистров, блок управления приемниками/передатчиками адреса и данных, блок управления прерываниями процессора, линии управления шиной V МЕ, линии управления локальной шиной процессора, линии адреса и данных системного контроллера, линии управления приемниками/передатчиками адреса и данных, линии прерывания процессора, блок коррекции, блок сторожевых таймеров, дешифратор специальных циклов процессора. 2 ил.

Формула изобретения RU 2 110 834 C1

Системный контроллер, содержащий блок управления шиной VME, к входам/выходам которого подсоединены входы/выходы линий управления шины VME, блок управления локальной шиной процессора, к входам/выходам которого подсоединены входы/выходы линий управления локальной шиной процессора, а к выходам блока управления шиной VME и блока управления локальной шиной процессора подсоединены входы блока управления приемниками/передатчиками адреса и данных, выходы которого подсоединены к линиям управления приемниками/передатчиками адреса и данных, блок регистров, к входам/выходам которого подсоединены линии адреса и данных системного контроллера, к выходам которого подсоединены входы блока управления прерываний процессора, выходы которого подсоединены к линиям прерывания процессора, при этом входы/выходы блока управления шины VME подсоединены к входам/выходам блока управления локальной шиной процессора и к входам/выходам блока регистров, отличающийся тем, что системный контроллер снабжен блоком коррекции, содержащим блок сторожевых таймеров и дешифратор специальных циклов процессора, входы/выходы блока сторожевых таймеров и дешифратора специальных циклов процессора подключены к входам/выходам блока управления шиной VME, к входам/выходам блока управления локальной шиной процессора и к входам/выходам блока регистров.

Документы, цитированные в отчете о поиске Патент 1998 года RU2110834C1

Печь для непрерывного получения сернистого натрия 1921
  • Настюков А.М.
  • Настюков К.И.
SU1A1
JP, заявка, 60-95646, кл
Приспособление для точного наложения листов бумаги при снятии оттисков 1922
  • Асафов Н.И.
SU6A1
Аппарат для очищения воды при помощи химических реактивов 1917
  • Гордон И.Д.
SU2A1
US, патент, 4553204, кл
Приспособление для точного наложения листов бумаги при снятии оттисков 1922
  • Асафов Н.И.
SU6A1
Переносная печь для варки пищи и отопления в окопах, походных помещениях и т.п. 1921
  • Богач Б.И.
SU3A1
SU, авторское свидетельство, 1543409, кл
Приспособление для точного наложения листов бумаги при снятии оттисков 1922
  • Асафов Н.И.
SU6A1
Очаг для массовой варки пищи, выпечки хлеба и кипячения воды 1921
  • Богач Б.И.
SU4A1
SU, авторское свидетельство, 1541618, кл
Приспособление для точного наложения листов бумаги при снятии оттисков 1922
  • Асафов Н.И.
SU6A1
Кипятильник для воды 1921
  • Богач Б.И.
SU5A1
Способ получения смеси хлоргидратов опийных алкалоидов (пантопона) из опийных вытяжек с любым содержанием морфия 1921
  • Гундобин П.И.
SU68A1
Походная разборная печь для варки пищи и печения хлеба 1920
  • Богач Б.И.
SU11A1

RU 2 110 834 C1

Авторы

Бобков С.Г.

Гундаев В.В.

Сердин О.В.

Даты

1998-05-10Публикация

1996-02-20Подача