Многоканальное устройство приоритета

Авторы патента:


 

Изобретение относится к вычислительной технике и может быть использовано для организации доступа к коллективно используемому ресурсу. Многоканальное устройство приоритета содержит каналы 11 ...1n, каждый из которых содержит первый 2 и второй 3 триггеры заявок и элемент И 4, а также общие для всего устройства элемент ИЛИ - НЕ 5, первый счетчик 6, дешифратор 7, первый 8, второй 9, третий 10 элементы ИЛИ, триггер наличия запросов 11, второй 12 и третий 13 счетчики, блок памяти 14. Целью изобретения является повышения надежности работы устройства за счет исключения потери вновь поступивших заявок. 1 ил.

Изобретение относится к вычислительной техник и может быть использовано для организации доступа к коллективно используемому ресурсу.

Известно многоканальное устройство приоритета [1], содержащее в каждом канале триггер заявок канала, элементы И, ИЛИ, НЕ и выходной триггер канала. Информационный вход триггера заявок канала соединен с соответствующим запросным входом устройства, прямой выход триггера заявок канала соединен с первым входом элемента ИЛИ и первым входом элемента И, выход которого соединен с информационным входом выходного триггера канала, прямой выход выходного триггера канала соединен с соответствующим выходом устройства. Инверсный выход выходного триггера заявок канала, C-вход выходного триггера канала соединен с C-входом триггера заявок канала и тактовым входом устройства. Выход элемента ИЛИ предыдущего канала соединен с входом элемента НЕ и вторым входом элемента ИЛИ последующего канала, выход элемента НЕ канала соединен с вторым входом элемента И канала, вход элемента НЕ и второй вход элемента ИЛИ первого канала соединен с входом логического нуля устройства.

Недостатком такого устройства является низкая надежность обслуживания заявок младшего приоритета при интенсивном поступлении заявок с более высоким приоритетом, что вызвано реализацией в данном устройстве дисциплины обслуживания с жестким абсолютным приоритетом, при которой вновь поступившие заявки с более высоким приоритетом запрещают обслуживание ранее поступивших заявок с меньшим приоритетом.

Наиболее близким к предлагаемому по технической сущности является многоканальное устройство приоритета [2], выбранное в качестве прототипа.

Известное устройство содержит в каждом канале триггер заявок канала, первый, второй и третий элементы И, элемент ИЛИ, выходной триггер канала, а также первый и второй элементы НЕ.

Информационный вход триггера заявок канала соединен с соответствующим запросным входом устройства, а нулевой вход триггера заявок канала - с соответствующим входом сброса устройства. Выход триггера заявок соединен с первым входом элемента ИЛИ и с первым входом первого элемента И, второй вход которого соединен с выходом первого элемента НЕ. Выход первого элемента И соединен с информационным входом выходного триггера канала, C-вход которого соединен с тактовым входом устройства, прямой выход выходного триггера соединен с соответствующим выходом устройства, и инверсный выход этого триггера - с вторым входом третьего элемента И и первым входом второго элемента И. Выход третьего элемента И в каждом последующем канале соединен с первым входом третьего элемента И и третьим входом первого элемента И предшествующего канала. Выход первого элемента И канала через второй элемент НЕ канала соединен с К-входом выходного триггера канала. Выход второго элемента И канала соединен с входом первого элемента НЕ канала вторым входом элемента ИЛИ канала, выход которого в каждом предыдущем канале соединен с вторым входом второго элемента И последующего канала, причем второй вход второго элемента И первого канала соединен с входом логического нуля устройства. Первый вход третьего элемента И и третий вход первого элемента И последнего канала соединены с входом логической единицы устройства.

Известное устройство работает следующим образом.

В исходном состоянии триггеры заявок и выходные триггеры каналов находятся в нулевом состоянии. При поступлении группы заявок на запросные входы устройства триггеры запросов заявок соответствующих каналов устанавливаются в единичное состояние и с помощью узла анализа приоритета каждого канала производится выбор заявки с наивысшим приоритетом. При этом единичный уровень с прямого выхода триггера заявок канала, соответствующего заявке с наибольшим приоритетом, через цепочку элементов И и элементов ИЛИ поступает на входы элементов НЕ каналов с более низким приоритетом, запрещая тем самым для них прохождение заявок на выходные триггеры. Поэтому по приходу очередного тактового импульса сработает только выходной триггер наивысшего приоритета. При этом нулевой уровень с инверсного выхода выходного триггера через цепочку элементов И передается во все каналы с более высоким приоритетом и блокирует срабатывание выходных триггеров каналов с более высоким приоритетом, вследствие чего вновь приходящие заявки в этих каналах запоминаются на соответствующих триггерах заявок, но не обслуживаются. Кроме того, вновь приходящие заявки с более высоким приоритетом не прерывают начавшегося обслуживания заявки и не оказывают влияния на последовательность обслуживания заявок с меньшим приоритетом, чем обслуживаемая заявка.

Обслуживание выбранной заявки продолжается до появления сигнала сброса на соответствующем входе устройства. Узел анализа приоритетом каждого из каналов, приоритет которых ниже приоритета обслуживаемого канала, осуществляет выбор новой заявки на обслуживание. Эта последовательность обслуживания заявок сохраняется до тех пор, пока не будет обслужена заявка с наименьшим приоритетом из всей группы заявок, хранящихся в триггерах заявок устройства.

По окончании обслуживания заявки с наименьшим приоритетом заканчивается один цикл обработки заявок, поступивших в устройство в составе первой группы заявок, и начинается новый цикл, аналогичный описанному выше.

Таким образом, в известном устройстве для исключения возможной потери заявок, обладающих низким приоритетом при интенсивном поступлении заявок с более высоким приоритетом, организована относительная дисциплина обслуживания заявок, при которой все ранее поступившие заявки обслуживаются в порядке присвоенных приоритетов без прерывания их обслуживания при поступлении заявок с более высоким приоритетом, а все вновь поступившие заявки более высокого приоритета не обслуживаются до окончания обслуживания всех менее приоритетных заявок и хранятся в соответствующих триггерах заявок, что обеспечивает равномерное гарантированное обслуживание всех заявок, поступивших в устройство.

Таким образом, известное устройство не исключает возможность потери вновь поступившей заявки (или группы заявок) за счет того, что во время обслуживании предыдущей группы заявок произойдет наложение вновь поступившей на уже хранящуюся в триггере запроса, но еще не обслуженную заявку. Такая ситуация особенно возможна для высокоприоритетных заявок, которые в силу идеологии построения известного устройства не могут прервать обслуживание хотя и менее приоритетных, но поступивших ранее заявок.

Поэтому целью изобретения является исключение потери заявок на обслуживание.

Поставленная цель достигается тем, что в устройстве, содержащее группу запросных входов, группу входов сброса, тактовый вход и группу информационных выходов устройства, а также в каждом канале - первый триггер заявок и элемент И, причем установочный вход первого триггера заявок соединен с соответствующим запросным входом устройства, а выход этого триггера соединен с первым входом элемента И, дополнительно введены первый, второй и третий элементы ИЛИ, второй и третий счетчики, элемент ИЛИ-НЕ, дешифратор, триггер наличия запросов, блок памяти и, кроме того, в каждом канале - второй триггер заявок.

Выходы первых триггеров запросов соединены с соответствующими входами элемента ИЛИ-НЕ.

Первый вход первого счетчика соединен с тактовым входом устройства, второй вход первого счетчика соединен с выходом элемента ИЛИ-НЕ, а выход - с дешифратором, выходы которого в свою очередь подключены к вторым входам элементов И каждого канала соответственно. Выходы элементов И каналов соединены с входом сброса первого триггера запроса собственного канала, с соответствующим информационным входом блока памяти и соответствующим входом первого элемента ИЛИ, выход которого подключен к входу разрешения записи блока памяти и к входу второго счетчика. Выход второго счетчика соединен с адресным входом записи блока памяти. Установочные входы вторых триггеров заявок каждого канала соединены с соответствующими запросными входами устройства, входы сброса этих триггеров соединены с соответствующими входами сброса устройства и соответствующим входом третьего элемента ИЛИ, выход которого соединен с входом сброса триггера наличия запросов. Выходы вторых триггеров заявок соединены с соответствующими входами второго элемента ИЛИ, выход которого соединен с входом синхронизации триггера наличия запросов, информационный вход которого в свою очередь подключен к потенциалу "логическая единицы", а выход - к входу третьего счетчика, входу разрешения чтения блока памяти и выходу сигнала прерывания. Выход третьего счетчика соединен с адресным входом чтения памяти, выход которого является информационным выходом устройства.

На чертеже представлена блок-схема устройства.

Многоканальное устройство приоритета содержит каналы 11...1n, каждый из которых содержит первый 2 и второй 3 триггеры заявок и элемент И4, а также общие для всего устройства элемент ИЛИ-НЕ 5, первый счетчик 6, дешифратор 7, первый 8, второй 9, третий 10 элементы ИЛИ, триггер наличия запросов 11, второй 12 и третий 13 счетчики, а также блок памяти 14, группу запросных входов устройства 151... 15n, группу входов сброса 161... 16n, тактовый вход устройства 17, информационный выход устройства 18 и выход сигнала прерывания 19.

Блок памяти выполнен на микросхемах типа К155РП1 или 555ИР26, представляющих собой матрицу памяти, организованную по системе файл-регистров, что позволяет независимо и одновременно записывать в память одно слово и считывать из нее другое. Организация указанных микросхем представляет из себя 16 ячеек и позволяет хранить 4 слова по 4 бита каждое. Наращиванием числа микросхем можно получить увеличение как количества хранимых слов, так и их длины.

Устройство работает следующим образом.

В исходном состоянии (при отсутствии заявок на запросных входах 15) триггеры 2, 3, 11, а также счетчики 6, 12, 13 находятся в нулевом состоянии, блок памяти 14 очищен от информаций, на выходах 18 и 19 сигналы отсутствуют, на выходе элемента ИЛИ-НЕ 5 присутствует высокий уровень, поступающий на вход сброса счетчика 6, запрещая его работу.

При поступлении группы заявок на запросные входы 15 триггеры 2 и 3 заявок соответствующих каналов устанавливаются в единичное состояние, при этом на выходе элемента ИЛИ-НЕ 5 устанавливается низкий уровень, разблокирующий работу счетчика 6. По тактам, поступающим на вход 17, с помощью дешифратора 7 и элементов И 4 осуществляется опрос каналов, начиная с наиболее приоритетного на предмет наличия заявки в данном канале. При наличии такой заявки на выходе соответствующего элемента И 4 появляется сигнал, поступающий на один из информационных входов блока памяти 14, а также через первый элемент ИЛИ 8 на вход разрешения записи блока памяти 14.

При этом производится запись логической единицы в соответствующий разряд слова блока памяти 14, адрес которого указывается содержимым второго счетчика 12.

Этот же сигнал с выхода элемента И 4 устанавливает в нулевое состояние первый триггер заявок 2, подготавливая его к приему следующего запроса. Временные соотношения в схеме выбраны таким образом, что сброс триггера 2 производится после записи информации в блок памяти 14.

По заднему фронту сигнала с выхода элемента И 4 и соответственно первого элемента ИЛИ 8 происходит увеличение содержимого счетчика 12 и на его выходах установится адрес следующего слова блока памяти 14.

Аналогичным образом производится опрос и запись информации в блок памяти 14 для остальных каналов устройства, после чего первый счетчик 6 обнуляется через элемент ИЛИ-НЕ.

В свою очередь, сигнал единичного выхода любого из триггеров 3 через второй элемент ИЛИ 9 устанавливает в единичное состояние триггер наличия запросов 11, на выходе которого формируется сигнал прерывания 19 в устройство обработки прерываний (на чертеже не показано) и сигнал разрешения чтения из блока памяти 14 по адресу, указанному в содержимом третьего счетчика 13. Это вызывает появление информации на выходе 18 устройства, являющейся адресом вектора прерывания для устройства обработки прерываний. Последнее, считывая код с выхода 18, обрабатывает данное прерывание и выдает сигнал сброса по соответствующему входу сброса 16, что приводит к установке в нулевое состояние второго триггера заявок 3 и через третий элемент ИЛИ триггера наличия запросов 11.

При этом третий счетчик 13 увеличивает свое содержимое на единицу, формируя следующий адрес для считывания очередного вектора прерывания. При наличии необработанных запросов других каналов, о чем свидетельствует единичное состояние вторых триггеров заявок 3, триггер наличия запросов снова устанавливается в единичное состояние и происходит считывание информации из блока 14 по следующему адресу. Таким образом осуществляется считывание, а следовательно и обработка всех запросов на прерывание.

Изложенное выше показывает, что предлагаемое техническое решение существенно повышает надежность функционирования устройства, поскольку все вновь поступающие запросы в любом из каналов записываются в блок памяти 14 и обслуживаются в порядке их поступления. При этом исключается потеря заявок (при достаточном объеме памяти 1) и в то же время сохраняется основное преимущество известного устройства (прототипа), состоящее в том, что обеспечивается дисциплина обслуживания заявок, при которой все ранее поступившие заявки обслуживаются в порядке присвоения приоритетов без прерывания их обслуживания при поступлении заявок с более высоким приоритетом.

Многоканальное устройство приоритета, содержащее в каждом канале первый триггер заявок и элемент И, причем в каждом канале установочный вход первого триггера заявок соединен с соответствующим запросным входом устройства, а прямой выход соединен с первым входом элемента И, отличающееся тем, что оно дополнительно содержит первый, второй и третий счетчики, первый, второй и третий элементы ИЛИ, элемент ИЛИ - НЕ, дешифратор, триггер наличия запросов, блок памяти, в каждом канале - второй триггер заявок, при этом прямой выход первого триггера запросов каждого канала соединен с соответствующим входом элемента ИЛИ - НЕ, счетный вход первого счетчика соединен с тактовым входом устройства, вход сброса первого счетчика соединен с выходом элемента ИЛИ - НЕ, а выход - с входом дешифратора, выходы которого подключены к вторым входам элементов И каждого канала соответственно, выход элемента И каждого канала соединен с входом сброса первого триггера запроса своего канала, с соответствующим информационным входом блока памяти и соответствующим входом первого элемента ИЛИ, выход которого подключен к входу разрешения записи блока памяти и к счетному входу второго счетчика, выход которого соединен с адресным входом записи блока памяти, установочный вход второго триггера заявок каждого канала соединен с соответствующим запросным входом устройства, а вход сброса соединен с соответствующим входом сброса устройства и соответствующим входом второго элемента ИЛИ, выход которого соединен с входом сброса триггера наличия запросов, прямой выход второго триггера заявок каждого канала соединен с соответствующим входом третьего элемента ИЛИ, выход которого соединен с входом синхронизации триггера наличия запросов, информационный вход которого подключен к потенциалу "логическая единица" устройства, прямой выход триггера наличия запросов подключен к счетному входу третьего счетчика, входу разрешения чтения блока памяти и выходу сигнала прерывания устройства, выход третьего счетчика соединен с адресным входом чтения блока памяти, выход которого является выходом адреса прерывания устройства.

Рисунок 1



 

Похожие патенты:

Изобретение относится к автоматике и вычислительной технике, а точнее к приоритетной обработке данных, и предназначено для использования в мультипроцессорных системах, в локальных сетях и в системах распределенного управления

Изобретение относится к вычислительной технике и может быть использовано в распределенных системах обработки информации для организации обмена между центральной ЭВМ и абонентами системы по общей магистрали

Изобретение относится к вычислительной технике, автоматическому контролю и может быть использовано в устройствах прерывания программ, управления потоками данных и формирования исполнительного адреса банков данных в логических процессорах

Изобретение относится к вычислительной технике и может быть использовано в устройствах, в которых необходимо опрашивать последовательно источники информации, готовые передать данные в опрашивающее их устройство с малым временем задержки

Изобретение относится к вычислительной технике и может быть использовано в многопроцессорных вычислительных системах с общей многомодульной памятью расширить функциональные возможности путем изменения адреса основного модуля памяти на адрес резервного при отказе основного модуля

Изобретение относится к вычислительной технике, в частности к устройствам для управления очередностью обслуживания в условиях поступления множества запросов на обслуживание, и может быть использовано при построении различных устройств автоматики и информационно-измерительной техники

Изобретение относится к вычислительной технике и может быть использовано при отладке программ специализированных вычислительных систем реального времени

Изобретение относится к вычислительной технике, в частности предназначено для распределения заданий в вычислительной системе

Изобретение относится к вычислительной технике и может быть использовано в устройствах приоритетного обслуживания запросов

Изобретение относится к средствам контроля, управления и сигнализации сложных технических систем, в частности летательных аппаратов, и может быть использовано для повышения качества, надежности и безопасности их функционирования

Изобретение относится к вычислительной технике и может быть использовано для организации межмашинного обмена в распределенных вычислительных комплексах и сетях ЭВМ

Изобретение относится к вычислительной технике и предназначено для использования в локальных вычислительных сетях с шинной топологией для управления передачей пакетов данных через общий канал

Изобретение относится к способам управления перегрузкой сообщениями элементарной программы в электронной системе коммутации

Изобретение относится к области вычислительной техники и может быть применено в системах обмена данными

Изобретение относится к отвечающей системе, то есть способной к работе в реальном масштабе времени и толерантной к ошибкам системе для обработки сигналов, с множеством блоков обработки данных, которые соединены друг с другом через блоки передачи данных

Изобретение относится к вычислительной технике и может найти применение в отказоустойчивых многопроцессорных системах для перераспределения нагрузки между процессорами во время отказов

Изобретение относится к вычислительной технике и может быть использовано в устройствах последовательно-параллельного обслуживания запросов абонентов с переменным распределением потоков информации по линиям связи

Изобретение относится к вычислительной технике и может быть использовано в устройствах обслуживания запросов абонентов, имеющих разные приоритеты, с распределением потоков информации по линиям связи

Изобретение относится к вычислительной технике и может быть использовано для приоритетного обслуживания запросов

 

Наверх