Устройство для управления сверхоперативной буферной памятью мультипроцессорной эвм

Иллюстрации

Показать все

Реферат

 

ОП ИСАНИЕ

ИЗОБРЕТЕНИЯ

Союз Советскик

Социалистическик

Рес )тбяик

<»>980097

К АВТОРСКОМУ СВИДЕТЕЛЬСТВУ (6|) Дополнительное к авт.свид-ву

> (51)М. Кл.

G 06 F 13/06 (22) Заявлено 05. 06. 81 (21) 3300295/ I 8-24 с присоединением заявки № (23) П риоритет Ьоудерстеаеиьщ какитет

СССР ае долек нзобрвтеией н открьпкй

Опубликовано 07.12,82. Бюллетень № 45 (53) УД К681,325 (088. 8) Дата опубликования описания 07.12.82

1 "«-» «.», т (72) Авторы изобретения

А. И . Слуц кин и В. В. Карпова (7l ) Заявитель (54) УСТРОЙСТВО ДЛЯ УПРАВЛЕНИЯ СВЕРХОПЕРАТИВНОЙ

БУФЕРНОЙ ПАМЯТЬЮ МУЛЬТИПРОЦЕССОРНОЙ ЭВИ

1 . Изобретение относится к вычислительной технике и может быть использовано для управления сверхоперативной буферной памятью (СБП) высокопроизводи тель ных Э ВИ.

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

Данное устройство имеет недостаточно высокое быстродействие из-за примененного алгоритма обслуживания запросов в память процессоров и каналов ввода-вывода (при каждой записи требуется обращение к основной опе2в ративной памяти); кроме того, не обеспечена совмещенная работа блока трансляции адреса и матрицы адресов со сверхоперативной буферной памя2 тью, что увеличивает .время обращения к СБП. Реализованный алгоритм замещения блоков информации не позволяет увеличить производительность ЭВй путем применения СБП большей емко- сти.

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

Целью изобретения является повышение быстродействия, Поставленная цель достигается тем, что в устройство для управлещения, регистр адреса колонки, регистр идентификаторов буферной памяти, блок коррекции, мультиплексор, адресов, блок анализа, мультиплексор адресов, блок анализа, мультиплексор считанной информации, блокуправления записью новых данных, матрица битов изменения, мультиплексор битов изменения, второй элемент И, триггер конца операции, третий и четвертый элементы ИЛИ, регистр номера процессора, выход которого является выходом номера процессора устройства, а вход соединен с первым выходом регистра идентификаторов буферной памяти, второй выход которого соединен с входом второго дешифратора, первый выход которого соединен с первым входом четвертого элемента ИЛИ, второй вход которого соединен с выходом триггера разрешения записи, а выход - с входом разрешения записи матрицы битов изменения, адресный вход которой соединен с адресными входами блока коррекции, матрицы кодов защиты, блока замещения, регистра адреса колонки и с выходом адреса колонки регистра адреса матрицы адресов, который является соответствующим выходом устройства, а выход адреса слова регистра адреса матрицы адресов, который является выходом адреса слова устройства, соединен с входом счетчика слов, выход которого соединен с управляющим входом регистра адреса колонки, выход последнего соединен с адресным входом блока сверхоперативной буферно9 памяти, вход номера строки которого соединен с входами номера строки матрицы кодов защиты, матрицы битов изменения, блока замещения и с адресными входами мультиплексора адресов, мультиплексора битов, изменения, мультиплексора считанной информации, вход данных которого соединен с выходом считанной информации, блока сверхоперативной буферной памяти, а вы-.ход - с первым входом данных селектора считанной информации, управляющий вход которого соединен с входом операции перезаписи блока управления записью новых данных, выход бита изменения активного блока которого соединен с входом данных матрицы битов изменения, выход. которой соединен с входом данных мультиплексора битов изменения, выход которого соединен с входом бита изменения заме3 98009 ния сверхоперативной буферной памятью мультипроцессорной ЭВМ, содержащее селектор адресов, селектор маркеров и селектор входной информации, управляющие входы которых объединены и подключены к выходу блока приоритетов, выход которого является приоритетным выходом устройства, первые входы селекторов являются канальным адресным, канальным маркерным и ка- 10 нальным информационным входами устройства, соответственно, первый вход блока приоритетов является канальным входом запроса устройства, выходы селектора маркеров и селектора входной информации соединены соответственно с входами регистра маркеров и регистра входной информации, выходы которых соединены с выходом маркеров и выходом записываемой информации уст-щ ройства соответственно, а также с входом маркеров и данных блока сверхоперативной буферной памяти, вход разрешения записи которого соединен с выходом триггера разрешения записи, вход которого соединен с выходом второго элемента ИЛИ, первый вход которого соединен с выходом первого элемента И, первый вход последнего соединен с выходом первого эле30 мента ИЛИ, входы которого соединены с входами шифратора, выход которого соединен с первым входом селектора номера строки, выход которого соединен с входом регистра номера строки, выход которого соединен с входом но35 мера строки блока сверхоперативной буферной памяти и входом номера стро ки матрицы адресов, вход нового адреса которой соединен с выходом ад40 реса страницы регистра адреса матрицы адресов, который является выходом адреса страницы устройства, а вход регистра адреса матрицы адресов соединен с выходом селектора адресов, 45 вход адреса копирования которого соединен с выходом счетчика копирования селектор считанной информации, выход которого соединен с входом регистра считанной информации, а выход последнего является выходом считанной информации устройства, и регистр кодов защиты памяти„ введены селектор идентификаторов, селектор кодов защиты памяти, регистр идентификаторов матрицы адресов, два. дешифратора, триггер длинных операций, счетчик длинных операций, матрица кодов защиты памяти, счетчик слов, блок заме"

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

И, а выход - с установочным входом триггера конца операции, выход которого является выходом конца операции устройства и соединен с входом разрешения записи блока замещения, выход которого соединен с вторым входом селектора номера строки, третий вход которого соединен с третьим выходом счетчика длинных операций, а управляющий вход - с третьим выходом второго дешифратора, четвертый выход которого соединен с входом операции перезаписи блока управления записью, второй вход данных оперативной памяти селектора считанных данных соединен с входом блока сверхопе ративной буферной памяти, группа входов селектора кодов защиты является группой входов кодов защиты процессоров устройства, вход селектора кодов защиты является канальным входом кодов защиты устройства, выход: селе тора кодов защиты соединен с входом регистра кодов защиты, выход которого соединен с входом кода защиты новых данных матрицы кодов защиты и входом кода защиты запроса блока анализа, вход считанных кодов защиты которого соединен с выходом матрицы кодов защиты, вход адреса запроса - с входами нового адреса матрицы адресов и блока коррекции, вход операции чте,ния - с третьим выходом первого дешифратора, выход ошибки адреса явля98009 щаемых данных блока управления записью новых данных, выход записи адреса которого соединен с входами раз решения записи блока коррекции, матрицы кодов защиты, матрицы адресов, 5 выход которой соединен с входом считанных адресов блока анализа, входом хранимых данных блока коррекции, входом данных мультиплексора адресов, выход которого является выходом адреса страницы замещаемых данных устройства и соединен с Вхо дом замещаемых данных блока коррекции, вход ошибки которого соединен с выходом ошибки адреса регистра идентификаторов матрицы адресов, а выход - с входом откорректированного адреса селектора адресов, вторые входы селекторов адреса маркеров, и входной информации являются 20 соответственно адресным входом, входом маркеров и информационным входом связи с процессорами устройства, группа входов селектора адресов, селектора маркеров и селектора входной информации является соответ ственно группой входов адресов процессоров устройства, группой входов маркеров процессоров устройства и группой входов информации процессо- 30 ров устройства, третий вход селектора адресов соединен с первым выходом счетчика длинных операций, вход которого. соединен с установочным входом триггера длинных операций и с первым выходом первого дешифратора, второй выход которого соединен с входом счетчика копирования, а вход соединен с выходом кода операции регистра индентификаторов матрицы адресов, выход идентификаторов которого является соответствующим выходом устройства и соединен с входом регистра идентификаторов буферной памяти, а вход соединен с выходом селектора идентиФикаторов, группа входов селектора идентификаторов является группой входов идентификаторов процессоров устройства, первый вход селектора является канальным входом идентификаторов уст,ройства, второй вход селектора является входом связи с процессорами устройства, управляющий вход селектора идентификаторов соединен с выходом блока приоритетов и управляю

55 щим входом селектора кодов защиты, группа входов блока приоритетов и его первый, второй и третий входы

15 го

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

Блок анализа, содержит первую груп пу из m (m - целое число) элементов

И, вторые и первые входы которых соединены соответственно с выходами m блоков свертки по модулю два кодов защиты и с выходами m схем сравнения кодов защиты, первые входы которых . объединены и являются входом кода защиты запроса блока, а,вторые входы соединены с входами. блоков свертки по модулю два

-- кодов. защиты и являются входом считанных кодов защиты блока, вторую группу из в элементов И, выходы которых являются выходом сравнения блока, первые и вторые входы соеди.нены соответственно с выходами m блоков свертки по модулю два адресов и с выходами m схем сравнения адресов, первые входы которых соединены с входами блоков свертки по мо дулю два адресов и являются входом считанных адресов. блока, а вторые входы объединены и являются входом адреса запроса блока, m элементов

ИЛИ, выходы которых соединены с соответствующими третьими входами элементов И второй группы, первые входы соединены с выходами элементов

И первой группы, а вторые входы объединены и являются входом операции чтения блока, элемент И, m входов которого соединены с соответствую щими первыми входами элементов И второй группы, а выход - Ч входом эле мента НЕ, выход которого является выходом ошибки адреса блока.

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

0097: . 8 блока, выход первого элемента НЕ соединен с первым входом четвертого элемента И, второй вход которого соединен с входом операции перезаписи блока и с информационным входом второго триггера, установочный вход которого соединен с установоч - ным входом третьего триггера и выходом второго элемента НЕ, вход которого является входом продолжительности длинной операции блока, информационный вход третьего триггера является входом операции записи блока, а выход - выходом бита изменения активного блока, вход переполнения блока соединен с первым входом второго элемента И, второй вход которого соединен с третьим входом первого элемента И и первым входом третьего элемента И и выходом второго триггера, выход третьего элемента НЕ соединен с третьим и вторым входами второго и третьего элементов И соответственно, выход третьего элемента

И является выходом записи блока, выход первого элемента И соединен с первыми входами первого и второго элементов ИЛИ, выход второго элемента И соединен с вторым входом первого элемента ИЛИ, выход которого соединен с входом четвертого триггера, выход которого является выходом записи адреса блока, выход четвертого элемента. И соединен с вторым входом второго элемента ИЛИ, выход

35 которого является выходом конца операции блока, Одним из факторов, определякнцих быстродействие ЭВИ, является алго4О ритм обслуживания запросов процессоров и каналов ввода-вывода к двухуровневой оперативной памяти, В изоб. ретении использован алгоритм "Полностью асинхронный условный обмен", 45

При этом операция "Запись" при на-:. личии данных в СБП выполняется только в СБП, а при отсутствии данных требуется один цикл ОП. В итоге значительно сокращается среднее время выполнения операции "Запись", Структурная организация СБП и ее управление, кроме того, позволяют совместить цикл чтения собственно

СБП с ассоциативным поиском в матрице адресов, Это уменьшает время обслуживания запросов в СБП.

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

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

Устройство может быть использовано для управления сверхоператив ной буферной памятью, памятью в муль. типроцессорной системе с общими ре- 15 сурсами (СБП обслуживает запросы всех процессоров) и в системе, где

СБП интегрированы со своими процессорами. Устройство может обслуживать за- m просы процессоров к памяти на чтение или запись информации с темпом: каждый такт, †од запрос при наличии информации в СБП, а при отсутствии информации в СБП необходима 2s перезапись блока информации иэ ОП в СБП с тем, чтобы последующие обращения процессора к этому блоку информации обслуживались на уровне СБП, Один запрос на чтение или запись зв информации в СБП обслуживается за два такта: такт матрицы адресов (МА) и такт сверхоперативной буферной памяти (в матрице адресов хранятся адреса тех блоков информации из ОП, которые имеются в СБП), при этом организован совмещенный режим работы

ИА и СБП по двум последовательным запросам, т,е. при обслуживании одного запроса в такте. СБП для следующего запроса выполняется такт МА-, На фиг, 1 представлена структурная схема устройства для управления сверхоперативной буферной памятью

4S

ЭВМ, на фиг, 2 - структурная схема блока сверхоперативной буферной памяти, на фиг, 3 - структурная схема блока анализа; на фиг, 4 -. структур.ная схема. блока замещения, на фиг.559 структурная схема блока коррекции, на фиг, 6 - структурная схема блока управления записью новых данных, на фиг, 7 - блок-схема алгоритма

"Полностью асинхронный условный объем", Устройство для управления сверхоперативной буферной памятью мульти980097 10 процессорной ЭВМ содержит блок 1 приоритетов, селектор 2::идентификаторов, селектор 3 адресов, селектор 4. кодов защиты памяти, селектор 5 мар" керов, селектор 6 входной информации, регистр 7 идентификаторов матрицы адресов, регистр 8 адреса матрицы адресов, регистр 9 защиты памяти, регистр 10 маркеров, регистр 11,,входной информации, первый дешифратор 12, счетчик 13 копирования, счетчик 14 слов, триггер 15 длинных операций, счетчик 16 длинных операций, матрицу 17 адресов, матрицу 18 кодов защиты памяти, блок 19 замещения, регистр

20 адреса колонки, блок 21 СБП,.ре. гистр 22 идентификаторов буферной памяти, блок 23 коррекции, мультиплексор 24 адресов в, блок 25 анализа, мультиплексор 26 считанной информации, второй дешифратор 27, блок 28 управления,записью новых данных, первый элемент ИЛИ 29, шифратор 30, селектор 31 считанной информации матрицу

32 битов изменения, мультиплексор

33 битов изменения, регистр 34 считанной информации, второй элемент

И 35, первый элемент И 36, селектор

37 номера строки, третий элемент

ИЛИ 38, четвертый элемент ИЛИ 39, второй элемент ИЛИ 40, регистр 41 номера строки, регистр 42 номера процессора, триггер 43 конца операции; триггер 44 разрешения записи, входы

45-48 канальных запросов процессоров устройства, вход связи с процессорами и вход блока обслуживания устройства, входы 49-51 идентификаторов процессоров устройства каналов и вход связи с процессорами, входы

52-54 адресов процессоров устройства, каналов и вход связи с процессорами, входы 55 и 56.кодов защиты памяти процессоров устройства и входы 57-59 маркеров процессоров устройства, канала и вход связи с процессорами, входы 60-62 информации процессоров устройства,.канала и вход связи с процессорами, выход 63 приоритетов, выход 64 идентификаторов, выход 65 адреса слова, выход

66 записываемой информации, выход

67 адреса колонки, выход 68 адреса страницы, выход Ь9 маркеров, выход

70 номера процессора, выход 71 конца операции, выход 72 наличия информации, выход 73 ошибки адреса, выход 74 адреса страницы замещаемо-. го блока, выход 75 считанной инфор980097 12

В блоке 25 анализа адреса, считанные из MA 17, сравниваются на у<емах i12 поразрядного сравнения с адресом запроса с регистра 8 и контролируются на блоках 111 свертки . Если в считанных адресах имеется ошибка, то на выходе 73 блока 25 анализа появляется сообщение об ошибке адреса. Если ошибки нет и с выхода первого дешифратора 12 приходит сигнал о выполнении операции "Чтение двойного слова", то в рассматриваемом режиме (данные есть в СБП) на одном из выходов

87 блока 25 анализа появляется сигнал "Сравнение" адресов этой стойки матрицы 17 адресов и запроса, который кодируется на шифраторе 30 в номер сравнившейся строки и через селектор 37 записывается на регистр

41 номера строки. На элементе ИЛИ 29 формируется сигнал наличия информации, который выдается в буферную секцию каналов, если обслуживается ее

11 мации, выходы 76 маркеров, входы 77 данных, адресный вход 78, вход 79 номера строки, вход 80 разрешения записи, выходы 81 m строк, входы 82 считанных адресов, вход 83 адреса запроса, вход 84 кода защиты запро cd, входы 85 считанных кодов защиты вход 86 операции чтения, выходы 87 сравнения, адресный вход 88, вход

89 номера строки, вход 90 разрешения записи, выход 91 номера замещаемой строки, входы 92 хранимых данных, вход 93 нового адреса, вход

94 ошибки адреса, адресный вход 95, вход 96 разрешения записи, выход

97 откорректированного адреса, вход

98 замещаемых данных, вход 99 четвертого такта, вход 100 продолжительности длинной операциц, вход

101 операции перезаписи, вход 102 операции записи, выход 103 конца операции, выход 104 записи блока, вход 105 бита изменения замещаемого блока, выход 106 бита изменения активного блока, выход 107 записи адреса, вход 108 переполнения, субблоки 109 памяти, дешифратор 110, m блоков 111 свертки по модулю два адресов, m схем 112 сравнения адресов, m схем 113 сравнения кодов защи ты, m блоков 114 свертки по модулю два кодов защиты, первую группу из

m элементов И 115,,а элементов

ИЛИ 116, вторую группу из m элементов И 117> m-входовой элемент

И 118, элемент НЕ 119, селектор 120 замещения, регистр 121 адреса замещения, шифратор 122, регистр 123 записи хронологии, блок 124 памяти хронологии, селектор 125 хронологии, регистр 126 чтения хронологии, дешифратор 127, регистр 128 адреса хронологии, селектор 129 адреса, схе му 130 сравнения, первый блок l31 поразрядного сложения, коммутатор

132, сдвигатель 133, второй блок

134 поразрядного сложения, регистр

135 вертикальной четности, первый блок 136 свертки, регистр 137 коррекции, первый элемент HE 138, блок

139 памяти вертикальной четности, второй блок 140 свертки, первую схему 141 сравнения, второй элемент

НЕ 142, третий элемент HE 143 вторую схему 144 сравнения, четвертый элемент НЕ 145, элемент И 146, выход 147 ошибок коррекции, элементы

HE. 148, 149, триггер 150 удаления блока, триггер 151 перезаписи, триг5

15 го

25 зо

35 гер 152 бита изменения, элемент

HE 153, элементы И 154-157, эле.менты ИЛИ 158, 159, триггер 160 за- писи адреса.

Устройство работает следующим образом, Выполнение операции "Чтение двойного слова" (данные в СБП имеются), В блоке 1 приоритетов анализируются имеющиеся запросы, одному из запросов присваивается приоритет в соответствии со следующей дисциплиной: первый приоритет имеет блок обслуживания, второй - адаптер связи с процессорами, третий — буферная секция каналов, четвертый - процессоры. В соответствии с присвоенным приоритетом в приемных селекторах 2 идентификаторов, 3 адреса, 4 кодов защиты 5, маркеров, 6 входной информации открывается направление для приема всей информации о запросе от этого запросчика на регистры 7 идентификаторов, 8 адреса, 9 защиты памяти, 10 маркеров, 11 входной информации, а соответствующему устройству выдается сигнал о присвоении приоритета, По адресу колонки с регистра

8 адреса матрицы адресов считываются значения матрицы 17 адресов и блока 19 замещения, параллельно адрес колонки записывается на регистр 20 адреса колонки,на который также принимается номер двойного слова в блоке данных СПБ со счетчика 14 слов.

Сигнал, наличия информации с выхода элемента ИЛИ 29 поступает на один из входов элемента И 36, на второй вход которого приходит сигнал операции записи с выхода второго дешифратора 27, и через элемент ИЛИ 40 устанавливает в "1" триггер 44 разрешения записи, Выход триггера 44 подключен на управляющий вход дешифратора

10 блока 21 СБП, на адресный вход которого приходит номер сравниваейся строки с регистра 41 номера строки, При этом на одном из выходов дешифратора появляется сигнал разрешения записи в блоки 109 памяти СБП, принадлежащие этой строке блока 21 СБП, На входы данных блоков 109 памяти поступают байты информации с выходов регистра 11 входной информации, Запись производится только в те бло-ки 109 памяти соответствующей строки

СБП, входы обращения которых отличны от "0", т.е. в соответствии с выходами регистра 10 маркеров. Параллельно с записью новой информации в блок 21 СБП в матрице 32 битов изменения устанавливается в "1" бйт изменения этой строки СБП, причем на вход данных матрицы 32 поступает ло-. гическая единица с выхода триггера

152 бита изменения из блока 28 управления, который устанавливается в это состояние при каждой. операции записи соответствующим выходом второго дешифратора 27, на вход разрешения записи матрицы 32 через элемент ИЛИ 39 поступает сигнал разрешения записи с триггера 44, а номер строки определяется выходом регист.ра 41 номера строки.

Таким образом, анализ кода защиты запроса одновременно с анализом адреса запроса и возможность. фиксации каждого изменения информации в блоке

БСП позволяют выполнять операцию записи двойного слова за 2 такта, как и, операцию чтения двойного слова.

Такой алгоритм выполнения опера" ции записи двойного слова, когда при наличии информации в СБП запись произ,водится только в СБП, а в ОП данные остаются беэ изменения, приводит

ic тому, что операция перезаписи помещение в СБП нового блока данных, если по запросу процессоре необходимых данных в СБП не оказалось) может быть двух видов: с удалением замещаемого блока данных, если бит иэме45

13 980097 14 запрос, или используется для формирования сигнала конца операции, если обслуживается запрос одного иэ процессоров, Одновременно с работой блока 25 ,анализа и формированием номера сравнившейся строки из блоков 109 памяти блока 21 СБП в соответствии с адресом регистра 20 адреса колонки счи- тываются двойные слова всех строк 10 колонки, которые поступают на вход данных мультиплексора 26 считанной информации, на адресный вход которого в этот же момент поступает .номер сравнившейся строки с регистра 41 1 номера строки. С выхода мультиплексора 26 данные попадают через вход данных буферной памяти селектора 31 считанной информации н регистр 34 считанной информации для выдачи за- 2в просчику.

Таким образом, цикл чтения собственно блоков 109 памяти совмещен с ассоциативным поиском адреса запроса и формированием номера срав- у5 нившейся строки, После цикла чтения матрицы 17 адресов идентификаторы запроса переписываются с регистра 7 идентификаторов матрицы адресов на регистр 2 идентификаторов буферной памяти для окончания обслуживания, а на уровень МА принимается новый запрос в соответствии, с работой блока 1 приоритетов, Одновременно с: выдачей считанной информации на регистр 42 номера процессора записывается номер процессора с регистра 22 идентификаторов, запрос которого обслужен, что сопровождается сигналом конца операции, 4в который формируется на элементах

И 35, ИЛИ 38 и триггере 43 конца операции, Сигнал конца операции используется также для изменения текущего значения хронологии блока 19 замещения.

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

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

18 кодов защиты с кодом защиты эа- ы проса с регистра 9 кода защиты и кон. троль считанных кодов защиты (элементы 113, 114 и 115 блока 25 анализа), 40

По адресу колонки с регистра 8 адреса матрицы адресов в блоке 19 замещения считывается значение памяти хронологии обращения к блокам этой колонки и на дешифраторе 127 формируется номер блока для замещения его новым блоком (замещается блок, к ко- Ы торому наиболее долго не было обращения от выполняемых программ), С выхода 91 блока 19 замещения номер

15 98009 нения этого блока равен единице, операция занимает 9 тактов (один такт

ИА и восемь тактов СБП); беэ удаления замещаемого блока, если бит изменения этого блока равен нулю, операция занимает 5 тактов (один такт МА и четыре такта СБП) . .Рассмотрим первый вариант - выполнение операции перезаписи блока . с удалением замещаемого блока, IO

Если по запросу процессора необходимого двойного слова данных не оказалось в блоке 21 СБП, то не будет выработан сигнал наличия информации, .и следовательно, не будет .взве- Is ден триггер 43 конца операции. Такой запрос попадает в очередь в ОП в адаптере связи с процессорами, а устройст во продолжает обслуживать запросы других устройств, По получении блока ур информации из ОП- адаптер связи с процессорами получает приоритет бло ка 1 приоритетов и вся информация о запросе вновь попадает на приемные регистры, но уже с признаком опера-. ции перезаписи нв регистре 7 идентификаторов. Здесь следует заметить, что в СБП из ОП помещается не одно двойное слово, необходимое процессору, а блок данных - четыре после- 3О довательных двойных слова с тем, чтобы последующие запросы процессора мог ли быть обслужены на уровне СБП. По признаку операции .перезаписи с выхода длинных операций первого дешифра35 тора 12 устанавливается в единицу триггер 15 длинных операций, формирующий запрет в блок 1 приоритетов, а на счетчик 16 длинных операций записывается такое значение, чтобы, при последующем счете за один такт до окончания операции на его выходе переполнения появилась единица, которая сбросит триггер 15 длинных операций с тем, чтобы снять запрет с

45 блока 1 приоритетов (последний такт

СБП всегда совмещен с тактом HA нового запроса).

7 16 замещаемой строки через селектор 37 номера строки попадает на регистр 41 номера строки > который попадает. на адресный вход мультиплексора 33 битов изменения, на вход данных которого к этому времени считываются значения битов изменения всех строк этой колонки. С выхода мультиплексора

33 бит изменения замещаемого блока попадает в блок 28 управления записью новых данных и устанавливает в "1" триггер 150 удаления, С выходов второго дешифратора 27 операции перезаписи устанавливается в единицу триггер 151 перезаписи и операции записи (если блок помещается по запросу процессора на запись двойного слова) - триггер 152 бита изменения, Иэ блока 21 CEll в соответствии с регистром 20 адреса колонки, регистра 41 номера строки через мультиплексор 26 и селектор 31 считанной информации на регистр 34, считанной информации считываются последовательно четыре двоичных слова замещаемого блока данных для записи в ОП. Пересчет номера двойного слова обеспечивается счетчиком 14 слов.

Через мультиплексор 24 адресов в соответствии с номером замещаемой строки с регистра 41, который попадает на адресный вход мультиплексора, считывается адрес страницы замещаемого блока в оперативной памяти (выход 74), а адрес колонки замещаемого блока появляется на выходе 67 адреса колонки устройствЭ.

По окончании считывания четвертого двойного слова сигналом четвертого такта со счетчика длинных операций сбрасывается триггер 150 удаления и на элементах НЕ 153 и И 156 формируется сигнал записи блока, xo" торый через элемент ИЛИ 40 устанавливает в "1" триггер 44 разрешения записи на четыре такта для заl писи в блоке 21 СБП четырех двоййых слов информации с регистра 11 входной информации из адаптера связи с процессорами на место замещаемого блока, определяемое регистром 41 номера строки.

С записью в блок СБП первого двойного слова в селекторе 31 считанной информации открывается вход данных оперативной памяти и на регистр 34 считанной информации попадает пер17 9800 вое двойное слово данных, которое выдается в процессор, если был запрос на чтение, на элементах И 154, ИЛИ 158 формируется сигнал конца операции, который из блока 28 управления записью новых данных через элемент ИЛИ 38 записывается на триггер 43 конца операции и сопровождается номером процессора с регистра 42. Перед записью последнего слова в блок СБП сигналом. переполнения через элементы И 155, ИЛИ 159 устанавливается в "1" триггер 160 записи адреса блока 28 управления, который разрешает записать в матрицу !5

17 адресов новый адрес с регистра 8, в матрицу 18 кодов защиты --код защиты нового адреса с регистра 9, в блок

19 замещения через эле ент ИЛИ 39новое значение хронологии, в блок 23 го коррекции - новое значение битов вертикальной четности, а в матрицу

32 битов изменения - бит изменения с выхода 106 бита изменения активного блока (триггер 152 бита измене- 25 ния) .блока 28 управления, Запись всех новых значений производится в строку, определяемую регистром 41 номера строки. По сбросу триггера 15 длинных операций сбрасываются триггеры 5В

151 и 152 блока 28 управления запи« сью новых данных, Второй вариант операции перезаписи блока без удаления замещаемого блока отличается от первого тем, что бит изменения замещаемого блока. на входе мультиплексора 33 битов изменения равен нулю, поэтому триггер

150 удаления блока 28 управления остается в нуле, следовательно, выпол- 4в няется сразу вторая часть операции пе. резаписи - запись нового блока в СБП и в матрицу 17 адресов, матрицу 18 кодов защиты, матрицу 32 битов изменения, блок 19 замещения, блок 23 коррекции новых значений, Перед записью четвертого двойного слова сбрасывается триггер 15 длинных операций и открывается блок 1 приоритетов для приема нового запроса. Таким образом, второй вариант операции перезаписи занимает четыре такта работы устройства, держимое блока 21 СБП в оперативную память, чтобы в ОП была последняя копия блоков данных. Для этого на счетчик 16 длинных операций записы" вается нулевое значение в разряды номера колонки и .номера строки, а триггер 15 длинных операций устанавливается в "l" для запрета блока 1 приоритетов.. Номер колонки счетчика

16 попадает через селектор 3 адресов на регистр 8 адреса матрицы адресов, в соответствии с которым из матрицы 17 адресов считываются адреса блоков в ОП, а из блока 21 СБПдвойные слова данных той же колонки.

Номер строки со счетчика 16 попадает через селектор 37 номера строки на регистр 41 номера строки, в соответствии с:.которым из нулевой ко лонки блока СБП считывается блок данных нулевой строки на регистр 34 считанной информации, а из матрицы 17

Для того чтобы операция перезаписи, как правило, выполнялась за 4 такта, введена операция копирования, которой присваивается прйоритет автоматически всегда, когда устрой97 18 ство свободно. Адрес колонки в этом случае задается счетчиком 13 копирования, значение которого через селектор 3 адресов записывается на регистр 8 адреса матрицы адресов. C выхода блока 19 замещения номер замещаемого блока записывается через селектор 37 нв регистр 41 номера строки, В соответствии с этим номером из блока 21 СБП считывается из колонки, определяемой счетчиком копирования, блок данных из четырех двойных слов на регистр 34 считанной информации для запиА его в оперативную память.

Выход операции копирования второго дешифратора 27 через элемент ИЛИ 39 разрешает записать бит изменения этого блока данных в матрице 32 битов изменения в нуль. Перед началом каждой новой операции копирования е счетчик копирования прибавляется "1"

По запросу буферной секции кана" лов при наличии информации в блоке

СБП имеется возможность чтения и записи блока данных (четырех двойных слов1. В этом случае также устанав ливается в "l" триггер 15,длинных операций для формирования запрета в блок 1 приоритетов, Номер двойного слова меняется в регистре адреса колонки счетчиком слов. В остальном выполнение операций совпадает с чтением и записью двойного слова при на личии информации в блоке СБП.

Имеется возможность по запросу блока обслуживания переписать со50

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

19 9800 адресов через мультиплексор 24 адресов - адрес этого блока в ОП. Через четыре такта, когда считаны четыре двойных слова блока данных нулевой строки колонки, в счетчик 16 длин- s ных операций в разряды номера .строки прибавляются "1" для считывания блока первой строки нулевой колонки и т,д. После достижения номером стро-, ки максимального значения прибав- М ляется,"1" в разряды номера колонки счетчика 16, Когда считаны все блоки СБП, значение счетчика 16 длинных операций достигают максимальной величины и сигнал переполнения сбрасывает триггер 1 длинных операций, Бсли при обслуживании запроса процессора во время считывания матрицы

17 адресов появилась ошибка адреса 20 на выходе блока 25 анализа, то сигнала конца операции выработано не будет и запрос попадает в адаптер связи с процессорами, а затем возвращается в устройство с, признаком ошиб-25 ки адреса в регистре 7 идентификаторов матрицы адресов, В соответствии с этим признаком инициируется работа блока 23 коррекции, откорректированный адрес с выхода блока 23 коррек- зо ции поступает через селектор 3 адресов на регистр 8 адреса матрицы адресов для записи его в ИА, Кроме то го по сигналам из блока обслуживания предусмотрена возможность отключения половины емкости блока 21

СБП и/или любой строчки блока 21 С