Материалы сайта
Это интересно
Разработка контрольно-проверочной программы модуля ввода-вывода МФПУ-1
УТВЕРЖДЕН КИВШ.00225-01 31-ЛУ Многофункциональный пульт управления МФПУ Специальное программное обеспечение модуля МВВ ПОЯСНИТЕЛЬНАЯ ЗАПИСКА КИВШ.00225-01 31 Листов 16 1999 г. Содержание 1 Введение 4 2 Назначение и выполняемые функции 4 3 Состав СПО 4 4 Описание форматов данных 5 4.1 Данные в ОЗУ МВВ-34 5 4.1.1 Адресное пространство ОЗУ 5 4.1.2 Массив « Данные приема » 6 4.1.3 Массив « Флаги приема » 6 4.1.4 Массив « Данные передачи » 6 4.1.5 Массив « Флаги передачи » 7 4.2 Данные в двухпортовом ОЗУ 7 4.3 Данные в ППЗУ МВВ 7 4.3.1 Адресное пространство ППЗУ 8 4.3.2 Массивы « МПР-МВВ » 8 4.3.3 Массивы « МВВ-МПР » 8 5 Описание алгоритмов 8 5.1 ПК « Управляющая программа » 8 5.1.1 Состав ПК 8 5.1.2 ПКт « Стартовый запуск » 9 5.1.3 ПКт « Обработка прерываний » 9 5.1.4 ПКт « Управление таймерными задачами » 9 5.1.5 ПКт « Управление фоновыми задачами » 9 5.1.6 ПКт « Выбор режима работы » 10 5.1.7 ПКт « Обработка аварийных ситуаций » 10 5.2 ПК « Обмен » 11 5.2.1 Состав ПК 11 5.2.2 ПКт « КЛС-МВВ » 11 5.2.3 ПКт « МВВ-МПР » 11 5.2.4 ПКт « МПР-МВВ » 12 5.2.5 ПКт « МВВ-КЛС » 13 5.3 ПК « Инициализация » 14 5.4 ПК « Непрерывный контроль » 14 5.5 ПК « Расширенный контроль » 14 5.6 ПК « Расширенный контроль аппаратуры обмена» 15 ПЕРЕЧЕНЬ СОКРАЩЕНИЙ 16 Введение НАСТОяЩИЙ ДОКУМЕНТ ОПРЕДЕЛяЕТ ОРГАНИЗАЦИЮ ФУНКЦИОНИРОВАНИя СПЕЦИАЛЬНОГО ПРОГРАММНОГО ОБЕСПЕчЕНИя ПРОЦЕССОРА МВВ-34 ИЗ СОСТАВА ПУЛЬТА МФПУ. Назначение и выполняемые функции СПО ПРОЦЕССОРА МВВ-34 ИЗ СОСТАВА МФПУ ДОЛЖНО ВЫПОЛНяТЬ СЛЕДУЮЩИЕ ФУНКЦИИ: - прием информации по кодовым линиям связи, ее преобразование и передача центральному процессору; - прием информации от центрального процессора, ее преобразование и передача в кодовые линии связи; - настройку на заданный набор сигналов с заданными параметрами; - непрерывный и расширенный контроль аппаратуры модуля МВВ-34. Состав СПО СПО ДОЛЖНО СОСТОяТЬ ИЗ ФУНКЦИОНАЛЬНО-ЗАКОНчЕННЫХ ПРОГРАММНЫХ КОМПЛЕКСОВ ( ПК ), КАЖДЫЙ ИЗ КОТОРЫХ ПОДРАЗДЕЛяЕТСя НА ПРОГРАММНЫЕ КОМПОНЕНТЫ ( ПКТ ). ПКТ В СВОЮ ОчЕРЕДЬ МОГУТ ПОДРАЗДЕЛяТЬСя НА ФУНКЦИОНАЛЬНО-ЗАКОНчЕННЫЕ ПРОГРАММНЫЕ МОДУЛИ ( ПМ ) . СПО должно состоять из следующих программных комплексов: - ПК « Управляющая программа »; - ПК « Непрерывный контроль »; - ПК « Обмен »; - ПК « Инициализация »; - ПК « Расширенный контроль »; - ПК « Расширенный контроль аппаратуры обмена». ПК «Управляющая программа» и ПК «Непрерывный контроль» должны функционировать постоянно. Дополнительно к ним по команде центрального процессора в вычислительный процесс может включаться ПК «Обмен», «Инициализация», «Расширенный контроль» или «Расширенный контроль аппаратуры обмена» . Описание форматов данных 1 ДАННЫЕ В ОЗУ МВВ-34 В ОЗУ МВВ-34 должна располагаться следующая информация: - массивы данных, содержащие информацию о последних значениях принимаемых и передаваемых сигналов; - массивы флагов, содержащие информацию об этапе обработки сигналов; - внутренние переменные программных комплексов; - стек. 1 Адресное пространство ОЗУ ОЗУ МВВ-34 занимает адресное пространство с адреса 00000 по адрес 3FFFF. Распределение адресного пространства ОЗУ должно соответствовать таблице 1. Адресное пространство ОЗУ Таблица 1. |Начальный |Конечный |Длина |Назначение | |адрес |адрес |(байт) | | |00000 |0EFFF |61440 |Внутренние переменные | |0F000 |0FFFF |4096 |Регистры различных устройств | |10000 |17FFF |32768 |Массив «Данные приема» | |18000 |19FFF |8192 |Массив «Флаги приема» | |1A000 |1С3FF |9216 |Массив «Данные передачи» | |1C400 |1CFFF |3072 |Резерв | |1D000 |1D8FF |2304 |Массив «Флаги передачи» | |1D900 |1FFFF |9984 |Резерв | |20000 |2FFFF |65536 |Стек | |30000 |3FFFF |65536 |Резерв | 2 Массив « Данные приема » Массив должен представлять собой матрицу 32 x 256 32-разрядных слов (unsigned long). Каждой строке должен соответствовать номер входной линии, каждому столбцу – адрес в линии. Каждый элемент массива должен содержать значение, принятое последним из данной линии с данным адресом. Информация в массив должна записываться ПКт «КЛС-МВВ» из регистров приемо-передатчиков; использоваться ПКт «МВВ-МПР» для преобразования и записи в двух-процессорное ОЗУ. 3 Массив « Флаги приема » Массив должен представлять собой матрицу 32 x 256 байт ( signed char). Каждой строке должен соответствовать номер входной линии, каждому столбцу – адрес в линии. Каждый элемент массива должен содержать: - 0 - если информация не обновлялась; - 1 – если информация обновилась, но не изменилась; - 2 – если информация изменилась; - 3 – если канал заблокирован на запись; - -1 – если к каналу идет обращение; - -2 – если канал заблокирован на чтение. Нулевую информацию в элемент массива должен записывать ПКт «МВВ-МПР» после обращения к соответствующему элементу массива «Данные приема». На время обращения к нему устанавливается значение -1 во избежание записи в этот элемент новой информации программным компонентом «КЛС-МВВ» Значение 1 или 2 должен устанавливать ПКт «КЛС-МВВ» в момент записи новой информации. Значение –2 или 3 может устанавливаться технологическим ПО во время отладки и испытаний. 4 Массив « Данные передачи » Массив должен представлять собой матрицу 9 x 256 32-разрядных слов ( unsigned long). Каждой строке должен соответствовать номер входной линии, каждому столбцу – адрес в линии. Каждый элемент массива должен содержать последнее значение, переданное центральным процессором для передачи в данную линию с заданным адресом. Информация в массив должна записываться ПКт «МПР-МВВ» на основании информации, принятой от центрального процессора; использоваться ПКт «МВВ- КЛС» для записи в соответствующий приемо-передатчик. 5 Массив « Флаги передачи » Массив должен представлять собой матрицу 9 x 256 байт (signed char). Каждой строке должен соответствовать номер выходной линии, каждому столбцу – адрес в линии. Каждый элемент массива должен содержать: - 0 - если информация не обновлялась; - 1 – если информация обновилась; - 3 – если канал заблокирован на запись; - -1 – если к каналу идет обращение - -2 – если канал заблокирован на чтение; Нулевую информацию в элемент массива должен записывать ПКт «МВВ-КЛС» после обращения к соответствующему элементу массива «Данные приема». На время обращения к нему устанавливается значение -1 во избежание записи в этот элемент новой информации программным компонентом «МПР-МВВ» Значение 1 должен устанавливать ПКт «МПР-МВВ» в момент записи новой информации. Значение –2 или 3 может устанавливаться технологическим ПО во время отладки и испытаний. 2 Данные в двухпортовом ОЗУ В двухпортовом ОЗУ должен располагаться ряд массивов данных, через которые осуществляется обмен между процессорами МВВ и МПР. Формат данных в этих массивах приведен в документе КИВШ.00225-01 92 01 « Протокол взаимодействия центрального процессора и модуля ввода-вывода МФПУ ». 3 Данные в ППЗУ МВВ В ППЗУ должны содержаться массивы, содержащие информацию о количестве и параметрах принимаемых и передаваемых сигналов. Информация в ППЗУ должна заноситься программным комплексом «Инициализация» на основании информации, полученной от центрального процессора, использоваться программным комплексом «Обмен». 1 Адресное пространство ППЗУ Часть ППЗУ модуля МВВ-34, доступная для записи без наличия напряжения на технологическом разъеме, занимает адреса памяти 60000-6FFFF. В этой части ППЗУ должны располагаться настроечные массивы информации, записываемые ПК “Инициализация” и используемые ПК “Обмен”. 2 Массивы « МПР-МВВ » Каждый из массивов «МПР-МВВ» содержит информацию об одной из групп передачи информации от МПР в МВВ. Возможное количество таких массивов от 0 до 8. Структура информации в каждом из таких массивов аналогична приведенной в протоколе взаимодействия КИВШ.00225-01 92 01. 3 Массивы « МВВ-МПР » Каждый из массивов «МВВ-МПР» содержит информацию об одной из групп приема информации от МВВ в МПР. Возможное количество таких массивов от 0 до 8. Структура информации в каждом из таких массивов аналогична приведенной в протоколе взаимодействия КИВШ.00225-01 92 01. Описание алгоритмов 1 ПК « УПРАВЛяЮЩАя ПРОГРАММА » 1 Состав ПК ПК « Управляющая программа » должен состоять из следующих программных компонентов: - ПКт « Стартовый запуск »; - ПКт « Выбор режима работы »; - ПКт « Обработка прерываний »; - ПКт « Управление таймерными задачами »; - ПКт « Управление фоновыми задачами »; - ПКт « Обработка аварийных ситуаций ». 2 ПКт « Стартовый запуск » ПКт должен осуществлять следующие операции: - инициализацию аппаратных устройств модуля МВВ-34 в соответствии с документом « Техническое описание ». - инициализацию обмена с модулем МПР в соответствии с документом КИВШ.00225-01 92 01 «Протокол взаимодействия центрального процессора и модуля ввода-вывода МФПУ » 3 ПКт « Обработка прерываний » При появлении заданных прерываний ПКт должен передавать управление соответствующим модулям программы. При появлении любых других прерываний ПКт должен передавать управление ПКт «Обработка аварийных ситуаций ». К задачам, выполняемым по специальным прерываниям, относятся: - ПКт «Выбор режима работы»; - ПКт «КЛС-МВВ». 4 ПКт « Управление таймерными задачами » ПКт должен производить запуск компонентов различных ПК, требующих определенного периода запуска, с заданными периодами. К таймерным задачам относятся: - ПКт «МПР- МВВ»; - ПКт «МВВ- МПР»; 5 ПКт « Управление фоновыми задачами » ПКт должен производить запуск компонентов различных ПК, не требующих определенного периода запуска. К фоновым задачам относятся: - ПКт «МВВ-КЛС»; - ПК «Непрерывный контроль»; - Включаемое в вычислительный процесс технологическое ПО; 6 ПКт « Выбор режима работы » ПКт должен запускаться по прерываниям, поступающим в случае изменения управляющего слова, а также программным компонентом «Управление таймерными задачами» с наинизшим приоритетом. ПКт должен сравнить значения разрядов управляющего слова с его копией, созданной в предыдущем запуске. В случае изменения разрядов управляющего слова, определяющих режим функционирования МВВ, должен быть произведен запуск программного комплекса «Инициализация», «Обмен» или «Расширенный контроль». 7 ПКт « Обработка аварийных ситуаций » ПКт должен подразделяться на ряд ПМ, каждый из которых обрабатывает одну из аварийных ситуаций: - аварийный сбой питания; - выход на запрещенный адрес; - прерывание по неопознанному вектору; - выход указателя стека за допустимый диапазон. При появлении прерывания по аварийному сбою питания должно произойти зацикливание на одном из регистров без выхода в шину продолжительностью 80 мс с последующим выходом из прерывания. В других аварийных ситуациях должны быть произведены следующие действия: - заблокирован таймер; - вновь проинициализирован стек; - в буфер вывода по RS-232 записана информация о состоянии процессора в соответствии с протоколом взаимодействия АИРЦ.00231-92 01; - разблокирован таймер; - перезапущен ПКт « Управление фоновыми задачами ». 2 ПК « Обмен » 1 Состав ПК ПК « Обмен » должен состоять из следующих программных компонентов: - ПКт « КЛС-МВВ »; - ПКт « МВВ-МПР »; - ПКт « МПР-МВВ »; - ПКт « МВВ-КЛС ». 2 ПКт « КЛС-МВВ » ПКт должен запускаться по прерываниям, поступающим от приемо- передатчиков в момент приема ими информации. ПКт должен проанализировать значение регистра состояния приемо-передатчика, от которого поступило прерывание и при наличии единиц в разрядах младшего байта регистра состояния для каждого из таких разрядов произвести следующие действия: - Если флаг приема по данного сигнала установлен в –1 – дальнейших действий не производить. - Прочитать значения сначала младшего (MSW), а затем старшего (LSW) слов буфера сообщения соответствующего канала с записью их в промежуточное 32-разрядное слово. - Если флаг приема по данному каналу установлен в 3 – дальнейших действий не производить. - Если принятое значение равно значению в соответствующем элементе массива «Данные приема» - установить флаг приема в 1, если не равно – установить флаг в 2 и переписать полученное значение в массив «Данные приема». 3 ПКт « МВВ-МПР » ПКт должен принимать один параметр – номер группы приема. ПКт должен запускаться управляющей программой для каждой из групп приема с частотой функционирования соответствующей группы. ПКт должен на основании информации, содержащейся в массивах «Данные приема» и «Флаги приема» обновить информацию в массивах двухпроцессорного ОЗУ. С этой целью ПКт для каждого из сигналов группы, значение флага приема которого положительно ( информация обновилась ), должен произвести следующие действия. - Переписать значение матрицы состояния ( 30 и 29 разряды элемента массива “Данные приема” ) в соответствующий элемент буферного массива матриц состояния ( если массив матриц состояния в данной группе предусмотрен ). По его значению центральный процессор сможет контролировать обновление информации . - Если флаг приема сигнала меньше 2 ( сигнал возможно обновился, но не изменился ) – дальнейших действий не производить. - Значения 28 – 8 разрядов преобразовать в соответствии с ценой старшего разряда сигнала в число с плавающей точкой (типа float), или ( при нулевой цене старшего разряда ) сдвинуть на 3 разряда влево. - Полученное значение записать в соответствующий элемент буферного массива значений сигналов. - Записать единицу в соответствующий элемент буферного массива флагов изменения ( если массив флагов изменения в данной группе предусмотрен ). - Сбросить в 0 флаг приема. По окончании обработки всех сигналов группы ПКт должен произвести следующие действия: - Прочитать значение семафора доступа к соответствующим данным в двухпроцессорном ОЗУ, и если он открыт, закрыть семафор. - Переписать информацию из буферных массивов значений сигналов, матриц состояния и флагов обновления в соответствующие массивы двухпроцессорного ОЗУ. - Открыть семафор. - В случае, когда произошло изменение значения хотя бы одного сигнала, установить соответствующий разряд в слове состояния ( если такой режим предусмотрен ). 4 ПКт « МПР-МВВ » ПКт должен принимать один параметр – номер группы передачи. ПКт должен запускаться управляющей программой для каждой из групп передачи с частотой функционирования соответствующей группы. ПКт должен преобразовать информацию, содержащуюся в массивах двухпроцессорного ОЗУ в формат КЛС с записью ее в массив «Данные передачи». ПКт должен произвести следующие действия: - Прочитать значение семафора доступа к соответствующим данным в двухпроцессорном ОЗУ, и если он открыт, закрыть семафор. - Переписать информацию о значениях сигналов из двухпроцессорного ОЗУ в буферный массив. - Открыть семафор. Далее для каждого из сигналов группы должен произвести следующие действия. - Eсли флаг приема по данному каналу установлен в –1 или –3 – дальнейших действий не производить; - Прочитать значение из соответствующей ячейки межпроцессорного ОЗУ; - Преобразовать полученное значение из числа с плавающей точкой в 20 –разрядное значение с использованием цены старщего разряда, или ( при нулевой цене старшего разряда ) - сдвинуть значение вправо на 3 разряда. - Дополнить полученное значение матрицей состояния, битом четности и адресной частью. - Записать полученное значение в соответствующий элемент массива «Данные передачи». - Установить в 1 соответствующий флаг передачи. 5 ПКт « МВВ-КЛС » ПКт должен производить перепись сформированной информации из массива «Данные передачи» в очереди сообщений кодовых линий связи. ПКт должен производить опрос флагов передачи на предмет установки их в единицу. С целью разведения во времени обращений к одной и той же КЛС очередность опроса должна быть следующей: сначала опрашиваются флаги нулевых адресов всех линий поочередно, затем первых и т.д. При обнаружении установленного в 1 флага анализируется очередь сообщений соответствующей КЛС. Если она не переполнена, производятся следующие действия: - Флаг передачи установить в –1. - Переписать значение из массива «Данные передачи» в очередь сообщений соответствующей КЛС. - Флаг передачи сбросить в 0. 3 ПК « Инициализация » ПК «Инициализация » должен состоять из одного ПКт. Он должен произвести перепись информации из двухпроцессорного ОЗУ в ППЗУ модуля МВВ. 4 ПК « Непрерывный контроль » ПК должен осуществлять непрерывный контроль аппаратуры модуля МВВ-34 во взаимодействии с аппаратными средствами встроенного контроля МВВ, как описано в подразделе 4.6 «Встроенный контроль» документа «Техническое описание». Алгоритмы непрерывного контроля аппаратуры обмена с приведены в документе КИВШ.00225-01 92 01 «Протокол взаимодействия…». По окончании каждого цикла контроля информация о его результатах должна быть отражена в ячейках двух-процессорного ОЗУ в соответствии с «Протоколом взаимодействия…». 5 ПК « Расширенный контроль » ПК должен произвести расширенный контроль приемо-передатчиков, установленных на модуле МВВ-34. Для этого приемо-передатчики должны быть переведены в тестовый режим с отключением от линий. На выходы передатчиков должны подаваться тестовые значения, после чего сравниваться с этими же значениями, принятыми приемниками. По окончании контроля информация о его результатах должна быть отражена в ячейках двух-процессорного ОЗУ в соответствии с «Протоколом взаимодействия…». 6 ПК « Расширенный контроль аппаратуры обмена» Алгоритмы расширенного контроля аппаратуры обмена приведены в документе КИВШ.00225-01 92 01 «Протокол взаимодействия…». ПЕРЕЧЕНЬ СОКРАЩЕНИЙ ЖКИ - Жидко-кристаллический индикатор КЛС - Кодовая линия связи КПП - Контрольно-проверочная программа МБД - Модуль базы данных МВВ - Модуль ввода-вывода МДК - Модуль дисплейного контроллера МДС - Модуль дискретных сигналов МИП - Модуль источника питания МКК - Модуль контроллера клавиатуры МПР - Модуль процессора МФПУ - Многофункциональный пульт управления ОЗУ - Оперативное запоминающее устройство ПДС - Преобразователь дискретных сигналов ПЗУ - Постоянное запоминающее устройство ПО - Программное обеспечение ППЗУ - Перепрограммируемое ПЗУ РК - Разовая команда РМП - Рабочее место программиста СПО - Специальное программное обеспечение ТК - Технологический компьютер
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28