ЖУРНАЛ «СТА» №3/2004

с переключением загрузочной микро- схемы по команде с Земли. На началь- ном этапе, когда мы постоянно и тща- тельно контролировали работу кон- троллера по тестовой информации, в течение 3 месяцев мы выявили 2 слу- чая сбоев и «зависания» системы, вы- ход из которого осуществлялся по сто- рожевому таймеру. Эти «зависания», видимо, были связаны со сбоями про- цессора или программного обеспече- ния в ОЗУ контроллера. Если говорить о работоспособности ППЗУ 29F040 производства AMD, то, судя по номе- рам загруженных копий прикладного программного обеспечения, фиксируе- мым в процессе запуска тестовых про- грамм с полной перезагрузкой систе- мы, отказов, приводящих к изменению контрольных сумм программного обеспечения, выявлено до настоящего времени не было. Последовательность работы аппара- туры определяется программным обес- печением контроллера КСМП и со- стоит из следующих режимов: режим начальной инициализации, поиск со- бытия типа «вспышка» и накопление фоновых спектров в режиме патруль- ных наблюдений, при возникновении события типа «вспышка» переход в ре- жим его регистрации, после чего вновь переход на начало данного цикла. Ядро программы, определяющее ло- гику работы измерительной системы и порядок опроса внешних устройств, реализовано средствами языка Borland Pascal. Программные единицы, обслу- живающие прямой доступ к памяти, операции вводавывода, обработчики прерываний, а также критичные по времени выполнения участки кода на- писаны на Turbo Assembler. Блоксхема программы приведена на рис. 7 и 8. Для повышения надёжности систе- мы исполняемый код программы об- служивания хранится в нескольких ко- пиях на обоих устройствах флэшпамя- ти платы 4020. На твердотельный диск SSD1 программы записывались с ис- пользованием встроенного программа- тора платы Octagon Systems 4020. Для записи копий программ на BIOS DRIVE использовался внешний про- грамматор, при этом вручную вноси- лись изменения в прошивку BIOS DRIVE: удаление неиспользуемых ути- лит, добавление программ обслужива- ния системы и коррекция MBR, DIR и FAT BIOS DRIVE. При запуске про- граммы обслуживания производится проверка её контрольной суммы, и в случае неправиль- ного значения суммы производится последо- вательный перебор ко- пий программы до дос- тижения положитель- ного результата про- верки. Во время начальной инициализации систе- мы, при включении питания или при выда- че на систему с Земли команды «Сброс», а также при переклю- чении режима работы аппаратуры произво- дится проверка целост- ности ОЗУ и обоих флэшППЗУ, инициа- лизация служебных пе- ременных, а также на- чальная инициализа- ция внешних уст- ройств. По результатам проверки на Землю пе- редаётся служебный телеметрический кадр, содержащий массив байтов с «бегущей» единицей в разрядах, для контроля работо- способности тракта пе- редачи телеметриче- ской информации. Кадр также включает POST Diagnostic Status Byte, POST Shutdown Code, дополнение до нуля суммы байтов ROM BIOS Octagon Systems 4020, признак ошибки флэшППЗУ, признак ошибки ОЗУ, номер загруженной копии про- граммы, число перезагрузок системы с момента запуска и контрольную сум- му кадра. Оба флэшППЗУ платы 4020 используются и для хранения ряда слу- жебных параметров системы. Основной цикл работы системы представляет собой бесконечный цикл опроса ряда флагов, состояние которых изменяется при появлении запросов на обслуживание от внешних устройств, поступающих по линиям IRQ 57, а так- же определяемых состоянием соответ- ствующих разрядов регистра запросов аппаратуры. При поступлении запросов производится в соответствии с их при- оритетом приём научной информации от внешних устройств и упаковка ин- формации в телеметрические кадры размером 120 байт. После заполнения телеметрические кадры помещаются в программно организованный в ОЗУ платы 4020 FIFOстек с динамически изменяемым размером от 0 до 375 кбайт и затем в режиме прямого доступа к па- мяти передаются в ССНИ по каналу DMA1. Одновременно с этим при ини- циализации каждого нового цикла оп- роса внешних устройств контроллер по каналу DMA2 принимает от ССНИ 32разрядную метку кода бортового времени (КБВ), предназначенную для точной абсолютной временной привяз- ки измерений. Временные диаграммы циклов опроса внешних устройств фор- мируются в обработчике прерываний от системного таймера IRQ 1. В аппарату- ре АВСФ используются циклы, крат- ные 0,5, 1, 16 и 900 секундам. Если в те- РАЗ РА БО Т КИ / КОСМОНА В Т ИК А 35 СТА 3/2004 www.cta.ru Начальная инициализация Выполнение POST. Загрузка операционной системы Номер копии основной программы N=0 Увеличение на 1 номера копии N основной программы Вычисление CRC соответствующей копии основной программы CRC правильная? Последняя копия? Нет Нет Случайный выбор номера копии N основной программы Загрузка копии N основной программы Да Инициализация системы -маскирование прерываний -переустановка векторов прерываний -инициализация портов контроллера Octagon Systems 4020 -инициализация интерфейсной платы -инициализация контроллера прямого доступа к памяти -сброс модулей МСЭ -инициализация стека ССНИ -инициализация переменных, флагов, массивов и счетчиков -заполнение неизменяемых полей массивов -проверка целостности ОЗУ -выбор буфера обмена с ССНИ -запись параметров запуска в ППЗУ -запуск таймера сторожевого -размаскирование прерываний Основной цикл работы системы Завершение работы системы -останов таймера сторожевого -инициализация контроллера -размаскирование прерываний -восстановление стандартных векторов прерываний -восстановление стандартных регистров масок и флагов Да прямого доступа к памяти Рис. 7. Блок-схема программы обслуживания контроллера КС-МП

RkJQdWJsaXNoZXIy MTQ4NjUy