ЖУРНАЛ «СТА» №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 57, а так- же определяемых состоянием соответ- ствующих разрядов регистра запросов аппаратуры. При поступлении запросов производится в соответствии с их при- оритетом приём научной информации от внешних устройств и упаковка ин- формации в телеметрические кадры размером 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. Блок-схема программы обслуживания контроллера КС-МП
Made with FlippingBook
RkJQdWJsaXNoZXIy MTQ4NjUy