Многоканальное устройство приоритета
Иллюстрации
Показать всеРеферат
ОПИСАНИЕ
ИЗОБРЕТЕНИЯ
К АВТОРСКОМУ СВИДЕТЕЛЬСТВУ (6! ) Дополнительное к авт. сеид-ву (22) Заявлено 14. 06. 79 (21) 2782713/18-24 Р1) М
Союз Соаетскид
Социалистических
Республик
/ б .l с присоединением заявки М
С 06 F 9/46
Государственный комитет
СССР по делам изобретений н открытии (23) приоритет
Опубликовано 150481, 6юллетеиь Й9 14 (53) УДК 681 325 (088.8) Дата опубликования описания 15. 04. 81
1,.
«
Э.П. Овсянникова-Панченко, Л.М. :.Петроад --... и Б.B. Иевкопля ;;-:,, ;, /
Ф
«1 ц :-,, (/
/ (72) Авторы изобретения (71) 3а яв итель (54) МНОГОКАНАЛЬНОЕ УСТРОЙСТВО ПРИОРИТЕТА
Изобретение относится к устройствам для программного управления.
Известно многоканальное приоритетное устройство распределенного-типа, предназначенное для разрешения конфликтных ситуаций при работе ряда активных устройств, подключенных к общей магистрали, содержащее в каждом канале дешифратор, входы которого подключены к общей магистрали, а выход — к входу запуска счетчика тактов; выходы счетчика тактов соедине- ° ны с входами селектора такт Ь,выход селектора тактов соединен с входом разрешения работы интерфейсного блока данного канала.
При работе устройства доступ к магистрали получают в некоторой последовательности все устройства, участвующие в вычислительном процессе.
Очередность доступа задается. настройкой селекторов тактов в каждом Манале, например программным путем. Выделяя некоторому каналу большее или меньшее число асинхронных тактов, можно регулировать долю времени, отводимого системой данному каналу в пределах от 0 до 100%. В первом случае селектор тактов данного канала выключается, во втором — настраивается на прием всех без исключения тактов (11 .
Однако применимость этого устройства ограничена достаточно специализированными системами, работа которых описывается более или менее жесткими алгоритмами. В более развитых системах использование указанного устройства может привести к значительным потерям времени изза приближенного характера планирования работы ресурсов вычислительной системы в "очередном" интервале времени и, как следствие этого, нз-за пропуска или черезмерного увеличения длительности асинхронных так" тов, неудачно выделенных системой каналу или группе каналов.
Известно также многоканальное устройство приоритета, содержащее элементы ИЛИ, И, И-НЕ и триггер, а в каждом канале — триггер, три элемента И-НЕ, два элемента И (2 .
Однако данное устройство не позволяет осуществлять изменение приоритета каналов.
Наиболее близким по технической сущности к изобретению является при" оритетное устройство, содержащее в каждом канале входной регистр, вхо822185 ды которого подключены к входам устройства, а выходы — к входам блока формирования кода приоритета соответствующего канала, причем выходы всех блоков формирования кода приоритета соединены с информацион- 5 ными входами выходного регистра и с входами блока определения номера старшего канала, выходы которого соединены через дешифратор с управляющими входами выходного регистра, выходы которого подключены к выходам устройства.
Работа устройства основана на быстром сравнении двоичных чисел, поступающих с выходов блоков формирования кода приоритета, имеющихся в каждом канале. Эти числа характеризуют текущие веса соответствующих запросов и могут задаваться программным путем.
Операция сравнения производится в 20 блоке определения номера старшего канала. В зависимости от комбинации чисел, поступающих на входы этого блока, на его выходах формируется двоичный код, равный номеру канала 25 с максимальным весом. Если имеется несколько каналов с максимальным весом, то выбирается только один из них — левый канал. Двоичный код номера канала поступает на входы дешифратора, сигнал с одного из выходов дешифратора вызывает запись ин-, формации в выходной регистр. Эта информация является достаточной для однозначной идентификации канала, подлежащего первоочередному обслуживанию P3) .
Недостаток этого устройства состоит в том, что оно само по себе не позволяет производить оперативное изменение приоритета каналов, а тре- 40 бует для этого соответствующих программных средств, что и обуславливает функциональную ограниченность устройства.
Цель изобретения — расширение 45 функциональных воэможностей устройства путем оперативного изменения дисциплины обслуживания.
Поставленная цель достигается тем, что в многоканальное устройство gg приоритета, содержащее блок определения номера старшего канала, выход которого соединен с информационным входом дешифратора, выходы которого соединены с группой разрешающих входов выходного регистра, выходы- выходного регистра являются выходами устройства, три шины синхронизации, а в каждом канале - входной регистр, триггер запроса и блок формирования кода приоритета, выполненный в виде Д- ЬО триггера, двух элементов И, и элемента ИЛИ, причем первая шина синхронизации устройства соединена с тактовыми входами входных регистров и триггеров запроса каналов, вторая 5 шина синхронизации — с первым входом первого элемента И блока формирования кода приоритета канала, третья шина синхронизации соединена с С-входами Д-триггеров каналов, запросные входы устройства соединены с установочными входами соответствующих триггеров запроса каналов, выходы входного регистра канала соединены с группой информационных входов блока формирования кода приоритета канала, группа выходов блока формирования кода приоритета канала соединена с соответствующей группой входов блока определения номера старшего канала, информационные входы входногс регистра канала являются соответствующей группой информационных входов устройства, введены два элемента И-НЕ, формирователь импульсов, а в блок формирования кода приоритета каждого канала введены узел маскирования, датчик случайных чисел, группа элементов И и узел сравнения, причем группа информационных входов блока формирования кода приоритета канала соединена с первой группой входов узла сравнения канала и через узел маскирования канала — с первыми входами группы элементов И канала, выход первого элемента.И канала через датчик случайных чисел соединен со вторыми входами группы элементов И канала, выходы группы элементов И канала соединены со второй группой входов узла сравнения канала и с группой выходов блока формирования кода приоритета канала, прямой выход триггера запроса канала является одним из выходов группы выходов блока формирования кода приоритета канала и соединен со вторым входом первого элемента И канала, с первым входом второго элемента И канала и соответствующим информационным входом выходного регистра, инверсный выход триггера запроса и выход второго элемента И канала через элемент ИЛИ канала соединены с соответствующими информационными входами первого элемента И-НЕ, выход которого соединен с управляющим входом дешифратора, выход узла сравнения канала соединен с
0-входом Д-триггера канала.и со вторым входом второго элемента.И канала, инверсный выход Д-триггера канала соединен с третьим входом первого элемента И канала, выходы выходного регистра через второй элемент И -НЕ соединены с управляюшим входом первого элемента И-НЕ и со входом формирователя импульсов, выход .которого соединен с R-входами Д-триггеров каналов .
На фиг.1 представлена структурная схема устройства; на фиг. 2 — струк- . турные схемы узла маскирования и датчика случайных чисел; на фиг.З структурная схема блока определения номера старшего канала.. Ч22185
Многоканальное приоритетное устройство (фиг.1) содержит каналы
1 -14, группы информационных входов
2 -24, запросные входы 3„ -34, блоки
4 -44 формирования кода йриоритета канала, выходной регистр 5, блок.6 определения номера старшего канала, дешифратор 7, выходы 84-84 устройства, вход дешифратора 9, первый элемент
И-НЕ 10, датчик 11 случайных чисел, группу элементов И 12, узел 13 маскирования, узел 14 сравнения, Д-триггер 15, элементы И 16 и 17., элемент
ИЛИ 18, входные регистры 194-194, прямой выход 20 триггера запроса, триггеры 21 -214, образующие выходной регистр, триггеры 224-224 запро15 са, инверсный выход 23, второй элемент .И-HE 24, формирователь 25 импульсов, первую, вторую и третью 2628 шины синхронизации, тактовые входы
29-31. 20
Структурная схема датчика случайных чисел содержит (фиг.2) триггеры
324 -324, элемент ИСКЛЮЧАЮЩРЕ ИЛИ 33, входы 34 и 35. Структурная схема блока маскирования содержит элементы 25
ИЛИ 362 -36 р, входы 374 — 37 д, выходы
38 -38щ, группа элементов И содержит элементы И 394 -39m, входы 404 -40п, .
Блок определения юмера старшего канала содержит (фиг.3) схемы 414 -41 6 3 сравнения, элемент HE 42, элементы
И 43-46, элементы ИЛИ 47 и 48, выходы 49 и 50, входы 51-54.
Рассмотрим принцип действия от,цельных составных частей устройства.
По положительному фронту синхронизирующего импульса на шине 26 осуществляется прием информации с группы входов 2 в регистр 194 и с входа 34 — в триггер 22 . Отрицательный фронт импульса на шине 26 не вы- 1О зывает изменения информации в регистре 194 и триггере 22 . По положительному фронту следующего синхронизирующего импульса на шине 26 процесс записи повторяется и т.д. Таким обра- 45 зом, входные регистры 194-194 предназначены для привязки асинхронных сигналов, поступающих на входы 2 -2, 3 -34 устройства, к синхронизирующей серии импульсов, поступающей на 50 вход 29.
Триггер 15 устанавливается в нулевое состояние при воздействии нулеsoro сигнала на вход R независимо от логического состояния входов С и
О. Если на вход R подан сигнал логической единицы, то разрешается запись информаций.в триггер с входа
D под действием положительного фронта сигнала на входе С. Отрицательный фронт сигнала на входе С не вызывает dO изменения состоянии триггера 15.
Узел 14 сравнения формирует на выходе сйгнал логической единицы в том случае, если X > Y, т.е. в том случае, когда двоичное число в ре- 65 гистре 194 больше или равно двоичному числу, поступающему с выходов группы
12. При X (У на выходе узла 14 сравнения формируется сигнал логического нуля.
Датчик 11 случайных чисел (фиг.2) работает следующим образом.
По положительному фронту синхронизирующего сигнала на. входе 34 производится сдвиг информации в регистре на триггерах 32 -32> на один разряд влево,при этом в освободившийся раз яд 32п1записывается информация с выхода элемента ИСКЛЮЧАЮЩЕЕ ИЛИ 33, входы которого подключены к выходу триггеров 32 -32„ . Конкретное значение i выбирается в зависимости от разрядности m; это значение должно. соответствовать максимальному периоду повторения последовательности случайных чисел. На выходах триггеров 32<.-32 по каждому синхронизирующему импульсу формируются m-разрядные случайные числа с равномерным распределением в диапазоне
0"(2 -1).
Узел 13 маскирования формирует на выходах 384 -382 ., 38,„ код маски вида
М М ...М„„ = 000...0111...1, в котором позиция левой единицы определяется позицией левой единицы кода, поступающего на входы 37 -37 .
Например, при входном коде
Н4н,...н,г = 000011010001 маска
М4М ...М„ = 000011111111
В частных случаях при Н = 1, М4 = Мг = ...Mm- =1, à при Н4 нг = ...Hm= 0 м4 = м = ...м„= 0°.
Группа 12 элементов И формирует на выходах 40<-40 двоичное число
Е4Е2- ° 4
Например, при ,М1М2aa М -- 000011111111
R
° ° ° E д 000001011001 °
Диапазон изменения числа Е4Ег...Е таким образом, оказывается прйвязанным к значению числа Н4Н2 ...Н в. Можно показать, что верхняя гранйца этого диапазона превышает число Н„нг...
Нщ не более, чем в К раз, где
1 4К (2 где
- номер позиции, крайней левой единицы числа Н„нг...й,я.
Условие К = 1 реализуется при н,=нг= .н „=0, н; =н +,=н-,=н =1; условие
К = 2
822185
8 реализуется при Н»=Н =...=Ъ » =Н -=Н = -=Нп)»=Н =0 Н =1 °
Работа блока 6 определения номера старшего канала (фиг.3) основана на попарном сравнении четырех (m+1)-разрядных двоичных чисел, которые поступают .на входы 51-54, и выработке на выходах 49 и 50 двухразрядного числа, значение которого указывает номер канала,по которому получено максимальное (m+1)-разрядное число из четырех чисел, посту-! пивших на входы 51-54. При равенстве максимальных чисел в нескольких каналах предпочтение отдается каналу. с меньшим номером. Коду Z»Z>=00 соответствует первый канал (группа входов 51), коду 01 — второй канал, коду 10 — третий, коду 11 — четвертый (группа входов 54) .
Блок 41„(412 416) сравнения формирует на выходе логическую единицу при выполнении условия Х > V, где
Х и V (m+1)-разрядные двоичные числа. При Х У на выходе блока
41 »(41 -41 ) формируется логический нуль. Триггер 21»(21 -214) устанавливается в нуль при подаче логического нуля на вход R независимо от логического состояния входов С и О, запись единицы производится при нали чии логических единиц на входах R u по переднему фронту синхрониэирующего импульса на входе С.
Дешифратор 7 вырабатывает на одном иэ выходов (номер выхода определяется входным двузначным кодом) сигнал логической единицы при наличии на входе 9 логического нуля. Если на вход 9 подана логическая единйца, то дешифратор 7 закрыт, т.е. на всех
его выходах формируется сигнал логических нулей независимо от значения входного сигнала кода.
Формирователь импульса 25 вырабат вает отрицательный импульс на выходе по положительному фронту сигнала на входе. Длительность импульса выбирается достаточной для надежной установки триггера 15 в нулевое состояние.
Многоканальное приоритетное устройство работает по вероятностному принципу ° Вероятность обработки запроса в текущем такте, зависит от числа конкурирующих запросов и от на бора значений некоторых чисел ...A„, 1,2..,n, каждое иэ которых стави ся в соответствие определенному входному запросу. Вероятность обработки запроса в текущем такте увеличивается при уменьшении числа конкурирующих запросов, а при их отсутствии принимает единичное значение ° При наличии группы конкурирующих запросов соотношение между вероятностями обработки этих запросов в текущем такте подобно соотношению между числами Ag, соответствую щими данной группе. Пусть, например, имеется 8 каналов, по которым поступили 4 запроса (3,5,7,8). Этим запросам соответствуют следующие значения: A : A q = 8000, A 5 = 6000, 5 A 7 10000, А 8 = 4000 . Из соотношения
A > c А > < А > A 7 следует подобное соотношение между вероятностями Р„ первоначальной обработки соответствующих запросов Р c P> (Р с Р, причем, !
О РВ 0 083 Р = 0,139, Р = 0,314, Рт = 0,514. Условие РВ + Р + Р9 +
+ Р = 1 отражает достоверность собыС ия, состоящего в обработке одного з поступивших запросов в текущем такте. Таким образом, задавая эначе) ние A, например программным путем, можно устанавливать и изменять в нужном направлении относительную интенсивность обработки запросов каждого канала.
20 Работа четырехканального приоритетного устройства заключается в следующем.
В исходном состоянии на входы синхронизации 29-31 поданы логические нули, выходной регистр 5 сброшен, т.е. на выходах 8»-84 поддерживаются сигналы логических нулей, на выходах элемента. ИЛИ-НЕ 24, формирователя 25 импульса и элемента И-HE 10 р З поддерживаются сигналы логических единиц. Дешифратор 7 закрыт сигналом логической единицы на входе 9, на входы синхронизации С-триггеров
21» 214 поданы логические нули.
Триггеры 15 блоков 4»-44 установлены в единичное состояние. .Сигналы запросов на связь с устройством общего пользования (на фиг-.1 не показаны) поступают на входы 3»-34 в произвольные моменты
40 времени в виде постоянных уровней логической единицы. Сигнал запроса
ы- поступает на вход устройства при отсутствии сигнала разрешения (логической единицы) на соответствую- щем выходе 8»-84. Константы А., (i = 1,2,3,4) поступают на входы 2 . . По положительному фронту синхронизйрующего сигнала на входе 29 производится запись входной информации в регистры 19»-194.
При отсутствии запроса,в i-м канале на выходе 23 блока 4 присутствует логическая единица, которая в виде сигнала готовности блока 4, передается через соответствующий элемент ИЛИ 18 на вход элемента
И-НЕ 10, выполняющего функцию сбора сигналов готовности от всех блоков
4;. Если запросы отсутствуют во всех каналах, то в момент поступления
Щ синхрониэирующего импульса (логической единицы) на вход 31 элемент
И-НЕ 10 переключается в нулевое состояние, на вход 9 дешифратора 7 поступает разрешающий сигнал, на одном из выходов дешифратора 7 фор822185
)o мируется логическая единица. Это, однако, не приводит к изменению состояния регистра 5, так как на входы сброса R всех триггеров 21 214 поданы логические нули с единичных плеч триггеров 22)-224. 5
При наличии запроса в i -м канале в соответствующий триггер 22; записывается логическая единица. При поступлении логической единицы на вход 30 срабатывает элемент И 17, запускается датчик 11, вырабатывается очередное случайное число, которое проходит через группу 12 элементов И. Если число на выходе этой группы меньше или равно:A, то на выходе узла 14 формируется логическая единица, которая, пройдя через элементы И 16 и ИЛИ 18, поступает .в виде сигнала готовности блока 4„ на вход элемента И-НЕ 10. При поступлении логической единицы на вход 31 20 триггер 15 устанавливается в единицу и сигналом с нулевого плеча закрывает элемент И 17, препятствуя выработке очередного случайного числа.
Если выработанное число на выходе 5 группы элементов И 12 случайное число больше А<, то сигнал готовности не вырабатывается, так как на выходе узла 14 сравнения формируется логический нуль, запирающий элемент И 16. О
Триггер 15 при этом поддерживает на нулевом плече логическую единицу, разрешая выработку очередного случайного числа. В одном из последующих тактов под действием сигнала на выходе 30 случайное число на выходе группы 12 элементов И окажется в диапазоне 0-А;. После этого, как уже было рассмотрено, формируется сигнал готовности, а сигнал триггера 15 приостанавливает работу датчика 11. 4О
После получения сигналов готовности от всех блоков 4 -4 4 в момент поступления сигнала логической единицы на вход 31 срабатывает элемент И-НЕ 10, открывая дешифратор 7. Положительный 4g фронт сигнала с одного из выходов дешифратора 7 производит запись единицы в один иэ триггеров 21(-214, а именно, в триггер, соответствующий каналу, для которого значение случай- щ ного числа на выходе блока 4 оказалось максимальным. Сигнал логической единицы с выхода указанного триггера поступает в активное устройство в качестве сигнала разрешения доступа к устройству общего пользования. Этот же сигнал проходит через элемент И-НЕ
24 и закрывает элемент. И-НЕ 10, препятствуя формированию сигналов на выходе дешифратора 7 и изменению состояния регистра 5 вплоть до оконча- 60 ния сеанса связи активного устройства с устройством общего пользования.
При окончании сеанса связи снимается сигнал запроса с входа 3„ сбрасываются триггер 22,„ соответствующе- 65
ro канала, один из триггеров регистра 5, на всех выходах 8 -84 формируются логические нули, на выходе элемента И-НЕ 24 возникает уровень логической единицы, с выхода формирователя 25 импульса на входы сбррса R триггеров 15 передается кратКовременный импульс установки нулевого состояния. В этом же такте производится опрос сигналов готовности импульсом, поступающим на вход 31, Если есть запросы и имеются готовности всех блоков 4 -4 4, то на одном из выходов 8 -8 4 формируется сигнал разрешения. Если нет сигналов готовности от некоторых блоков, то производится выработка случайных чисел до тех пор, пока сигналы готов-. ности не появятся и т.д.
Синхронизация устройства можетосуществляться периодическими последовательностями импульсов СИ 1-СИ 3, которые поступают соответственно на входы 29-31. Синхронизирующие импульсы СИ 1 и СИ 2 могут совпадать по ° времени или отличаться частотой следования. В последнем случае группа запросов принимается на входные регистры 19 -194 и изолируется на период повторения импульсов СИ 1 от попоянения. Промежуток времени Т между импульсами СИ 2 и СИ 3 в обоих случаях должен быть достаточным для компенсации времени переходных процессов в регистрах 19 -194, в блоках
4 -44, 6 и 7, длительность импульса
СИ 3 (T 2) выбирается достаточной для надежного срабатывания триггеров
21 -214. под действием этого импульса после его прохождения по цепи 31
10 — 9 — 7 на вход С. Возможны и другие способы синхронизации, например, синхронизация входных регистров 1 -14. с разной частотой или в разные моменты времени, раздельная синхронизация регистров 19; и триггеров 22; и т.д. Синхронизирующие элементы 24 и 25 служат для фиксации момента освобождения устройства общего йользования и могут быть исключены при наличии интерфейсных линий, характеризующих занятость устройства общего пользования.
Таким образом, изобретение позволяет значительно расширить функциональные возможности известного устройства за счет автоматического и оперативного перераспределения приоритетов каналов при отключении или же подключении одного из них.
Формула изобретения
Многоканальное устройство приоритета, содержащее блок определения номера старшего канала, выход которого соединен с информационным входом дешифратора, выходы которого соеди822185
12 нены с группой разрешающих входов выходного регистра, выходы выходного регистра являются выходами устройства„ три шины синхронизации, à в каждом канале - входной регистр, триггер запроса и блок формирования кода приоритета, выполненный в виде
Д-триггера, двух элементов И и элемента ИЛИ, причем первая шина синхронизации устройства соединена с тактовыми входами входных регистров и триггеров запроса каналов, вторая шина синхронизации — с первым входом первого элемента И блока формирования кода приоритета канала, третья шина синхронизации соединена с С-входами Д-триггеров каналов, запросные 15 входы устройства соединены с установочными входами соответствующих триггеров запроса каналов, выходы входного регистра канала соединены с группой информационных входов бло- Щ ка формирования кода приоритета канала, группа выходов блока формирования кода приоритета канала соединена с соответствующей группой входов. блока определения номера старшего канала, информационные входы входного регистра канала являются ! соответствующей группой информационных входов устройства, о т л ич а ю щ е е с я тем, что, с целью расширения его функциональных возможностей за счет оперативного изменения дисциплины обслуживания, оно содержит два элемента И-НЕ, формирователь импульсов, а в блоке формирования кода приоритета каждого канала — узел маскирования, датчик случайных чисел, группу элементов И и узел сравнения, причем группа информационных входов блока формирования кода приоритета канала соеди- 40 иена с первой группой входов узла сравнения канала и через узел маскирования канала — с первыми входами группы элементов И канала, выход первого элемента И канала через датчик случайных чисел соединен со вторыми входами группы элементов И канала, выходы группы элементов И канала соединены со второй группой входов узла сравнения канала и с группой выходов блока формирования кода приоритета канала, прямой выход триггера запроса канала является одним из выходов группы выходов блока формирования кода приоритета канала и соединен со вторым входом первого элемента И канала, с первым входом второго элемента И канала и с соответствующим информационным входом выходного регистра, инверсный выход триггера запроса и выход второго элемента И канала через элемент ИЛИ канала соединены с соответствующими информационными входами первого элемента И-НЕ, выход которого соединен с управляющим входом дешифратора, выход узла сравнения канала соединен с 0-входом Д-триггера канала и со вторым входом второго элемента
И канала, инверсный выход Д-триггера канала соединен с третьим входом первого элемента И канала, выходы выходного регистра через второй элемент И-НЕ соединены с управляющим входом первого элемента И-НЕ и со входом формирователя импульсов, выход которого соединен с R-входом Д-триггеров каналов.
Источники информации, принятые во внимание при экспертизе
1. Патент CLIA, кл. 340-172.5, Р 4.017841, 1977.
2. Авторское свидетельство СССР
Р 474807, кл. G 06 F 9/18, 1975.
3. Патент Великобритании
Р 1.540.960, кл. G 4 А, 1979 (прототип);
822185
Тираж 745 Подписное
ВНИИПИ Государственного комитета СССР по делам изобретений и открытий
113035, Москва, Ж-35, Раушская наб., д. 4/5
Заказ 1857/74
Филиал ППП "Патент", r. Ужгород, ул. Проектная,4
Составитель Ф. Шагиахметов
Редактор М. Петрова Техред Е.Гаврилешко Корректор Е. Рошко