Адаптивная система обработки данных

Иллюстрации

Показать все

Реферат

 

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

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

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

РЕСПУ БЛИН (504 G 06 F 15/!6!

13 .,13

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

Н А BTOPCHOIVIY СВИДЕТЕЛЬСТВУ

ГОСУДАРСТВЕННЫЙ НОМИТЕТ СССР пО делАм изОБРетений и ОткРытий (21) 3834050/24-24 (22) 25.12.84 (46) 30.10.86. Бюл. 9 40 (72) С.З.Куракин, С.Б.Макаров и В.Н.Чуркин (53) 681.325(088.8) (56) Патент США 4305124, кл. G 06 F 7/00, 1981.

Авторское свидетельство СССР

У 926662, кл. G 06 F 15/16, 1980, (54) АДАПТИВНАЯ СИСТЕМА OBPASOTKH

ДАННЫХ (57) Изобретение относится к области вычислительной техники и обеспе„„Я0„„1267429 А 1 чивает повышение пропускной способности системы. Цель изобретения— увеличение пропускной способности системы за счет адаптации режимов обработки к решаемым задачам. Система содержит п блоков памяти заявок, и счетчиков заявок, онределяющих адрес в соответствующих блоках памяти заявок, и процессоров и шифратор количества заявок. В зависи— мости от количества заявок в первом блоке памяти заявок шифратор количества заявок задает подпрограмму обработки в процессорах. 2 з.п. ф-лы, 5 ил.!

26742Ч

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

На фиг. 1 представлена схема системы, на фиг. 2 — функциональная схема шифратора количества заявок, на фиг. 3 — то же, блока синхронизации, на фиг. 4 — временная диаграмма работы блока синхронизации процессора, на фиг, 5 — блок-схема алгоритма работы процессора, Система содержит первый блок 1 памяти заявок, первый счетчик 2 заявок, и процессоров 3, п-1 блоков 4 памяти заявок, и-1 счетчиков 5 заявок, шифратор 6 количества заявок.

Каждый процессор 3 содержит блок

7 обработки, состоящий из арифметическо-логического узла 8, регистра

9 признаков, группу регистров 10 общего назначения, две шины ll, 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 на входе блока 8 и группы регистров 10 общего назначения, синхроимпульсы 43 на входе второго элемента И 17, синх роимпульсы 44 на входе третьего элемента И 18, сигнал "Сброс" 45, сигналы 46 микрокоманд на выходе регистра 15.

Арифметическо-логический узел (АЛУ ) Я предназначен для выполнения

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

20 Группа регистров 10 общего назначения является двухадресной памятью, предназначенной для хранения исходных данных и промежуточных результатов АЛУ, 25 Узел 13 микропрограммного управления предназначен для формирования адреса следующей микрокоманды в зависимости от сигналов управления адресом с узла 14, сигналов признано ков с регистра 9 признаков, сигналов режима с регистра 19 режимов. Узел

14 памяти микрокоманд представляет собой программное запоминающее устройство.

Конвейерный регистр 15 микроко35 манд предназначен для реализации конвейерного принципа выполнения микрокоманд, при котором цикл выполнения текущей микрокоманды совмещается с циклом выборки последующей.

Счетчики 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" триггер 9 пуска и разреша.ется прием признака режима в регистр

l9. Единичное состояние триггера 29 разрешает прохождение синхроимпульсов 38 с управляющей шины 7 системы через элемент И 32 на схему формирования временной диаграммы. выполненную на элементах 33...37. Временная диаграмма блока 20 синхронизации приведена на фиг. 4.

Работа каждого из процессоров 3 организуется в соответствии с алгоритмом выполнения микропрограмм.

На фиг. 1 приняты следующие обозначения: блок 47 — прием признака режима в регистр 19, блок 48: — проверка соответствия признака режиму

1267429 4

1, блок 49 — проверка соответствия признака режиму 2; блок 50 — выборка микрокоманды из узла 14 на регистр

15, блоки 51...53 — формирование адреса микрокоманды в узле 13 для соответствующего режима, блок 54 выдача кода микрооперации в АЛУ 8 и кодов адресов, признаков записи (считывания) в группу регистров 10;

10 блок 55 — выполнение микрооперации в

АЛУ 8 с операндами, выбранными иэ группы регистров IO и формирование признаков результата в регистре 9, блок 56 — проверка признака разрешения запроса; блок 57 — выдача запроса и прием данных в группу регистров

IO блок 58 — проверка признака окончания операции, блок 59 — выдача сигнала "Пуск" на следующий процессор 3, 20 блок 60 — проверка признака разрешения выдачи, блок 61 — увеличение содержимого счетчика 5 на единицу, блок

62 — выдача данных через шину 12 и блок 4, блок 63 — проверка наличия

25 сигнала "Сброс" (отсутствия заявок на обработку).

Особенностью представленного алгоритма является то, что в нем имеются параллельные ветви, которые могут выполняться одновременно. Например, прием текущей микрокоманды из узла

14 на регистр 15 совмещается с формированием адреса следующей микрокоманды, что соответствует конвейерному принципу выполнения микрокоманды.

При этом начальный адрес микропрограммы (адрес первой микрокоманды) определяется кодом режима, который хранится в регистре 19.

Микропрограммы обработки по каждому из режимов обработки представляют собой определенную последовательность микрокоманд, которые хранятся в узле 14 °

Код режима поступающий с регистt ра 19 режима, используется как код микрокоманды, определяющей определенную последовательность действий при обработке в соответствующем ре- жиме.

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

12б7429

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

5 данных в один регистр из блоксв 1 или 4 производится при наличии: в определенном разряде регистра 15 признака разрешения запроса, При наличии признака окончания операции в данном процессоре 3 на следующий процессор выдается сигнал

"Пуск", При необходимости выдать данные из процессора 3 в блок 4 памяти заявок вначале содержимое счетчика 5 увеличивается на единицу, а затем производится передача данных с выхода АЛУ 8 через шину 12 в блок 4.

Работа процессоров 3 продолжается до окончания обработки всех заявок, поступивших в блок 1 памяти заявок, Для пояснения назначения управляющих входов группы регистров 10 общего назначения (РОН ), АЛУ 8 и регистра 9 приведем структуру микрокоманды 11К).

I.икрокоманда состоит из двух частей: постоянной и переменной. Постоянная часть содержит поле у для

30 управления микрооперациями в AJIY 8, поле Xl для управления логикой признаков, поле Х2 для кодирования функций переходов к следующему адресу микропрограммы.

Переменная часть NK содержит поля

Al и А2 для кодирования адресов ре— гистров в группе регистров 10, 9 общего назначения и признаков режимов, в которых производится обращение к регистрам (признаки Пl и П2). Кроме того, в переменную часть входит поле 2 для кодирования вспомогательных управляющих сигналов, таких как сигналы разрешения запроса и выдачи, окончания операции и т.п.

На управляющие входы АПУ 8 выдается код микрооперации, который задается в разрядах поля У, На управляющие входы группы регистров 10 выдаются коды адресов по обоим каналам 5О

Р0Н и признаки режима обращения (считывание-запись), задаваемые в полях

Al и А2. Причем считывание данных из выбранного регистра производится в фазе с синхроимпульсом 42, а запись- Ы в противофазе синхроимпульсом 42, поступающим на синхровход группы регистров 10.

Ь

Нэ управлявшие входы регистра 9 признаков выдаются сигналы управления логикой признаков, кодируемые в поле Х1, С помощью этих сигналов осуществляется маскирование определенных разрядов регистра 9, В общем случае в регистре 9 содержится следующая информация о результатах выполнения операций в АЛУ Я: N=l, ес1 ли результат отрицательный, Z=l, если результат равен О, V =l, если было переполнение при выполнении арифметической операции, С=l при переносе из старшегс разряда, При равенстве нулю определенного разряда в поле Xl значение соответствующего признака в регистре 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 12 ка 2 равно нулю, то с выхода элемента И 25 через элемент ИЛИ 27, на второй вход которого может поступать сигнал сброса от внешнего источника, выдается сигнал "Сброс, гоступающий на управляющих вход регистра признаков и через управляющую шину 7 системы на вход блока 20 синхронизации первого пооцессора 3. По сигналу

45 "Сброс" в блоке 20 при наличии признака окончания операции с регистра 15 через элемент И 30 обнуляется триггер 29. При этом запрещается выборка сигналов временной диаграммы. С инверсного выхода триггера 29 сигнал "Сброс" выдается в блок 20 синхронизации второго процессора 3.

Останов второго и последующих процессоров 3 осуществляется после- довательно после выборки в них признаков окончания операций.

Результаты обработки данных адаптивной системой обработки выдаются потребителю с выхода последнего процессора 3.

Предлагаемая система не создает экономии аппаратных средств, но повышает пропускную способность системы °

Формула изобретения

1. Адаптивная система обработки данных, содержащая и процессоров, первый блок памяти и заявок, выход которого подключен к информационному входу первого процессора, выход управления считыванием заявки которого соединен с входом считывания первого блока памяти заявок, выход управления запуском i-го процессора подключен к одноименному входу (i+

+1)-го процессора (i =1,...,п-1), причем каждый процессор содержит блок обработки, блок синхронизации и коммутатор сннхросигналов, информационный вход блока обработки является одноименным входом процессора, выход управления считыванием заявки которого соединен с первым выходом коммутатора синхросигналов, первый управляющий вход которого соединен с выходом запроса блока обработки, отличающаяся тем, что, с целью увеличения пропускной способности за счет адаптации режимов обработки к..решаемым задачам, в нее введены шифратор количества заявок, и счетчиков заявок, 67429 8

55 п-I блоков памяти заявок, информационный вход и вход записи первого блока памяти заявок являются входом заявок и входом записи заявок системы, выход j-го счетчика заявок подключен к адресному входу j-го блока памяти заявок. (j =I,...,п), выход первого счетчика заявок подключен к информационному входу шифратора количества заявок, вход запуска которого является входом запуска системы и соединен с входом запуска первого процессора, информационный выход шифратора количества заявок подключен к входам задания режимов всех процессоров, вход сброса шифратора количества заявок является входом сброса системы, а выход сброса подключен к входу сброса первого процессора, входы синхронизации всех процессоров соединены с входом синхронизации системы,. выход сброса i-го процессора подключен к одноименному входу (i+1)-го процессора, суммирующий и вычитающий входы первого счетчика заявок соединены с входом сопровождения заявок системы и с выходом управления считыванием заявки первого процессора, информационный выход i — го процессора подключен к информационному входу (i+

+I)-го блока памяти заявок., выход которого подключен к информационному входу (i+1)-ro процессора, выход управления записью заявок и выход номера заявки 1.-го процессора подключен к входу записи (i+1)-го блока памяти заявок и к суммирующему входу (i+I)-ro счетчика заявок соответственно, выход управления считыванием заявок k-го процессора подключен к вычитающему входу 1-го счетчика заявок и к входу считывания

k-го блока памяти заявок (k=2, n) причем в каждый процессор введен регистр режима, информационный вход которого соединен с входом задания режима процессора, выход регистра режима подключен к входу задания ре-. жима обработки блока обработки,выходы приема на обработку и запроса блока обработки подключены к второму и третьему управляющим входам коммутатора синхросигналов соответственно, выход программного запуска блока обработки подключен к одноименному входу блока синхронизации, входы запуска, сброса, синхронизации и выходы сброса и управления запусб7429

30

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

2. Система по п. 1, о т л и ч аю щ а я с я тем, что блок обработки содержит узел микропрограммного управления, узел памяти микрокоманд, конвейерный регистр микрокоманд, арифметическо-логический узел, регистр признаков и группу регистров общего назначения, вход признаков узла микропрограммного управления является входом задания режима блока, выход узла микропрограммного управления подключен к адресному входу узла памяти микрокоманд, первый вы35

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

3. Система по и. 1, о т л и ч аю щ а я с я тем, что блок синхронизации содержит триггер пуска, четыре элемента И, три элемента задержки, элемент НЕ, причем первые входы с первого по третий элементов И являются входами сброса, программного запуска и синхронизации блока соответственно, вход установки триггера пуска соединен с входом запуска и с первым выходом блока, второй вход первого элемента И соединен с первым входом второго элемента И, выход первого элемента И соединен с входом сброса триггера пуска, прямой выход которого соединен с вторы-. ми входами второго и третьего элементов И, выходы которых являются выходами управления запуском и вторым выходом блока соответственно, инверсный выход триггера пуска является выходом сброса блока, выход третьего элемента И соединен с первым входом четвертого элемента И, через первый элемент задержки с третьим выходом блока„ через второй элемент задержки с вторым инверсным входом четвертого элемента И и через элемент НЕ с пятым выходом блока,выход четвертого элемента И соединен с четвертым выходом блока и через третий элемент задержки с шестым выхо-: дом блока.

1267429

Поле Х1 Поле Х2

Пол

Поле А1

Поле А2

Поле Z

Управление лоП2

Вспомогательные гикой признаков

Постоянная часть микроко- Переменная часть микрокоманды манды у„о

/7ус

Cuir

Код микр опер ций

Код функции перехода

П! Код пер вого ад реса PO

Код вто рого ад реса Р0 управляющие разряды

1267429

Рм л бл

1267429

Рсм Х

Составитель А.ушаков

Редактор Н.Слободяник Техред А.Кравчук КОрректор С.Черни

Заказ 5777/48 Тираж 671 Подписное

ВНИИПИ Государственного комитета СССР по делам изобретений и открытий

113035, Москва, Ж-35, Раушская наб., д. 4/5

Производственно-полиграфическое предприятие, r. Ужгород, ул, Проектная,4