автоматизированная система сбора и обработки данных электронного голосования гас "выборы"
Классы МПК: | G06F17/40 сбор данных и их регистрация G06F17/30 информационный поиск; структуры баз данных для этой цели G07C13/00 Устройства для голосования |
Автор(ы): | Юхневич Леонид Александрович (RU), Демин Борис Евгеньевич (RU), Бурдаков Виктор Иванович (RU), Морозова Антонина Васильевна (RU), Романов Анатолий Николаевич (RU), Ященко Виктор Васильевич (RU) |
Патентообладатель(и): | Федеральное государственное унитарное предприятие "Научно-исследовательский институт "Восход" (RU) |
Приоритеты: |
подача заявки:
2005-06-20 публикация патента:
10.01.2007 |
Изобретение относится к области вычислительной техники, в частности к автоматизированной системе сбора и обработки данных электронного голосования. Техническим результатом является повышение быстродействия системы путем локализации адресов записей базы данных по идентификаторам принимаемых системой сообщений и формирования нарастающего итога результатов голосования в реальном масштабе времени. Технический результат достигается тем, что система содержит блок приема входных сообщений, блок приема данных из базы данных сервера, блок идентификации избирательных комиссий, первый и второй блоки идентификации опорных адресов кандидатов, блок селекции временных циклов выдачи результатов голосования, блок селекции временных циклов записи результатов голосования, блок селекции временных циклов приема входных сообщений, блок формирования сигналов считывания и записи базы данных, блок формирования итоговых данных результатов голосования. 9 ил.
Формула изобретения
Автоматизированная система сбора и обработки данных электронного голосования государственной автоматизированной системы «Выборы», содержащая блок приема входных сообщений, информационный и синхронизирующий входы которого являются первыми информационным и синхронизирующим входами системы, а первый информационный выход является первым информационным выходом системы, при этом информационный вход блока приема входных сообщений предназначен для приема кодограмм от избирательных комиссий, синхронизирующий вход блока приема входных сообщений предназначен для приема синхронизирующих сигналов занесения кодограмм избирательных комиссий в блок приема входных сообщений, а первый информационный выход блока приема входных сообщений предназначен для выдачи кодограмм избирательных комиссий на информационный вход сервера, блок приема записей базы данных сервера, информационный и синхронизирующий входы которого являются вторыми информационным и синхронизирующим входами системы, при этом информационный вход блока приема записей базы данных сервера предназначен для приема записей базы данных сервера, а синхронизирующий вход блока приема записей базы данных сервера предназначен для приема синхронизирующих сигналов занесения записей базы данных сервера в блок приема записей базы данных сервера, блок формирования итоговых данных результатов голосования, один информационный вход которого соединен с выходом блока приема записей базы данных сервера, другой информационный вход блока формирования итоговых данных результатов голосования подключен ко второму выходу блока приема входных сообщений, а выход блока формирования итоговых данных результатов голосования является вторым информационным выходом системы, блок формирования сигналов считывания и записи базы данных, информационный выход которого является адресным выходом системы, а один синхронизирующий выход блока формирования сигналов считывания и записи базы данных является первым синхронизирующим выходом системы, отличающаяся тем, что система содержит блок идентификации избирательных комиссий, информационный вход которого соединен с третьим информационным выходом блока приема входных сообщений, синхронизирующий вход блока идентификации избирательных комиссий подключен к первому синхронизирующему входу системы, при этом информационный выход блока идентификации избирательных комиссий соединен с первым информационным входом блока формирования сигналов считывания и записи базы данных, а синхронизирующий выход блока идентификации избирательных комиссий является третьим синхронизирующим выходом системы, первый блок идентификации опорных адресов кандидатов, информационный вход которого соединен с четвертым выходом блока приема входных сообщений, а синхронизирующий вход подключен к синхронизирующему выходу блока идентификации избирательных комиссий, при этом информационный выход первого блока идентификации опорных адресов кандидатов соединен со вторым информационным входом блока формирования сигналов считывания и записи базы данных, а синхронизирующий выход первого блока идентификации опорных адресов кандидатов подключен к первому синхронизирующему входу блока формирования сигналов считывания и записи базы данных, второй блок идентификации опорных адресов кандидатов, информационный выход которого соединен с третьим информационным входом блока формирования сигналов считывания и записи базы данных, а синхронизирующий выход подключен ко второму синхронизирующему входу блока формирования сигналов считывания и записи базы данных, блок селекции временных циклов записи результатов голосования, вход которого соединен со вторым синхронизирующим входом системы, первый выход блока селекции временных циклов записи результатов голосования подключен к синхронизирующему входу блока формирования итоговых данных результатов голосования, второй выход блока селекции временных циклов записи результатов голосования является четвертым синхронизирующим выходом системы, а третий выход блока селекции временных циклов записи результатов голосования соединен с установочным входом блока идентификации избирательных комиссий, блок селекции временных циклов приема входных сообщений, вход которого соединен с третьим выходом блока селекции временных циклов записи результатов голосования, а один выход является первым сигнальным выходом системы, и блок селекции временных циклов выдачи результатов голосования, один вход которого соединен с другим выходом блока селекции временных циклов приема входных сообщений, другой вход блока селекции временных циклов выдачи результатов голосования подключен ко второму синхронизирующему выходу блока формирования сигналов считывания и записи базы данных, информационный выход блока селекции временных циклов выдачи результатов голосования соединен с информационным входом второго блока идентификации опорных адресов кандидатов, синхронизирующий выход блока селекции временных циклов выдачи результатов голосования подключен к синхронизирующему входу второго блока идентификации опорных адресов кандидатов, а сигнальный выход блока селекции временных циклов выдачи результатов голосования является вторым сигнальным выходом системы.
Описание изобретения к патенту
Изобретение относится к вычислительной технике, в частности к автоматизированной системе сбора и обработки данных электронного голосования государственной автоматизированной системы (ГАС) «ВЫБОРЫ», представляющей собой территориально-распределенную систему, организационная структура которой определяется избирательной системой Российской Федерации и соответствует структуре избирательных комиссий.
Объекты системы оснащены комплексами средств автоматизации, образующими четырехуровневую иерархическую структуру, направленную на реализацию новых информационных и избирательных технологий, примененных при разработке данной системы.
Верхний (первый) уровень системы представляет собой комплекс средств автоматизации (далее - КСА) Центральной избирательной системы Российской Федерации, второй уровень системы - КСА избирательных комиссий субъектов Российской Федерации, третий уровень - КСА окружных избирательных комиссий, четвертый уровень - КСА территориальных избирательных комиссий. Развитие системы предусматривает в дальнейшем автоматизацию участковых избирательных комиссий и создание КСА пятого уровня - КСА участковой избирательной комиссии.
КСА всех уровней состоят из технического, программного и информационного обеспечения, объединяются в информационно-коммуникационную сеть с использованием государственных и коммерческих каналов, сетей связи и передачи данных.
При этом система должна обеспечивать решение комплекса функциональных задач, включающего и решение задачи подведения итогов голосования во всех субъектах Российской Федерации, особенность решения которой состоит в том, чтобы после завершения голосования на избирательных участках и подведения итогов голосования территориальными избирательными комиссиями субъектов Российской Федерации (РФ), автоматизированная система сбора и обработки данных электронного голосования смогла бы обеспечить в кратчайшие сроки сбор и автоматическую обработку итоговых данных голосования во всех субъектах РФ с выдачей окончательных результатов голосования за каждого из кандидатов
Известны системы, которые могли бы быть использованы для решения поставленной задачи [1, 2].
Первая из известных систем содержит блоки приема и хранения данных, соединенные с блоками управления и обработки данных, блоки поиска и селекции, подключенные к блокам хранения данных и отображения, синхронизирующие входы которых соединены с выходами блока управления [1].
Существенный недостаток данной системы состоит в невозможности решения задачи оперативного обновления данных, хранимых в памяти в виде соответствующих документов, в реальном масштабе времени.
Известна и другая система, содержащая телекоммуникационную сеть блоков обработки данных, информационные входы которых соединены с блоками приема данных и управления, а выходы подключены к первой группе блоков памяти, центральный процессор, входы которого соединены с выходами блоков памяти первой группы и блоков обработки данных, а выходы соединены с входами блоков памяти второй группы и блоков отображения данных [2].
Последнее из перечисленных выше технических решений наиболее близко к описываемому.
Его недостаток заключается в невысоком быстродействии системы, обусловленном тем, что выполнение процедуры актуализации данных, собираемых системой от территориально-распределенных объектов системы по телекоммуникационной сети передачи данных, реализуется через процедуру их поиска по всему объему базы данных системы с последующим выполнением обработки обновляемых данных центральным процессором, что при больших объемах данных базы данных системы неизбежно приводит к большим затратам времени.
Цель изобретения - повышение быстродействия системы путем локализации адресов записей базы данных по идентификаторам принимаемых системой сообщений и формирования нарастающего итога результатов голосования в реальном масштабе времени
Поставленная цель достигается тем, что в известную систему, содержащую блок приема входных сообщений, информационный и синхронизирующий входы которого являются первыми информационным и синхронизирующим входами системы, а первый информационный выход является первым информационным выходом системы, при этом информационный вход блока приема входных сообщений предназначен для приема кодограмм от избирательных комиссий, синхронизирующий вход блока приема входных сообщений предназначен для приема синхронизирующих сигналов занесения кодограмм избирательных комиссий в блок приема входных сообщений, а первый информационный выход блока приема входных сообщений предназначен для выдачи кодограмм избирательных комиссий на информационный вход сервера, блок приема записей базы данных сервера, информационный и синхронизирующий входы которого являются вторыми информационным и синхронизирующим входами системы, при этом информационный вход блока приема записей базы данных сервера предназначен для приема записей базы данных сервера, а синхронизирующий вход блока приема записей базы данных сервера предназначен для приема синхронизирующих сигналов занесения записей базы данных сервера в блок приема записей базы данных сервера, блок формирования итоговых данных результатов голосования, один информационный вход которого соединен с выходом блока приема записей базы данных сервера, другой информационный вход блока формирования итоговых данных результатов голосования подключен ко второму выходу блока приема входных сообщений, а выход блока формирования итоговых данных результатов голосования является вторым информационным выходом системы, блок формирования сигналов считывания и записи базы данных, информационный выход которого является адресным выходом системы, а один синхронизирующий выход блока формирования сигналов считывания и записи базы данных является первым синхронизирующим выходом системы, отличающаяся тем, что система содержит блок идентификации избирательных комиссий, информационный вход которого соединен с третьим информационным выходом блока приема входных сообщений, синхронизирующий вход блока идентификации избирательных комиссий подключен к первому синхронизирующему входу системы, при этом информационный выход блока идентификации избирательных комиссий соединен с первым информационным входом блока формирования сигналов считывания и записи базы данных, а синхронизирующий выход блока идентификации избирательных комиссий является вторым синхронизирующим выходом системы, первый блок идентификации опорных адресов кандидатов, информационный вход которого соединен с четвертым выходом блока приема входных сообщений, а синхронизирующий вход подключен к синхронизирующему выходу блока идентификации избирательных комиссий, при этом информационный выход первого блока идентификации опорных адресов кандидатов соединен со вторым информационным входом блока формирования сигналов считывания и записи базы данных, а синхронизирующий вход первого блока идентификации опорных адресов кандидатов подключен к первому синхронизирующему входу блока формирования сигналов считывания и записи базы данных, второй блок идентификации опорных адресов кандидатов, информационный выход которого соединен с третьим информационным входом блока формирования сигналов считывания и записи базы данных, а синхронизирующий выход второго блока идентификации опорных адресов кандидатов подключен ко второму синхронизирующему входу блока формирования сигналов считывания и записи базы данных, блок селекции временных циклов записи результатов голосования, вход которого соединен со вторым синхронизирующим входом системы, первый выход блока селекции временных циклов записи результатов голосования подключен к синхронизирующему входу блока формирования итоговых данных результатов голосования, второй выход блока селекции временных циклов записи результатов голосования является третьим синхронизирующим выходом системы, а третий выход блока селекции временных циклов записи результатов голосования соединен с установочным входом блока идентификации избирательных комиссий, блок селекции временных циклов приема входных сообщений, вход которого соединен с третьим выходом блока селекции временных циклов записи результатов голосования, а один выход блока селекции временных циклов приема входных сообщений является первым сигнальным выходом системы, и блок селекции временных циклов выдачи результатов голосования, один вход которого соединен с другим выходом блока селекции временных циклов приема входных сообщений, другой вход блока селекции временных циклов выдачи результатов голосования подключен ко второму синхронизирующему выходу блока формирования сигналов считывания и записи базы данных, информационный выход блока селекции временных циклов выдачи результатов голосования соединен с информационным входом второго блока идентификации опорных адресов кандидатов, синхронизирующий выход блока селекции временных циклов выдачи результатов голосования подключен к синхронизирующему входу второго блока идентификации опорных адресов кандидатов, а сигнальный выход блока селекции временных циклов выдачи результатов голосования является вторым сигнальным выходом системы.
Сущность изобретения поясняется чертежами, где на фиг.1 представлена структурная схема системы, на фиг.2 представлен пример конкретного конструктивного выполнения блока идентификации избирательных комиссий, на фиг.3 - пример конкретного конструктивного выполнения первого блока идентификации опорных адресов кандидатов, на фиг.4 - пример конкретного конструктивного выполнения второго блока идентификации опорных адресов кандидатов, на фиг.5 - пример конкретного конструктивного выполнения блока селекции временных циклов выдачи результатов голосования, на фиг.6 - пример конкретного конструктивного выполнения блока селекции временных циклов записи результатов голосования, на фиг.7 - пример конкретного конструктивного выполнения блока селекции временных циклов приема входных сообщений, на фиг.8 - пример конкретного конструктивного выполнения блока формирования сигналов считывания и записи базы данных, на фиг.9 приведена обобщенная структура территориально распределенных избирательных комиссий ГАС «Выборы».
Система (фиг.1) содержит блок 1 приема входных сообщений, блок 2 приема записей базы данных сервера, блок 3 идентификации избирательных комиссий, первый 4 и второй 5 блоки идентификации опорных адресов кандидатов, блок 6 селекции временных циклов выдачи результатов голосования, блок 7 селекции временных циклов записи результатов голосования, блок 8 селекции временных циклов приема входных сообщений, блок 9 формирования сигналов считывания и записи базы данных, блок 10 формирования итоговых данных результатов голосования.
На фиг.1 показаны первый 21 и второй 22 информационные входы системы, первый 23 и второй 24 синхронизирующие входы системы, первый 25 и второй 26 информационные выходы системы, адресный 28 выход системы, а также первый 29, второй 30 и третий 31 синхронизирующие выходы системы, первый 32 и второй 33 сигнальные выходы системы.
Блок 1 приема входных сообщений, поступающих от избирательных комиссий, выполнен в виде регистра, имеющего информационный вход 21, синхронизирующий вход 23, а также первый 12, второй 13, третий 14 и четвертый 15 информационные выходы.
Блок 2 приема записей базы данных сервера выполнен в виде регистра, имеющего информационный вход 22, синхронизирующий вход 24, а также информационный выход.
Блок 3 идентификации избирательных комиссий (фиг.2) содержит дешифратор 40, блок 41 памяти, выполненный в виде постоянного запоминающего устройства, счетчик 42, триггер 43, элемент 44 ИЛИ, элементы 45-49 И, элементы 50-52 задержки.
На чертеже показаны информационный 53, синхронизирующий 54 и установочный 55 входы, а также информационный 57 и синхронизирующий 58 выходы.
Первый блок 4 идентификации опорных адресов кандидатов (фиг.3) содержит дешифратор 60, блок 61 памяти, выполненный в виде постоянного запоминающего устройства, регистр 62, элементы 63-65 И, элементы 66, 67 задержки.
На чертеже показаны информационный 68 и синхронизирующий 69 входы, а также информационный 70 и синхронизирующий 71 выходы.
Второй блок 5 идентификации опорных адресов кандидатов (фиг.4) содержит дешифратор 80, блок 81 памяти, выполненный в виде постоянного запоминающего устройства, элементы 82-84 И, элементы 85-1, 85-2 задержки, регистр 86.
На чертеже показаны информационный 87 и синхронизирующий 88 входы, а также информационный 89 и синхронизирующий 90 выходы.
Блок 6 селекции временных циклов выдачи результатов голосования (фиг.5) содержит счетчик 91, регистр 92, компаратор 93, элемент 94 ИЛИ и элемент 95 задержки.
На чертеже показаны первый 97 и второй 98 синхронизирующие входы, а также информационный 99, первый 100 и второй 118 синхронизирующие выходы.
Блок 7 селекции временных циклов записи результатов голосования (фиг.6) содержит счетчик 101, регистр 102, компаратор 103 и элементы 104, 105 задержки.
На чертеже показаны синхронизирующий 106 вход, а также первый 107, второй 108 и третий 109 синхронизирующие выходы.
Блок 8 селекции временных циклов приема входных сообщений (фиг.7) содержит счетчик 111, регистр 112, компаратор 113 и элемент 114 задержки.
На чертеже показаны синхронизирующий 115 вход, а также первый 116 и второй 117 выходы.
Блок 9 формирования сигналов считывания и записи базы данных (фиг.8) содержит триггеры 120-121, группы 122-124 элементов И, группа 125 элементов ИЛИ, элемент 126 ИЛИ, элементы 127, 128 задержки.
На чертеже показаны информационные 130-132, синхронизирующие 133-134 и установочный 135 входы, а также информационный 28 выход, первый 29 и второй 136 синхронизирующие выходы.
Блок 10 формирования итоговых данных результатов голосования выполнен в виде сумматора, имеющего первый 137 и второй 138 информационные и синхронизирующий 139 входы и информационный 26 выход.
Все узлы и элементы системы выполнены на стандартных потенциально-импульсных элементах. Для упрощения чертежа цепи первоначальной установки узлов и блоков системы в исходное состояние не показаны.
Данной системой оснащаются избирательные комиссии всех уровней иерархии за исключением участковых избирательных комиссий, которые в системе управления проведением выборов выступают в качестве источников данных о количестве избирателей, принявших участие в голосовании на определенный момент времени, и о количестве голосов избирателей, поданных за соответствующих кандидатов.
При решении задачи сбора и обработки данных о результатах электронного голосования на информационный вход 21 системы по тракту передачи данных последовательно поступают сообщения (кодограммы) от Избирательных комиссий субъектов Российской Федерации о ходе голосования избирателей в соответствующих субъектах РФ в виде итогового файла, имеющего следующую последовательность записей:
Номер записи в сообщении | Идентификатор избирательной комиссии субъекта Российской Федерации | Идентификатор кандидата в виде начальных букв его фамилии, имени и отчества | ИТОГОВОЕ количество голосов избирателей, поданное за данного кандидата |
Первая запись | Идентификационный номер ИК | Кандидат №1 | К1 |
Вторая запись | Кандидат №2 | К2 | |
........................... | .................................... | ||
Последняя запись | Кандидат ПРОТИВ ВСЕХ | Кпв |
Первая запись кодограммы с информационного входа 21 системы заносится в регистр блока 1 синхронизирующим импульсом с входа 23, который проходит на синхронизирующий вход регистра блока 1.
С выхода 12 все содержимое регистра блока 1 выдается на выход 25 системы для последующего документирования записей в базе данных системы.
С выхода 14 блока 1 идентификатор избирательной комиссии субъекта Российской Федерации поступает на вход 53 блока 3 и далее подается на вход дешифратора 40, который расшифровывает код идентификатора избирательной комиссии, и открывает один из элементов 45-47 И по одному входу.
Для определенности положим, что высокий потенциал поступил на один вход элемента 45 И.
В это время синхронизирующий импульс с входа 23 системы поступает на вход 54 блока 3 и далее на входы элементов 48 и 49 И. К этому моменту времени триггер 43 находится в исходном состоянии и на его инверсном выходе будет высокий потенциал, открывающий элемент 48 И по одному входу. В результате этого синхронизирующий импульс с входа 23 системы проходит через элемент 48 И, задерживается элементом 50 на время приема кода входного сообщения в блок 1 и срабатывания дешифратора 40 и далее поступает на опрос состояния элементов 45-47 И.
Учитывая то обстоятельство, что открытым по одному входу будет только элемент 45 И, то пройдя этот элемент И, синхроимпульс поступает, во-первых, на вход считывания фиксированной ячейки памяти постоянного запоминающего устройства 41, где хранится базовый адрес ячейки памяти в базе данных сервера, закрепленной за данной избирательной комиссией, и считывает его на вход счетчика 42.
Кроме того, тот же импульс считывания кода базового адреса избирательной комиссии с выхода элемента 50 задерживается элементом 51 на время считывания содержимого фиксированной ячейки ПЗУ и поступает на синхронизирующий вход счетчика 42, фиксируя в нем базовый адрес ячейки памяти, закрепленной за данной избирательной комиссией.
Код с выхода счетчика 42 через выход 57 блока 3 выдается на вход 130 блока 9 и далее поступает на одни входы элементов 122 И группы, на другие входы которых к этому моменту времени с инверсных выходов триггеров 120 и 121 подаются высокие потенциалы, поскольку оба триггера находятся в исходном состоянии. Код базового адреса через элементы 122 И группы через элементы 125 ИЛИ группы выдается на адресный выход 28 системы.
Параллельно с этим импульс считывания с выхода элемента 51 проходит через элемент 44 ИЛИ, затем задерживается элементом 52 на время занесения базового адреса избирательной комиссии в счетчик 42 и далее, во-первых, с выхода элемента 52 задержки выдается на единичный вход триггера 43, устанавливая его в единичное состояние, при котором элемент 49 И будет открыт, а элемент 48 И - закрыт, а, во-вторых, с выхода 58 блока 3 он выдается на выход 31 системы и далее на вход первого канала прерывания сервера (на чертеже не показан).
По этому сигналу сервер переходит на подпрограмму документирования первой записи кодограммы с выхода 25 системы по базовому адресу избирательной комиссии, который с выхода счетчика 42 выдается на адресный 28 выход системы.
Параллельно с процессом документирования первой записи в базу данных системы тот же синхронизирующий импульс записи с выхода 58 блока 3 поступает на вход 69 блока 4, на информационный вход 68 которого поступает код идентификатора кандидата первой записи с выхода 15 блока 1. Поступивший код расшифровывается дешифратором 60 и открывает по одному входу один из элементов 63-65 И.
Для определенности положим, что высокий потенциал поступил на один вход элемента 63 И.
В это же время синхронизирующий импульс с входа 69 блока 4 поступает на опрос состояния элементов 63-65 И. Учитывая то обстоятельство, что открытым по одному входу будет только элемент 63 И, то, пройдя этот элемент И, синхроимпульс поступает, во-первых, на вход считывания фиксированной ячейки памяти постоянного запоминающего устройства 61, где хранится адрес ячейки памяти в базе данных сервера, закрепленной за данным кандидатом, и считывает ее содержимое на информационный вход регистра 62.
Во-вторых, тот же импульс считывания кода адреса ячейки памяти в базе данных сервера, закрепленной за первым кандидатом, задерживается элементом 66 задержки на время считывания содержимого фиксированной ячейки ПЗУ, поступает на синхронизирующий вход регистра 62, фиксируя в нем адрес ячейки памяти, закрепленной за первым кандидатом из первой записи входного сообщения. Код с выхода регистра 62 через выход 70 блока 4 поступает на вход 131 блока 9 и далее на одни входы элементов 123 И группы 123, на другие входы которых подаются потенциалы с прямого выхода триггера 120 и инверсного выхода триггера 121.
Параллельно с этим процессом синхронизирующий импульс с выхода элемента 66 блока 4 задерживается элементом 67 на время занесения адреса ячейки памяти, закрепленной за первым кандидатом из первой записи входного сообщения в регистр 62, и далее с выхода 71 блока 4 поступает на вход 133 блока 9, откуда он, во-первых, сразу же поступает на прямой вход триггера 120, устанавливая его в единичное состояние, при котором высоким потенциалом с прямого выхода триггер 120 открывает элементы 123 И группы, а низким потенциалом с инверсного выхода триггер 120 закрывает элементы 122 группы И.
Таким образом, элементы 123 И группы будут открыты, поскольку на их входы поступают высокие потенциалы с прямого выхода триггера 120 и с инверсного выхода триггера 121. Благодаря этому код адреса ячейки памяти, закрепленной за первым кандидатом из первой записи входного сообщения, проходит через элементы 123 И группы и элементы 125 ИЛИ группы на адресный выход 28 системы.
Во-вторых, одновременно с этим процессом синхронизирующий импульс с входа 133 задерживается элементом 126 на время срабатывания триггера 120 и выдачи кода адреса ячейки памяти, закрепленной за первым кандидатом из первой записи входного сообщения на адресный выход 28, а затем через выход 29 системы выдается на вход второго канала прерывания сервера (на чертеже не показан).
По этому сигналу сервер переходит на подпрограмму считывания содержания ячейки памяти, закрепленной за первым кандидатом из первой записи входного сообщения, в которой хранится число голосов избирателей, отданных данному кандидату.
Содержимое адреса ячейки памяти, закрепленной за первым кандидатом из первой записи входного сообщения, считывается из базы данных сервера и через информационный вход 22 системы поступает на информационный вход регистра блока 2, куда оно заносится синхронизирующим импульсом сервера, поступающим на синхронизирующий вход 24 системы.
Кроме того, синхронизирующий импульс с выхода элемента 127 задерживается элементом 128 на время считывания содержимого ячейки памяти и поступает на установочный вход триггера 120, возвращая его в исходное состояние, при котором он высоким потенциалом с инверсного выхода вновь открывает элементы 122 И группы, подключая выход счетчика 42 блока 3 к адресному выходу 28 системы.
Следует учесть, что перед началом работы системы все ее узлы и блоки были установлены в исходное состояние, а содержимое ячеек памяти базы данных сервера, закрепленных за каждым из кандидатов, было обнулено. В связи с этим при считывании содержимого ячейки памяти базы данных, закрепленной за первым кандидатом, на вход регистра блока 2 будет считываться нулевой код, и, следовательно, регистр блока 2 останется в исходном состоянии.
Содержимое регистра блока 2 (в данном случае оно равно нулю) поступает на вход 138 блока 10, выполненного в виде сумматора. На другой вход 137 сумматора 10 с выхода 13 блока 1 подан код числа избирателей, отдавших свои голоса за данного кандидата.
Одновременно с этим синхронизирующий импульс сервера с входа 24 системы поступает на вход 106 блока 7, где задерживается элементом 104 на время занесения кода в регистр блока 2 и затем подается на синхронизирующий вход компаратора 103 блока 7, на информационные входы которого подаются коды с выходов счетчика 101 и регистра 102.
Одновременно с этим импульс с выхода 107 компаратора 103 задерживается элементом 105 задержки на время срабатывания сумматора 10 и, во-первых, с выхода 108 блока 7 выдается на выход 32 системы и далее на вход третьего канала прерывания сервера. По этому сигналу сервер переходит на подпрограмму записи числа избирателей с выхода 26 системы по адресу ячейки памяти, закрепленной за первым кандидатом с адресного выхода 28 системы, и выдачу сигнала на прием очередной записи из входной кодограммы (на чертеже не показано).
Во-вторых, тот же импульс с выхода элемента 105 задержки поступает на счетный вход счетчика 101, фиксируя факт записи числа избирателей, проголосовавших за первого кандидата, в базу данных системы.
По сигналу приема очередная запись из входной кодограммы, содержащая сведения о числе избирателей, проголосовавших за второго депутата, с входа 21 вновь поступает на информационный вход регистра блока 1, куда она заносится синхронизирующим импульсом с входа 23.
Очередная запись кодограммы с информационного входа 21 системы заносится в регистр блока 1 синхронизирующим импульсом с входа 23, который проходит на синхронизирующий вход регистра блока 1.
С выхода 12 все содержимое регистра блока 1 вновь выдается на выход 25 системы для последующего документирования записей в базе данных системы.
В отличие от режима приема первой записи синхронизирующий импульс с входа 23 системы через вход 54 блока 3 проходит не через элемент 48 И, а через элемент 49 И, поскольку к этому моменту времени триггер 43 находится в единичном состоянии и на его прямом выходе будет высокий потенциал, открывающий элемент 49 И по одному входу. В результате этого синхронизирующий импульс с входа 54 блока 3 проходит через элемент 49 И и сразу же поступает на счетный вход счетчика 42, добавляя к базовому адресу ячейки памяти, закрепленной за данной избирательной комиссией, единицу, и тем самым, формируя очередной адрес для документирования второй записи из входной кодограммы.
Код с выхода счетчика 42 через выход 57 блока 3 выдается на вход 130 блока 9 и далее поступает на одни входы элементов 122 И группы, на другие входы которых к этому моменту времени с инверсных выходов триггеров 120 и 121 подаются высокие потенциалы, поскольку оба триггера находятся в исходном состоянии. Код базового адреса через элементы 122 И группы через элементы 125 ИЛИ группы выдается на адресный выход 28 системы.
Параллельно с этим импульс считывания с выхода элемента 51 проходит через элемент 44 ИЛИ, затем задерживается элементом 52 на время срабатывания счетчика 42 и далее, во-первых, с выхода элемента 52 задержки вновь поступает на единичный вход триггера 43, подтверждая его единичное состояние, при котором элемент 49 И будет оставаться открытым, а элемент 48 И - закрытым, а, во-вторых, с выхода 58 блока 3 он выдается на выход 31 системы и далее вновь поступает на вход первого канала прерывания сервера (на чертеже не показан).
По этому сигналу сервер переходит на подпрограмму документирования очередной записи кодограммы с выхода 25 системы по очередному адресу, который с выхода счетчика 42 выдается на адресный 28 выход системы.
Параллельно с процессом документирования очередной записи в базу данных системы тот же синхронизирующий импульс записи с выхода 58 блока 3 вновь поступает на вход 69 блока 4, на информационный вход 68 которого поступает код идентификатора кандидата очередной записи с выхода 15 блока 1. Поступивший код расшифровывается дешифратором 60 и открывает по одному входу один из элементов 63 - 65 И.
Для определенности положим, что высокий потенциал поступил на один вход элемента 64 И.
В это же время синхронизирующий импульс с входа 69 блока 4 поступает на опрос состояния элементов 63-65 И. Учитывая то обстоятельство, что открытым по одному входу будет только элемент 64 И, то, пройдя этот элемент И, синхроимпульс поступает, во-первых, на вход считывания фиксированной ячейки памяти постоянного запоминающего устройства 61, где хранится адрес ячейки памяти в базе данных сервера, закрепленной за очередным кандидатом, и считывает ее содержимое на информационный вход регистра 62.
Во-вторых, тот же импульс считывания кода адреса ячейки памяти в базе данных сервера, закрепленной за очередным кандидатом, задерживается элементом 66 задержки на время считывания содержимого фиксированной ячейки ПЗУ, поступает на синхронизирующий вход регистра 62, фиксируя в нем адрес ячейки памяти, закрепленной за кандидатом из очередной записи входного сообщения. Код с выхода регистра 62 через выход 70 блока 4 поступает на вход 131 блока 9 и далее на одни входы элементов 123 И группы 123, на другие входы которых подаются потенциалы с прямого выхода триггера 120 и инверсного выхода триггера 121.
Параллельно с этим процессом синхронизирующий импульс с выхода элемента 66 блока 4 задерживается элементом 67 на время занесения адреса ячейки памяти, закрепленной за первым кандидатом из первой записи входного сообщения в регистр 62, и далее с выхода 71 блока 4 поступает на вход 133 блока 9, откуда он, во-первых, сразу же поступает на прямой вход триггера 120, устанавливая его в единичное состояние, при котором высоким потенциалом с прямого выхода триггер 120 открывает элементы 123 И группы, а низким потенциалом с инверсного выхода триггер 120 закрывает элементы 122 группы И.
Таким образом, элементы 123 И группы будут открыты, поскольку на их входы поступают высокие потенциалы с прямого выхода триггера 120 и с инверсного выхода триггера 121. Благодаря этому код адреса ячейки памяти, закрепленной за кандидатом из очередной записи входного сообщения, проходит через элементы 123 И группы и элементы 125 ИЛИ группы на адресный выход 28 системы.
Во-вторых, одновременно с этим процессом синхронизирующий импульс с входа 133 задерживается элементом 126 на время срабатывания триггера 120 и выдачи кода адреса ячейки памяти, закрепленной за кандидатом из очередной записи входного сообщения, на адресный выход системы, а затем через выход 29 системы выдается на вход второго канала прерывания сервера (на чертеже не показан).
По этому сигналу сервер переходит на подпрограмму считывания содержания ячейки памяти, закрепленной за кандидатом из очередной записи входного сообщения, в которой хранится число голосов избирателей, отданных данному кандидату.
Содержимое адреса ячейки памяти, закрепленной за кандидатом из очередной записи входного сообщения, считывается из базы данных сервера и через информационный вход 22 системы поступает на информационный вход регистра блока 2, куда оно заносится синхронизирующим импульсом сервера, поступающим на синхронизирующий вход 24 системы.
Кроме того, синхронизирующий импульс с выхода элемента 126 блока 9 задерживается элементом 129 на время считывания содержимого ячейки памяти и поступает на установочный вход триггера 120, возвращая его в исходное состояние, при котором он высоким потенциалом с инверсного выхода вновь открывает элементы 122 И группы, вновь подключая выход счетчика 42 блока 3 к адресному выходу 28 системы.
Содержимое регистра блока 2 (в данном случае оно также равно нулю) поступает на вход 138 блока 10, выполненного в виде сумматора. На другой вход 137 сумматора 10 с выхода 13 блока 1 подан код числа избирателей, отдавших свои голоса за очередного кандидата.
Одновременно с этим синхронизирующий импульс сервера с входа 24 системы поступает на вход 106 блока 7, где задерживается элементом 104 на время занесения кода в регистр блока 2 и затем подается на синхронизирующий вход компаратора 103 блока 7, на информационные входы которого подаются коды с выходов счетчика 101 и регистра 102.
Учитывая, что к этому моменту времени показания счетчика 103 будут по-прежнему меньше числа кандидатов в регистре 102, то на выходе 107 компаратора 103 формируется импульс, который поступает на синхронизирующий вход 139 сумматора 10, который фиксирует число избирателей, проголосовавших за данного кандидата, и выдает результат на выход 26 системы.
Одновременно с этим импульс с выхода 107 задерживается элементом 105 задержки на время срабатывания сумматора 10 и, во-первых, с выхода 108 блока 7 выдается на выход 32 системы и далее на вход третьего канала прерывания сервера. По этому сигналу сервер переходит на подпрограмму записи числа избирателей с выхода 26 системы по адресу ячейки памяти, закрепленной за первым кандидатом с адресного выхода 28 системы, и выдачу сигнала на прием очередной записи из входной кодограммы (на чертеже не показано).
Во-вторых, тот же импульс с выхода элемента 105 задержки поступает на счетный вход счетчика 101, фиксируя факт записи числа избирателей, проголосовавших за первого кандидата, в базу данных системы.
По сигналу приема очередная запись из входной кодограммы, содержащая сведения о числе избирателей, проголосовавших за очередного депутата, с входа 21 вновь поступает на информационный вход регистра блока 1, куда она заносится синхронизирующим импульсом с входа 23. С выхода 12 все содержимое регистра блока 1 вновь выдается на выход 25 системы для последующего документирования записей в базе данных системы.
Описанный процесс занесения числа избирателей, проголосовавших за соответствующих депутатов, в фиксированные ячейки базы данных, закрепленных за соответствующими кандидатами, продолжается до тех пор, пока компаратор 103 блока 7 не зафиксирует факт равенства числа записей счетчика 101 числу кандидатов, хранящемуся в регистре 102. В этот момент времени на выходе 109 компаратора формируется сигнал, свидетельствующий о том, что все записи из входного сообщения от соответствующей избирательной комиссии занесены в соответствующие ячейки памяти, закрепленные за соответствующими кандидатами.
Импульс с выхода 109 компаратора, во-первых, поступает на установочный вход 55 блока 3, откуда подается на установочный вход триггера 43, устанавливая его в исходное состояние, при котором высокий потенциал с инверсного выхода триггера 43 открывает элемент 48 И и подготавливает цепь прохождения синхронизирующего импульса с входа 54 через элемент 48 И.
Во-вторых, импульс с выхода 109 блока 7 поступает на вход 115 блока 8, откуда он подается на счетный вход счетчика 111, подсчитывающего число избирательных комиссий, приславших свои сообщения. В данном случае счетчик 111 зафиксирует факт приема записей от первой избирательной комиссии. В регистре же 112 постоянно хранится число избирательных комиссий, которые должны прислать свои сообщения об итогах голосования.
Кроме того, синхронизирующий импульс с входа 115 задерживается элементом 114 задержки на время срабатывания счетчика 111 и затем поступает на синхронизирующий вход компаратора 113, который по этому синхронизирующему сигналу сравнивает показания счетчика 111 и регистра 112. Учитывая то обстоятельство, что счетчик 111 зафиксировал только одну избирательную комиссию, приславшую свои результаты, то его показания к этому моменту времени будут меньше общего числа избирательных комиссий, зафиксированных в регистре 112.
В результате этого на выходе 116 компаратора 113 формируется сигнал начала приема входных данных следующей избирательной комиссии, который выдается на выход 33 системы и далее поступает на управление приемом входного сообщения следующей избирательной комиссии (на чертеже не показано).
После этого осуществляется прием входного сообщения очередной избирательной комиссии, документирование принимаемых записей, суммирование голосов избирателей, отданных за соответствующих депутатов, и занесение итоговых результатов в ячейки памяти, закрепленные за соответствующими кандидатами так, как это было описано выше.
Прием входных сообщений от избирательных комиссий субъектов Российской Федерации и их обработка описанным выше образом продолжается до тех пор, пока компаратор 113 блока 8 не зафиксирует факт равенства показаний счетчика 111 и регистра 112, формированием импульса на выходе 117. Появление этого импульса свидетельствует о том, что сообщения всех избирательных комиссий документированы, а число голосов, отданных избирателями за соответствующих депутатов, просуммировано, записано в выделенные ячейки памяти, закрепленные за соответствующими кандидатами, и готово к выдаче на табло отображения и печать.
С этой целью импульс с выхода 117 блока 8 поступает на вход 97 блока 6, где проходит элемент 94 ИЛИ и затем поступает на счетный вход счетчика 91, который фиксирует факт считывания и выдачи итоговых данных голосования за первого кандидата. В данном случае счетчик 91 зафиксировал первую единицу, и его показания через выход 99 блока 6 поступают на вход 87 блока 5 и далее на вход дешифратора 80. В регистр 92 блока 6 занесено число кандидатов, принявших участие в голосовании.
Кроме того, импульс с выхода элемента 94 ИЛИ задерживается элементом 95 на время срабатывания счетчика 91 и поступает на синхронизирующий вход компаратора 93, который по синхронизирующему сигналу сравнивает показания счетчика 91 и регистра 92. Учитывая то обстоятельство, что счетчик 91 зафиксировал только одного кандидата, результаты голосования за которого подлежат выдаче, то его показания к этому моменту времени будут меньше общего числа кандидатов, зафиксированных в регистре 92.
В результате этого на выходе 100 компаратора 93 формируется сигнал начала выдачи итоговых данных голосования за первого кандидата, который поступает на вход 88 блока 5 и далее поступает на опрос состояния элементов 82-84 И. Состояние указанных элементов определяется дешифратором 80, который расшифровывает входной код и открывает соответствующий элемент 82-84 И. Допустим, что таким элементом является элемент 82 И.
Синхронизирующий импульс с входа 88, во-первых, проходит элемент 82 И и поступает на вход считывания фиксированной ячейки памяти постоянного запоминающего устройства 81, где хранится адрес ячейки памяти в базе данных сервера, закрепленной за первым кандидатом, и считывает его на вход регистра 86.
Кроме того, тот же импульс с входа 88 блока 5 задерживается элементом 85-1 на время считывания содержимого фиксированной ячейки ПЗУ и поступает на синхронизирующий вход регистра 86, фиксируя в нем адрес ячейки памяти, закрепленной за первым кандидатом. Код с выхода регистра 86 через выход 89 блока 5 выдается на вход 132 блока 9 и далее поступает на одни входы элементов 124 И группы.
Параллельно с этим импульс с выхода элемента 85-1 задерживается элементом 85-2 на время занесения адреса ячейки памяти в регистр 86 и далее с выхода 90 блока 5 через вход 134 блока 9 выдается на единичный вход триггера 121, устанавливая его в единичное состояние, при котором элементы 124 И группы и элемент 129 И будут открыты, а элементы 122, 123 И групп - закрыты.
Одновременно с этим процессом синхронизирующий импульс с входа 134 задерживается элементом 127 на время срабатывания триггера 121 и выдачи кода адреса ячейки памяти, закрепленной за первым кандидатом, на адресный выход 28 через элементы 124 И группы и элементы 125 ИЛИ группы, а затем через выход 30 системы выдается на вход третьего канала прерывания сервера (на чертеже не показан).
По этому сигналу сервер переходит на подпрограмму считывания содержания ячейки памяти, закрепленной за первым кандидатом, в которой хранится итоговое число голосов избирателей, отданных за данного кандидата, и выдачи итогового числа избирателей, проголосовавших за первого кандидата, на табло отображения и печать (на чертеже не показано).
Кроме того, этот же импульс выдачи с выхода элемента 127 задерживается элементом 128 на время выполнения программы считывания итоговых данных и выдачи их на табло отображения и печать и затем с выхода 136 блока 9 поступает на вход 98 блока 6, где проходит элемент 94 ИЛИ и затем вновь поступает на счетный вход счетчика 91, увеличивая его показания на единицу. Новые показания счетчика 91 через выход 99 блока 6 поступают на вход 87 блока 5 и далее на вход дешифратора 80. В регистре же 92 блока 6 по-прежнему находится число кандидатов, принявших участие в голосовании.
Кроме того, импульс с выхода элемента 94 ИЛИ задерживается элементом 95 на время срабатывания счетчика 91 и вновь поступает на синхронизирующий вход компаратора 93, который по синхронизирующему сигналу сравнивает показания счетчика 91 и регистра 92. Учитывая то обстоятельство, что счетчик 91 зафиксировал теперь уже второго кандидата, результаты голосования за которого подлежат выдаче, то его показания к этому моменту времени будут меньше общего числа кандидатов, зафиксированного в регистре 92.
В результате этого на выходе 100 компаратора 93 формируется сигнал начала выдачи итоговых данных голосования за очередного кандидата, который поступает на вход 88 блока 5 и далее поступает на опрос состояния элементов 82-84 И. Состояние указанных элементов определяется дешифратором 80, который расшифровывает поступивший код и открывает соответствующий элемент 82-84 И. Допустим, что таким элементом теперь является элемент 83 И.
Синхронизирующий импульс с входа 88, во-первых, проходит элемент 83 И и поступает на вход считывания фиксированной ячейки постоянного запоминающего устройства 81, где хранится адрес ячейки памяти в базе данных сервера, закрепленной за очередным кандидатом. И считывает его на вход регистра 86.
Кроме того, тот же импульс с входа 88 блока 5 задерживается элементом 85-1 на время считывания содержимого фиксированной ячейки ПЗУ и поступает на синхронизирующий вход регистра 86, фиксируя в нем адрес ячейки памяти, закрепленной за очередным кандидатом. Код с выхода регистра 86 через выход 89 блока 5 выдается на вход 132 блока 9 и далее проступает на одни входы элементов 124 И группы.
Параллельно с этим импульс с выхода элемента 85-1 задерживается элементом 85-2 на время занесения адреса ячейки памяти в регистр 86 и далее с выхода 90 блока 5 через вход 134 блока 9 выдается на единичный вход триггера 121, подтверждая его единичное состояние, при котором элементы 124 И группы и элемент 129 И будут открыты, а элементы 122, 123 И групп - закрыты.
Одновременно с этим процессом синхронизирующий импульс с входа 134 задерживается элементом 127 на время срабатывания триггера 121 и выдачи кода адреса ячейки памяти, закрепленной за очередным кандидатом, на адресный вход 28 системы через элементы 124 И группы и элементы 125 ИЛИ группы, а затем через выход 30 системы вновь поступает на вход четвертого канала прерывания сервера (на чертеже не показан).
По этому сигналу сервер вновь переходит на подпрограмму считывания содержимого ячейки памяти, закрепленной за очередным кандидатом, в которой хранится итоговое число избирателей, проголосовавших за этого кандидата, на табло отображения и печать (на чертеже не показано).
Кроме того, этот же импульс выдачи с выхода элемента 127 задерживается элементом 128 на время выполнения программы считывания итоговых данных и выдачи их на табло отображения и печать и затем с выхода 136 блока 9 вновь поступает на вход 98 блока 6.
Этот процесс продолжается до тех пор, пока показания счетчика 91 не станут равными показаниям регистра 92. Этот момент будет зафиксирован компаратором 93 путем выдачи импульса на выход 118, с которого данный синхронизирующий импульс, во-первых, выдается на выход 34 системы в качестве сигнала окончания выдачи итоговых данных, а во-вторых, он поступает на вход 135 блока 9, где проходит на установочный вход триггера 121 и возвращает его в исходное состояние.
Таким образом, введение новых узлов и блоков и новых конструктивных связей позволило существенно повысить быстродействие системы, исключив затраты времени, связанные с выполнением процедур предварительной записи всей получаемой информации в базу данных, их последующим поиском и обработкой, путем локализации адресов записей базы данных по идентификаторам принимаемых системой сообщений и формирования нарастающего итога результатов голосования в реальном масштабе времени.
Источники информации
1. Патент США №0505651, М кл. G 06 F 13/40, 13/38, 1992.
2. Патент США №05129083, М кл. G 06 F 12/00, 15/40, 1992 (прототип).
Класс G06F17/40 сбор данных и их регистрация
Класс G06F17/30 информационный поиск; структуры баз данных для этой цели
Класс G07C13/00 Устройства для голосования