СИСТЕМА ИНФОРМАЦИОННОЙ ПОДДЕРЖКИ АНАЛИТИЧЕСКОЙ ДЕЯТЕЛЬНОСТИ ТЕРРИТОРИАЛЬНО-РАСПРЕДЕЛЕННЫХ АГЕНТСТВ АВИАКОМПАНИИ

Изобретение относится к вычислительной технике, в частности, к системе информационной поддержки аналитической деятельности территориально-распределенных агентств авиакомпании.
Для оперативного анализа и принятия решений по пассажирским авиаперевозкам, выполняемым за какой-либо заданный период, как правило, используются такие показатели, как количество продаж авиабилетов на соответствующие рейсы и соответственно доход, приходящийся на каждый рейс.
Сопоставление динамики изменения этих показателей в их взаимосвязи позволяет с достаточной степенью вероятности судить о потенциале эксплуатируемого рынка, о структуре пассажиропотока (по доходной ставке), об эффективности расписания (правильности расстановки воздушных судов), о правильности применения тарифов и т.п.
В этой связи особенно актуальной становится задача сбора и обработки данных о продажах билетов территориально-распределенными агентствами авиакомпании на соответствующие рейсы и выявления наиболее правильной расстановки воздушных судов для получения наибольшего эффекта их использования.
Известны системы, которые могли бы быть использованы для решения поставленной задачи [1, 2].
Первая из известных систем содержит блоки приема и хранения данных, соединенные с блоками управления и обработки данных, блоки поиска и селекции, подключенные к блокам хранения данных и отображения, синхронизирующие входы которых соединены с выходками блока управления [1].
Существенный недостаток данной системы состоит в невозможности решения задачи оперативного обновления данных, хранимых в памяти в виде соответствующих документов, в реальном масштабе времени.
Известна и другая система, содержащая телекоммуникационную сеть блоков обработки данных, информационные входы которых соединены с блоками приема данных и управления, а выходы подключены к первой группе блоков памяти, центральный процессор, входы которого соединены с выходами блоков памяти первой группы и блоков обработки данных, а выходы соединены с входами блоков памяти второй группы и блоков отображения данных [2].
Последнее из перечисленных выше технических решений наиболее близко к описываемому.
Его недостаток заключается в невысоком быстродействии системы, обусловленном тем, что выполнение процедуры актуализации данных, собираемых системой от территориально-распределенных объектов системы по телекоммуникационной сети передачи данных, реализуется через процедуру их поиска по всему объему базы данных системы с последующим выполнением обработки обновляемых данных центральным процессором, что при больших объемах данных базы данных системы неизбежно приводит к большим затратам времени.
Цель изобретения - повышение быстродействия системы путем локализации адресов записей базы данных по идентификаторам принимаемых системой сообщений от территориально-распределенных агентств авиакомпании.
Поставленная цель достигается тем, что в известную систему, содержащую модуль формирования адреса базы данных сервера, информационный выход которого является адресным выходом системы, предназначенным для выдачи адреса считывания (записи) на адресный вход сервера базы данных, модуль идентификации готовности сводных данных, информационный выход которого является первым сигнальным выходом системы, предназначенным для выдачи на табло отображения системы информации о числе агентств авиакомпании, приславших свои сводные данные, а синхронизирующий выход модуля идентификации готовности сводных данных является вторым сигнальным выходом системы, предназначенным для выдачи сигнала о готовности сводных данных от всех агентств авиакомпании, модуль коммутации каналов выдачи данных, информационные выходы группы которого являются информационными выходами группы системы, предназначенными для выдачи числа продаж авиабилетов на рабочее место пользователя, введены модуль идентификации агентства запроса, информационный вход которого является первым информационным входом системы, предназначенным для приема кодограмм запроса с автоматизированных рабочих мест пользователей системы, первый синхронизирующий вход модуля идентификации агентства запроса является первым синхронизирующим входом системы, предназначенным для приема синхронизирующих сигналов занесения кодограмм запроса с автоматизированных рабочих мест пользователей системы в модуль идентификации агентства запроса, первый информационный выход модуля идентификации агентства запроса подключен к первому информационному входу модуля коммутации каналов выдачи данных, второй информационный выход модуля идентификации агентства запроса соединен с первым информационным входом модуля формирования адреса базы данных сервера, первый и второй синхронизирующие выходы модуля идентификации агентства запроса соединены с первым и вторым
синхронизирующими входами модуля коммутации каналов выдачи данных соответственно, а первый и второй управляющие выходы модуля идентификации агентства запроса подключены к первому и второму управляющим входам модуля коммутации каналов выдачи данных соответственно, модуль селекции базового адреса и результатов продаж агентства передачи сообщения, информационный вход которого является вторым информационным входом системы, предназначенным для приема данных о результатах продаж авиабилетов с автоматизированных рабочих мест агентств авиакомпании, синхронизирующий вход модуля селекции базового адреса и результатов продаж агентства передачи сообщения является вторым синхронизирующим входом системы, предназначенным для приема синхронизирующих сигналов занесения данных о результатах продаж авиабилетов с автоматизированных рабочих мест агентств авиакомпании в модуль селекции базового адреса и результатов продаж агентства передачи сообщения, первый информационный выход модуля селекции базового адреса и результатов продаж агентства передачи сообщения подключен ко второму информационному входу модуля коммутации каналов выдачи данных, второй информационный выход модуля селекции базового адреса и результатов продаж агентства передачи сообщения соединен со вторым информационным входом модуля формирования адреса базы данных сервера, а первый синхронизирующий выход модуля селекции базового адреса и результатов продаж агентства передачи сообщения подключен к первому управляющему входу модуля идентификации агентства запроса, модуль соотнесения результатов продаж интервалу приема сообщений, первый информационный вход которого является третьим информационным входом системы, предназначенным для приема записей, считанных из базы данных сервера, второй информационный вход модуля соотнесения результатов продаж интервалу приема сообщений подключен к третьему информационному выходу модуля селекции базового адреса и результатов продаж агентства передачи сообщения, синхронизирующий вход модуля соотнесения результатов продаж интервалу приема сообщений является третьим синхронизирующим входом системы,
предназначенным для приема из сервера синхронизирующих сигналов занесения записей, считанных из базы данных сервера, в модуль соотнесения результатов продаж интервалу приема сообщений, управляющий вход модуля соотнесения результатов продаж интервалу приема сообщений подключен к третьему управляющему выходу модуля идентификации агентства запроса, первый информационный выход модуля соотнесения результатов продаж интервалу приема сообщений является первым информационным выходом системы, предназначенным для выдачи данных результатов продаж авиабилетов агентствами авиакомпании, второй информационный выход модуля соотнесения результатов продаж интервалу приема сообщений подключен к третьему информационному входу модуля коммутации каналов выдачи данных, третий информационный выход модуля соотнесения результатов продаж интервалу приема сообщений соединен с третьим информационным входом модуля формирования адреса базы данных сервера, первый синхронизирующий выход модуля соотнесения результатов продаж интервалу приема сообщений подключен ко второму синхронизирующему входу модуля идентификации агентства запроса, второй синхронизирующий выход модуля соотнесения результатов продаж интервалу приема сообщений, подключенный ко второму управляющему входу модуля идентификации агентства запроса, соединен с первым синхронизирующим входом модуля формирования адреса базы данных сервера, а первый и второй управляющие выходы модуля соотнесения результатов продаж интервалу приема сообщений соединены с первым и вторым управляющим входами модуля формирования адреса базы данных сервера соответственно, модуль селекции входных сообщений, информационный вход которого соединен с четвертым информационным выходом модуля селекции базового адреса и результатов продаж агентства передачи сообщения, первый синхронизирующий вход модуля селекции входных сообщений подключен к третьему синхронизирующему выходу модуля идентификации агентства запроса, второй синхронизирующий вход модуля селекции входных сообщений подключен ко второму синхронизирующему выходу модуля селекции базового адреса и результатов
продаж агентства передачи сообщения, третий синхронизирующий вход модуля селекции входных сообщений подключен к третьему синхронизирующему выходу модуля соотнесения результатов продаж интервалу приема сообщений, четвертый синхронизирующий вход модуля селекции входных сообщений подключен к синхронизирующему выходу модуля формирования адреса базы данных сервера, пятый синхронизирующий вход модуля селекции входных сообщений соединен с четвертым синхронизирующим выходом модуля соотнесения результатов продаж интервалу приема сообщений, первый синхронизирующий выход модуля селекции входных сообщений является первым синхронизирующим выходом системы, предназначенным для выдачи серверу базы данных сигналов управления считыванием, второй синхронизирующий выход модуля селекции входных сообщений, подключенный к счетному входу модуля идентификации готовности сводных данных, является вторым синхронизирующим выходом системы, предназначенным для выдачи серверу базы данных сигналов управления записью, третий синхронизирующий выход модуля селекции входных сообщений подключен ко второму синхронизирующему входу модуля формирования адреса базы данных сервера, четвертый синхронизирующий выход модуля селекции входных сообщений соединен с третьим синхронизирующим входом модуля формирования адреса базы данных сервера, при этом пятый информационный выход модуля селекции базового адреса и результатов продаж агентства передачи сообщения является вторым информационным выходом системы, предназначенным для выдачи данных результатов продаж авиабилетов агентствами авиакомпании.
Сущность изобретения поясняется чертежами, где на фиг.1 представлена структурная схема системы, на фиг.2 представлен пример конструктивного выполнения модуля идентификации агентства запроса, на фиг.3 - пример конкретного конструктивного выполнения модуля селекции базового адреса и результатов продаж агентства передачи сообщения, на фиг.4 - пример конкретного конструктивного выполнения модуля селекции входных сообщений, на фиг.5 - пример конкретного конструктивного выполнения модуля коммутации
каналов выдачи данных, на фиг.6 - пример конкретного конструктивного выполнения модуля формирования адреса базы данных сервера, на фиг.7 - пример конкретного конструктивного выполнения модуля идентификации готовности сводных данных, на фиг.8 - пример конкретного конструктивного выполнения модуля соотнесения результатов продаж интервалу приема сообщений.
Система (фиг.1) содержит модуль 1 идентификации агентства запроса, модуль 2 селекции базового адреса и результатов продаж агентства передачи сообщения, модуль 3 селекции входных сообщений, модуль 4 коммутации каналов выдачи данных, модуль 5 формирования адреса базы данных сервера, модуль 6 идентификации готовности сводных данных, модуль 7 соотнесения результатов продаж интервалу приема сообщений.
На фиг.1 показаны первый 11, второй 12 и третий 13 информационные входы системы, первый 14, второй 15 и третий 16 синхронизирующие входы системы, а также адресный 20, первый 21 и второй 22 информационные выходы системы, первый 23 и второй 24 синхронизирующие выходы системы, информационные выходы 25-27 группы системы, первый 28 и второй 29 сигнальные выходы системы.
Модуль 1 идентификации агентства запроса (фиг.2) содержит блок памяти 30, выполненный в виде постоянного запоминающего устройства, дешифратор 31, регистр 32, триггеры 33-34, элементы 35-40 И, элемент 41 ИЛИ, элементы 42-44 задержки.
На чертеже показаны информационный 11, синхронизирующие 14, 46 и управляющие 47-48 входы, а также информационные 49-50, синхронизирующие 51-53 и управляющие 54-56 выходы модуля.
Модуль 2 селекции базового адреса и результатов продаж агентства передачи сообщения (фиг.3) содержит блок памяти 60, выполненный в виде постоянного запоминающего устройства, дешифратор 61, регистр 62, сумматор 63, триггер 64, элементы 65-68 И, элемент 69 ИЛИ, элемент 70 задержки.
На чертеже показаны информационный 12 и синхронизирующий 15 входы, а также информационные 71-75 и синхронизирующие 76-77 выходы модуля.
Модуль 3 селекции входных сообщений (фиг.4) содержит дешифратор 82, элементы 83-85 ИЛИ, элементы 86-87 И, элементы 88-92 задержки. На чертеже показаны информационный 93 и синхронизирующие 94-98 входы, а также синхронизирующие 99-102 выходы модуля.
Модуль 4 коммутации каналов выдачи данных (фиг.5) содержит дешифратор 131, группы 132-136 элементов И, группу 137 элементов ИЛИ, элемент 138 ИЛИ. На чертеже показаны информационные 141-143, синхронизирующие 144-145 и управляющие 146-147 входы модуля, а также информационные выходы 25-27 группы выходов модуля.
Модуль 5 формирования адреса базы данных сервера (фиг.6) содержит сумматор 110, регистры 111-112, группы 113-114 элементов И, группы 115-116 элементов ИЛИ, элемент 117 задержки.
На чертеже показаны информационные 120-122, синхронизирующие 123-125, управляющие 126-127 входы, а также адресный 20 и синхронизирующий 128 выходы модуля.
Модуль 6 идентификации готовности сводных данных (фиг.7) содержит компаратор 150, счетчик 151, регистр 152, элемент 153 задержки.
На чертеже показаны синхронизирующий 155 вход, а также информационный 28 и синхронизирующий 29 выходы модуля.
Модуль 7 соотнесения результатов продаж интервалу приема сообщений (фиг.8) содержит сумматор 160, первый счетчик 161, второй счетчик 162, первый регистр 163, второй регистр 164, компаратор 165, триггер 166, группы 167-169 элементов И, элемент 170 И, группу 171 элементов ИЛИ, элементы 172-176 задержки.
На чертеже показаны информационные 13, 184, синхронизирующий 16 и управляющий 185 входы, а также информационные 21, 186, 187, синхронизирующие 188-191 и управляющие 192-193 выходы модуля.
В данной системе территориально-распределенные агентства авиакомпании выступают в качестве источников данных о количестве проданных билетов за определенный интервал времени.
Передача сообщений о количестве проданных билетов на соответствующие рейсы за определенный период времени реализуется по определенному регламенту, в соответствии с которым агентства авиакомпании передают итоговые сведения о числе проданных билетов на определенные моменты времени, например, в начале каждого часа.
Работу системы рассмотрим на примере решения основных функциональных задач, связанных как с получением и обработкой данных о числе проданных билетов на соответствующие рейсы, так и с получением итоговых данных результатов продаж во всех территориально-распределенных агентствах авиакомпании.
При решении задачи сбора и обработки данных о числе проданных билетов на информационный вход 12 системы от каждого агентства авиакомпании в соответствии с установленным регламентом по тракту передачи данных последовательно поступают сообщения (кодограммы), имеющие следующую структуру:
код
код
код
код
Признак входного сообщения
Идентификатор агентства авиакомпании
Общее число продаж за заданный интервал времени
Остальные атрибуты продаж, включающие данные о количестве мест, проданных на соответствующие рейсы авиакомпании
Код кодограммы агентства с информационного входа 12 системы заносится в регистр 62 модуля 2 селекции базового адреса и результатов продаж агентства передачи сообщения синхронизирующим импульсом с входа 15 системы, который проходит на синхронизирующий вход регистра 62 через элемент 65 И, открытый по второму входу высоким потенциалом с инверсного выхода триггера 64, находящегося до прихода первой кодограммы в исходном состоянии.
Код признака входного сообщения с выхода 80 регистра 62 проходит на выход 74 модуля 2 и поступает на вход 93 модуля 3, откуда подается на вход дешифратора 82, который расшифровывает код признака входного сообщения и, в данном случае, открывает элемент 87 И по одному входу.
Параллельно с этим с выхода 81 регистра 62 код идентификатора агентства, приславшего сообщение, поступает на информационный вход дешифратора 61, который расшифровывает поступивший код, выдавая на один из своих выходов высокий потенциал. Для определенности положим, что высокий потенциал поступил на один вход элемента 68 И.
В это время синхронизирующий импульс с выхода элемента 65 И задерживается элементом 70 на время приема кода входного сообщения в регистр 62 и срабатывания дешифратора 61 и далее, во-первых, поступает на единичный вход триггера 64 и устанавливает его в единичное состояние, при котором с инверсного выхода триггера 64 на один вход элемента 65 И буден выдан низкий потенциал, блокирующий прием следующего сообщения с информационного входа 12 системы в регистр 62 до полного завершения обработки принятого сообщения.
Во-вторых, этот же синхронизирующий импульс с выхода элемента 70 задержки поступает на синхронизирующий вход накапливающего сумматора 63. По этому импульсу сумматор 63 формирует на своем выходе 71 нарастающим итогом результирующее число продаж билетов по всей авиакомпании путем последовательного занесения в него с выхода 78 регистра 62 кода каждого общего числа продаж по агентству, приславшему обрабатываемое сообщение.
Кроме того, каждый поступивший с кодограммой код общего числа продаж по агентству с выхода 72 модуля 2 подается на вход 184 модуля 7 и через элементы 167 И группы, открытые по одному входу высоким потенциалом с инверсного выхода 193 триггера 166, находящегося в исходном состоянии, и через элементы 171 ИЛИ группы выдается на информационный выход 21 системы.
Этот же код общего числа продаж по агентству с входа 184 модуля 7 подается на одни входы сумматора 160 модуля 7.
В-третьих, этот же синхронизирующий импульс с выхода элемента 70 задержки проходит на выход 76 модуля 2 и через управляющий вход 48 модуля 1 поступает на нулевой вход триггера 33, сбрасывая его в нулевое состояние, при котором низким потенциалом с его единичного выхода будут закрыты по одному входу как элемент 35 И, блокирующий поступление запросов с информационного входа 11 системы, так и элемент 36 И, блокирующий работу модуля 4 по входу 144 при обработке текущего сообщения, принятого с информационного входа 12 системы.
В-четвертых, этот же синхронизирующий импульс с выхода элемента 70 задержки поступает на опрос состояния элементов 66-68 И,
Учитывая то обстоятельство, что открытым по одному входу будет только элемент 68 И, то, пройдя этот элемент И, синхроимпульс поступает, во-первых, на вход считывания фиксированной ячейки памяти постоянного запоминающего устройства 60, где хранится базовый адрес ячейки памяти базы данных сервера, закрепленной за данным агентством, и считывает ее содержимое через выход 75 модуля 2 на вход 121 модуля 5.
С входа 121 модуля 5 код базового адреса агентства, приславшего входное сообщение, проходит через элементы 115 ИЛИ группы на информационные входы регистров 111 и 112.
Во-вторых, этот же импульс считывания кода базового адреса агентства с выхода элемента 68 И проходит через элемент 69 ИЛИ на выход 77 модуля 2 и далее поступает на вход 94 модуля 3, где задерживается элементом 88 задержки на время считывания содержимого фиксированной ячейки ПЗУ 60, проходит через открытый дешифратором 82 элемент 87 И, и затем, во-первых, проходит через элемент 83 ИЛИ на выход 99 модуля 3 и далее через вход 123 модуля 5 поступает на синхронизирующий вход регистра 111, фиксируя в нем базовый адрес ячейки памяти базы данных сервера, закрепленной за данным агентством.
Этот же импульс с выхода элемента 87 И, во-вторых, проходит на выход 100 модуля 3, пересылается на вход 124 модуля 5 и подается на синхронизирующий вход регистра 112, также фиксируя в нем базовый адрес ячейки памяти базы данных сервера, закрепленной за данным агентством.
Этот же импульс с выхода элемента 87 И, в-третьих, задерживается элементом 90 на время занесения базового адреса агентства в регистры 111 и 112 и далее через элемент 84 ИЛИ и выход 101 модуля 3 выдается на выход 23 системы и далее на вход первого канала прерывания сервера (на чертеже не показано).
По этому сигналу сервер переходит на подпрограмму опроса содержимого базы данных по базовому адресу агентства, который с выхода регистра 111 проходит через элементы 113 И группы, открытые высоким потенциалом, поступающим на вход 126 модуля 5 с инверсного выхода 193 триггера 166 модуля 7, находящегося в исходном состоянии, и через элементы 116 ИЛИ группы выдается на адресный выход 20 системы.
Содержимое базового адреса идентифицированного агентства считывается из базы данных сервера и через информационный вход 13 системы поступает на информационный вход регистра 163 модуля 7, куда оно заносится синхронизирующим импульсом сервера, поступающим на синхронизирующий вход 16 системы.
Следует учесть то, что перед началом работы системы все ее узлы и блоки были установлены в исходное состояние, а содержимое ячеек базы данных сервера было обнулено. Поэтому с приходом первого сообщения от идентифицированного агентства при считывании содержимого его базового адреса на вход регистра 163 модуля 7 будет считываться нулевой код и, следовательно, регистр 163 останется в исходном состоянии.
Содержимое базового адреса идентифицированного агентства (в данном случае оно равно нулю) с выхода регистра 163 модуля 7, во-первых, поступает на выход 186 модуля 7 и затем пересылается на вход 143 модуля 4, проходит через элементы 133 И группы, открытые по входу 147 высоким потенциалом с инверсного выхода триггера 34 модуля 1, находящегося в исходном состоянии, и через элементы 137 ИЛИ группы поступает на одни входы элементов 134-136 И групп.
Во-вторых, содержимое базового адреса идентифицированного агентства с выхода регистра 163 модуля 7 проходит через элементы 169 И группы, открытые по входу 185 высоким потенциалом, поступающим на этот вход через выход 56 модуля 1 с инверсного выхода триггера 33 модуля 1, находящегося в исходном состоянии, и подается на одни входы сумматора 160, на других входах которого находится код числа продаж билетов по данным агентства, приславшего обрабатываемое сообщение.
Импульс занесения кода в регистр 163 с входа 16 системы задерживается элементом задержки 172 на время занесения кода в регистр 163, проходит через элемент 170 И, также открытый по второму входу высоким потенциалом с входа 185, и поступает на синхронизирующий вход сумматора 160.
По этому импульсу к имеющемуся коду сумматора добавляются коды, поступающие на его входы. Поскольку в рассматриваемый момент начальные коды сумматора 160 и регистра 163 равны нулю, то в сумматор 160 будет занесен только код числа продаж билетов по данным агентства, приславшего обрабатываемое сообщение. На следующем шаге к этому коду будет добавлен код числа продаж билетов по данным другого агентства и так далее, пока не будут опрошены все агентства    авиакомпании.
Таким образом, сумматор 160 формирует итоговую сумму продаж билетов, выполненных всеми агентствами авиакомпании в некотором одном временном интервале.
До завершения опроса всех агентств авиакомпании в некотором одном временном интервале на информационный выход 21 системы в каждом сеансе обмена выдается только код числа продаж билетов по данным агентства, приславшего текущее обрабатываемое сообщение.
С информационного выхода 21 системы код числа продаж билетов идентифицированного агентства поступает на информационный вход сервера, на адресном входе которого находится базовый адрес данного агентства с адресного выхода 20 системы.
Получаемая итоговая сумма продаж билетов авиакомпании с выхода сумматора 160 проходит на информационный выход 21 системы только в том случае, если все агентства авиакомпании пришлют свои сообщения. Этот момент фиксируется установкой триггера 166 модуля 7 в единичное состояние, при котором высоким потенциалом с его прямого выхода 192 открываются элементы 168 И группы и пропускают итоговую сумму продаж билетов, которая, пройдя через элементы 171 ИЛИ группы, поступает на информационный выход 21 системы.
Переключение триггера 166 в единичное состояние осуществляется при завершении опроса всех агентств авиакомпании, фиксируемого компаратором 165 модуля 7. Для этого импульс с выхода 170 И, задержанный элементом задержки 173 на время срабатывания сумматора 160, поступает на счетный вход счетчика 161 модуля 7, подсчитывающего число агентств авиакомпании, приславших сообщения в данном временном интервале.
Этот же импульс с выхода элемента задержки 173 задерживается элементом 175 задержки на время срабатывания счетчика 161 и поступает на синхронизирующий вход компаратора 165. По этому сигналу компаратор 165 сравнивает число агентств авиакомпании, приславших сообщения и зафиксированных в счетчике 161, с заданным в регистре 164 общим числом агентств авиакомпании, которые должны прислать свои сообщения.
Этот же импульс с выхода элемента задержки 173 проходит на установочный вход триггера 166, подтверждая его исходное нулевое состояние, при котором высокий потенциал с инверсного выхода 193 триггера 166 подается на одни входы элементов 167 И группы, пропуская тем самым код числа продаж идентифицированного агентства с входа 184 модуля 7 на информационный выход 21 системы.
Если число агентств, приславших сообщения, меньше заданного числа, хранящегося в регистре 164, то на выходе 200 компаратора 165 формируется сигнал, который через выход 191 модуля 7 поступает на вход 96 модуля 3, проходит элемент 85 ИЛИ и с выхода 102 модуля 3 выдается на выход 24 системы.
С выхода 24 системы импульс управления записью данных поступает на вход второго канала прерывания сервера. По этому сигналу сервер переходит на подпрограмму записи и записывает по базовому адресу на адресном выходе 20 системы коды продаж на данное время дня в данном агентстве, выдаваемые системой на информационные выходы 21 и 22 (на информационный выход 22 системы выдается код остальных атрибутов продаж агентства с выхода 73 модуля 2).
Коды продаж другого агентства, получаемые и выделяемые из каждого следующего принятого сообщения, точно таким же образом будут выданы на информационные выходы 21 и 22 системы и записаны по его базовому адресу, идентифицированному и выданному на адресный выход 20 системы. При этом всякий раз код продаж по данным агентства, приславшего обрабатываемое сообщение, не только выдается на информационный выход 21 системы, но и добавляется к содержимому сумматора 160 модуля 7.
Такое разнесение кодов продаж агентств по их базовым адресам и накопление кодов продаж в сумматоре 160 модуля 7 будет продолжаться до тех пор, пока не будут приняты и обработаны сообщения от всех агентств авиакомпании.
Как только система зафиксирует завершение опроса всех агентств авиакомпании, на информационный выход 21 системы сначала будет выдана сумма продаж агентства, сообщение от которого поступило последним в рассматриваемом интервале, а затем будет выдана накопленная в сумматоре 160 модуля 7 итоговая сумма продаж билетов по всем агентствам авиакомпании, полученная в этом временном интервале.
Однако итоговая сумма продаж временного интервала с информационного выхода 21 системы будет записана не по базовому адресу заключительного агентства интервала, а по так называемому модифицированному базовому адресу этого агентства, также выдаваемому на адресный выход 20 системы.
Модифицированный базовый адрес агентства представляет собой сумму его базового адреса с некоторым смещением. В качестве смещения используется порядковый номер интервала, в пределах которого была получена рассматриваемая итоговая сумма продаж билетов по всем агентствам авиакомпании.
В то же время каждому номеру интервала однозначно соответствует цифровое значение кода содержимого счетчика 162 модуля 7. Это соответствие устанавливается после завершения опроса всех агентств в момент, когда содержимое счетчика 162 увеличивается на 1 (инкрементируется).
Описываемая процедура записи кодов продаж из принятого сообщения по базовым адресам их агентств одинаковым образом осуществляется для всех агентств авиакомпании в каждом временном интервале приема сообщений. Завершение процедуры записи в каждом временном интервале контролируется содержимым регистра 164 модуля 7 и фиксируется тогда, когда содержимое счетчика 161 модуля 7 становится равным содержимому регистра 164.
При этом каждый временной интервал, начиная с первого, однозначно определяется цифровым соответствием содержимого счетчика 162 модуля 7. Переход от интервала к интервалу осуществляется в момент совпадения показаний счетчика 161 и регистра 164 модуля 7.
В рассматриваемый момент времени содержимое счетчика равно нулю и, следовательно, система находится в начальном (первом) временном интервале приема сообщений от агентств авиакомпании. Как только сравниваются показания счетчика 161 и регистра 164, компаратор 165 по синхронизирующему импульсу с выхода элемента 175 задержки вырабатывает сигнал на своем выходе 201.
Этот сигнал, во-первых, сразу же поступает на счетный вход счетчика 162 и увеличивает его содержимое на единицу, определяя тем самым для агентств авиакомпании конкретный временной интервал приема сообщений, в процессе которого на выходе сумматора 160 модуля 7 была получена новая итоговая сумма продаж авиабилетов.
В данном случае в счетчик 162 была занесена первая единица и, следовательно, временному интервалу после первого опроса всех агентств авиакомпании ставится в соответствие значение «1».
Этот сигнал, во-вторых, с выхода 190 модуля 7 пересылается на вход 98 модуля 3, проходит элемент 85 ИЛИ и с выхода 102 модуля 3 пересылается на выход 24 системы.
С выхода 24 системы импульс управления записью данных поступает на вход второго канала прерывания сервера. По этому сигналу сервер переходит на подпрограмму записи и записывает по базовому адресу на адресном выходе 20 системы коды продаж заключительного агентства интервала с информационных выходов 21 и 22 системы, т.е. в этом случае будут записаны коды продаж агентства, приславшим свое сообщение последним в рассмотренном интервале.
Этот сигнал, в-третьих, после задержки элементом 174 на время срабатывания счетчика 162 поступает на установочный вход счетчика 161 и возвращает счетчик 161 в исходное состояние, подготавливая его к следующему очередному циклу приема сообщений.
Этот же сигнал, в-четвертых, с выхода элемента 174 задержки поступает на выход 189 модуля 7 и затем пересылается как на вход 47 модуля 1, устанавливая триггер 33 модуля 1 в единичное состояние, так и на синхронизирующий вход 125 сумматора 110  модуля 5.
Высоким потенциалом со своего прямого выхода триггер 33 модуля 1 открывает по одному входу элементы 35, 36 И модуля 1, а низким потенциалом с инверсного выхода 56 модуля 1 блокирует работу модуля 7 по входу 185.
Открытие элемента 35 И по одному входу снимает блокировку приема сообщений от агентств авиакомпании с информационного входа 11 системы в регистр 32 модуля 1 по синхронизирующему импульсу с входа 14 системы, а открытие элемента 36 И по одному входу снимает блокировку прохождения синхроимпульса сервера с входа 16 системы на вход 144 модуля 4.
Этот же сигнал, в-пятых, задерживается элементом 176 задержки на время записи кодов продаж заключительного агентства интервала с выхода 21 системы по его базовому адресу на выходе 20 системы и поступает на единичный вход триггера 166, переключая его в единичное состояние, при котором на прямом выходе 192 триггера 166 будет высокий потенциал, а на инверсном выходе 193 триггера 166 - низкий.
Низким потенциалом с инверсного выхода 193 триггера 166 закрываются по одному входу элементы 113 И группы модуля 5, блокируя тем самым подключение выхода регистра 111 модуля 5 к адресному выходу 20 системы, и, наоборот, высоким потенциалом с прямого выхода 192 триггер 166 открывает элементы 114 И группы по одному входу, подключая тем самым выход сумматора 110 к адресному выходу 20 системы.
Кроме того, высоким потенциалом с прямого выхода 192 триггер 166 открывает по одному входу элементы 168 И группы, пропуская на информационный выход 21 системы с выхода сумматора 160 итоговую сумму продаж билетов, полученную от всех агентств авиакомпании в рассмотренном временном интервале, а низким потенциалом с инверсного выхода 193 закрывает элементы 167 И группы по одному входу, блокируя тем самым прохождение с входа 184 модуля 7 на выход 21 системы суммы продаж по данным некоторого одного агентства.
Синхроимпульс сервера с входа 16 системы проходит на выход 188 модуля 7, пересылается на вход 46 модуля 1, задерживается элементом 42 задержки на время переключения триггера 33 модуля 1 в единичное состояние, проходит элемент 36 И, открытый по другому входу высоким потенциалом с прямого выхода триггера 33, и с выхода 53 модуля 1 пересылается на вход 144 модуля 4.
С поступлением каждого импульса на синхронизирующий вход 125 сумматора 110 модуля 5 на выходе сумматора 110 формируется модифицированный базовый адрес агентства путем прибавления к его базовому адресу, подаваемому на один вход сумматора с выхода регистра 112, некоторого смещения в виде содержимого счетчика 162 модуля 7, подаваемого на вход 122 сумматора с выхода 187 модуля 7.
Смещение добавляется к базовому адресу того агентства, сообщение от которого в рассматриваемом временном интервале поступило в систему последним. Регистрация этого агентства в счетчике 161 модуля 5 сравняла показания счетчика 161 с данными регистра 164, что привело к выработке сигнала на выходе 201 компаратора 165 модуля 5, по которому триггер 166 переключился в единичное состояние, а содержимое счетчика 162 увеличилось на единицу.
Сумматор 110 модуля 5 выполняет функцию модификации базовых адресов агентств с целью их привязки к конкретным значениям временных интервалов, в пределах которых агентства авиакомпании сообщают новые данные. Формирование модифицированных базовых адресов предназначено для упорядоченного документирования всех принимаемых сообщений, выдаваемых агентствами, прямо в процессе приема сообщений.
Поскольку после первого опроса всех агентств авиакомпании содержимое счетчика 162 равно «1», то модифицированный базовый адрес агентства, приславшего заключительное сообщение о сумме проданных билетов, получается добавлением «1» к коду его базового адреса.
Полученный код модифицированного базового адреса этого агентства с выхода сумматора 110 модуля 5 проходит элементы 114 И группы, открытые по входу 127 модуля 5 высоким потенциалом с прямого выхода 192 триггера 166 модуля 7, находящегося в единичном состоянии, элементы 116 ИЛИ группы и поступает на адресный выход 20 системы.
Кроме того, синхронизирующий импульс сумматора 110 модуля 5 с входа 125 модуля 5 задерживается элементом 117 задержки на время срабатывания сумматора 110 и через выход 128 модуля 5 пересылается на вход 97 модуля 3, проходит элемент 85 ИЛИ и с выхода 102 модуля 3 выдается на выход 24 системы.
С выхода 24 системы импульс управления записью данных поступает на вход второго канала прерывания сервера. По этому сигналу сервер переходит на подпрограмму записи кода итоговой суммы продаж билетов по всем агентствам авиакомпании некоторого одного временного интервала с информационного выходы 21 системы по модифицированному базовому адресу на адресном выходе 20 системы.
Таким образом, все сообщения, присланные каждым агентством авиакомпании, будут последовательно документированы с жесткой привязкой к его базовому адресу, а само содержимое базового адреса данного агентства будет представлять собой накопленную сумму числа продаж, выполненных на данный момент времени в этом агентстве.
Аналогичным образом система работает и при решении функциональной задачи приема сводных данных продаж билетов от всех агентств авиакомпании, передаваемых по состоянию на заданное время, например, на 00 часов очередных суток.
При решении данной функциональной задачи на информационный вход 12 системы в соответствии с установленным регламентом по тракту передачи данных последовательно поступают сообщения (кодограммы) от агентств авиакомпании, имеющие следующую структуру:
Код
Код
Код
Код
Признак входного сообщения
Идентификатор агентства авиакомпании
Итоговое число продаж
Остальные атрибуты продаж, включающие данные о количестве мест, проданных на соответствующие рейсы авиакомпании
Код кодограммы агентства с информационного входа 12 системы заносится в регистр 62 модуля 2 селекции базового адреса и результатов продаж агентства передачи сообщения синхронизирующим импульсом с входа 15 системы, который проходит на синхронизирующий вход регистра 62 через элемент 65 И, открытый по второму входу высоким потенциалом с инверсного выхода триггера 64, находящегося до прихода первой кодограммы в исходном состоянии.
Код признака входного сообщения с выхода 80 регистра 62 проходит на выход 74 модуля 2 и поступает на вход 93 модуля 3, откуда подается на вход дешифратора 82, который расшифровывает код признака входного сообщения и, в данном случае, открывает элемент 86 И по одному входу.
Параллельно с этим с выхода 81 регистра 62 код идентификатора агентства, приславшего сообщение, поступает на информационный вход дешифратора 61, который расшифровывает поступивший код, выдавая на один из своих выходов высокий потенциал. Для определенности положим, что высокий потенциал поступил на один вход элемента 66 И.
В это время синхронизирующий импульс с выхода элемента 65 И задерживается элементом 70 на время приема кода входного сообщения в регистр 62 и срабатывания дешифратора 61 и далее, во-первых, поступает на единичный вход триггера 64 и устанавливает его в единичное состояние, при котором с инверсного выхода триггера 64 на один вход элемента 65 И буден выдан низкий потенциал, блокирующий прием следующего сообщения с информационного входа 12 системы в регистр 62 до полного завершения обработки принятого сообщения.
Во-вторых, этот же синхронизирующий импульс с выхода элемента 70 задержки поступает на синхронизирующий вход накапливающего сумматора 63. По этому импульсу сумматор 63 формирует на своем выходе 71 нарастающим итогом результирующее число продаж билетов по всей авиакомпании путем последовательного занесения в него с выхода 78 регистра 62 кода каждого итогового числа продаж по агентству, приславшему обрабатываемое сообщение.
Кроме того, каждый поступивший с кодограммой код итогового числа продаж по агентству с выхода 72 модуля 2 подается на вход 184 модуля 7 и через элементы 167 И группы, открытые по одному входу высоким потенциалом с инверсного выхода 193 триггера 166, находящегося в исходном состоянии, и через элементы 171 ИЛИ группы выдается на информационный выход 21 системы. Этот же код общего числа продаж по агентству с входа 184 модуля 7 подается на одни входы сумматора 160 модуля 7.
В-третьих, этот же синхронизирующий импульс с выхода элемента 70 задержки проходит на выход 76 модуля 2 и через управляющий вход 48 модуля 1 поступает на нулевой вход триггера 33, сбрасывая его в нулевое состояние, при котором низким потенциалом с его единичного выхода будут закрыты по одному входу как элемент 35 И, блокирующий поступление запросов с информационного входа 11 системы, так и элемент 36 И, блокирующий работу модуля 4 по входу 144 при обработке текущего сообщения, принятого с информационного входа 12 системы.
В-четвертых, этот же синхронизирующий импульс с выхода элемента 70 задержки поступает на опрос состояния элементов 66-68 И,
Учитывая то обстоятельство, что открытым по одному входу будет только элемент 66 И, то, пройдя этот элемент И, синхроимпульс поступает, во-первых, на вход считывания фиксированной ячейки памяти постоянного запоминающего устройства 60, где хранится базовый адрес ячейки памяти базы данных сервера, закрепленной за данным агентством, и считывает ее содержимое через выход 75 модуля 2 на вход 121 модуля 5.
С входа 121 модуля 5 код базового адреса агентства, приславшего входное сообщение, проходит через элементы 115 ИЛИ группы на информационные входы регистров 111 и 112.
Во-вторых, этот же импульс считывания кода базового адреса агентства с выхода элемента 66 И проходит через элемент 69 ИЛИ на выход 77 модуля 2 и далее поступает на вход 94 модуля 3, где задерживается элементом 88 задержки на время считывания содержимого фиксированной ячейки ПЗУ 60, проходит через открытый дешифратором 82 элемент 86 И, и затем, во-первых, проходит через элемент 83 ИЛИ на выход 99 модуля 3 и далее через вход 123 модуля 5 поступает на синхронизирующий вход регистра 111, фиксируя в нем базовый адрес ячейки памяти базы данных сервера, закрепленной за данным агентством.
Этот же импульс с выхода элемента 86 И модуля 3, в-третьих, задерживается элементом 92 на время занесения базового адреса агентства в регистр 111 и далее через элемент 85 ИЛИ и выход 102 модуля 3 выдается на выход 24 системы в качестве импульса управления записью данных.
Импульс управления записью данных поступает на вход второго канала прерывания сервера. По этому сигналу сервер переходит на подпрограмму записи и записывает по базовому адресу на адресном выходе 20 системы содержание сводных данных от указанного агентства, выдаваемых системой на информационные выходы 21 и 22.
Кроме того, каждый синхронизирующий импульс записи сводных данных в базу данных с выхода 102 модуля 3 поступает на вход 155 модуля 6, откуда он подается на счетный вход счетчика 151, фиксирующего число итоговых данных, присланных агентствами. В регистр 152 введено работающее число агентств авиакомпании. Показания счетчика 151 через сигнальный выход 28 системы выведены на табло отображения.
Каждый синхронизирующий импульс, поступающий на вход 155 модуля 6, задерживается элементом 153 на время срабатывания счетчика 151 и поступает на синхронизирующий вход компаратора 150, сравнивающего заданное число агентств с числом агентств, зафиксированных счетчиком 151.
Как только показания счетчика 151 и регистра 152 будут равны, на второй сигнальный выход 29 системы будет выдан сигнал о готовности сводных данных от всех агентств авиакомпании для подведения окончательных итогов.
Как уже отмечалось выше, окончание операции приема сообщений от всех агентств авиакомпании в некотором одном временном интервале фиксируется выработкой сигнала на выходе 201 компаратора 165 модуля 7. Этот сигнал с выхода 189 модуля 7 поступает на управляющий 47 вход модуля 1 и устанавливает триггер 33 режима в единичное состояние, при котором низкий потенциал с инверсного выхода 56 этого триггера поступает на вход 185 модуля 7 и блокирует работу элементов 169 И группы и элемента 170 И.
Кроме того, высоким потенциалом с прямого выхода триггера 33 модуля 1 открываются элементы 35 и 36 И по одному входу. Тем самым разрешается переход системы в режим выдачи справок по итоговым данным.
Структура кодограммы запроса на получение соответствующих справок имеет следующий вид:
КОД
КОД
Идентификатор рабочего места запроса данных
Тип запрашиваемых данных:
- число продаж, выполненных агентством запроса,
- число продаж, выполненных всеми агентствами авиакомпании
Код запроса с рабочего места пользователя системы поступает на информационный вход 11 модуля 1, откуда поступает на информационные входы регистра 32. Одновременно на вход 14 модуля 1 поступает синхронизирующий импульс, который, пройдя открытый по одному входу элемент 35 И, поступает на синхронизирующий вход регистра 32, занося в него код запроса.
Код типа запроса с выхода 58 регистра 32 модуля 1 поступает на вход дешифратора 31, который расшифровывает тип запроса пользователя, выдавая на один из своих выходов высокий потенциал. Для определенности положим, что высокий потенциал поступил на один вход элемента 39 И.
Параллельно с этим синхронизирующий импульс с выхода элемента 35 И, задержанный элементом 43 задержки на время срабатывания регистра 32 и дешифратора 31, опрашивает состояние элементов 37 - 40 И.
Учитывая то обстоятельство, что открытым по одному входу будет только элемент 39 И, то, пройдя этот элемент И, синхроимпульс, во-первых, поступает на вход считывания фиксированной ячейки памяти постоянного запоминающего устройства (ПЗУ) 30, где хранится базовый адрес ячейки памяти, закрепленной за тем агентством, справочные данные которого запрашиваются.
Код базового адреса с выхода 50 модуля 1 поступает на вход 120 модуля 5 и далее, пройдя элементы 115 И группы, подается на входы регистров 111 и 112.
Во-вторых, тот же импульс считывания с выхода элемента 39 И проходит элемент 41 ИЛИ модуля 1 и через выход 51 модуля 1 подается на вход 95 модуля 3, где задерживается элементом 89 задержки на время считывания содержимого фиксированной ячейки ПЗУ 30.
Тот же импульс считывания с выхода элемента 89 задержки модуля 3, во-первых, проходит элемент 83 ИЛИ и с выхода 99 модуля 3 поступает на вход 123 модуля 5 и заносит код базового адреса агентства запроса в регистр 111 модуля 5.
Во-вторых, тот же импульс считывания с выхода элемента 89 задержки задерживается элементом 91 задержки на время занесения кода базового адреса агентства запроса в регистр 111, проходит элемент 84 ИЛИ и через выход 101 модуля 3 поступает на выход 23 системы и далее на вход первого канала прерывания сервера.
По этому сигналу сервер переходит на подпрограмму считывания содержимого своей базы данных по базовому адресу агентства запроса, который с выхода регистра 111 модуля 5 проходит элементы 113 И группы, открытые по входу 126 высоким потенциалом с инверсного выхода 193 триггера 166, находящегося в исходном состоянии, элементы 116 ИЛИ группы и выдается на адресный выход 20 системы.
Содержимое базового адреса запрашиваемого агентства считывается из базы данных сервера и через информационный вход 13 системы поступает на информационный вход регистра 163 модуля 7, куда и заносится импульсом синхронизации сервера с входа 16 модуля 7.
Кроме того, импульс синхронизации с входа 16 модуля 7 проходит на выход 188 модуля 7 и пересылается на вход 46 модуля 1, где задерживается элементом 42 на время занесения данных в регистр 163 модуля 7, и далее, пройдя элемент 36 И, открытый высоким потенциалом с прямого выхода регистра 33 модуля 1, находящегося в единичном состоянии, выдается на выход 53 модуля 1 в качестве импульса синхронизации выдачи ответа на запрос пользователя.
Этот импульс с выхода 53 модуля 1 поступает на синхронизирующий вход 144 модуля 4, проходит элемент 138 ИЛИ и далее переписывает содержимое базового адреса запрашиваемого агентства с выхода 186 модуля 7 через элементы 133 И группы, открытые по входу 147 высоким потенциалом с инверсного выхода триггера 34 модуля 1, находящегося в исходном состоянии, элементы 137 ИЛИ группы и элементы И одной из групп 134-136 на рабочее место пользователя системы, приславшего запрос, через один из выходов 25-27 системы.
Для этого параллельно с описанным процессом код идентификатора рабочего места пользователя системы с выхода 49 модуля 1 поступает на вход 141 модуля 4 и далее на входы дешифратора 131 модуля 4, который открывает одну из групп 134-136, соответствующую выбранному рабочему месту пользователя системы.
Содержимое базового адреса запрашиваемого агентства с выхода регистра 163 модуля 7 пересылается на выход 186 модуля 7, откуда поступает на вход 143 модуля 4 и далее через элементы 133 И группы, открытые по второму входу высоким потенциалом с инверсного выхода 55 триггера 34 модуля 1, находящегося в исходном состоянии, подаваемого через вход 147 модуля 4, проходит через элементы 137 ИЛИ группы и далее поступает на входы групп элементов 134-136 И.
После выдачи справки на соответствующее рабочее место пользователя системы все узлы и элементы системы устанавливаются в исходное состояние тем же импульсом с выхода элемента 138 ИЛИ, задержанным на время выдачи данных (для упрощения чертежа цепи установки узлов и блоков системы в исходное состояние на чертеже не показаны).
Если же в систему поступает запрос второго типа, по которому пользователь запрашивает итоговую сумму продаж всеми агентствами, то дешифратор 31 модуля 1 в этом случае открывает по одному входу элемент 40 И, а синхронизирующий импульс с выхода элемента 43 задержки проходит через элемент 40 И и поступает на единичный вход триггера 34, устанавливая его в единичное состояние.
Высоким потенциалом с выхода 54 модуля 1, поступающим на вход 146 модуля 4, элементы 132 И группы будут открыты, а элементы 133 И группы - закрыты. При этом выход 71 сумматора 63 модуля 2 через вход 142 модуля 4 будет подключен к каналу выдачи данных на рабочее место пользователя, приславшего запрос.
Синхронизирующий импульс с выхода элемента 40 И модуля 1 задерживается элементом 44 задержки на время срабатывания триггера 34 и подключения выхода сумматора 63 к каналу выдачи данных на рабочее место пользователя и с выхода 52 модуля 1 поступает на вход 145 модуля 4, проходит элемент 138 ИЛИ и поступает на синхронизирующий вход элементов 134-136 И групп, обеспечивая выдачу запрашиваемых данных.
Таким образом, введение новых узлов и блоков и новых конструктивных связей позволило существенно повысить быстродействие системы путем исключения затрат времени, связанных с выполнением процедур предварительной записи всей получаемой информации в базу данных, ее последующим поиском и обработкой.
Источники информации, принятые во внимание при составлении описания заявки:
1. Патент США№0505651, М. кл. G06F 13/40, 13/38, 1992.
2. Патент США №05129083, М. кл. G06F 12/00, 15/40, 1992 (прототип).