ю
О)
4:
ьэ
со Изобретение относится к вычислитехп ной технике, в частности к адаптивным вычислительным системам, производящим поточную обработку данных Б зависимости от заданньгх способов обработки и характеристик входного потока данных, и может быть применено в измерительно-вычис лительных комплексах, работающих в реальном масштабе времени. Цель изобретения - увеличение пропускной способности системы за счет адаптации режимов обработки к решаемым задачам. На фиг. 1 представлена схема сис темы j на фиг, 2 - функциональная схема шифратора количества заявок, на фиг. 3 - то же, блока синхронизации; на фиг. 4 - временная диагра ма работы блока синхронизации процессора на фиг. 5 - блок-схема алгоритма работы процессора. Система содержит первый блок 1 памяти заявок, первый счетчик 2 заявок, п процессоров 3, п-1 блоков памяти заявок, п-1 счетчиков 5 заявок, шифратор 6 количества заявок. Каждый процессор 3 содержит блок 7 обработки, состоящий из арифметическо-логического узла 8, регистра 9 признаков, группу регистров 10 общего назначения, две шины 11, 12 данных, узел 13 микропрограммного управления, узел 14 памяти микрокоманд, конвейернъй регистр 15 мик рокоманд, коммутатор синхросигнало на трех элементах И 16...18, Кроме того, каждый процессор 3 содержит регистр 19 режима и блок 20. синхро низации. Шифратор 6 количества заявок со держит (фиг. 2) два регистра 21 и 22, две схемы 23 и 24 сравнения, д элемента И 25 и 26,элемент ИЛИ 27, регистр 28 признаков. Блок 20 синхронизации содержит (фиг, 3) триггер 29 пуска, четыре элемента И 30...33, три элемента 34...36 задержки, элемент НЕ 37. На временной диаграмме (фиг,, 4) работы блока 20 синхронизации процессора представлены импульсы 38 системной синхронизации, сигнал Пуск 39, синхроимпульсы 40 на вх дах блока 13 микропрограммного /правления и регистра 15 микрокоманд синхроимпульсы 41 на входе первого элемента И 16, синхроимпульсы 42 н 7.92 входе блока 8 и группы регистров 10 общего назначения, синхроимпульсы 43 на входе второго элемента И 17, синх роимпульсы 44 на входе третьего элемента И 18, сигнал Сброс 45, сигналы 46 микрокоманд на выходе регистра 15. Арифметическо-логический узел (АЛУ) 8 предназначен для выполнения арифметических и логических операций при обработке данных. Регистр 9 признаков предназначен для хранения признаков результата, получаемого в АЛУ. Управление формированием и занесением признаков результата в регистр 9 осуществляется с помощью кода управления признаками, поступающего с регистра 15 микрокоманд. Группа регистров 10 общего назначения является двухадресной памятью, предназначенной для хранения исходных данных и промежуточных результатов АЛУ, Узел 13 микропрограммного управления предназначен для формирования адреса след тощей микрокоманды в зависимости от сигналов управления адресом с узла 14, сигналов признаков с регистра 9 признаков, сигналов режима с регистра 19 режимов. Узел 14 памяти микрокоманд представляет собой программное запоминающее устройство, Конвейерный регистр 15 микрокоманд предназначен для реализации конвейерного принципа выполнения микрокоманд, при котором цикл выполнения текуш.ей микрокоманды совмещается с циклом выборки последующей. Счетчики 2 и 5 предназначены для организации стековой дисциплины доступа к памяти. Блоки 1 и 4 предназначены для создания очередей заявок к процессорам 3 и повышения их загрузки (уменьшения простоев) при организации поточной обработки данных. Система работает следующим образом. Первоначально счетчики 2 и. 5, регистры 9, 10, 15, 19, 28, триггеры 29 находятся в нулевом состоянии. В регистрах 21 и 22 хранятся значения граничных адресов. Рассмотрим работу системы для случая, когда обработка данных может производиться в следующих ражиах; режим оптимальной обработки; режим упрощенной обработки, близкой к оптимальной; режим усеченной обработки.
Рабочий цикл системы разделяется на два этапа; этап накопления заявок на обслуживание и этап обработки заявок. На этапе накопления заявок на вход блока 1 памяти заявок от источника заявок поступают заявки на обслуживание. При этом по сопроводительным сигналам осуществляются установка блока 1 в режим записи и увеличение содержимого счетчика 2 на единицу.
В начале этапа обработки заявок в шифраторе 6 определяется режим обработки. При этом содержимое счетчика 2, которое характеризует количество поступающих заявок на обработку, сравнивается с помощью схем 23 и 24 сравнения с содержимым регистров 21 и 22, в которых хранятся значения граничных адресов (А и А). Если содержимое счетчика 2 (А) меньше значения первого граничного адреса (А А,), то назначается режим оптимальной обработки. Ксли выполняется условие , то назначается режим упрощенной обработки, близкой к оптимальной. Если количество заявок превышает второе пороговое значение (при ), то назнаается режим усеченной обработки. По сигналу Пуск, который постуает в начале этапа обработки, признак режима заносится в регистр 28 признаков.
Процесс обработки заявок начинается с поступления сигнала 39 Пуск на блок 20 синхронизации первого роцессора 3. При.этом устанавливается в 1 триггер :iy пуска и разрешается прием признака режима в регистр 19. Единичное состояние триггера 29 разрешает прохождение синхроимпульсов 38 с управляющей шины 7 системы ерез элемент И 32 на схему формиования временной диаграммы, выполненную на элементах 33...37. Вреенная диаграмма блока 20 синхронизации приведена на фиг. А.
Работа каждого из процессоров 3 . организуется в соответствии с алгоритмом вьшолнения микропрограмм.
На фиг, 1 приняты следующие обозначения: блок 47 - прием признака ежима в регистр 19| блок 48 - проерка соответствия признака режиму
267429
1I блок 49 - проверка соответствия признака режиму 2, блок 50 - выборка микрокоманды из узла 14 на регистр 15, блоки 51...53 - формирование
5 адреса микрокоманды в узле 13 для соответствующего режимаJ блок 54 выдача кода микрооперации в АЛУ 8 и кодов адресов, признаков записи (считывания) в группу регистров lOj
10 блок 55 - вьшолнение микрооперации в АЛУ 8 с операндами, выбранными из группы регистров 10, и формирование признаков результата в регистре 91 блок 56 - проверка признака разреше15 ния запроса; блок 57 - выдача запроса и прием данных в группу регистров 10J блок 58 - проверка признака окончания операцииJ блок 59 - выдача сигнала Пуск на следующий процессор 3,
20 блок 60 - проверка признака разрешения выдачи; блок 61 - увеличение содержимого счетчика 5 на единицу, блок 62 - вьщача данных через шину 12 и блок 4J блок 63 - проверка наличия
25 сигнала Сброс (отсутствия заявок на обработку).
Особенностью представленного алгоритма является то, что в нем имеются параллельные ветви, которые могут
3Q выполняться одновременно. Например, прием текущей микрокоманды из узла 14 на регистр 15 совмещается с формированием адреса следующей микрокоманды, что соответствует конвейерному принципу выполнения микрокоманды.
35 При этом начальный адрес микропрограммы (адрес первой микрокоманды) определяется кодом режима, который хранится в регистре 19.
Микропрограммы обработки по каж40дому из режимов обработки представляют собой определенную последовательность микрокоманд, которые хранятся в узле 14.
Код режима, поступающий с регист45ра 19 режима, используется как код микрокоманды, определяющей определенную последовательность действий при обработке в соответствующем режиме.
50
После того, как очередная микрокоманда принята в регистр 5, начинается выполнение инструкций, заданных в коде микрокоманды. При этом на управляющие входы узла 8 выдается
код микрооперации, а на управляюш 1е входы группы регистров 10 коды адресов используемых регистров и признаки режима обращения к ним. Применение группы регистров 10, представляющей собой двухадресную память, позволяет за один маптигнный такт выполнять операцию над содержимым двух регистров группы 10, Прием данных п один регистр из блоков 1 или 4 производится при наличии в определенном разряде регистра 5 признака разрешения запроса. При наличии признака окончания операции в данном процессоре 3 на следующий процессор выдается сигнал Пуск. При необходимости выдать данные из процессора 3 в блок 4 памяти заявок вначале содержимое счетчика 5 увеличивается на единицу, а затем производится передача данных с выхода АЛУ 8 через шину 12 в блок 4. Работа процессоров 3 продолжается до окончания обработки всех заявок, поступивших в блок 1 памяти заявок. Для пояснения назначения управляющих входов группы регистров 10 обще го назначения (РОН), АЛУ 8 и регистра 9 приведем структуру микрокоманды (МК). Микрокоманда состоит из двух частей: постоянной и переменной. Постоянная часть содержит поле У для управления микрооперациями в АПУ 8, поле XI для управления логикой признаков, поле Х2 для кодирования функций переходов к следующему адресу микропрограммы. Переменная часть МК содержит поля А1 и А2 для кодирования адресов регистров в группе регистров 10, 9 общего назначения и признаков режимов в которых производится обращение к регистрам (признаки П1 и П2). Кроме того, в переменную часть входит поле Z для кодирования вспомогательньк управляющих сигналов, таких как сигналы разрешения запроса и вьщачи, окончания операции и т.п. На управляющие входы А.ПУ 8 выдается код микрооперации, который задается в разрядах поля У. На управляющие входы группы регистров 10 вы даются коды адресов по обоим канала РОН и признаки режима обращения ( сч тывание-запись) , задаваемые в полях AI и А2. Причем считывание данных и выбранного регистра производится в фазе с синхроимпульсом 42, а запись в противофазе -синхроимпульсом 42, поступающим на синхровход группы ре гистров 10. 94 На управляющие входы регистра 9 признаков вьщаются сигналы управления логикой признаков, кодируемые в поле X, С помощью этих сигналов осуществляется маскирование определенных разрядов регистра 9. В общем случае в регистре 9 содержится следующая информация о результатах выполнения операций в АЛУ 8: , еели результат отрицательныйJ , если результат ранен 0. , если было переполнение при выполнении арифметической операцииJ при пе- реносе из старшего разряда. При равенстве нулю определенного разряда в поле XI значение соответствующего признака в регистре 9 маскируется и не участвует в формировании следующего адреса микрокоманды. Блок 14 памяти заявок работает в следующих режимах. В режиме записи: вначале содержимое счетчика 5 увеличивается на единицу, а затем производится запись в блок 1 (4), Б режиме считывания: вначале производится считывание данных, а затем уменьшение содержимого счетчика 5. По окончании процесса обработки заявки в первом процессоре 3 в определенном разряде регистра 15 микрокоманды появляется признак окончания операций, который поступает на вход блока 20 синхронизации; По этому сигналу при единичном состоянии триггера 29 пуска через элемент И 31 на вход второго процессора 3 выдается сигнал Пуск, который поступает в блок 20 синхронизации и устанавливает в 1 триггер 29 пуска данного процессора. Блок 20 синхронизации второго процессора 3 по импульсам 38 системной синхронизации формирует синхроимпульсы временной диаграммы 40-44. Результаты обработки второго процессора 3 поступают во второй блок 4 буферной памяти. Запуск и работа последующих процессоров 3 осуществляется аналогичным образом. В процессе обработки заявок по мере их считывания из блока 1 памяти заявок уменьшается содержимое счетчика 2. С помощью элемента И 25 шифратора 6 управлсшия режимами проверяется равенство нулю содержимого счетчика 2. Если все заявки из блока 1 считаны и содержимое счетчи7
ка 2 равно нулю, то с выхода элемента И 25 через элемент ИЛИ 27, на второй вход которого может поступать сигнал сброса от внешнего источника, выдается сигнал Сброс, поступающий на управляющих вход регистра признаков и через управляющую шину 7 системы на вход блока 20 синхронизации первого процессора 3. По сигналу 45 Сброс в блоке 20 при наличии признака окончания операции с регистра 15 через элемент И 30 обнуляется триггер 29. При этом запрещается выборка сигналов временной диаграммы. С инверсного выхода-триггера 29 сигнал Сброс выдается в блок 20 синхронизации второго процессора 3.
Останов второго и последующих процессоров 3 осуществляется после довательно после выборки в них признаков окончания операций.
Результаты обработки данньк адаптивной системой обработки выдаются потребителю с выхода последнего процессора 3.
Предлагаемая система не создает экономии аппаратных средств, но повышает пропускную способность системы.
Фор мула изобретения
1. Адаптивная система обработки данных, содержащая п процессоров, первый блок памяти и заявок, выход которого подключен к информационному входу первого процессора, выход управления считыванием заявки которого соединен с входом считывания первого блока памяти заявок, выход управления запуском i-ro процессора подключен к одноименному входу (i+ + 1)-го процессора ( ,...,п-1), причем каждый процессор содержит блок обработки, блок синхронизации и коммутатор синхросигналов, информационный вход блока обработки является одноименным входом процессора, выход управления считьгаанием заявки которого соединен с первым выходом коммутатора синхросигналов, первый управляющий вход которого соединен с выходом запроса блока обработки, отличающаяся тем, что, с целью увеличения пропускной способности за счет адаптации режимов обработки к- решаемым задачам, в нее введены шифратор количества заявок, п счетчиков заявок
67А298
п-1 блоков памяти заявок, информационный вход и вход записи первого блока памяти заявок являются входом заявок и входом записи заявок сисJ темы, выход j-ro счетчика заявок подключен к адресному входу j-ro блока памяти заявок (j 1,...,п), выход первого счетчика заявок подклю чен к информационному входу шифра10 тора количества заявок, вход запуска которого является входом запуска системы и соединен с входом запуска первого процессора, информационный выход щифратора количества заявок 15 подключен к входам задания режимов
всех процессоров, вход сброса шифратора количества заявок является
входом сброса системы, а выход сброса подключен к входу сброса пер,,, вого процессора, входы синхронизации всех процессоров соединены с входом синхронизации системы,, выход сброса i-ro процессора подключен к одноименному входу (i+l)-ro процес25 сора, суммирующий и вычитаюш 1Й входы первого счетчика заявок соединены с входом сопровождения заявок системы и с выходом управления считьшанием заявки первого процессора, информационный выход i-ro процессора подключен к информационному входу (i+ + 1)-го блока памяти заявок., выход которого подключен к информационному входу (i+l)-ro процессора, выход управления записью заявок и выход номера заявки i-ro процессора подключен к входу записи (i+l)-ro блока памяти заявок и к суммирующему входу {i+l)-ro счетчика заявок соответственно, выход, управления считыванием заявок k-ro процессора подключен к вычитающему входу k-ro счетчика заявок и к входу считывания k-ro блока памяти заявок (,...n) причем в каждый процессор введен регистр режима, информационный вход которого соединен с входом задания режима процессора, выход регистра режима подключен к входу задания ре-жима обработки блока обработки,выходы приема на обработку и запроса блока обработки подключены к второму и третьему управляющим входам коммутатора синхросигналов соответственно, выход программного запуска блока обработки подключен к одноименному входу блока синхронизации, входы запуска, сброса, синхронизации и выходы сброса и управления запуском которого являются одноименными входами процессора, с первого по шестой выходы блока синхронизации подключены к входу синхронизации регистра режима, к входам уцравления запуском и обработкой блока обработки и к информационным входам с первого по третий коммутатора синхросигналов соответственно, информационный выход блока обработки и вто рой и третий выходы коммутатора син росигналов являются информационным выходом и выходами управления записью заявок и номера заявок процессо ра, причем шифратор количества заявок содержит два регистра, две схе мы сравнения, регистр признаков, элемент ИЛИ и два-элемента И, первы информационные входы первой схемы сравнения образуют информационный вход шифратора и соединены с первыми информационными входами .второй схемы сравнения и с входами первого элемента И, выход которого подкл чен к первому входу элемента И.ПИ, второй вход которого является входо сброса шифратора, а выход является выходом сброса и подключен к входу сброса регистра признаков, вход син ронизации и выход которого являются входом запуска и информационньм выходом шифратора соответственно,выходы первогои второго регистров подключены к вторым информационным входам первой и второй схем сравнения соответственно, выходы Больше или равно и Меньше или равно которых соответственно подключены к первому и второму информационным вх дам регистра признаков, третий информационный вход которого подключен к выходу второгр элемента И, первый и второй входы которого подключены к выходам Меньше и Больше соответственно первой и второй схем сравнения, 2. Система по п. 1} отлича ющаяся тем, что блок обработки содержит узел микропрограммного управления, узел памяти микрокоманд конвейерный регистр микрокоманд, арифметическо-логический узел, регистр признаков и группу регистров общего назначения, вход признаков узла микропрограммного управления является входом задания режима блок выход узла микропрограммного управления подключен к адресному входу узла памяти микрокоманд, первый вы9ход которого подкхшчен к информационному входу конвейерного регистра микрокоманд, выходы соответствующих . разрядов которого соединены с выходами признака обработки и программного запуска блока и с входами управления арифметическо-логическогоузла, регистра признаков и регистров общего назначения группы, выходы регистра признаков и второй вьтход узла памяти микрокоманд соединены с входами соответствующих логических условий узла микропрограммного управления, вход синхронизации которого является входом управления запуском блока и соединен с входом синхронизации конвейерного регистра микрокоманд, входы синхронизации, первый и вторые информационные входывыходы арифметическо-логического узла и регистров общего назначения группы соединены с входом управления обработкой блока и через первую и вторую шины данных с информационным входом и выходом блока соответственно. 3. Система по п. 1, отличающаяся тем, что блок синхронизации содержит триггер пуска, четыре элемента И, три элемента задержки, элемент НЕ, причем первые входы с первого по третий элементов И являются входами сброса, программного запуска и синхронизации блока соответственно, вход установки триггера пуска соединен с входом запуска и с первым выходом блока, второй вход первого элемента И соединен с первым входом второго элемента И, выход первого элемента И соединен с ВХОДОМ сброса триггера пуска, прямой выход которого соединен с вторыми входами второго и третьего элементов И, выходы которых являются . выходами управления запуском и вторым выходом блока соответственно, инверсный выход триггера пуска является выходом сброса блока, выход третьего элемента И соединен с первым входом четвертого элемента И, через первый элемент задержки с третьим выходом блокаJ через второй элемент задержки с вторым инверсным входом четвертого элемента И и через элемент НЕ с пятым выходом блока,выход четвертого элемента И соединен с четвертым выходом блока и через третий элемент задержки с шестым выходом блока.
Постоянная часть микроко- Перемйнная частЬ микрокоманды манды
название | год | авторы | номер документа |
---|---|---|---|
Микропрограммное устройство для приоритетного обслуживания группы абонентов | 1984 |
|
SU1302277A1 |
Микропрограммное устройство для управления обменом управляющей информацией в распределенной системе | 1986 |
|
SU1325477A1 |
Микропрограммное устройство управления с контролем | 1983 |
|
SU1142832A1 |
Микропрограммное устройство управления с контролем | 1983 |
|
SU1136162A1 |
Микропрограммный процессор | 1981 |
|
SU1037262A1 |
Микропрограммное устройство управления | 1985 |
|
SU1354192A1 |
Многопроцессорная вычислительная система | 1982 |
|
SU1168960A1 |
Устройство для сопряжения центрального процессора с группой арифметических процессоров | 1984 |
|
SU1254495A1 |
Устройство для обмена информацией | 1979 |
|
SU826330A1 |
Мультимикропрограммная управляющая система | 1983 |
|
SU1133594A1 |
Изобретение относится к области вычислительной техники и обеспечивает повышение пропускной способности системы. Цель изобретения увеличение пропускной способности системы за счет адаптации режимов обработки к решаемым задачам. Система содержит п блоков памяти заявок, п счетчиков заявок, определяющих адрес в соответствующих блоках памяти заявок, п процессоров и шифратор количества заявок. В зависимости от количества заявок в первом блоке памяти заявок шифратор количества заявок задает подпрограмму обработки в процессорах. 2 з.п. ф-лы, 5 ил. S
ff/77 6.2
.
22 иг.
I
4ЭД
У.о
Ks/ry /j f(6/r.e/ffj ffjff &fr-fs
.4
{ Havajf0
tfem
Нет(/( ) Vuf.f
Патент США № 4305124, кл | |||
Приспособление для точного наложения листов бумаги при снятии оттисков | 1922 |
|
SU6A1 |
Адаптивная система обработки данных | 1980 |
|
SU926662A1 |
Приспособление для точного наложения листов бумаги при снятии оттисков | 1922 |
|
SU6A1 |
Авторы
Даты
1986-10-30—Публикация
1984-12-25—Подача