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

Иллюстрации

Показать все

Реферат

 

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

СОЮЗ СОВЕТСКИХ

СОЦИАЛИСТИЧЕСКИХ

РЕСПУБЛИК (я)с G 06 F 15/00

ГОСУДАРСТВЕННЫ И КОМИТЕТ

ПО ИЗОБРЕТЕНИЯМ И ОТКРЫТИЯМ

ПРИ ГКНТ СССР

ОПИСАНИЕ ИЗОБРЕТЕНИЯ

К А8ТОРСКОМУ С8ИДЕТЕЛЬСТВУ (21) 4865044/24 (22) 17.07.90 (46) 23.11.92. Бюл. N 43 (71) Ленинградский институт авиационного приборостроения (72) С,В.Горбачев, С.А.Молодцова, Ю.Е.Шейнин и B.È.Óøêîâ (56) Мау D. Shepherd R, OCCAM and the

transputer 1и "Cohenrrent Languager in

Distributed Systems" coiuted by RaJns G. and

Dagobs Е., Elsever Science Publishers BV, ЕЕ!Р, 1985.

Булгаков С.С. и др,/Под ред. В.Г.Колесникова. Проектирование цифровых систем на комплектах микропрограммируемых

БИС. М.: Связь и радио, 1984, с. 6-13, 67-74.

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

Основной функцией устройств для мультипрограммной обработки информации является обеспечение мультипрограммного режима работы. В мультипрограммном режиме функционирования квазипараллельно выполняется некоторое множество процессов. Все эти процессы считаются запущенными на выполнение, одновременно и независимо друг от друга выполняющимися. Каждый процесс выполняется по своей программе, работающей над совокупностью элементов памяти, составляющих век„„« Ы„„17/7147 А1 (54) МУЛЪТИПРОГРАММНОЕ ВЫЧИСЛИТЕЛЬНОЕ УСТРОЙСТВО (57) Изобретение относится к вычислительной технике, а именно к высокопроизводительным вычислительным устройствам для мультипрограммной обработки информации. Целью изобретения является увеличение быстродействия. Для этого в мультипрограммное вычислительное устройство, содержащее блок буферной памяти, арифметико-логический блок и первый шинный формирователь, введены дополнительно второй и третий шинные формирователи, блок регистров дешифратор, мультиплексор, блок памяти, блок формирования признаков текущих процессов, блок управления. 2 з,п. ф-лы, 8 ил. тор состояния процесса. Функционирование процесса состоит в выполнении этой программы, каждый шаг которой изменяет содержание вектора состояния процесса.

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

38М (или однопроцессорном модуле мультипроцессорной системы) мультипрограммный режим состоит в квазипараллельном, попеременном выполнении процессов: каж1777147

50

55 дый процесс на некоторое время занимает разделяемые всеми процессами ресурсы процессора, выполняется (обычно не до полного завершения) некоторое время, затем его выполнение приостанавливается (образ процесса "замирает" в том состоянии, в котором оказался в момент приостановки процесса), ресурсы процессора предоставляются следующему процессу и т.д. Приостановленные процессы вновь ставятся в очередь процессов, ожидающих воэможности занять ресурс процессора. Часть образа процесса (образ процесса в процессоре) соответствует состоянию программно-доступных процессу элементов памяти внутри процессора. В архитектуре современных ЭВМ одни и те же внутренние элементы памяти процессора независимо используются программами различных процессов. Следовательно. когда происходит переключение процессов, состояние этих элементов памяти для снимаемого процесса должно быть сохранено, а для включаемого в работу процесса восстановлено прежнее состояние этих элементов памяти для данного процесса, сохраненного ранее.

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

Известна вычислительная система i

PSC/2, содержащая до 128 процессорных узлов, связанных друг с другом системой связи с топологией ГИПЕРКУБ. Каждый процессорный узел содержит центральный процессор 8038б, соп роцессор для обработки чисел с плавающей точкой 80387, локальную память объемом 1-1б Мбайт и маршрутизатор прямых сообщений. Для обеспечения взаимодействия процессов, расположенных в разных узлах, и переключения процессов в одном узле, в каждом из узлов размещается часть операционной системы (ОС) — ядро узловой ОС-М BOS. МВ0$ и сам узловой процессор 80386 обеспечивают координацию графика входящих и исходящих из узла сообщений, управляют планированием и выполнением процессов пользователя. Аппаратно поддержаны с по-. мощью маршрутизатора функции по обмену сообщениями, а поддержка планирования и переключения процессов осуществляется чисто программно узловой ОС, т.е. определенная часть полезного времени занята сохранением образов предыдущих процессов и подготовкой образов новых процессов, что снижает быстродействие системы в целом.

Известна вычислительная система

NCUBE (ten). Переключение и взаимодействие процессов здесь также обеспечивается программными средствами узловой операционной системы, однако эти программные средства опираются на ряд специальных команд, введенных в набор команд узлового процессора специально для поддержки квазипараллельных процессов. Эти команды обеспечивают управление взаимодействием и переключением процессов.

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

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

Активный процесс выполняется до тех пор, пока это возможно, затем процесс приостанавливается, а из списка запускается на выполнение следующий процесс.

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

10

30

40

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

Целью изобретения являет =я увеличение быстродействия вы;и=лительной системы в мультипрограммном режиме.

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

15

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

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

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

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

И и два элемента НЕ, причем первый, второй и третий управляющие входы и информационный вход блока подключены

1777147

5

20

30

45

55 соответс .венно к входу первого элемента

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

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

На фиг. 1 показана,.. рук.;v з.; ".хема предлагаемого устройства: на фиг. 2 — пример реализации блока буферной памяти; на фиг. 3 — пример реализации арифметико-логического блока; на фиг. 4 — функциональная схема блока формирования признаков текущих процессов в мультипроцессорной системе; на фиг. 5 — функциональная схема блока управления; на фиг. 6 — структура памяти образов процессов: на фиг. 7 — очередь процессов: на фиг, 8 — содержимое регистров блока формирования признаков текущих процессов в мультипроцессорной системе, Предлагаемое устройство (фиг. 1) содержит: блок буферной памяти, арифметикологический блок 2, шинные формирователи

3-5, блок 6 регистров, дешифратор 7, мультиплексор 8, блок 9 памяти, блок 10 формирования признаков текущих процессов в мультипроцессорной системе, блок 11 управления. вход 12 синхронизации, вход/выход 13 режима, выход 14 вектора состояния, первый вход 15 кода операций, первый информационный вход 16, первый вход 17 режима, первый выход 18 данных, второй, третий и четвертый информационные входы

19-21, второй выход 22 данных, вход 23 выборки, вход 24 чтения/записи, второй вход

25 режима, вход 26 начальной установки, выход 27 признака готовности результата, второй вход 28 кода операций, вход 29 единичного потенциала.

Блок 1 буферной памяти (фиг. 2) содер35 жит N регистров 30-32, дешифратор 33, два мультиплексора 34 и 35, первый, второй и третий входы, вход синхронизации, первый и второй выходы.

Арифметика-логический блок 2 (фиг. 3) содержит регистр 36, мультиплексор 37, арифметико-логическое устройство 38, выходной мультиплексор 39. схему 40 сдвига, вход синхронизации, два информационных входа, три входа кода операций, выход состояния, вход режима, два информационных выхода и вход/выход сдвига.

Блок 10 формирования признаков текущих процессов в мультипроцессорной системе (фиг. 4) содержит три регистра 41-43, два элемента И 44, 45, два элемента НЕ

46,47, четыре управляющих входа, вход начальной установки. информационный вход, выход.

Блок 11 управления (фиг. 5) содержит три триггера 48-50, счетчик 51, три элемента

52-54 И, элемент 55 НЕ и два элемента 56 и

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

1777147

На фиг. 6 приняты следующие обозначения: N — обьем образа процесса; Ai, AJ, Ak, Am, Ах — адреса ячейки начала зоны образа соответственно i-го, j-ro, k-го, m-го, х-го процессов.

На фиг. 7 буквенными индексами обозначены номера процессов.

На фиг, 8 приняты обозначения в соответствии с фиг. 6.

Вход 12 синхронизации устройства под ключен к входу синхронизации блока 1 буферной памяти и входу синхронизации арифметико-логического блока 2, Вход-выход признака сдвига, выход состояния, первый информационный выход, вход режима и первый информационный вход арифметика-логического блока 2 подключены соответственно к входу-выходу 13 режима устройства, выходу 14 вектора состояния устройства, информационному входу первого шинного формирователя 3, первому входу

15 кода операции устройства и первому информационному входу 16 устройства, Первый вход 17 режима устройства подключен к управляющему входу первого шинного формирователя 3. Выход первого шинного формирователя 3 подключен к первому выходу 18 данных устройств. Второй информационный вход 19 устройства подключен к первому информационному входу блока 9 памяти. Третий информационный вход 20 устройства подключен к первому входу выборки блока 6 регистров и первому информационному входу мультиплексора 8, Первый, второй и третий выходы мультиплексора подключены соответственно к первому, второму и третьему информационным входам блока 1 буферной памяти. Первый выход блока 1 буферной памяти подключен к информационному входу второго шинного формирователя 4 и первому информационному входу третьего шинного формирователя 5. Четвертый информационный вход 21 устройства подключен к первому адресному входу блока 9 памяти. Первый выход блока 9 памяти подключен к информационному входу блока 10 формирования признаков текущих процессов в мультипроцессорной системе, второму информационному входу мультиплексора 8 и первому информационному входу блока 6 регистров.

Второй выход блока 9 памяти подключен к второму выходу 22 данных устройства, Вход

23 выборки, вход 42 чтения/записи и второй вход 25 режима устройства подключены соответственно к первому входу выборки, ïåðвому входу чтения/записи и входу режима блока 9 памяти. Второй адресный вход блока 9 памяти подключен к выходу блока 10

55 формирования признаков текущих процессов в мультипроцессорной системе. Вход 26 начальной установки устройства подключен

v входам начальной установки блока 11 управления и блока 10 формирования признаков текущих процессов в мультипроцессорной системе. Вход 12 синхронизации устройства подключен к второму входу выборки блока 9 памяти, входу синхронизации блока 1 регистров и входу синхронизации блока 11 управления. Пер-. вый, второй и третий выходы блока 11 управления подключены соответственно к второму входу чтения/записи блока 9 памяти, первому управляющему входу блока 10 формирования признаков текущих процессов в мультипроцессорной системе и выходу

27 признака готовности результата устройства. Второй вход 28 кода операции устройства подключен к информационному входу дешифратора 7. Первый, второй и третий выходы дешифратора 7 подключены соответственно K первому, BTopoMó входам кода операции арифметика-логического блока 2 и входу режима блока 11 управления. Четвертый выход дешифратора 7 подключен к третьему входу кода операции арифметикологического блока 2, третьему информационному входу мультиплексора 8 и первому входу записи/чтения блока 6 регистров.

Первый выход блока 6 регистров соединен с выходом второго шинного формирователя

4 и подключен к второму информационному входу блока 9 памяти. Второй выход блока 1 буферной памяти подключен к второму информационному входу третьего шинного формирователя 5. Выход третьего шинного формирователя 5 соединен с вторым выходом блока 6 регистров и подключен к второму информационному входу арифметика-логического блока 2. Второй информационный выход арифметико-логического блока 2 подключен к второму информационному входу блока 6 регистров и четвертому информационному входу мультиплексора 8.

Четвертый выход блока 11 управления подключен к третьему адресному входу блока 9 памяти, пятому информационному входу мультиплексора 8 и второму входу выборки блока 6 регистров. Пятый выход блока

11 управления подключен к второму управляющему входу блока 10 формирования признаков текущих процессов в мультипроцессорной системе, управляющему входу мультиплексора 8, второму входу записи/чтения блока 6 регистров и управляющему входу второго шинного формирователя 4.

Шестой выход блока 11 управления подключен к третьему управляющему входу блока

1777147!

35

45

55

10 формирования призна :ов гекущих процессов в мультипроцессорной системе, третьему входу записи/чтения блока 6 регистров и управляющему входу третьего шинного формирователя 5. Седьмой выход блока 11 управления подключен к четвертому управляющему входу блока 10 формирования признаков текущих процессов в мультипроцессорной системе, шестому информационному входу мультиплексора 8 и четвертому входу записи/чтения блока 6 регистров. Вход 29 единичного потенциала устройства подключен к входу единичного потенциала блока 11 управления.

Вход начальной установки блока 11 управления подключен к первому входу элемента 52 И и инверсному входу установки в ноль триггера 48. Вход синхронизации блока управления 11 подключен к счетному входу счетчика 51 и первому входу элемента 56

ИЛИ. Выход элемента 56 И подключен к входам установки в ноль триггеров 49 и 50.

Вход режима блока управления 11 подключен к входу синхронизации триггера 49. Выход триггера 49 подключен к первому входу элемента 53 И, Инверсный выход элемента

53 И подключен к входу синхронизации триггера 48, второму входу элемента 56

ИЛИ и информационному входу счетчика 51.

Первый информационный выход счетчика

51 подключен к четвертому выходу блока управления 11, входу элемента 54 И. Инверсный выход элемента 54 И подключен к второму выходу блока управления 11 и первому входу элемента 57 ИЛИ. Инверсный выход элемента 57 ИЛИ подключен к первому выходу блока управления 11. Вход единичного потенциала блока управления 11 подключен к инверсному входу установки в единицу триггера 48, информационным входам и инверсным входам установки в единицу триггеров 49 и 50. Выход триггера 50 подключен к второму входу элемента 53 И и третьему выходу блока управления 11 Прямой выход триггера 49 подключен к пятому выходу блока управления 11. Инверсный выход триггера 48 подключен к шестому выходу блока управления 11 и информационному входу триггера 48, второй информационный выход счетчика 51 подключен к второму входу элемента 57 ИЛИ и седьмому выходу блока управления 11. Третий информационный выход счетчика 51 подключен к входу элемента 55 НЕ. Выход элемента 55 НЕ подключен к второму входу элемента 52 И. выход которого подключен к входу синхронизации триггера 50.

Первый, второй и третий управляющие входы и информационный вход блока 10 формирования признаког гекущих процессов в мультипроцессорной системе 10l1, llK). чены соответственно к входу элемента 46

HF, входу синхронизации регистра 41, входу синхронизации регистра 42 и информационному входу регистра 43, Выход регистра 43 подключен к информационным входам регистров 41 и 42, Выходы регистров

41 и 42 объединены по схеме МОНТАЖНОЕ

ИЛИ и подключены к выходу блока 10 формирования признаков текущих процессов в мультипроцессорной системе. Четвертый управляющий вход блока формирования признаков текущих процессов в мультипроцессорной системе подключен к входу элемента 47 НЕ и первому входу элемента 44 И.

Инверсный выход элемента 44 И подключен к входу записи/считывания регис ра 43. Выход элемента 46 НЕ подключен к второму входу элемента 44 И и первому входу эле мента 45 И. Инверсный выход элемента 45

И подключен к входам записи/считывания регистров 41 и 42. Вход начальной установки блока формирования признаков текущих процессов в мультипроцессорной системе подключен к входам установки в ноль регистров 41-43. Выход элемента 47 НЕ подклю чен к второму входу элемента 45 И.

Блок 1 буферной памяти предназначен для записи, хранения и считывания оперативной информации (данных) процессора и представляет собой блок внутренней сверхоперативной памяти (см. фиг. 2). Запись информации в регистры 1-N с входа данных записывается по Адресу 2, а считывание с регистров возможно по обоим адресам на первый и второй выходы блока буферной памяти. Регистры 30-32 могут быть реализованы на интегральных микросхемах

555ИР23. Число микросхем определяется объемом образа процесса N и размером слова данных. Дешифратор 33 может быть реализован на интегральных микросхемах

155ИДЗ. Число микросхем определяется объемом образа процесса N. Оба мультиплексора 34 и 35 могут быть реализованы на микросхемах 555КП11. Число микросхем зависит от объема образа процесса и размера слова данных.

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

1777147

36 может быть реализован на микросхемах

555ИР1. Мультиплексоры 37 и 39 могут быть построены на микросхемах 555КП11. Арифметико-логическое устройство 38 может быть реализовано известным образом. Устройство сдвига 40 может быть построено на микросхемах мультиплексоров 555КП12, Первый шинный формирователь 3 предназначен для выдачи результата вычислений в арифметико-логическом блоке на выход устройства в определенный момент времени; задаваемый сигналом разрешения, и может быть реализован на интегральных микросхемах 555КП11 либо 155ЛП10, 155ЛП1.

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

556 РТ11. Разрядность дешифратора 7 предлагаемого устройства больше разрядности дешифратора управления прототипа эа счет расширения входной инструкции.

Принцип же построения одинаков, Блок 6 регистров идентичен по назначению и построению совокупности трех блоков: блока 1 буферной памяти, мультиплексора 8 и двух шинных формирователей 4 и 5. Блок 6 регистров и в совокупности блоки 1, 8, 4 и 5 работают под управлением сигналов, инверсных друг другу.(УПР1 и УПР2). Блок 6 регистров может быть реализован при помощи N регистров. построенных на микросхемах 555ИР23, дешифратора, построенного на микросхемах

155ИДЗ, мультиплексоров, реализованных на микросхемах 555КП11, буферных элементах, реализованных на микросхемах

155ЛП10, 155ЛП11.

Блок 9 памяти предназначен для хранения записанных по системной магистрали в режиме "система" образов процессов, которые в режиме "пользователь" становятся доступны для обмена с блоком 1 буферной памяти и блоком 6 регистров. Блок 9 памяти включает в себя мультиплексор памяти, управляемый входом режима устройства, и оперативное запоминающее устройство, Блок 9 памяти может быть реализован на микросхемах 555КП11 и 132РУ8.

Блок 10 формирования признаков текущих процессов в мультипроцессорной системе предназначен для записи и выдачи указателя образа процесса — старших разрядов памяти образов процессов. Регистры

41-43 могут быть реализованы на микросхемах 555ИР23, логические элементы 45 и 44

И-НЕ, 46 и 47 НŠ— на логических элементах

155, 555 или 531 серий.

Блок 1 управления предназначен для формирования сигналов, управляющих переключением процессов. Блок 11.может быть реализован следующим образом: триг5 геры 48-50 — на микросхемах 155ТМ2, счетчик 51 — на микросхемах 155И Е5, логические элементы 53 и 54 И-Н Е, 57 ИЛИ-HL=-, 56 ИЛИ, 52 И, 55 НЕ могут быть реализованы на элементах логики 155, 555, 531 серий.

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

555КП11.

Второй шинный формирователь 4 предназначен для выдачи данных иэ блока 1 буферной памяти на входную шину данных памяти, т.е. осуществляют управление шиной данных блока 9 памяти.

Третий шинный формирователь 5 предназначен для выдачи данных из блока 1 буферной памяти на входную шину данных арифметико-логического блока, т.е, управляет шиной данных арифметико-логического блока 2.

Оба буферных элемента 4 и 5 могут быть реализованы на микросхемах 155ЛП10, 155ЛП11, 531ЛП4, 555ИП6.

Предлагаемое вычислительное устройство входит в состав процессора ЭВМ. Управление устройством осуществляется внутренними сигналами процессора и сигналами системной магистрали 3ВМ.

Мультипрограммное вычислительное устройство работает следующимиi образом.

При включении машины сигнал 26 начальной установки устройства (с системной магистрали) проходит по цепям системы, обнуляя триггер 48, устанавливая через элемент 52 И триггер 50, обнуляя регистры 4143, Вычислительная система переходит при этом (или находится) в режим "система". В этом режиме происходит заполнение памяти образов процессов через мультиплексор блока 9 памяти, который управляется сигналом 25 режима (" система/пользователь" ).

Сигналы, обеспечивающие запись информации в память образов процессов и контрольное чтение, поступают с системной магистрали (входы 19,21, 23 и 24, выход 22 устройства). Размещение информации в памяти образов процессов поясняется фиг. 6.

По нулевому адресу памяти образов процессов (ОП) всегда расположена зона инициализации. Объем эоны равен объему

1777147

18 образа процесса (N). В ячейке с адресом N+1 находится начальный адрес А1 первого процесса. Очередь процессов, расположенных в памяти ОП, представлена на фиг. 7. Порядок обработки процессов (очередь) не зависит от положения образов в памяти ОП и определяется значением N+1 ячейки в образе каждого процесса, где указывается адрес первого слова следующего процесса.

Пусть вычислительное устройство занято обработкой i-го вычислительного процесса. При этом во время предшествующей работы устройства в регистр 41 загружен начальный адрес 1-;о процесса. Во время обра