Устройство для приоритетного обслуживания запросов
Иллюстрации
Показать всеРеферат
Союз Советских
Социалистических
Республик
ЬЛ ИСАНИЕ
ИЗЬБРЕТЕН ИЯ
<,1>955069
К АВТОРСКОМУ СВИДЕТЕЛЬСТВУ (61) Дополнительное к авт. свид-ву— (22) Заявлено 12.01.81 (21) 3234162/18-24 с присоединением заявки №вЂ” (23) Приоритет— (51) М. Кл.з
G 06 F9/46
Гес7дарственнмй кемнтет
СССР
Опубликовано 30.08.82. Бюллетень № 32
Дата опубликования описания 30.08.82 (53) УДК 68! .325 (088.8) по девам кзебретеннй и еткрмтий (72) Авторы изобретения
А. Г. Барсуков, А. Г. Барсуков и С. Б. Титков (71) Заявитель
1. (54) УСТРОЙСТВО ДЛЯ ПРИОРИТЕТНОГО ОБСЛУЖИВАНИЯ
ЗАПРОСОВ
Изобретение относится к вычислительной технике, в частности к устройствам для обслуживания запросов, и может быть использовано при построении вычислительных систем (ВС) обработки данных.
Известно многоканальное устройство приоритетных прерываний с автоматической выработкой кода приоритетной заявки, содержащее шифратор, регистр и и каналов (1).
Недостаток данного устройства — низкая надежность. 1О
Наиболее близким к предлагаемому по технической сущности и достигаемому результату является многоканальное устройство приоритетных прерываний, содержащее шифратор, регистр, группу элементов И и и каналов, а в каждом канале — счетчик. 15
Цель изобретения — повышение надежности устройства.
Поставленная цель достигается тем, что в устройство для приоритетного обслуживания запросов, содержащее шифратор, регистр, первый блок элементов И, и каналов, а в.каждом канале — счетчик, причем выход первого блока элементов И соединен со входом шифратора, выход шифратора соединен с информационным входом регистра, выход регистра является информационным выходом устройства, введены блок сдвиговых регистров, блок элементов И-ИЛИ, второй блок элементов И, дешифратор адреса, третий блок элементов И, распределитель импульсов, блок элементов ИЛИ, а в каждый канал — блок элементов И, причем нулевой выход счетчика каждого канала соединен со входом блока элементов И своего канала и соответствующим входом третьего блока элементов И, первый управляющий вход счетчика каждого канала соединен с выходом блока элементов И своего канала, второй управляющий вход счетчика каждого канала соединен с соответствующим выходом блока элементов ИЛИ, управляющий вход блока элементов И каждого канала соединен с первым входом первого блока элементов И, входом считывания устройства и первым входом распределителя импульсов, группа единичных выходов счетчика и-го канала соединена с группой сигнальных выходов устройства, вход блока элементов
ИЛИ соединен со вторым входом распределителя импульсов и тактовым входом устройства, первый выход распределителя импульсов соединен с управляющим входом треть955069 его блока элементов И и кодовым выходом устройства, второй, третий и четвертый выходы распределителя импульсов соединены соответственно со входами второго блока элементов И, блока элементов И-ИЛИ и блока сдвиговых регистров, выход третьего блока элементов И соединен со входом дешифратора адреса, группа выходов которого соединена со входом блока элементов ИИЛИ и входом второго блока элементов И, первая и вторая группы входов блока сдвиговых регистров соединены соответственно с группой выходов блока элементов И-ИЛИ и с группой выходов второго блока элементов И, третья группа входов блока сдвиговых регистров соединена с группой информационных входов устройства, выход блока сдвиговых регистров соединен со вторым входом первого блока элементов И.
На чертеже приведена структурная схема устройства для приоритетного обслуживания запросов.
Устройство содержит распределитель 1 импульсов, блок 2 сдвиговых регистров, блок 3 элементов И-ИЛИ, блок 4 элементов
И, дешифратор 5 адреса, блок 6 элементов И, 5
1О
20 блок 7 элементов ИЛИ, каналы 8, блок 9 элементов И канала, счетчики 10 каналов, шифратор 11, регистр 12, блок 13 элементов
И, группу информационных входов 14 устройства, группу информационных выходов 15 устройства, вход 16 считывания устройства, группу тактовых входоь 17 устройства, группу сигнальных управляющих выходов 18 устройства и группу кодовых выходов 19 устройства.
Устройство для приоритетного обслуживания запросов работает следующим образом. 35
Перед началом работы устройство по команде ВС приводится в исходное состояние. Исходное состояние устройства характеризуется отсутствием запросов в блоке 2, нулевым состоянием всех счетчиков 10 и регистра 12 и готовностью устройства к приему запросов. Цепи установки устройства в исходное состояние на чертежах не показаны.
Коды запросов на обслуживание поступают по группе входов 14 в блок 2, где 4 заносятся в очередь на обслуживание в порядке их поступления в зоны, соответствующие уровням приоритета поступивших запросов. Блок 2 состоит из реверсивных сдвиговых регистров, количество которых равно количеству разрядов кода запроса. Запрос хранится в ячейке, образованной одноименными разрядами всех регистров блока 2.
Максимальное количество запросов, хранящихся в устройстве, равно разрядности регистра.
Длина зон не фиксирована, и может изменяться от нуля до длины, равной разрядности регистра. Зоны располагаются вплотную друг к другу. Причем зоны с большими номерами хранят запросы низших уровней приоритета. Адрес верхней границы каждой зоны определяется показанием реверсивного счетчика 10 соответствующего канала 8 как сумма количества поступивших запросов данного уровня приоритета и количества запросов всех высших уровней приоритета. Счетчик 10 первого канала 8 предназначен для подсчета запросов высшего приоритета. Прием кода запроса производится в ячейку, освобождаемую в. конце зоны, соответствующего уровня приоритета после сдвига остальных зон младших уровней приоритета на один разряд вправо, т. е. в сторону старших разрядов регистров блока 2. Для этого сигнал сопровождения запроса с соответствующего входа 17 подается на одноименный вход блока 7. Выходы блока 7 соединены со счетными входами реверсивных счетчиков 10 соответствующих каналов 8. Под воздействием входного сигнала блок 7 вырабатывает сигналы, поступающие на входы счетчиков 10 как данного уровня приоритета, так и всех остальных низших уровней. Тем самым показания этих счетчиков 10 увеличиваются на единицу. Таким образом, в соответствующем счетчике образуется адрес освобождаемой ячейки.
Одновременно сигнал сопровождения поступившего запроса подается на соответствующий вход распределителя 1 нмпульсов.
Распределитель 1 импульсов вырабатывает сигнал управления блоком 6 на соответствующем выходе группы выходов. При этом к дешифратору 5 адреса подключается счетчик 10 запросов уровня приоритета поступившего запроса. Сигнал управления блоком 6 поддерживается в течение всего времени цикла приема запроса. Одновременно код прерывания по группе выходов 19 поступает в ВС, информируя ее о наличии в устройстве запроса на обслуживание.
На выходе дешифратора 5, соответствующем адресу освобождаемой ячейки, появляется сигнал, который по соответствующему входу группы входов поступает в блок 3 и на соответствующие элементы блока 4.
Затем на втором выходе распределителя 1 импульсов появляется импульс управления блоком 3, который поступает на вход этого блока. Блок 3 вырабатывает сигналы управления сдвигом содержимого реверсивных сдвиговых регистров блока 2, начиная с адресуемой ячейки. После освобождения ячейки с первого выхода распределителя импульсов 1 поступает сигнал в блок 4.
По этому сигналу код запроса с группы информационных входов 14 записывается в освободившуюся ячейку. На этом заканчивается цикл записи запроса.
Запросы принимаются до тех пор, пока прием очередного запроса не вызовет максимально допустимого состояния одного из счетчиков 10, что свидетельствует о за955069 полнении блока 2 сдвиговых регистров. Но сигнализация о заполнении блока 2 осуществляется группой единичных выходов счетчика 10 п-ro канала через группу выходов 18, так как этот счетчик накапливает сумму поступивших запросов всех уровней приоритета., Выборка запроса на обслуживание осуществляется ВС подачей сигнала на вход 1.6 считывания устройства. При этом происходит вычитание единицы из всех счетчиков 10
10 содержимое которых не было равным нулю.
Для этого состояние счетчика 10 в каждом канале 8 анализируется блоком 9 элементов
И, запрещающим прохождение сигнала со входа 16 на вычитающие входы при нулевом состоянии соответствующих счетчиков.
Выборка кода запроса производится всегда из первой ячейки блока 2. Для этого единичные выходы триггера первых разрядов соединены с первыми входами блока элементов И 13. На второй вход элементов И 13 подается сигнал со входа 16. С выходов группы элементов И 13 код запроса поступает на шифратор 11. Шифратор преобразует код запроса в код адреса первой команды программы, предназначенной для обслужи- 25 вания данного запроса, и записывает его в регистр 12. Далее код адреса по группе информационных выходов 15 поступает в ВС.
После выборки запроса из блока 2 осуществляется сдвиг его содержимого на один разряд влево по сигналу с третьего выхода распределителя 1 импульсов.
Таким образом, устройство обеспечивает реализацию такого алгоритма приема и хранения неоднородного потока запросов, при котором весь объем памяти группы сдвиговых регистров, предназначенный для хранения полей равноприоритетных запросов, динамически перераспределяется в процессе работы устройства. Переполнение устройства происходит лйшь в том случае, когда под хранение кодов запросов задействует- 4о ся весь объем памяти группы сдвиговых регистров.
Таким образом, применение изобретения позволяет уменьшить вероятность потери запросов, что приводит к повышению надежности устройства. Так как при выборке устройство учитывает приоритеты всех имеюшихся в текущий момент запросов, это дает возможность его использования в мультипроцессорных вычислительных системах.
Формула изобретения
Устройство для приоритетного обслуживания запросов, содержащее шифратор, регистр, первый блок элементов И и п каналов, а в каждом канале — счетчик, причем выход первого блока элементов И соединен со входом шифратора, выход, шифратора соединен с информационным входом регистра, выход регистра является информационным выходом устройства, отличающееся тем, что, с целью повышения надежности, устройство содержит блок сдвиговых регистров, блок элементов И-ИЛИ, второй блок элементов И, дешифратор адреса, третий блок элементов И, распределитель импульсов, блок элементов ИЛИ, а в каждом канале— блок элементов И, причем нулевой выход счетчика каждого канала соединен со входом блока элементов И своего канала и соответствующим входом третьего блока элементов И, первый управляющий вход счетчика каждого канала соединен с выходом блока элементов И своего канала, второй управляющий вход счетчика каждого канала соединен с соответствующим выходом блока элементов ИЛИ, управляющий вход блока элементов И каждого канала соединен с первым входом первого блока элементов И, входом считывания устройства и первым входом распределителя импульсов, группа единичных выходов счетчика и-го канала соединена с группой сигнальных выходов устройства, вход блока элементов ИЛИ соединен со вторым входом распределителя импульсов и тактовым входом устройства, первый выход распределителя импульсов соединен с управляющи м входом третьего блока элементов И и кодовым выходом устройства, второй, третий и четвертый выходы распределителя импульсов соединен соответственно со входами второго блока элементов И, блока элементов И-ИЛИ и блока сдвиговых регистров, выход третьего блока элементов И соединен со входом дешифратора адреса, группа выходов которого соединена со входом блока элементов И-ИЛИ и со входом второго блока элементов И, первая и вторая группы входов блока сдвиговых регистров соединены соответственно с группой выходов блока элементов И-ИЛИ и группой выходов второго блока элементов
И, третья группа входов блока сдвиговых регистров соединена,с группой информационных входов устройства, а выход блока сдвиговых регистров соединен со вторым входом первого блока элементов И.
Источники информации, принятые во внимание при экспертизе
1. Авторское свидетельство СССР № 548859, кл. G 06 8F 9/46, 1974.
2. Авторское свидетельство СССР по заявке № 2899989/18-24, кл. G 06 F 9/46, 1980.
955069
Составитель М. Кудряшев
Редактор Л. Пчелинская Техред А. Бойкас Корректор E. Рошко
Заказ 6171 54 Тираж 731 Подписное
ВНИИПИ Государственного комитета СССР по делам изобретений и открытий
113035, Москва, Ж вЂ” 35, Раушская наб., д. 4/5
Филиал ППП «Патент>, г. Ужгород, ул. Проектная, 4