Изобретение относится к вычислительной технике, может быть использовано в многомашинных вычислительных системах для распределения нагрузки между процессорами (ЭВМ) и является усовершенствованием изобретения по авт. св. № 1619287.
Цель изобретения - расширение области применения за счет обеспечения равномерной загрузки процессоров.
На чертеже представлена структурная схема одного канала устройства.
Устройство содержит в каждом канале регистры 1 и 2, группы элементов И 3, 4, счетчик 5, блок 6 памяти, триггеры 7-9, распределитель 10 импульсов, элементы И-11- 15, элемент 1/1-1НЕ 16, синхровход 17, элемент 18 развязки, выход 19 признака наличия запросов, счетчик 20 распределите - ля, дешифратор 21, формирователь 22-импульса, элемент ИЛИ 23, формирователь 24 импульса, триггер 25, группу элементов И 26, элементы 27-29 задержки, формирователи 30 и 31 импульсов, элементы И 32 и 33, элемент ИЛИ 34, элементы НЕ 35 и 36, вход
запроса 37, сигнальные выходы 38 и 39, вход 40 начальной установки, управляющие ходы канала 41-43, кодовый вход процессора 44, входы установки триггера 7, 45, 46: общую магистраль 47, общие линиг/i 48-50, вход 51 кода запроса.
Устройство работает следующим образом.
Для начальной установки подается сигнал на вход 40, при этом триггеры 8 и 9 и счетчики 5 и 20 устанавливаются в нулевое состояние;
Запрос от К-го источника запросов (абонента) заносится в регистр 1 с входа 51 по сигналу 37 при нулевом состоянии триггера 8, выход которого подключен к сигнальному выходу канала 39.
Если К-й процессор, закрепленный для обслуживания запросов К-го абонента, способен принять запрос(не перегружен), о чем свидетельствует единичное состояние триггера 7, то через элемент И 11 по сигналу 37 подается сигнал на вход прерывания 38 К-го процессора. Код запроса (вектор прерывасл
С
ixi
ifO
ния) считывается процессором с регистра 1 через группу элементов И 3 по сигналу 42.
Если К-й процессор не способен принять запрос (перегружен), о чем свидетельствует нулевое состояние триггера 7, то по сигналу на входе 37 при записи кода запроса в регистр 1 через элемент И 12 производится запись 1 в триггер 8.
Для исключения появления укороченного сигнала как на выходе элемента И 11, так и на выходе элемента И 12 при переброске триггера 7 в случае прихода сигнала на вход 37 и 45 или 46 - запись в триггер 7 разрешается при отсутствии сигнала на входе. 37. Для этого вход 37 подключен к Т-входу триг- гера 7, работа R- и S-входа которого разрешена .при низком уровне на Т-входе. Элемент 27 обеспечивает задержку сигнала на время срабатывания триггера 7 (по пэре днему фронту), снятие сигнала на время ера- батывания- триггера 7 (по переднему фронту), снятие сигнала с входа 37 вызывает блокировку работы элементов И 11 и 12 без задержки.
Единичное состояние триггера 8 (сфор- мированное по сигналу с выхода элемента И 12) К-го канала соответствует запросу от К-го канала на перераспределение запроса от К-го абонента через общую магистраль 4.
Распределители 10 импульсов всех каналов последовательно циклически перебирают числа от 0 до М (М - число каналов), причем состояния счетчиков 20 распределителей 10 совпадают, так как для их работы используется одинаковая частота синхронизации с входа 17. Если в триггере 8 К-го канала 1 и счетчик 20 находится в К-м состоянии, при котором К-й выход дешифратора и соответственно выход распределителя импульсов 10 возбужден, то при нулевом состоянии триггера 9 с выхода элемента 1/1 13 на формирователь 30 вырабатывается сигнал, по которому через группу элементов И 4 код запроса с регистра 1 К-го канала выдается на общую магистраль 47. По сигналу на выходе элемента И 13 на формирователе импульса 22 вырабатывается сигнал сопровождения запросов, выдаваемый на общую линию 48, по которому код запроса с общей магистрали 47 записывается в регистр 2 всех каналов, в триггеры 9 всех каналов при этом записываются 1. По сигналу на выходе элемента И 13 на формирователе 30 вырабатывается импульс установки в 0 триггера 8. К-го канала, выдавшего запрос на общую магистраль 47. При единичном ч состоянии триггера 9 блокируется формирование сигнала на выходе элемента И 13 и разрешается на выходе И 14, при этом
передача запросов через общую магистраль 47 блокируется.
При записи 1 в триггер 9 начинается процедура поиска процессора, предназначенного для приема запроса.
Если среди блоков 6 памяти имеются блоки с нулевой очередью (в блок памяти 6 не занесено запросов и в счетчике 5 О), то запрос загружается в блок памяти одного из каналов с нулевой очередью, при условии неперегруженности процессора этого канала. Если среди каналов нет каналов с нулевой очередью, то запрос наносится в блок памяти одного из каналов с процессором, способным принять запрос вне зависимости от длины очереди в их блоках 6 памяти.
При записи 1 в триггер 9 разблокируется работа элемента И 32, при этом если в блоке памяти К-го канала нет запросов, т.е. на выходе элемента ИЛИ 23 О, НЕ 35 1, то при неперегруженности процессора (в триггере 7 1), с выхода элемента И 32 на одну из линий общей магистрали (например 47i) выдается 1. Сигналы с выхода элемента И 32 объединяются на линии 47ч по принципу МОНТАЖНОГО ИЛИ.
Таким образом, если среди каналов есть каналы с пустой очередью в блоке 6 памяти, то на линии 47i 1, если нет - О. При 1 в триггере 9 на выходе элемента ИЛИ 34 имеется при О на линии.47i (по 1 с выхода элемента НЕ 36) или при 1 на линии 471 и 1 на выходе элемента И 33. По сигналу с выхода элемента ИЛИ 34 разрешается работа элемента И 14.
Таким образом, при состоянии триггера 9 работа элемента И 14 по выходу элемента ИЛИ 34 разблокируется только в каналах, имеющих пустую очередь в блоке 6 памяти, если имеются каналы с пустой очередью в блоках 6 памяти или во всех каналах, если нет каналов с пустой очередью.
При единичном состоянии триггеров 9 начинается поиск процессора, способного принять на обслуживание запрос, переданный через общую магистраль 47 и нанесенный в регистры 2 всех каналов. При К-м состоянии счетчика 20 сигнала на выходе элемента И 14 не формируется, так как в триггере 7 К-го канала О. При К+1-м состоянии счетчика 20, если К+1-й способен принять запрос (в триггере 7 1) и блок 6 памяти этого канала не переполнен на выходе элемента 14-НЕ 16 1, то с формирователя 31 на выходе элемента И 14 вырабатывается сигнал, по которому код запроса с регистра 2 записывается в блок 6 памяти по адресу счетчика 5. По заднему фронту сигнала с формирователя 31 на выходе.элемента И 14 на формирователе 24 импульса вырабатывается сигнал, увеличивающий содержимое счетчика 5 на 1. При переполнении блока 6 памяти на выходе элемента И-НЕ 16 появляется О, блокирующий дальнейшее занесение запросов в блок 6 памяти этого канала. Сигнал с формирователя 31 на выходе элемента И 14 канала, принявшего запрос, через элемент 18 развязки передается на линию 49, при этом триггеры 9 всех каналов устанавливаются в состояние, при котором разрешается распределение через общую магистраль 47 следующего запроса.
Процессоры через элемент И 15 по-сигналу 41 опрашивают состояние блоков 6 памяти. Если в блоке 6 памяти есть запросы, т.е. на выходе элемента ИЛИ 23 1, то процессор считывает запрос, занесенный в блок 6 памяти с общей магистрали послед: ним. Для этого процессор подает сигнал на вход 43. По сигналу на выходе 43 после установки триггера 25 содержимое счетчика 5 уменьшается на 1, в результате форм и-. руется адрес ячейки, хранящей запрос, занесенный в блок 6 памяти последним. После формирования адреса в счетчика 5 по сигналу с выхода элемента 28 задержки производится через элементы И 26 считывание кода запроса с блока 6 памяти. По следующему сигналу на входе 43 после уменьшения содержимого счетчика 5 на 1 по сигналу с выхода элемента 28 задержки производится считывание следующего запроса и т.д. При нулевом состоянии счетчика 5 (запросов нет) на выходе элемента ИЛИ 23 .О и считывание запроса не производится.
Для исключения одновременного появления импульсов на входах +1 и -1 счетчика 5 занесение 1 в триггер 25 при 1 на входе 43 производится по заднему фронту импульса синхронизации с входа 52, задержанному на элементе 29. На вход -1 счетчика 5 поступает сигнал, при 1 в триггере 5 с задержкой на элементе 28 по этому сигналу производится запись О в триггер 25. Описанная процедура осуществляется при отрицательном полупериоде синхронизации. С входа 52 (положительный полупериод) производится увеличение на 1 содержимого счетчика 20 и выдача сигнала с дешифратора 21 (вход разрешения дешифратора подключен к синхровходу. 52),
так как по сигналу на выходе элемента И 14 производится переброска триггера 9 и формирование заднего фронта сигнала на выходе элемента И 14, то сигнал на вход +1 счетчика 5 поступает в положительный полупериод синхронизации (или не позднее чем появляется сигнал на выходе элемента 29 задержки, чем обеспечивается разделение по времени работы входов +1, -1 счетчика 5.
Для исключения рассогласования работы счетчиков 20 - при достижении счетчиком 20 какого-либо канала максимального кода М, через магистральный усилитель 19 на Линию 50 выдается сигнал установки
счетчиков 20 всех каналов в исходное нулевое состояние.
Формула изобретения Многоканальное устройство для распределенйя заданий процессорам по авт. св. Ne 1619287, отличающееся тем, что, с целью расширения области применения путем обеспечения равномерной загрузки процессоров, устройство дополнительно содержит в каждом канале шестой и седьмой элементы И, первый и второй элементы НЕ и второй элемент ИЛИ, первый и второй входы и выход которого соединены соответственно с выходами первого элемента НЕ,
шестого элемента И и входом третьего элемента И, первый и второй входы седьмого элемента И соединены соответственно с прямыми выходами первого и второго триггеров, выход первого элемента ИЛИ - с входом второго элемента НЕ, выход которого соединен с третьим входом седьмого и вторым входом шестого элементов И, выходы седьмых элементов И всех каналов устройства объединены через МОНТАЖНОЕ ИЛИ
и соединены с вторыми входами шестых элементов И и входами первых элементов НЕ всех каналов устройства.
название | год | авторы | номер документа |
---|---|---|---|
Многоканальное устройство для распределения заданий процессорам | 1988 |
|
SU1619287A1 |
Многоканальное устройство для распределения заданий процессорам | 1987 |
|
SU1471191A1 |
Многоканальное устройство для распределения заданий процессорам | 1987 |
|
SU1427368A1 |
Многоканальное устройство для распределения заданий процессорам | 1987 |
|
SU1545219A1 |
Устройство для сопряжения абонента с дублированной общей магистралью | 1986 |
|
SU1453410A1 |
Устройство для обмена информацией | 1983 |
|
SU1198528A1 |
Многопроцессорная вычислительная система | 1988 |
|
SU1589287A1 |
Многоканальное устройство для подключения абонентов к общей магистрали | 1987 |
|
SU1432540A1 |
Устройство для сопряжения ЭВМ с магистралью | 1988 |
|
SU1508227A1 |
Устройство для распределения заданий процессорам | 1985 |
|
SU1285474A1 |
Изобретение относится к вычислительной технике и может быть использовано в многомашинных вычислительных системах 2 для распределения нагрузки между процессорами (ЭВМ). Цель изобретения - расширение области применения, за счет обеспечения равномерной загрузки процессоров. Устройство содержит два регистра, три группы элементов И, два счетчика, дешифратор, три триггера, блок памяти, три формирователя импульсов, элемент развязки, три элемента задержки, два элемента НЕ, два элемента ИЛИ; элемент И-НЕ, семь элементов И. Цель достигается за счет обеспечения приоритетного права захвата задания теми каналами, которые не загружены в настоящий момент. 1 ил.
Многоканальное устройство для распределения заданий процессорам | 1988 |
|
SU1619287A1 |
Приспособление для точного наложения листов бумаги при снятии оттисков | 1922 |
|
SU6A1 |
Авторы
Даты
1992-02-07—Публикация
1988-04-26—Подача